Frage

Ich habe eine .NET-Konsolenanwendung auf Windows Server 2003, als eine geplante Aufgabe ausgeführt wird.

Dies verwendet die Process-Klasse noch eine kleine Konsolenanwendung laufen, aber es nutzt Process.StartInfo.Username einen Benutzer zu verkörpern, um es auszuführen, wie.

Wenn das Konto, das in der geplanten Task in einem Administrator imitierten ist, dann funktioniert es perfekt, aber wenn nicht, dann erhalte ich die Fehlermeldung:

  

‚Die Anwendung konnte nicht richtig initialisiert werden (0xc0000142)‘

Ich habe versucht, der Benutzer anmelden als Batch-Job "und‚Lokal anmelden‘geben, aber dies scheint keine Wirkung zu haben. Die Konsole App anläuft als der imitierte Benutzer, dann aber nicht.

Mit Blick auf Process Monitor, das letzte Ereignis, bevor es versagt ist:

  

Tool1.exe - Bild laden - C: \ WINDOWS \ system32 \ kernel32.dll - ERFOLG

Ich betreiben habe Abhängig von dem Werkzeug und es meldet, dass dies der Fehler ist:

  

GetProcAddress (0x77E40000 [c: \ windows \ system32 \ KERNEL32.DLL] "FlsAlloc" genannt) von "C: \ windows \ system32 \ MSCOREE.DLL" bei der Adresse 0x7900746D und kehrte 0x77E6B49C by thread 1.   Exited "c: \ stfinstall \ stf \ tools \ tool1 \ TOOL1.EXE". (Prozess 0xB3C) mit Code-1282 (0x502) durch Gewinde 1

Wenn jemand etwas über weiß, was kann diesen Fehler verursachen, oder besser noch, wie ich das Problem beheben kann, lass es mich wissen!

Vorschläge eines alternativen Ansatz sind auch willkommen

Danke:)

War es hilfreich?

Lösung

Ich habe diese inzwischen gelöst, das Problem ist, dass es Zugriff auf den Desktop des Benutzers doesnt hat die geplante Task läuft als, so ist es nicht. Administratoren scheint diesen Zugang haben zu können.

So wie ich dazu gekommen es den Benutzer die Aufgabe auf das Feld läuft als ständig angemeldet haben war, so Zugriff auf den Desktop ist immer verfügbar, und das funktioniert OK. Hässliche ich weiß!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top