我在 VS2010 和 VB.net (interop) 中创建一个 windows com 对象
此 com 对象应该能够与任何非托管代码应用程序一起使用,例如 word、Excel 或在本例中为 Access。
com 对象的创建和使用 regasm 等工作正常。没问题。
但是,我创建了一个需要连接字符串或来自 app.config 文件的任何其他内容的 com 对象,然后它会失败。在这种情况下,它恰好是一个 Web 服务,并且出现了常见的“端点”或 app.config 文件找不到错误。(如果它只是一个连接字符串,我会简单地读取这个值——但由于 Web 服务定义,配置文件非常混乱)。
有人建议将 .dll 和 app.config 放在与办公程序(如 excel)相同的目录中,然后将配置文件重命名为 Excel.exe.config 应该可以工作。
这似乎对我不起作用。
有没有办法让现在是 com 对象的 vb.net 类 (.dll) 知道加载 + 使用 .dll 的配置文件而不是一些主应用程序文件?
请注意,在这种情况下,我没有主应用程序配置文件,因为我正在启动 Word 或 Excel 等非托管应用程序并尝试使用我的类对象。
在 vb.net 中,显然我可以将 .dll 中的配置文件内容复制到主应用程序配置中,然后我们就可以参加比赛了。如前所述,我没有托管的“主”文件。
那么,当在非托管代码中创建对象实例时,如何让 class.dll 文件加载 class.dll.config 文件?