2 Stimmen

Warten Sie, bis Symantec End Point DoScan.exe das Scannen der Datei abgeschlossen hat.

Ich entwickle eine Anwendung, die das Hochladen von Dateien verwendet. Mein Kunde verwendet Symantec End Point Protection auf Windows Server.

Ich verwende also einen Beispielcode, um zu prüfen, ob eine Datei auf den Server hochgeladen wurde.

Ich rufe SEP über die Befehlszeile auf.

Beispiel-Code:

              String[] commands =  new String[6];
              commands[0] = "cmd";
              commands[1] = "/c";

              commands[2] = "C:\\Program Files\\Symantec\\Symantec Endpoint Protection\\DoScan.exe";
              commands[3] = "/cmdlinescan";
              commands[4] = "/ScanFile";
              commands[5] = fileName;

             Process process = Runtime.getRuntime().exec(commands);

             int exitVal = process.waitFor();

Ich habe auch festgestellt, dass SEP ein tägliches Protokoll für jede gescannte Datei unter .

scanResult = "C:\\Documents and Settings\\All Users\\Application Data\\"Symantec\\Symantec Endpoint Protection\\Logs\\";   

Hier möchte ich also die Datei scannen.

Ich habe ein Häkchen gesetzt, damit das Lesen der Datei an der Stelle beginnt. Sobald der Prozess 0 zurückgibt

Aber "int exitVal = process.waitFor();" wird zurückgegeben, bevor SEP das Protokoll in die Datei schreibt.

Ist SEP also "DoScan.exe" ruft den Thread zwischendurch auf, um mit dem Scannen der Datei zu beginnen.

Wenn ja, schlagen Sie mir bitte eine Alternative vor.

Für jede Hilfe wären wir dankbar

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X