编译代码中是否嵌入了VB.net引用?

编译代码中是否嵌入了VB.net引用?,vb.net,Vb.net,我正在用VS2010在VB.Net中编写一个商业应用程序。我的应用程序需要访问MySQL数据库。因此,我在项目的“引用”部分中引用了MySQL.Data.dll。出于许可原因,我希望确保此dll文件未嵌入到我的应用程序中。从我读到的内容来看,如果我将“copy local”属性设置为False,那么文件就不会被复制,我需要专门将其复制到我的bin目录中。因此,我将其设置为False并构建了我的项目。当我运行它时,我仍然可以连接到MySQL数据库,即使dll不在bin目录中。对我来说,这表明它正在

我正在用VS2010在VB.Net中编写一个商业应用程序。我的应用程序需要访问MySQL数据库。因此,我在项目的“引用”部分中引用了MySQL.Data.dll。出于许可原因,我希望确保此dll文件未嵌入到我的应用程序中。从我读到的内容来看,如果我将“copy local”属性设置为False,那么文件就不会被复制,我需要专门将其复制到我的bin目录中。因此,我将其设置为False并构建了我的项目。当我运行它时,我仍然可以连接到MySQL数据库,即使dll不在bin目录中。对我来说,这表明它正在使用构建进行编译。但是,引用指向我的硬盘上原始MySQL.data.dll所在的位置。当程序运行时,它还能在那里找到它吗

如何确保它未被编译?谢谢


顺便说一句,它不在GAC中(我使用gacutil.exe进行了检查)

如果您指的是将实际的程序集嵌入到您的程序集中,那么它不在GAC中。这是可以做到的,但它不是开箱即用的

当应用程序需要加载时,它会在许多地方查找您的引用

  • 广汽
  • 应用程序旁边(也可能是消费程序集)
  • 应用程序旁边的x64和x86文件夹(也可能是消费程序集)
  • 在app.config/web.config中为引用的程序集指定的任何路径

请记住,仅仅因为应用程序启动了,并不意味着它找到了所有引用。它很可能还没有加载所有这些文件,因为它只会在需要时加载这些文件。

是否尝试在Visual Studio外部运行应用程序?是的,但它仍然可以连接。我将exe带到另一台计算机上运行,但无法连接。所以很明显,它不是嵌入的。谢谢