我正在创建一个C ++项目,我使用iTextSharp访问PDF的一些属性,因此我创建了一个托管C ++ Dll来从C#获取值并将其传递给C ++。
现在,如果我将这两个Dll(iTextSharp和Managed C ++)保存在Executable文件夹中,那么一切正常,但如果我将这两个Dll保留在自定义文件夹中,那么它就不会。这是我的代码。
LPCTSTR wrapperFullPath =“D://新文件夹// 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是可执行文件夹,那么就可以了,否则它会在第1行崩溃。 我也试过设置环境变量,但没有帮助。
-Pankaj