【问题标题】:Using app.config with Interop Controls将 app.config 与互操作控件一起使用
【发布时间】:2008-10-06 20:10:21
【问题描述】:

我有一个使用 app.config 的 .net 项目 (MySolution.Common)。我在名为 MySolution.InteropCtrl 的 InteropUserControl 项目中使用项目 MySolution.Common。 MySolution.InteropCtrl 嵌入到 VB6 项目中。当 MySolution.InteropCtrl 在 VB6 项目中时,它找不到 app.config 文件。 InteropControl 中的所有内容都可以在 VB6 中使用,除了依赖于 app.config 文件中的信息的内容。我需要更改什么以便 MySolution.InteropCtrl 在 VB6 中可以看到 app.config 文件?

【问题讨论】:

    标签: .net vb6 interop


    【解决方案1】:

    我对此不是 100% 确定的。但我会排除一些可能性。首先,app.config 不是文件的正确名称。虽然它是您项目中的 app.config,但它会自动重命名为 binary.exe.config 或 binary.dll.config(取决于项目类型)其中 binary 是项目的名称。

    其次,我不能 100% 确定 .NET 在应用程序加载时是否始终正确加载和读取 dll.config 文件。我不相信它会自动发生,并且如果它用于 dll,则必须进行额外的调用才能读取配置文件。如果您重命名配置文件以匹配您的 exe,那么它肯定会加载并可供您使用。

    【讨论】:

    • 我不得不重命名文件(vb6 的二进制名称).exe.config 并且它起作用了。谢谢。
    【解决方案2】:

    Beth Massi 有一篇博文,介绍了如何使用配置文件进行 VB 6.0 的互操作控制。

    http://blogs.msdn.com/bethmassi/archive/2007/10/24/using-my-settings-and-wcf-configuration-with-the-interop-forms-toolkit.aspx

    【讨论】:

      【解决方案3】:

      两种选择:

      1) 找到您的 vb.exe 路径并将您的配置放在那里,如 VB6.exe.config。

      2) 如果您不需要使用 IDE,只需将您的 MyApp.exe 作为 MyApp.exe.config 放入项目文件夹中,然后运行该 exe,它就会找到它。

      【讨论】:

        猜你喜欢
        • 2010-11-12
        • 2010-10-15
        • 1970-01-01
        • 1970-01-01
        • 2010-10-07
        • 2011-02-08
        • 2011-02-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多