Programm von AnderenPC starten und im Vordergund ausführen

26/01/2009 - 09:35 von Bernhard Schneider | Report spam
Hallo Ng,

Ich habe ein etwas exotischeres Problem ich suche eiene Möglichkeit wie ich
das Programm das ich mit diesem Code:

ConnectionOptions connOptions = new ConnectionOptions();
connOptions.Username = "Administrator";
connOptions.Password = "admin";
connOptions.Impersonation = ImpersonationLevel.Impersonate;
connOptions.EnablePrivileges = true;
ManagementScope manScope =new
ManagementScope(String.Format(@"\\{0}oot\cimv2",ipadresse),connOptions);
manScope.Connect();


ObjectGetOptions objectGetOptions = new ObjectGetOptions();
ManagementPath managementPath = new
ManagementPath("Win32_Process");
ManagementClass processClass = new ManagementClass(manScope,
managementPath, objectGetOptions);
ManagementBaseObject inParams =
processClass.GetMethodParameters("Create");
inParams["CommandLine"] = "C:\\launcher.exe";
ManagementBaseObject outParams =
processClass.InvokeMethod("Create", inParams, null);

Starte dazu bringen kann im Context des Aktuellen Benutzer zu Arbeiten denn
es soll eine Screen Capture Software gestartet werden und so wird nur ein
Schwarzer Bildschirm aufgenommen

Danke im Voraus

Bernhard Schneider
 

Lesen sie die antworten

#1 Günter Prossliner
26/01/2009 - 13:43 | Warnen spam
Hallo Bernhard!

Ich habe ein etwas exotischeres Problem ich suche eiene Möglichkeit
wie ich das Programm das ich mit diesem Code:



Du willst also Screenshots von dem (bzw. einem) Desktop eines anderen
Rechners machen?

Ich nehme mal an, dass es sich dabei um eine Art administrativen Zugriff
handelt.

Fragen:
Warum verwendest Du nicht eine bestehende "VNC" Lösung bzw. die APIs dazu?

Ausserdem:
Wenn das keine Form von Spyware werden soll, wirst Du ja die Möglichkeit
haben auf den Clients ein Programm zu installieren.

Generell: Am besten ein Windows-Service, welches eine definierte
Schnittestelle (z.b. WCF) hat, und von Deiner "Controller" Anwendung
angesprochen wird. Das führt die Operationen lokal aus, und gibt Dir das
Ergebniss zurück.

Konkret: In XP dürftest Du das (Screenshots) irgendwie zum laufen bringen.
In (bzw. ab) VISTA gibt es allerdings diverse Einschrànkungen was den
Zugriff auf den interaktiven Desktop betrifft. Ohne jetzt genau zu wissen ob
das auch konkret auf Deine Anforderung zutrifft, würde ich mal annehmen,
dass es dort nicht so einfach geht. Alles was nicht interaktiv làuft, ist
nàmlich von den Benutzer-Sessions isoliert (was auch gut so ist).

Du muss dieses Client-Programm also in der jeweiligen Session (und nicht als
Service) starten. Das kann z.b. über einen Link in der Autostart Gruppe bzw.
über die Registry erfolgen.

Nebenbei sei bermerkt, dass der Benutzer auf jeden Fall in einer Form
benachrichtigt werden muss wenn Du ihn so (auch für administrative Zwecke!)
überwachst. Also z.b. eine Einblendung dass eine Aufzeichnung erfolgt.


mfg GP

Ähnliche fragen