iTextSharp を使用して PDF のいくつかのプロパティにアクセスする C++ プロジェクトを作成しているため、C# から値を取得して C++ に渡すマネージド C++ DLL を作成しました。
これらの 2 つの Dll (iTextSharp と Managed C++ ) を Executable フォルダーに保持すると、すべて正常に動作しますが、これらの 2 つの Dll を Custom フォルダーに保持すると、動作しません。これが私のコードです。
LPCTSTR wrapperFullPath = "D://New Folder//PDFWrapper.dll";
LPCTSTR iTextFullPath = "D://新しいフォルダー//itextsharp.dll";
HMODULE wrapInst = LoadLibraryExA(wrapperFullPath , NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
HMODULE iTextInst = LoadLibraryExA(iTextFullPath , NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
if((wrapInst != NULL) && ((iTextInst != NULL)) {
... // ここで PDF プロパティを取得 - 行 1
}
iTextSharp Dll が実行可能フォルダーの場合、問題ありません。そうでない場合は、 Line 1 でクラッシュします。環境変数も設定しようとしましたが、それは役に立ちませんでした。
-パンカジ