VB6 使用 .Net dll。无法读取 app.config
Posted
技术标签:
【中文标题】VB6 使用 .Net dll。无法读取 app.config【英文标题】:VB6 using a .Net dll. Cannot read app.confg 【发布时间】:2014-12-11 20:02:33 【问题描述】:我有一个用 c# 编写的 DLL,它运行良好(它所做的并不重要)。
然后我尝试从 VB6 调用。
再次,一切都很好。
当我更改 c# 代码以使用 app.config 存储配置数据时,VB6 代码失败。
现在我知道 .Net 中的 DLL 会从调用应用程序中查找 app.config,但 VB6 没有。
这是我必须忍受的事情,还是有其他方法?
【问题讨论】:
equivalent of app.config for library (dll)的可能重复 谢谢你,但我的问题是 VB6 调用 DLL。 DLL 正在寻找 app.config,但 VB6 没有 app.config 文件。我确实尝试将配置文件复制到 VB6 目录中,但它仍然不起作用。 是什么让您认为 DLL 正在寻找 app.config?它不是。它正在寻找配置文件。那不是一回事。 【参考方案1】:这是在黑暗中的尝试,我这里没有所有东西可供我测试,但是 app.config 文件通常会在构建时重命名为 MyApp.exe.config您的 MyApp.exe 项目。 VB6 应用程序正在调用 dll(假设它是 MyVbApp.exe)尝试将部署目录中的 .config 文件重命名为 MyVbApp.exe.config。
【讨论】:
用加载 .NET .dll 并将配置文件重命名为VB6Application.exe.config
的 VB6 .exe 进行了尝试。
是的,我记得这就是您必须使用 VB6 应用程序执行此操作的方式。我通常不在笔记本电脑上保留 VB6。以上是关于VB6 使用 .Net dll。无法读取 app.config的主要内容,如果未能解决你的问题,请参考以下文章
如何在vb6中注册一个不能用作com互操作的.net DLL?
VB.net调用DLL,捕捉到AccessVioationException尝试读取或写入受保护的内存。这通常指示其他内存已损坏。