它在哪里寻找COM / WCF配置文件?

时间:2011-04-21 13:38:08

标签: .net wcf vb6 interop config

我有一个安排,我用一个闪亮的新WCF服务替换遗留代码。

我有一个dll(a.dll)调用我正在替换的dll(b.dll)

b.dll使用WCF调用来访问我的IIS托管的WCF应用程序提供的功能(c)我正在使用b-c的手写代理,以便一切都得到充分的整理。

我遇到的问题是当我运行使用a.dll的测试应用程序,因此b.dll和c它抱怨它无法找到我的端点配置。

在这种情况下,它在哪里寻找配置文件?我试过创建一个b.dll.config。

我厌恶硬编码,因为这是WCF的一个主要优点,它可以通过配置进行配置,因此无需重新编译。

3 个答案:

答案 0 :(得分:0)

只有一个默认配置文件,句点。如果您正在运行app.exe,那就是app.exe.config。如果它是基于Web的应用程序,那么它就是web.config文件的层次结构。

这就是它正在寻找配置的地方。

答案 1 :(得分:0)

回答: - 很可能我不会在8小时内回答我自己的问题 -

你好,

致所有关注者。我最后通过跟随别人建议的内容确定了配置文件。

将procmon。我添加了一个过滤器include-> path-> .config

从此我发现,因为我在使用它正在查找的VB6 ide运行代码中的'a''

C:\ Program Files \ Microsoft Visual Studio \ VB98 \ VB6.exe.config

疯了,我知道因为这个dll被称为我自己的test.exe而且test.exe.config没有用。

此外,它仅在VB6.exe实例化时查找文件,因此对其进行更改(显然我猜)需要回收...

我尝试了显然输出配置位置的代码,并使用此信息“抛出异常”。这些路径都错了。

现在我只需要弄清楚当a.dll没有在代码中运行时它的外观......深沉的欢乐!

更新:为了在代码中没有运行a.dll时完成,配置文件是test.exe.config。

这已得到确认。

谢谢你们!

答案 2 :(得分:0)

要添加到其他解决方案:当它在代码中运行时查看奇怪的地方时,我发现我可以简单地创建myapp.exe,将配置重命名为myapp.exe.config,然后运行exe(即不在ide中,它会找到它。