2012-05-15 7 views
2

많은 Windows 설정에서 프린터로 직접 인쇄 할 때 일반적으로 두 개의 파일이 Windows 스풀 디렉터리 "C : \ Windows \ System32 \ spool \ PRINTERS"에 만들어집니다. 스풀 파일 "80021.SPL"과 그림자 파일 "80021.SHD"는 이러한 파일의 예입니다. 스풀 파일에는 드로잉 지침의 고기와 감자가 포함되어있어 프린터가 페이지를 인쇄 할 수 있습니다. 이 스풀 파일의 데이터는 언어 기술 및 사용 된 인쇄 드라이버에 따라 다양한 형식의 문자로 제공됩니다. 그러나 인쇄 서버에있는 프린터로 인쇄하는 경우 단일 ".TMP"파일이 대신 생성되어 인쇄 서버로 전송됩니다. 나는 그것이 단지 .SHD와 .SPL 파일들이 하나의 전송 파일로 결합되어 서버에 도착할 것이라고 가정하는 것이 공평하다고 생각한다. 그러나, 그것의 읽을 수없는, 나는 그것의 지퍼로 잠긴, 암호화 된, 또는 무엇인지 모르지만, 나는 그것을 해독 할 수 없다. PDF를 인쇄 할 때 대개 스풀 파일 (.SPL)에서 일반 텍스트 포스트 스크립트 명령어를 열어 텍스트 편집기에서 열어 볼 수 있습니다. 스풀 파일 (.SPL)을 GhostScript와 같은 포스트 스크립트 뷰어로 보내고 화면에 그려진 페이지를 보여줄 수도 있습니다. 그러나 작업이 모두 .TMP 파일에 패키지화되어있을 때 기본적으로 이진 파일이됩니다. 누구나 이러한 전송 .TMP 스풀 파일에서 데이터의 압축을 해제하는 방법을 알고 있습니까?확장자가 .tmp 인 스풀 파일의 파일 형식은 무엇입니까?

+0

내가 늦은 날에 조금 알고 있지만, 궁극적으로 해결책을 찾을 수 있었습니까? –

+0

@HarshPandey,이 길을 따라가 아니라. 드라이버는 드라이브에 로컬로 데이터를 쓰는 방법이 매우 특별합니다. 아주 작은 비율의 드라이버 만이 스푸핑 데이터를 완성하여 디스크에 기록합니다. 그리고 거기에는 십여 가지의 경쟁하는 스풀 파일 형식이 있습니다. EMF, PCL (버전 톤), PostScript 등이 있습니다.보고 싶다면 그것을 잡는 가장 좋은 방법은 네트워크에서 나오는 것을 잡는 것입니다. RAW 형식의 포트 9100, 그리고 다른 LPR 형식의 포트를 조회 할 수 있습니다. – Ultratrunks

답변

0

필자가 갖고있는 파일은 처음에는 독점적 인 MS 구조로 채워진 EMF 파일이라고 생각합니다. EMF 구조를 다루는 지 알아내는 가장 쉬운 방법은 가지고있는 tmp 파일에서 ANSI 문자 'EMF'를 찾는 것입니다.

이러한 문자를 찾으면 파일의 시작 부분에서 독점 구조 데이터를 제거한 다음 표준 EMF 파일로 처리해야합니다. 다행히 모든 EMF 파일에는 표준 헤더 형식이 있으므로 EMF 파일의 시작 위치를 결정해야합니다.

EMF 파일 헤더의 좋은 설명이있다 here

+0

나는 이것이 사실이 아니라고 확신한다. 나는 작동하는 EMF 파서를 만들었고이 파일의 머리 부분이나 꼬리 부분을 만들 수 없습니다. 나는 .SHD와 .SPL 파일의 조합이 확실하고 인쇄 서버로의 전송을 위해 암호화 된 것으로 확신한다. 그러나 나는 긍정적이지 않다. – Ultratrunks

+1

@Ultratrunks : 내 생각에 네가 내 직감을 오해했을 수도있다. EMF 파서는 파일 시작 부분에서 쓰레기를 제거 할 때까지 파일을 열 수 없습니다. tmp 파일을 검사하여 EMF 헤더를 찾은 다음 헤더 시작 전에 모든 것을 삭제하십시오. – BBoy

+0

@Ultratrunks : 프린터 대기열의 정확한 설정을 살펴 보는게 어떨까요? 대기열의 '속성'에서 모두 찾을 수 있습니다. 사용 된 정확한 스풀 형식을 찾으려면 '고급'탭을보십시오. 기본 값이 아닌 값으로 설정할 수 있습니다. 그러나 EMF의 변종이 될 가능성이 매우 높습니다. –