您可以Assembly
通过选择“添加现有文件”将您的(在您的情况下为 .dll)嵌入到您的项目中,然后将构建选项更改为“嵌入式资源”。
Handler
然后,您为第一次访问代码中的库时立即触发的AppDomain.CurrentDomain.AssemblyResolve
事件添加一个。
该处理程序代码如下所示:(注意完全限定的程序集路径包括正确的名称空间。我将其包装在一个函数中,该函数在您的应用程序启动时被调用。
AddHandler AppDomain.CurrentDomain.AssemblyResolve,
Function(sender As Object, args As System.ResolveEventArgs) As System.Reflection.Assembly
Dim ressourceName = "YourNamespace.YourSubNamespace." + New AssemblyName(args.Name).Name + ".dll"
Using stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(ressourceName)
Dim assemblyData(CInt(stream.Length)) As Byte
stream.Read(assemblyData, 0, assemblyData.Length)
Return Assembly.Load(assemblyData)
End Using
End Function
然后,您无需任何其他文件即可部署您的工具。