精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

代碼實現VB.NET Smartphone進程啟動案例

開發 后端
這里實現了VB.NET Smartphone進程啟動的案例,使用 ShellExecuteEx函數必須使用微軟在VB.net中不直接提供的指針操作,所以我只好根據網上的資料改寫了一個VB.net對內存指針的封裝類。

學習VB.NET Smartphone時,你可能會遇到VB.net實現Smartphone中進程啟動問題,這里將介紹VB.NET Smartphone進程啟動問題的解決方法,在這里拿出來和大家分享一下。開始時聲明時老是將ShellExecuteEx 和CreateProcess這兩個熟悉得不能再熟悉的Win32在VB 6中的聲明直接粘到程序中,僅是將VB6的long改為NET的int32,結果老是報錯。在網上查了N天資料,才發現原來Win CE的核心API都是在一個coredll.dll文件中,使得我差點沒氣死!

#T#還有一點是SHELLEXECUTEINFO結構中的lpFile這種指向字符串常量的指針由于字符的編碼問題不能象在Win32編程中簡單聲明為String類型,所在必須聲明為Intptr,這樣問題就出現了,使用 ShellExecuteEx函數必須使用微軟在VB.net中不直接提供的指針操作,所以我只好根據網上的資料改寫了一個VB.net對內存指針的封裝類,詳細VB.NET Smartphone代碼及解釋如下(新建一個模塊,將以下代碼粘貼進去即可使用):

  1. Imports System.Runtime.InteropServices '引及Net框架中對底層操作支持的命名空間  
  2. Public Class clsDAMSMobileMarshal '我寫的內存管理類  
  3. #Region "與內存有關的API聲明"  
  4. REM 以下是與內存有關的移動設備API  
  5. Public Declare Function LocalAlloc Lib "coredll.dll" Alias "LocalAlloc" (ByVal wFlags As Int32, _  
  6. ByVal wBytes As Int32) As IntPtr  
  7. Public Declare Function LocalFree Lib "coredll.dll" Alias "LocalFree" (ByVal hMem As Int32) As Int32  
  8. Public Declare Function LocalLock Lib "coredll.dll" Alias "LocalLock" (ByVal hMem As Int32) As Int32  
  9. Public Declare Function LocalReAlloc Lib "coredll.dll" Alias "LocalReAlloc" (ByVal hMem As IntPtr, _  
  10. ByVal wBytes As Int32, ByVal wFlags As Int32) As IntPtr  
  11. #End Region  
  12. #Region "API常量聲明"  
  13. Public Const LMEM_FIXED = 0 
  14. Public Const LMEM_MOVEABLE = &H2  
  15. Public Const LMEM_ZEROINIT = &H40  
  16. Public Const LPTR = LMEM_FIXED Or LMEM_ZEROINIT  
  17. #End Region  
  18.  
  19. Public Shared Function fnAllocHLocal(ByVal ni_i32Size As Int32) As IntPtr  
  20. '申請本地內存,返回一個指向該內存塊的指針  
  21. Return LocalAlloc(LPTR, ni_i32Size)  
  22. End Function  
  23.  
  24. Public Shared Function fnFreeHLocal(ByRef ni_pLocal As IntPtr) As Int32  
  25. REM 釋放指定的內存塊柄  
  26. Dim ti32FunctionReturnValue As Int32  
  27. If ni_pLocal.Equals(IntPtr.Zero) = False Then  
  28. ti32FunctionReturnValue = (LocalFree(ni_pLocal.ToInt32))  
  29. If ti32FunctionReturnValue = 0 Then  
  30. ni_pLocal = IntPtr.Zero  
  31. End If  
  32. End If  
  33. Return (ti32FunctionReturnValue)  
  34. End Function  
  35.  
  36. Public Shared Function fnReAllocHLocal(ByVal ni_pIn As IntPtr, ByVal ni_i32Size As Int32) As IntPtr  
  37. '對指定的內存塊重新定義大小  
  38. Return LocalReAlloc(ni_pIn, ni_i32Size, LMEM_MOVEABLE)  
  39. End Function  
  40.  
  41. Public Shared Function fnStringToHLocalUni(ByVal ni_strIn As String) As IntPtr  
  42. '將指定的字符串復制到一個內存塊中,并返回該內存塊的指針,這個指針必須使用fnFreeHLocal函數釋放  
  43. Dim ti32StringBufLength As Int32  
  44. Dim tpTempA As IntPtr  
  45.  
  46. If Not (ni_strIn Is Nothing) Then  
  47. If ni_strIn.Length = 0 Then  
  48. Return IntPtr.Zero  
  49. Else  
  50. ti32StringBufLength = (ni_strIn.Length + 1) * 2 ' 包括***一個中止字符  
  51. tpTempA = fnAllocHLocal(ti32StringBufLength)  
  52. If tpTempA.Equals(IntPtr.Zero) = False Then '申請內存成功  
  53. Marshal.Copy(ni_strIn.ToCharArray, 0, tpTempA, ni_strIn.Length)  
  54. Return tpTempA  
  55. End If  
  56. End If  
  57. End If  
  58. End Function  
  59. End Class  
  60.  
  61. 有了這個輔助函數,以下的API調用就簡單了,只需正確聲明即可,以下是ShellExecuteEx及CreateProcess涵數及其結構的正確聲明(同樣是將代碼粘貼到一個新建模塊中即可調用):  
  62.  
  63. imports System.Runtime.InteropServices  
  64. REM API常數聲明-------------------------  
  65. Public Const SW_SHOWNORMAL = 1 
  66. Public Const gcNORMAL_PRIORITY_CLASS = &H20  
  67. Public Const gcINFINITE = &HFFFF  
  68. Public Const WAIT_TIMEOUT = &H102&  
  69.  
  70. #Region "Structure SHELLEXECUTEINFO"  
  71. <StructLayout(LayoutKind.Sequential)> _  
  72. Structure SHELLEXECUTEINFO  
  73. Public cbSize As Int32  
  74. Public fMask As Int32  
  75. Public hwnd As IntPtr  
  76. Public lpVerb As IntPtr 'LPCTSTR,這種類型不能聲明為string,只可以老老實實聲明為Intptr  
  77. Public lpFile As IntPtr 'LPCTSTR,這種類型不能聲明為string,只可以老老實實聲明為Intptr  
  78. Public lpParameters As IntPtr 'LPCTSTR,這種類型不能聲明為string,只可以老老實實聲明為Intptr  
  79. Public lpDirectory As IntPtr 'LPCTSTR,這種類型不能聲明為string,只可以老老實實聲明為Intptr  
  80. Public nShow As Int32  
  81. Public hInstApp As IntPtr  
  82.  
  83. 'Optional members  
  84. Public lpIDList As IntPtr 'LPVOID  
  85. Public lpClass As IntPtr 'LPCTSTR  
  86. Public hkeyClass As Int32  
  87. Public dwHotKey As Int32  
  88. Public hIcon As Int32  
  89. Public hProcess As IntPtr  
  90.  
  91. Public Sub Dispose()  
  92. '在調用后釋放結構中的內存塊  
  93. clsDAMSMobileMarshal.fnFreeHLocal(Me.lpVerb)  
  94. clsDAMSMobileMarshal.fnFreeHLocal(Me.lpFile)  
  95. clsDAMSMobileMarshal.fnFreeHLocal(Me.lpParameters)  
  96. clsDAMSMobileMarshal.fnFreeHLocal(Me.lpDirectory)  
  97. End Sub  
  98. End Structure  
  99. #End Region  
  100.  
  101. #Region "Structure STARTUPINFO"  
  102. <StructLayout(LayoutKind.Sequential)> _  
  103. Public Structure STARTUPINFO  
  104. Public cb As Int32  
  105. Public lpReserved As IntPtr  
  106. Public lpDesktop As IntPtr  
  107. Public lpTitle As IntPtr  
  108. Public dwX As Int32  
  109. Public dwY As Int32  
  110. Public dwXSize As Int32  
  111. Public dwYSize As Int32  
  112. Public dwXCountChars As Int32  
  113. Public dwYCountChars As Int32  
  114. Public dwFillAttribute As Int32  
  115. Public dwFlags As Int32  
  116. Public wShowWindow As Int16  
  117. Public cbReserved2 As Int16  
  118. Public lpReserved2 As Int32  
  119. Public hStdInput As Int32  
  120. Public hStdOutput As Int32  
  121. Public hStdError As Int32  
  122. End Structure  
  123. #End Region  
  124.  
  125. #Region "Structure PROCESS_INFORMATION"  
  126. <StructLayout(LayoutKind.Sequential)> _  
  127. Public Structure PROCESS_INFORMATION  
  128. Public hProcess As IntPtr  
  129. Public hThread As IntPtr  
  130. Public dwProcessId As Int32  
  131. Public dwThreadId As Int32  
  132. End Structure  
  133. #End Region  
  134.  
  135. REM api函數聲明  
  136. #Region "Function CreateProcess"  
  137. public Overloads Declare Function CreateProcess Lib "coredll.dll" (ByVal imageName As String, _  
  138. ByVal cmdLine As String, _  
  139. ByVal lpProcessAttributes As IntPtr, _  
  140. ByVal lpThreadAttributes As IntPtr, _  
  141. ByVal boolInheritHandles As Int32, _  
  142. ByVal dwCreationFlags As Int32, _  
  143. ByVal lpEnvironment As IntPtr, _  
  144. ByVal lpszCurrentDir As IntPtr, _  
  145. ByRef si As STARTUPINFO, _  
  146. ByRef pi As PROCESS_INFORMATION _  
  147. ) As Integer  
  148. #End Region  
  149.  
  150. #Region "Function CloseHandle"  
  151. Public Declare Function CloseHandle Lib "CoreDll.dll" (ByVal Handle As IntPtr) As Int32  
  152. #End Region  
  153.  
  154. #Region "Function WaitForSingleObjectEx"  
  155. Public Declare Function WaitForSingleObjectEx Lib "coredll.dll" (ByVal hHandle As IntPtr, _  
  156. ByVal dwMilliseconds As Int32, _  
  157. ByVal bAlertable As Int32 _  
  158. ) As Int32  
  159. #End Region  
  160.  
  161. #Region "Function ShellExecuteEx"  
  162. Public Declare Function ShellExecuteEx Lib "coredll 
責任編輯:田樹 來源: 博客
相關推薦

2009-10-27 09:31:32

VB.NET啟動Sma

2009-11-03 10:18:46

VB.NET繼承

2009-10-29 14:02:24

VB和VB.NET比較

2010-01-08 15:41:36

VB.NET窗口關閉

2010-01-20 13:42:10

VB.NET訪問INIGetPrivateP

2010-01-22 15:09:11

VB.NET下載程序

2009-10-29 09:57:16

VB.NET實現數據綁

2009-10-27 10:58:00

VB.NET文件名排序

2009-10-26 17:38:22

VB.NET實現縮略圖

2009-11-03 13:16:58

VB.NET讀取文件

2010-01-22 17:12:08

VB.NET訪問Ifr

2010-01-14 17:03:01

VB.NET獲取網卡地

2009-10-27 09:59:17

VB.NET動態代碼

2009-11-02 10:53:34

VB.NET INI文

2009-10-26 17:10:53

VB.NET word

2009-11-10 14:30:33

VB.NET多窗體

2010-01-13 09:31:39

VB.NET窗體打印

2010-01-15 11:31:02

VB.NET接口實現多

2009-10-26 17:24:42

VB.NET終端服務啟

2009-10-13 10:21:58

VB.NET實現Web
點贊
收藏

51CTO技術棧公眾號

捆绑变态av一区二区三区| 欧美禁忌电影网| 亚洲最色的网站| 国产欧美综合精品一区二区| 毛片毛片女人毛片毛片| 国产精品一区二区av交换| 欧美色中文字幕| 欧美日韩视频免费在线观看| 乱色精品无码一区二区国产盗| 亚洲一区二区动漫| 中文在线不卡视频| 日批免费观看视频| 成人涩涩视频| 亚洲一区二区在线免费观看视频 | 国产精品白丝jk白祙喷水网站| 国语自产精品视频在免费| 亚洲色图欧美色| 一区二区中文字幕在线观看| 日本韩国精品一区二区在线观看| 日本一本草久p| 国产小视频免费在线网址| 国产乱码精品一区二区三区av| 欧美在线不卡区| 欧美日韩一级在线观看| 日韩欧美中文| 亚洲欧美在线看| 国产精品91av| 国产不卡精品| 欧美午夜影院一区| 日韩av资源在线| 在线视频观看国产| 国产精品人人做人人爽人人添| 国产精品一区免费观看| 一级片视频播放| 三级久久三级久久久| 欧美日韩福利视频| 看免费黄色录像| 精品产国自在拍| 日韩电影大片中文字幕| 亚洲精品久久一区二区三区777| 精品久久在线| 91精品办公室少妇高潮对白| www..com日韩| 欧美人与性动交α欧美精品济南到| 中文字幕一区二区三区蜜月| 亚洲成人午夜在线| 国产高清av在线| 久久久久久免费网| 蜜桃视频在线观看成人| 人操人视频在线观看| 96av麻豆蜜桃一区二区| 国产亚洲一区二区三区在线播放| www.av网站| 国产激情一区二区三区四区| 91成人免费视频| 国产草草影院ccyycom| 精品无码三级在线观看视频| 国产精品久久久久久久久久ktv | 亚洲欧美亚洲| 日韩小视频网址| 天堂а√在线中文在线鲁大师| 日韩欧美二区| 久久夜色精品国产欧美乱| 亚洲一级二级片| 亚洲五月综合| 欧美精品激情视频| 日韩在线视频免费播放| 国产精品久久久久久久免费软件| 欧美性受xxx| 国产99免费视频| 蜜桃精品在线观看| 亚洲www视频| 亚洲欧美高清视频| 91丨porny丨蝌蚪视频| 欧美中日韩免费视频| av在线日韩国产精品| 亚洲天堂中文字幕| 日本黄色片一级片| 欧美舌奴丨vk视频| 欧美日韩国产片| 国内自拍偷拍视频| 特黄特色欧美大片| 视频在线观看99| 暗呦丨小u女国产精品| 尤物网精品视频| 国产mv免费观看入口亚洲| 一级黄色片网站| 成人污污视频在线观看| 美女三级99| 欧美激情二区| 亚洲成人av一区二区| 成年人在线看片| 国产日韩欧美中文在线| 亚洲国产精品免费| 天堂资源在线视频| 伊人久久久大香线蕉综合直播| 日韩av免费在线| 国产女18毛片多18精品| 99精品黄色片免费大全| 一区二区精品视频| 19禁羞羞电影院在线观看| 在线日韩一区二区| 精品无码人妻少妇久久久久久| 免费av一区二区三区四区| 久久天天躁狠狠躁夜夜爽蜜月 | 日韩午夜免费视频| 国产欧美在线看| 亚洲欧美丝袜中文综合| 日韩美女久久久| 国产男女无遮挡| 精品视频在线观看免费观看 | 五十路六十路七十路熟婆| 欧美在线免费看视频| 久久久久久中文| 亚洲一区在线观| 99国产麻豆精品| 7777在线视频| 日本精品网站| 日韩经典第一页| 欧美成人精品欧美一| 日韩黄色免费网站| 蜜桃999成人看片在线观看| 在线三级电影| 91精品国产一区二区三区蜜臀| 欧美老熟妇乱大交xxxxx| 国产精品地址| 成人情趣片在线观看免费| 黄上黄在线观看| 精品美女永久免费视频| 免费黄色在线播放| 五月精品视频| 国产精品普通话| 国产一区精品| 日韩欧美在线视频日韩欧美在线视频 | 亚洲婷婷久久综合| 不卡欧美aaaaa| 喜爱夜蒲2在线| 亚洲狼人综合| 这里精品视频免费| 无码人妻av一区二区三区波多野| 国产精品中文字幕日韩精品| 欧美自拍资源在线| 中文字幕在线直播| 日韩成人在线观看| 国产午夜福利一区二区| 国产福利精品导航| 成人av在线播放观看| 成人在线视频区| 啊v视频在线一区二区三区| 欧美 亚洲 另类 激情 另类| 久久网站热最新地址| 国产乱子伦农村叉叉叉| 黑色丝袜福利片av久久| 久久频这里精品99香蕉| 亚洲精品国产suv一区| 亚洲国产精品一区二区久久恐怖片 | 无套内谢丰满少妇中文字幕| 久久精品国产大片免费观看| 欧洲成人免费视频| 国产资源在线播放| 欧美三级电影在线看| 91传媒免费观看| 国模少妇一区二区三区| 在线观看av的网址| 超碰97久久国产精品牛牛| 欧美极品少妇与黑人| 人妻视频一区二区三区| 欧美性xxxx在线播放| 国产aⅴ激情无码久久久无码| 日本视频免费一区| 一本一生久久a久久精品综合蜜| 色8久久久久| 欧美风情在线观看| 婷婷丁香一区二区三区| 色悠久久久久综合欧美99| 超碰人人人人人人人| 国产精品一卡二卡在线观看| 国产不卡一区二区视频| 精品久久美女| 91夜夜揉人人捏人人添红杏| 污污在线观看| 亚洲免费视频网站| 一区二区精品视频在线观看| 一区二区三区四区不卡在线| 国产麻豆天美果冻无码视频| 丝袜美腿亚洲一区| 2021国产视频| 久久99精品久久久久久园产越南| 国产一区二中文字幕在线看| 动漫一区二区| 伊人久久久久久久久久| 精品女同一区二区三区| 色综合久久中文字幕| 国产免费美女视频| 99国产精品久久| 亚洲色图偷拍视频| 亚洲一区图片| wwwjizzjizzcom| 免费成人网www| 成人91视频| 久久99国产精品二区高清软件| 欧美激情啊啊啊| 成人午夜影视| 亚洲第一网站男人都懂| 亚洲图片中文字幕| 欧美日韩另类字幕中文| 黄色精品视频在线观看| 91老师国产黑色丝袜在线| 天天综合成人网| 日韩成人精品在线| 18岁网站在线观看| 欧美午夜影院| 在线观看成人一级片| 亚洲第一二三区| 97神马电影| 欧美久久久网站| 国产91网红主播在线观看| 青草视频在线免费直播 | 国产精品女主播一区二区三区| 波多野结衣激情| 欧美亚洲激情| 欧美国产一区二区在线| 福利欧美精品在线| 亚洲最大福利视频网| 久久影视精品| 日本成人精品在线| 韩日毛片在线观看| 欧美激情按摩在线| 性欧美video高清bbw| xxxx欧美18另类的高清| 9191在线| 亚洲午夜小视频| 精品三级久久久久久久电影聊斋| 亚洲二区中文字幕| 天堂网在线观看视频| 欧美成人国产一区二区| 国产成a人亚洲精v品无码| 欧美剧情片在线观看| 中文字幕一区二区免费| 在线观看日韩一区| wwwwww在线观看| 91成人在线免费观看| 亚洲影院在线播放| 日韩欧美在线观看视频| 在线精品免费视| 欧美性猛交xxxxx免费看| wwwxxx亚洲| 黑丝美女久久久| 欧美在线观看不卡| 日韩欧美国产成人| 日韩黄色片网站| 欧美性xxxxxx少妇| 国产又大又长又粗| 91麻豆精品国产自产在线| 国产免费av观看| 日韩午夜中文字幕| 亚洲国产精品久久久久爰性色| 日韩欧美第一区| 日韩一级片免费看| 亚洲精品一二区| 国产免费av高清在线| 这里精品视频免费| 成a人片在线观看| 欧美激情影音先锋| 一二三四视频在线中文| 国产精品9999| 成人免费91| 高清视频在线观看一区| 九九热播视频在线精品6| 久久精品日韩| 日韩理论电影| 日本精品福利视频| 一本色道久久| mm1313亚洲国产精品无码试看| 蜜臀av一区二区在线免费观看| 三区视频在线观看| 国产99久久精品| 波多野结衣先锋影音| 欧美国产1区2区| 一区二区在线观看免费视频| 偷偷要91色婷婷| 中文字幕在线观看免费| 精品日韩一区二区三区免费视频| 青青操视频在线| 色偷偷88888欧美精品久久久| 天堂av资源在线观看| 青青a在线精品免费观看| 日韩av懂色| 精品卡一卡二| 国产高清一区二区| 国产特级黄色大片| 激情都市一区二区| 星空大象在线观看免费播放| 中文字幕第一区二区| 久久综合色综合| 欧美日韩在线三级| 天堂在线资源网| 色妞一区二区三区| 玖玖在线播放| 91九色单男在线观看| 亚洲最大在线| 国产成人亚洲综合无码| 日韩国产高清影视| 男人网站在线观看| 最新热久久免费视频| 51国产偷自视频区视频| 日韩欧美专区在线| www.久久热.com| 97人人做人人爱| 免费看日产一区二区三区 | 999久久久亚洲| 国产中文字幕视频在线观看| 国产精品一级黄| 欧美a在线播放| 欧美小视频在线观看| 精品女同一区二区三区| 久久精品成人欧美大片古装| 成人爱爱网址| 国产高清精品一区| 欧美成人一品| 91女神在线观看| 久久精品人人做人人爽人人| 日产精品久久久久| 日韩欧美区一区二| 黄色网页在线免费观看| 国产精品久久色| 国产精品一在线观看| 国产v片免费观看| 成人免费观看av| 青草草在线视频| 日韩午夜激情电影| 黄色在线免费网站| 国产中文字幕亚洲| 欧美xxxx中国| 亚洲视频第二页| 国产精品麻豆久久久| 亚洲男人天堂网址| 亚洲无亚洲人成网站77777| 女海盗2成人h版中文字幕| 精品国产乱码一区二区三区四区| 国产精品多人| 欧美肉大捧一进一出免费视频| 亚洲一区二区三区在线看| 国内精品久久久久久久久久久| 久久夜色精品国产欧美乱| 国产一区 二区| 中文字幕在线乱| 国产一区在线观看麻豆| 日本午夜在线观看| 欧美一区二区二区| 在线heyzo| 国产精品久久久久久久久久久久冷 | av在线网站观看| 午夜精品影院在线观看| 色综合视频在线| 91av中文字幕| 免费精品国产| 国产精品入口免费软件| 国产精品视频在线看| 888奇米影视| 欧美wwwxxxx| 澳门精品久久国产| 怡红院av亚洲一区二区三区h| aa级大片欧美| 欧美特黄aaaaaa| 国产一区二区三区在线观看网站| 天堂久久午夜av| 国产三级中文字幕| 国产69精品久久久久毛片 | 久久综合网导航| 亚洲一区二区久久久久久| 欧美成人精品| 捆绑凌虐一区二区三区| 色狠狠一区二区三区香蕉| 亚洲天天影视| 成人欧美一区二区三区视频| 亚洲综合日本| 国产亚洲精品久久久久久豆腐| 日韩免费一区二区三区在线播放| 久草在线视频福利| 日本免费高清一区| 国产成人免费在线观看| 欧美精品二区三区| 北条麻妃一区二区三区中文字幕| www.成人网| 天美星空大象mv在线观看视频| 亚洲人123区| 神马久久精品| 成人午夜激情网| 99国产精品视频免费观看一公开| 91麻豆精品国产91久久综合| 日韩欧美高清在线| 日本欧美一区| 日韩小视频网站| 中文字幕久久午夜不卡| 国产小视频免费观看| 国产欧美日韩高清| 99精品国产在热久久| 少妇视频一区二区| 亚洲日本欧美日韩高观看|