Besoin d'aide pour l'ouverture de spouleur d'imprimante de l'ombre de fichier (.SHD) qui est verrouillé

Je suis intéressé par quelques informations à l'intérieur d'un fichier de l'ombre (.shd) situé à l'intérieur du répertoire de file d'attente d'impression windows "C:\Windows\System32\spool\PRINTERS". Chaque fois qu'une tâche d'impression est lancée, un fichier spool (.spl) et un fichier de l'ombre (.shd) sont créés dans ce répertoire. Jusqu'à présent j'ai réussi à détecter lorsqu'un travail d'impression a commencé, et ont été en mesure de mettre en pause cette tâche d'impression. Si vous n'avez pas interrompre le travail, les fichiers finissent par faire leur chemin à l'imprimante et sont ensuite supprimées par windows.

Mon problème. Je ne peux pas ouvrir les .SHD fichiers, car ils sont enfermés dans une telle manière que vous ne pouvez pas les lire alors qu'ils sont ouverts par le sprint spouleur. J'ai même essayé d'aller dans le fichier dans l'explorateur windows et il vous suffit de copier le fichier vers un autre fichier, et qui ne fonctionne pas non plus. L' .SPL fichiers spool, je peux l'ouvrir mais. J'attends simplement et assez rapidement le spouleur version de ce fichier. Pour le fichier de l'ombre, bien que, il tient en permanence à ce fichier. Malheureusement, c'est la seule dont j'ai besoin.

La ligne de code que j'utilise spécifiquement pour ouvrir le fichier se présente comme suit:

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

La IOException que je reçois est:

Le processus ne peut pas accéder au fichier 'C:\Windows\system32\spool\PRINTERS\FP00083.SHD" parce qu'il est utilisé par un autre processus.

Donc, oui, il est utilisé par un autre processus. Qu'elle soit utilisée par la fenêtre du service spouleur d'impression. Mais je ne pense pas qu'il y est quelque chose que je peux faire à ce sujet. Tout ce que je veux faire est de lire le fichier. Je ne veux pas y apporter de modifications. Est-ce que je peux le faire ici, ou suis-je tout simplement vissé?

InformationsquelleAutor Ultratrunks | 2011-09-07