2010-03-28 2 views
3

제 회사의 근무지에는 개발자가 여러 가지 이유로 지원하지 않는 기존 문서 관리 시스템이 있습니다. 필자는이 시스템에 포함 된 문서를 추출하여 궁극적으로 새로운 제 3 자 시스템으로 가져올 수 있는지 조사하도록 요청 받았습니다.사용자 지정 데이터 파일 리버스 엔지니어링

추적 및 프로세스 모니터링에서 나는 문서 이미지 (주로 tiff 파일)가 1.5GB 파일 수로 저장되어 있다고 판단했습니다. 이러한 파일은 특정 오프셋에서 읽은 다음 tmp 파일에 기록한 다음 웹 응용 프로그램을 통해 클라이언트에 제공 한 다음 삭제합니다.

나는 tiff 이미지가 포함 된이 큰 파일을 검사하고 궁극적으로 추출하여 개별 파일에 쓸 수있는 방법에 대한 제안을 찾고 있다고 생각합니다.

+1

"개발자가 지원하지 않음"은 소스 코드의 사용 가능 여부에 대해 실제로 말하지 않습니다. 그렇지? 그렇다면이 파일을 읽을 수 있도록 해킹 할 수 있어야하며, 이는 새 변환기의 기초가 될 것입니다. –

+0

슬프게도 소스 코드를 사용할 수 없습니다. 응용 프로그램이 이러한 파일에 포함 된 데이터에 액세스하기 위해 호출하는 다양한 관리되지 않는 dll 파일이 있습니다. 지금까지 수집 한 정보에서 요청한 실제 tiff 파일을 포함하는 큰 파일의 바이트를 계산하기 위해 응용 프로그램에서 반환 된 데이터 중 일부를 사용해야하는 데이터베이스 쿼리가 실행되었음을 확인했습니다 (sp_getDoc ). 파일의 시작 및 끝 위치와 관련된 것처럼 보이는 두 개의 숫자 필드가 반환됩니다. – AdamW

+0

웹 앱에서 파일을 자동으로 요청하여 파일을 가져올 수없는 이유는 무엇입니까? – Gabe

답변

1

TIFF는 어떤 방식으로 압축되어 있습니까? 그렇지 않다면 1.5G 파일에서 TIFF를 함께 꿰매십시오.

특정 1.5G 파일 (또는 그 일련의 파일)의 출력을 볼 수 있습니까? 그렇다면 비 압축 된 경우 해당 TIFF의 바이트 모양을 함께 조각 할 수 있어야합니다.

바이트가 표시되지 않으면 표준 압축 (zip, tar 등)을 시도하여 일치하는지 확인하십시오.

0

필자는 파일을 열고 필요한 오프셋을 찾은 다음 tiff 개체 (이상적으로는 메모리 또는 파일에서 스트리밍을 지원하는 개체)로 스트리밍합니다. 그렇다면 그것을 얻었습니다. 다음 번 시스템에서 유용 할 수있는 문서에 대한 메타 데이터가있을 수 있으므로 다른 비트를 둘러보십시오.

관련 문제