小编Irv*_*Irv的帖子

具有相同名称的非托管C++ DLL在同一进程中共存

使用Visual Studio c ++ V10,我试图找出如何构建DLL并解决DLL命名冲突.这是详细信息.

S公司出售一种名为的产品M.EXE.假设M.EXE安装在\S\BIN\M.EXE.公司S静态链接到一个名为的DLL U.DLL,它安装在 \S\BIN\U.DLL. U.DLL包含开源代码,并使用Visual C++编译器选项构建/Zc:wchar_t-,该选项不将wchar识别为本机类型.

公司C发布了一个名为的DLL O.DLL,并发布了此DLL的API,并为其提供了一个导入库O.DLL.假设O.DLL安装在\C\BIN\O.DLL. O.DLL静态链接到一个名为的DLL U.DLL,它安装在\C\BIN\U.DLL. U.DLL是基于相同的开源代码构建的,但是使用Visual C++编译器选项构建/Zc:wchar_t,它们可以识别wchar_t为本机类型.

理想情况下,公司C和公司S将同意U.DLL使用相同的Visual C++选项进行构建,但这是不可能的.

M.EXE从公司S是可扩展的,因为我可以在非托管C++中构建我自己的DLL,如果我正确设置了所有内容NODE.DLL,M.EXE则调用它将调用.我想构建NODE.DLL它以便它静态链接到O.DLL公司C.但问题是,一旦M.EXE运行,它已加载U.DLL\S\BIN,并且符号\S\BIN\U.DLL略有不同\C\BIN\U.DLL,因为U.DLL每个构建的方式如何公司.因此,当M.EXE尝试加载时NODE.DLL,它会失败,因为当需要NODE.DLL加载时O.DLL,需要U.DLL的符号\C\BIN\U.DLL …

c++ dll visual-studio

6
推荐指数
1
解决办法
1455
查看次数

在jupyter/iPython笔记本脚本和类方法之间同步代码

我试图找出保持Jupyter/iPython笔记本中的代码和同步的类方法中的相同代码的最佳方法.这是用例:

我写了一个在笔记本中使用pandas的长脚本,并且有多个单元使开发变得容易,因为我可以检查笔记本中的中间结果.这对于pandas脚本非常有用.我将该工作代码下载到Python".py"文件中,并将该脚本转换为程序中Python类中的方法,该方法使用输入数据进行实例化,并根据该方法提供输出.一切都很好.Python类在更大的应用程序中使用,因此这是真正的可交付成果.

但是在该方法的实现中存在某个数据集的错误,这也存在于我的脚本中.我可以回到我的笔记本上,逐步浏览各种细胞以找到问题.我解决了这个问题,但后来我必须在常规的Python类方法代码中仔细进行更改.这有点痛苦.

理想情况下,我希望能够跨单元格运行类方法,因此我可以检查中间结果.我无法弄清楚如何做到这一点.

那么保持脚本代码和嵌入在类方法中的代码同步的最佳做法是什么?

是的,我知道我可以将类导入到笔记本中,但是我失去了通过单个单元格查看类方法中的中间结果的能力,这是我在纯脚本时所做的.使用pandas,这非常有用.

python pandas ipython-notebook jupyter jupyter-notebook

4
推荐指数
1
解决办法
1009
查看次数