Windows-Subsystem für Linux (neue Technologie in Win10) verwendet LxssUserSession
Service. Dieser Dienst ist nicht dokumentiert, wird jedoch als API für WSL verwendet (bash.exe
verwendet diesen Dienst zum Ausführen von ELFs). Wie ich sehen kann, ist es Teil von COM: Es gibt CLSID
Datensatz in der Registrierung, die AppID
hat. Und AppID
hat LocalService
Datensatz: LxssUserSession
.Erstellen von Service-basierten COM-Instanz von CLSID
Ich bin nicht vertraut mit COM, aber wenn ich es richtig verstehe, sollte COM-Komponente von diesem Dienst unterstützt werden. Ich bin nicht in der Lage, eine Instanz dieser COM aus dem Skript zu erstellen, da es keine ProgID gibt, aber ich habe versucht, sie mit OleView
zu instanziieren. Wie auch immer, es meldet, dass CoCreateInstance
Fehler zurückgegeben. Wie kann dieser Fehler behoben werden? Könnte es sein, dass COM-Komponente nicht erstellt und für etwas anderes verwendet werden kann (d. H. Es gibt eine andere Schnittstelle). Ist es generell möglich, mit undokumentierten COM-Komponenten zu arbeiten? Kann ich bash.exe
Anrufe auf diesen Dienst verfolgen
Einige Hintergrundinformationen (so etwas wie logger.exe
oder ltrace
aber für COM?): Hier Fehler Ich erhalte: http://s32.postimg.org/wpthro5kl/error.png
bash.exe
= /bin/bash
. bash.exe
ist PE (Win64 bin app), die auf LxssUserSession
verbindet und fragt es /bin/bash
zu laufen (die ELF ist (Linux-App!). bash.exe
besser als "WLS.exe" ist, aber aus irgendeinem Grund sie es bash.exe
genannt.
sehen Sie hier: https://msdnshared.blob.core.windows.net/media/2016/04/LXSS-diagram-1024x472.jpg und hier ist seine headres http://s32.postimg.org/khjjf81th/bash.png Also, ich bin sicher, dass bash.exe
COM LxssUserSession
für die Verbindung verwendet und LxssUserSession
verwendet Pico (Psp ..) Funktionen ELF zu starten als „Pico-Prozess“ (siehe hier https://blogs.msdn.microsoft.com/wsl/2016/04/22/windows-subsystem-for-linux-overview/) .. Beide sind undokumentiert, aber ich glaube, ich kann COM wie, aber ich bekomme Fehler, die ich als erste Link zur Verfügung gestellt :(
Ich habe Fehler und Kommentare zu Bash, siehe neue Version von mein Beitrag – user996142
Danke, das ist sehr interessant, und macht viel mehr Sinn als die Beschreibungen der WSL, die ich ursprünglich gelesen habe.So wahrscheinlich ein echtes COM-Thema, nichts mit WSL an sich zu tun.KOMMATIK habe ich so wohl nie können Es tut mir leid, aber eine Google-Suche nach dem Fehlercode brachte einige Res Dies deutet darauf hin, dass Sie möglicherweise CoSetProxyBlanket aufrufen müssen. –