2014-12-17 4 views
0

내 프로젝트에서 GhostScriptSharp API (gsdll32.dll)를 사용중인 Outlook 2010 추가 기능에서 작업하고 있으며 응용 프로그램에 문제가있는 문제가 발생했습니다. DLL이 게시 된 후로드합니다.Outlook 추가 기능이 게시 된 후 DLL을로드 할 수 없습니다.

플러그인은 Visual Studio에서 디버그 모드에서 완벽하게 잘 작동하지만 내가 게시하고 플러그인을 설치하면, 나는 런타임에 다음과 같은 예외가 점점 오전 : DLL 파일의 등록 정보에서

System.DllNotFoundException: Unable to load DLL 'gsdll32.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E) 

빌드 동작을 "content"로 설정하고 Copy to Output Directory를 "copy always"로 설정했습니다. 또한 gsdll32.dll 파일의 복사본을 C : \ Windows \ System32 폴더에 저장하려고 시도했지만 여전히 문제가 있습니다.

dll을 사용할 때 앱/플러그인을 게시 한 후에이 상황을 알게 된 사람이 있습니까? 내가하고있는 일이 분명히 잘못되어 있니?

+0

어떻게 최종 사용자 PC에 추가 기능을 설치 했습니까? –

+0

[GhostScriptSharp] (https://www.nuget.org/packages/GhostScriptSharp/) NuGet 패키지 사용을 고려하십시오. –

+0

추가 기능은 VS 2012에서 "디버그"메뉴 -> 게시 아래에있는 게시 마법사로 생성 된 원 클릭 배포 설치를 통해 설치됩니다. GhostScriptSharp NuGet 패키지를 사용하고 있지만 GhostScript가 필요합니다 시스템에 설치되어 있습니다. GhostScript를 설치하지 않고 코드 기능을 사용할 수 있도록 대신 GhostScript 설치 디렉토리 (gsdll32.dll)에서 기본 dll 파일을 가져 와서 내 프로젝트로 가져 왔습니다. 빌드하고 디버깅 할 때 DLL은 \ bin 폴더에 있고 디버그 세션은 예상대로 작동하지만 추가 기능을 게시하면 – srfigie

답변

0

플러그인에 gsdll32.dll을 포함시키지 않고 GhostScript를 플러그인과 별도로 설치하여이 작업이 가능해졌습니다. 또한 GhostScriptSharp 래퍼가 GhostScript에 액세스 할 수 있도록 내 "경로"환경 변수를 편집해야했습니다.

관련 문제