扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
很简单,点击菜单“项目”--“WindowsApplication1属性”
创新互联-专业网站定制、快速模板网站建设、高性价比博望网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式博望网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖博望地区。费用合理售后完善,十年实体公司更值得信赖。
在属性面板里点“资源”,这里可添加字符串资源、图片资源、多媒体资源等等。
使用资源很简单,举例如下:
Label1.Text = My.Resources.String1
PictureBox1.Image = My.Resources.小猫
由于你要求的是能够动态的加载与卸载,所以这里选用了appdomain的load方法来加载一个程序集(同样的,卸载的时候调用appdomain的静态方法Unload即可).
另外由于,在appdomain.load的时候remoting会试图将程序集序列化到defaultdomain中去,这会产生问题,通常以一个"FileNotFoundException"结束,因此采用了一种折中的办法.
思路如下:
1.建立一个新的程序集,里面包含一个轻量的类型,这个类型只包含一个用来加载程序集的公共方法;
2.在你的主程序里面,用appdomain.load来加载上一步的程序集,接着实例化上一步的轻量的类型;
3.而后就可以像操作通常的对象一样,调用它上面的方法来加载你想要的程序集了;
源代码已经打包发给你了,
你看看吧~
如果有问题,再找我哈
同LS,“加载”是什么意思
单是加载的话,
非托管的用API LoadLibrary
托管的用 Assembly类的几个静态方法
不过你要怎么“显示”呢
比如,我写一个dll,里面就一个函数,Function Sum(Byval a As Integer,Byval b As Integer) As Long。你怎么显示呢?
“加载”dll的方法是通用的
但是“使用”(包括你所说的显示)dll要具体情况具体分析。除了一些分析dll的通用软件,大多数时候都要根据dll中提供的函数来决定。
比如VS的工具箱,可以“加载”控件的dll,但不能“加载”user32.dll
先Imports System.Runtime.InteropServices 然后Class XXXX DllImport("G:\newversion\zlib1.dll", EntryPoint:="zlibVersion", SetlastError:=True, CharSet:=CharSet.Unicode, ExactSpelling:=True, CallingConvention:=CallingConvention.StdCall) Public Shared Function zlibVersion() As String
End Function...'在里面调用zlibVersion()即可调用zlib1.dll的zlibVersion方法,其他DLL你根据接口灵活定义好了End Class
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流