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

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

用程序完成自動撥號

[摘要]用程序實現自動撥號                  屠恩海(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爱过程免费视频高清 | 日本一区午夜爱爱 | 五月天第一页 | 日韩毛片在线视频 | 一二三四免费影院 | 欧美亚洲桃花综合 | 五月婷婷爱| 色在线导航 | 欧洲大肥批 | 色碰视频 | 亚洲综合第一页 | 先锋久久| 天色噜噜噜噜 | 欧美夜夜爽 | 日日日天天射天天干视频 | 欧美性生活视频免费播放网址大全观看 | 天天躁天天狠天天透 | 日本午夜视频 | 又粗又大又爽又紧免费视频 | 日本一本在线视频 | 深夜视频在线 | 日本欧美一区二区三区视频麻豆 | 五月天激情婷婷大综合 | 婷婷影院在线观看 | 日韩欧美中文 | 伊人影视 | 深爱五月网 | 日韩高清影院 | 天堂新版www中文 | 四虎影院在线 | 天天操天天做 | 热re久久精品国产99热 | 天天躁日日躁狠狠躁综合 | 日韩成人激情 | 亚洲国产一区二区a毛片 | 青草全福视在线 | 四虎永久在线免费观看 |