六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

用程序完成自動撥號

[摘要]用程序實現自動撥號                  屠恩海(SunHai)    開發工具:Microsoft Visual Studio .NET 2003   操作系統:Windows XP ...
用程序實現自動撥號

     
             屠恩海(SunHai)

   開發工具:Microsoft Visual Studio .NET 2003
   操作系統:Windows XP



  在編寫網絡程序時很可能用到自動撥號。比如,郵件群發軟件用自動斷線和撥號實現本機IP地址的更換。
  要實現自動撥號,分兩步:
  從注冊表讀取本機撥號鏈接名稱;
  自動撥號。  


           調用API函數從注冊表讀取本機撥號鏈接名

  以前,我調用API函數從注冊表中讀取本機撥號鏈接名稱。
  在Module中用如下代碼:

Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Integer, ByVal   lpSubKey As String, ByRef phkResult As Integer) As Integer
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Integer) As Integer
Private Declare Function RegEnumKey Lib "advapi32.dll" Alias "RegEnumKeyA" (ByVal hKey As Integer, ByVal   dwIndex As Integer, ByVal lpName As String, ByVal cbName As Integer) As Integer
  Const HKEY_CURRENT_USER As Integer = &H80000001
  Const ERROR_NO_MORE_ITEMS As Short = 259
  Const ERROR_SUCCESS As Short = 0

  Dim hKey As Integer
  Dim i As Integer
  Dim astr As String = New String("", 256)
  If RegOpenKey(HKEY_CURRENT_USER, "RemoteAccess\Profile", hKey) = ERROR_SUCCESS Then
    While RegEnumKey(hKey, i, astr, 256) = ERROR_SUCCESS
      MsgBox(astr)  '鏈接名稱
      i += 1
    End While
    RegCloseKey(hKey)
  End If



   


                 用RegistryKey 類讀取鏈接名

     RegistryKey 類表示 Windows 注冊表中的項級節點。此類是注冊表封裝。

  本文主要用到:

  RegistryKey.OpenSubKey 方法:用指定的寫訪問權限檢索指定的子項。

  以只讀方式檢索子項。

  [Visual Basic] Overloads Public Function OpenSubKey(String) As RegistryKey


  RegistryKey.GetSubKeyNames 方法: 檢索包含所有子項名稱的字符串數組。

  Public Function GetSubKeyNames() As String ()

  用RegistryKey讀取鏈接名可以說是非常簡單:

Dim rk As RegistryKey = _
Registry.CurrentUser.OpenSubKey("RemoteAccess\Profile", True)
' Get the data from a specified item in the key.
Dim s As String() = rk.GetSubKeyNames()

For num As Integer = 0 To s.Length - 1
  MsgBox(s.GetValue(num))           '這就是鏈接名
Next




  

                用Shell實現自動撥號

  讀取鏈接名后,自動撥號就非常簡單了。 
  打開“控制面板”,“網絡連接”,連接“屬性”,“選項”,去掉“提示名稱、密碼和證書等(P)”前面的對勾。

shell("rasphone.exe -d" & linksName, AppWinStyle.Hide, True, -1)


  啟動“命令提示符”,鍵入 rasphone,回車,就彈出“撥號網絡對話框”。
  如果鍵入 rasphone -h,回車,彈出“撥號網絡命令行”,列出rasphone的用法,比如,
   rasphone -d 表示彈出彈號項目對話框。
  rasphone -lx 在撥號快捷方式上執行命令'x'    

  Shell函數說明:
  AppWinStyle.Hide是sheell的參數,表示隱藏窗口并將焦點傳到該窗口。
  True表示等待撥號完成。
   -1表示Shell直到程序完成才返回。


  也可以這樣:

shell("rasdial.exe " & linksName, AppWinStyle.Hide, True, -1)


  關于各種命令參數,在OS的“幫助和支持”搜索“命令行”即可查到有關說明。命令行結合Shell函數可實現極多功能,你可試一試。



  Shell 函數使用說明:

Public Function Shell ( _ ByVal Pathname As String, _
   Optional ByVal Style As AppWinStyle = AppWinStyle.MinimizedFocus, _
   Optional ByVal Wait As Boolean = False, _
   Optional ByVal Timeout As Integer = -1 _
   ) As Integer

  Shell 函數的返回值取決于 Pathname 中指定的程序在 Shell 返回時是否仍在執行。如果將 Wait 設置為 True 并且程序在超時過期前結束, Shell 返回零。如果超時過期或者省略 Wait 或將它設置為 False ,則 Shell 返回程序的進程 ID。進程 ID 是標識正在運行的程序的唯一數字。

  如果 Shell 函數無法啟動指定的程序,則出現 System.IO.FileNotFoundException 錯誤。例如,當試圖從使用 System.Windows.Forms 的應用程序運行 16 位程序(如 command.com )時,可能會發生這種情況。解決辦法是運行將調用所需的 16 位程序的 32 位程序。如果是 command.com ,則可以將運行 cmd.exe 作為另一種選擇。

  默認情況下, Shell 函數異步運行程序。這意味著用 Shell 函數啟動的程序在 Shell 函數后面的語句執行前可能沒有結束執行。如果想等待程序結束后再繼續,請將 Wait 設置為 True 。

  整個路徑和文件規范應該始終用引號引起來,如以下示例所示:

ID = Shell ("""C:\Program Files\MyFile.exe"" -a -q", , True, 100000)
  字符串內每對相鄰的雙引號 ( "" ) 被解釋為字符串中的一個雙引號字符。因此,前面的示例表示 Shell 函數的下列字符串:

"C:\Program Files\MyFile.exe" -a -q
  如果路徑沒有用引號引起來,Windows 就會在 C:\ 目錄中查找名為 Program.exe 的文件,而不是在 C:\Program Files 目錄中查找 MyFile.exe 文件。

  安全說明 如果路徑和文件規范沒有用引號引起來,那么當文件名或路徑節點包含空格時,就會出現安全風險。在上面的示例中,路徑節點 \Program Files 包含一個空格。如果規范不在引號中,并且名為 Program.exe 的程序(例如通過非法的破壞)安裝在 C:\ 中,Windows 就會執行 Program.exe 程序而不是 MyFile.exe 。



主站蜘蛛池模板: 天天宗合网 | 青草悠悠视频在线观看 | 欧美性生活网址 | 日韩天天操 | 日韩在线观看中文字幕 | 青草九九 | 色中色资源站 | 一级做a爰视频免费观看2019 | 欧美中字 | 亚洲网站在线免费观看 | 日韩黄色大片免费看 | 亚洲欧美精品在线 | 日韩午夜 | 日韩69| 日本一区二区三区四区 | 日韩最新中文字幕 | 亚洲国产成人久久一区www | 中文国产成人精品久久一 | 日韩精品成人免费观看 | 青榴视频在线 | 亚洲观看视频 | 日本不卡一二三区 | 午夜男人天堂 | 婷婷六月综合 | 新午夜影院| 午夜国产福利在线观看 | 日本网址在线观看 | 亚洲 欧美 视频 | 亚洲九九视频 | 天天插天天透 | 欧美在线aa | 欧美特级午夜一区二区三区 | 手机福利视频一区二区 | 中国二级毛片 | 日日摸夜夜添夜夜添一区二区 | 日韩精品一区二区三区免费观看 | 午夜免费福利在线 | 亚洲性免费 | 午夜伊人 | 亚洲男人的天堂久久香蕉网 | 亚洲一区二区三区高清视频 |