VB.Net中实现VB6中的App.hInstance

来源:互联网 发布:下载腾讯qq聊天软件 编辑:程序博客网 时间:2024/06/03 17:21

 VB.Net中实现VB6中的App.hInstance  
by sandy_zc_1 (把n久前自己发在FM吧中的东西转到自己的blog上,汗)

-----------当时的原文↓↓-----------------------------------------------------------------------------------------------------------



VB.Net中实现VB6中的App.hInstance

查了半天,终于找到了一个可用的方法,.Net真是麻烦啊。


Imports System.Runtime.InteropServices

然后定义
Dim hInstance as IntPtr

再定义
Dim mdl() As System.Reflection.Module = System.Reflection.Assembly.GetExecutingAssembly.GetModules

最后
hInstance=Marshal.GetHINSTANCE(mdl(0))

如果要传API的话,还得把IntPtr转Int32
Dim hInstance32 as Int32 =hIsntance.ToInt32

这段时间搞.Net,感触真多啊,感觉M$为了做跨平台,把.Net搞的太脱离Win32了,结果现在跨平台没有进展多少,Win32编程倒是麻烦了不少。不爽啊。  

---------------当时的原文↑↑------------------------------------------------------------------------------------------------------

现在.Net用得多了,回头来看还是感到比较汗。发现当时对Win32编程的理解也还不够,现在看来.Net有些很麻烦的地方其实还是有道理的。

其实抛开M$那一套,.Net还是不错的。