문제

제가 진행중인 프로젝트는 타사 구성 요소를 사용하여 ABCPDF.NET이라는 VB.NET 웹 시스템에서 동적 PDF를 구축하는 것입니다. (끔찍한 도구는 아니지만 큰 도구도 아닙니다.)

때때로, 내가 추측 할 수없는 이유로, 문서 객체는 sehexception을 던졌습니다. Futher를 파고, 이것은 websupergoo.abcpdf6.internal.pdfexception 유형의 문서 객체에서 사용자 정의 예외로 인해 발생합니다. 내용에는 없음이 아닌 제목 "이미지 데이터를 얻을 수 없습니다. 메모리에서 벗어날 수 없습니다."일반적으로 PDF에 이미지를 추가하려고 할 때 발생합니다. 이 이미지는 100K 미만의 PNG이므로 크기가 문제가 아니라고 생각합니다.

또한, 정말 이상한 일은이 문제가 일단 시작되면 중지 할 수있는 유일한 방법은 웹 서버를 재부팅하는 것입니다.

이 문제를 겪은 사람이 있습니까 (아니면이 도구를 사용 했습니까?)

도움이 되었습니까?

해결책 2

3 개월 후 업데이트 :

내가 알 수 있듯이 ABCPDF 6에서 7에서 7에서 업그레이드했을 때 메모리 문제가 모두 해결되었습니다. 버전 7은 더 이상 .NET 래퍼가있는 COM 객체가 아니라 모든 관리 코드가 바닥에서 상승하는 것으로 보입니다. 여전히 가장 큰 PDF 생성기는 아니지만 자원 처리 문제가 해결 된 것 같습니다.

다른 팁

매력적인. 나는 일어나고있는 결론에 도달했다. 사용 블록 끝에서 여전히 Doc.Clear ()를 호출합니까?

이전 에이 오류를 구체적으로 보지 못했지만 이전에 ABC PDF와 관련하여 메모리 문제가있었습니다.

짧은 이야기는 완전히 관리되는 코드 기반이 아니라 단순히 COM 버전 주변의 .NET 래퍼라는 것입니다. 즉, 우리는 객체를 제대로 처리하지 않기 위해 메모리 사용 문제를 추적했습니다.

따라서 : 대신 :


Dim doc As New Doc()
'etc...

이 작업을 수행:


    Dim doc as Doc
    Using doc As New Doc()
      'etc...
    End Using
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top