Brauche Hilfe zum öffnen der Drucker-spool-shadow-Datei (.SHD), die gesperrt ist

Ich bin daran interessiert, einige Informationen in einer shadow-Datei (.shd), der sich in der windows spooling-Verzeichnis "C:\Windows\System32\spool\PRINTERS". Jedes mal, wenn ein Druckauftrag gestartet wird, wird eine spool-Datei (.spl) und einer shadow-Datei (.shd) sind in diesem Verzeichnis erstellt werden. Bisher habe ich erfolgreich bei der Erkennung, wenn ein Druckauftrag gestartet wurde, und in der Lage gewesen, um zu pausieren, dass die Druck-job. Wenn Sie don ' T pause die Aufgabe, die Dateien, die schließlich Ihren Weg in den Drucker und dann werden gelöscht, indem windows.

Mein problem ist. Kann ich nicht öffnen .SHD-Dateien, weil Sie gesperrt sind, in der Weise, dass Sie nicht Lesen können, während Sie durch die offenen sprint-spooler. Ich habe sogar versucht zu gehen, um die Datei in windows-explorer und kopiere die Datei auf eine andere Datei, und das hat nicht funktioniert entweder. Die .SPL-spool-Dateien, die ich öffnen kann obwohl. Ich wart einfach, und ziemlich schnell den spooler-Version dieser Datei. Für die shadow-Datei ist es allerdings dauerhaft hält sich an diese Datei. Leider, sein, den ich brauche.

Die Linie der code, den ich verwende, die speziell zum öffnen der Datei lautet wie folgt:

m_spoolJobStream = new FileStream(spoolFilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);

Die IOException, die ich erhalten:

Der Prozess kann nicht auf die Datei zugreifen 'C:\Windows\system32\spool\PRINTERS\FP00083.SHD" weil es wird von einem anderen Prozess verwendet.

Also ja, es wird von einem anderen Prozess verwendet. Deren Einsatz durch das Fenster Druck-spooler-Dienst. Aber ich glaube nicht, dass es irgendetwas gibt, was ich tun kann. Alles was ich will zu tun ist, Lesen Sie die Datei. Ich will nicht, um änderungen vornehmen zu dürfen. Ist es etwas, was ich hier tun kann oder bin ich einfach nur geschraubt?

InformationsquelleAutor Ultratrunks | 2011-09-07
Schreibe einen Kommentar