GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verwenden von Windows-DLL von Linux

Jede Lösung benötigt eine TCP/IP-basierte „Remoting“-Schicht zwischen der DLL, die in einer „Windows-ähnlichen“ Umgebung ausgeführt wird, und Ihrer Linux-App.

Sie müssen eine einfache PC-App schreiben, um die DLL-Funktionen verfügbar zu machen, entweder mit einem Homebrew-Protokoll oder vielleicht XML-RPC-, SOAP- oder JSON-Protokollen. Das RemObjects SDK könnte Ihnen helfen - könnte aber übertrieben sein.

Ich würde bei einem "echten" oder virtualisierten PC bleiben. Wenn Sie Wine verwenden, werden die DLL-Entwickler wahrscheinlich keine Unterstützung anbieten.

MONO ist wahrscheinlich auch keine Hilfe, da Ihre DLL wahrscheinlich KEINE .NET-Assembly ist.


Ich habe ein kleines Python-Modul zum Aufrufen von Windows-DLLs von Python unter Linux geschrieben. Es basiert auf IPC zwischen einem regulären Linux/Unix-Python-Prozess und einem Wine-basierten Python-Prozess. Da ich es selbst in zu vielen verschiedenen Anwendungsfällen / Szenarien benötigt habe, habe ich es als "generisches" ctypes entworfen Modul-Drop-in-Ersatz, der die meisten erforderlichen Installationen automatisch im Hintergrund durchführt.

Beispiel:Angenommen, Sie befinden sich in Python unter Linux, haben Wine installiert und möchten msvcrt.dll aufrufen (die Microsoft C-Laufzeitbibliothek). Sie können Folgendes tun:

from zugbruecke import ctypes
dll_pow = ctypes.cdll.msvcrt.pow
dll_pow.argtypes = (ctypes.c_double, ctypes.c_double)
dll_pow.restype = ctypes.c_double
print('You should expect "1024.0" to show up here: "%.1f".' % dll_pow(2.0, 10.0))

Quellcode (LGPL), PyPI-Paket &Dokumentation.

Es ist immer noch ein bisschen rau an den Rändern (z. B. Alpha und unsicher), aber es behandelt die meisten Arten von Parametern (einschließlich Zeigern).


Linux
  1. Remote-Desktop von Windows auf Linux-Desktop mit XRDP

  2. Fahren Sie den Windows-Rechner vom Linux-Terminal herunter

  3. Mit Putty scp von Windows nach Linux

  4. Verwendung des Windows-Subsystems für Linux (WSL) von Sublime Text

  5. Dynamisches Linken - Linux vs. Fenster

Bringen Sie podman unter Windows mit Linux zum Laufen

11 Gründe für die Migration vom Windows-Desktop zum Linux-Desktop

So mounten Sie Windows Share unter Linux mit CIFS

6 Funktionen, die Windows 10 von Linux übernommen hat

Umstieg von Windows auf Linux

So greifen Sie von Windows 10 auf Linux-Partitionen zu