亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 在delphi程序管理撥號網絡 (2000年8月21日).txt

?? 自己對DELPHI學習的一點體會
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
function RasSetEntryDialParams;external RasApiDll name 'RasSetEntryDialParamsA';
參數pRASDIALPARAMS的說明同RasGetEntryDialParams.
參數lpfPassword的含義與RasGetEntryDialParams不同,在此表示是否刪除用戶密碼,為
  TRUE時將原來的用戶密碼刪除.
    
    函數返回值為0表示執行成功;否則為錯誤代碼.
    下面是一個應用例子,設置指定撥號連接的撥號參數.
var
dwResult : DWORD;
RASDIALPARAMSData : RASDIALPARAMS;
RemovePWD : WordBool;
begin
//指定撥號連接的撥號參數
with RASDIALPARAMSData do
begin
dwSize := sizeof( RASDIALPARAMS );//結構大小
szEntryName := '163';//指定撥號連接的名稱
szUserName := 'MyName';//指定用戶名稱
szPassword := 'MyPassword';//指定用戶密碼
szDomain := 'MyDomain';//指定域名
szCallbackNumber := '';//指定回叫號碼
szPhoneNumber := '';//指定撥號號碼
end;
RemovePWD := false;//不需要刪除用戶密碼

//設置指定撥號連接的撥號參數
dwResult := RasSetEntryDialParams( '',@RASDIALPARAMSData,RemovePWD );

if dwResult <> 0 then //設置指定撥號連接的撥號參數失敗
memo1.lines.add( '設置'+StrPAS(RASDIALPARAMSData.szEntryName )+'撥號參數失敗:' 
+ GetRasError( dwResult ))
else
begin//顯示指定撥號連接的撥號參數
memo1.lines.add( StrPAS(RASDIALPARAMSData.szEntryName )+'撥號參數設置成功');
memo1.lines.add( '用戶名稱:' + StrPAS(RASDIALPARAMSData.szUserName ));
memo1.lines.add( '用戶密碼:' + StrPAS(RASDIALPARAMSData.szPassword ));
memo1.lines.add( '域 名:' + StrPAS(RASDIALPARAMSData.szDomain ));
memo1.lines.add( '回叫號碼:' + StrPAS(RASDIALPARAMSData.szCallbackNumber ));
memo1.lines.add( '撥號號碼:' + StrPAS(RASDIALPARAMSData.szPhoneNumber ));
end;
end;

四、用指定的撥號連接撥號、掛斷指定的撥號連接
  1、用指定的撥號連接撥號
    撥號有兩種方法,一種是調用撥號網絡中的撥號程序,就象用戶自己用鼠標雙擊撥號連接名稱一
  樣,用戶可以修改撥號號碼、用戶名稱和用戶密碼,最后由撥號網絡來完成撥號過程;另一個方法則
  是調用RasAPI函數.
(1)用撥號網絡中的撥號程序
       在程序中可以用如下代碼:
       winexec('rundll32.exe rnaui.dll,RnaDial 169',SW_SHOWNORMAL);
       其中字符串中的最后一個參數“169”為撥號連接的名稱。
(2)用RasAPI函數撥號
    用撥號連接撥號的RasAPI函數為RasDial,其函數原型為:
function RasDial(
pRasDialExtensions : LPRASDIALEXTENSIONS;//在WIN9X下無用,可設置為NIL
lpszPhonebook : PChar;//電話本名稱,在Win9X下無作用,可為空字符串
lpRasDialParams : LPRASDIALPARAMS;//撥號參數
dwNotifierType : DWORD;//消息通知方式
handle : TRasDialFunc;//消息處理事件
var lphRasConn : DWORD//返回的成功連接的連接句柄
) : DWORD; stdcall;
function RasDial;external RasApiDll name 'RasDialA';

    參數pRASDIALPARAMS的說明同RasGetEntryDialParams.
    參數dwNotifierType表示消息通知方式.在撥號過程中,系統發出撥號事件消息可以通知撥號
  進度,因而需要提供接受消息的方式和處理消息的函數.當其值為$FFFFFFFF時,則參數handle被
  視為一個窗口的句柄,事件消息被發生該窗口處理;當其值為0時,handle被視為TRasDialFunc類型
  的函數的指針;當其值為1時,handle被視為TRasDialFunc1類型的函數的指針.
    參數handle表示消息處理函數指針,其類型可以THandle、TRasDialFunc、TRasDialFunc1.當該
  參數不為NULL或NIL時,其代表的消息處理函數指針將接受撥號進度通知消息;為NIL時,撥號過程由
  異步方式變為同步方式,直到撥號過程成功或失敗后RasDial函數才返回.詳細可參見Delphi幫助文件
  中關于RasDial函數的幫助。
    當撥號連接成功時,lphRasConn將表示其連接句柄.

    函數返回值為0表示執行成功;否則為錯誤代碼.
    下面是一個應用例子,按指定的撥號參數撥號.

var
RASDIALPARAMSData : RASDIALPARAMS;
dwResult : DWord;
RasCon : DWord;
begin
//指定撥號連接的撥號參數
with RASDIALPARAMSData do
begin
dwSize := sizeof( RASDIALPARAMS );//結構大小
szEntryName := '163';//指定撥號連接的名稱
szUserName := 'MyName';//指定用戶名稱
szPassword := 'MyPassword';//指定用戶密碼
szDomain := 'MyDomain';//指定域名
szCallbackNumber := '';//指定回叫號碼
szPhoneNumber := '';//指定撥號號碼
end;

//用指定的撥號參數撥號,采用同步撥號方式
dwResult := RasDial( NIL,'',@RASDIALPARAMSData,0,NIL,RasCon );

if dwResult <> 0 then //設置指定撥號連接的撥號參數失敗
memo1.lines.add( '用'+StrPAS(RASDIALPARAMSData.szEntryName )+'撥號失敗:' 
+ GetRasError( dwResult ))
else
memo1.lines.add( '用'+StrPAS(RASDIALPARAMSData.szEntryName )+'撥號成功!' );
end;

  2、掛斷指定的撥號連接
    掛斷撥號連接的RasAPI函數為RasHangUp,其函數原型為:
function RasHangUp(
hRasConn : DWORD//要掛斷的撥號連接的句柄
) : DWORD; stdcall;
function RasHangUp;external RasApiDll name 'RasHangUpA';
    函數返回值為0表示執行成功;否則為錯誤代碼.
    下面是一個應用例子,掛斷由RasDial建立的撥號連接.

//掛斷由RasDial建立的撥號連接
dwResult := RasHangUp( RasCon );
if dwResult <> 0 then //掛斷失敗
memo1.lines.add( '掛斷失敗:' + GetRasError( dwResult ))
else
memo1.lines.add( '掛斷成功!'); 

五、獲取當前活動的連接及其連接狀態
  1、獲取當前活動的連接
    獲取當前活動的連接的RasAPI函數為RasEnumConnections,其函數原型為:
function RasEnumConnections( var lprasconn : RASCONN ;//接收活動連接的緩沖區的指針
var lpcb: DWORD;//緩沖區大小
var lpcConnections : DWORD//實際的活動連接數
) : DWORD; stdcall;
function RasEnumConnections;external RasApiDll name 'RasEnumConnectionsA';
參數lprasconn提供了一個RASCONN類型數組的指針,指向一個接收活動連接的緩沖
  區,其中RASCONN的類型說明如下:
RASCONN = record
dwSize : DWORD;//該結構所占內存的大小(Bytes),一般設置為SizeOf(RASCONN)
hrasconn : HRASCONN;//活動連接的句柄
szEntryName : array[0..RAS_MaxEntryName] of char;//活動連接的名稱
szDeviceType : array[0..RAS_MaxDeviceType] of char;//活動連接的所用的設備類型
szDeviceName : array[0..RAS_MaxDeviceName] of char;//活動連接的所用的設備名稱
end;
    參數lpcb為緩沖區大小(Bytes).
    參數lpcConnections將返回實際的連接數目.

    函數返回值為0表示執行成功;否則為錯誤代碼.

  2、獲取指定連接的連接狀態
    獲取指定連接的連接狀態的RasAPI函數為RasGetConnectStatus,其函數原型為:
function RasGetConnectStatus(
hrasconn : HRASCONN; //指定活動連接的句柄
lprasconnstatus : LPRASCONNSTATUS//連接狀態參數
) : DWORD; stdcall;
function RasGetConnectStatus;external RasApiDll name 'RasGetConnectStatusA';
    連接狀態參數lprasconnstatus是一個RASCONNSTATUS類型的指針,將返回連接狀態參數.
  RASCONNSTATUS和LPRASCONNSTATUS的類型說明如下:
LPRASCONNSTATUS = ^RASCONNSTATUS;
RASCONNSTATUS = record
dwSize : DWORD;//該結構所占內存的大小(Bytes),一般設置為SizeOf(RASCONNSTATUS)
rasconnstate : RASCONNSTATE;//連接狀態標識,一組DWORD類型數值的集合。
dwError : DWORD;//錯誤類型標識符
szDeviceType : array[0..RAS_MaxDeviceType] of char;//活動連接的所用的設備類型
szDeviceName : array[0..RAS_MaxDeviceName] of char;//活動連接的所用的設備名稱
end;
    函數返回值為0表示執行成功;否則為錯誤代碼.

    下面是一個應用例子,列出了當前系統中活動的連接的名稱及其連接狀態.
注意,應在RASCONN緩沖區的第一個RASCONN結構中設置dwSize.

const
MaxConnections = 10;//最多的撥號連接數目
var
connections : array[0..MaxConnections-1] of RASCONN;
longSize : dword;
intAvailabelConnections : dword;
intIndex : integer;
dwResult : DWORD;
strTemp : string;
RASCONNSTATUSData : RASCONNSTATUS; 
begin
connections[ 0 ].dwSize := sizeof(RASCONN);//結構的大小
longSize := MaxConnections * connections[ 0 ].dwSize;//緩沖區大小
intAvailabelConnections := 0;//實際的活動連接的數目
//獲取當前系統中活動的連接
dwResult := RasEnumConnections( connections[ 0 ], longSize,intAvailabelConnections );
if dwResult <> 0 then //獲取當前系統中活動的連接
memo1.lines.add( '獲取當前系統中活動的連接:' + GetRasError( dwResult ))
else
begin
memo1.lines.add( '當前系統中活動的連接' + inttostr( intAvailabelConnections ) 
+ '個,列舉如下' );
for intIndex := 0 to intAvailabelConnections - 1 do
begin
strTemp := '連接名稱:' + StrPAS( connections[ intIndex ].szEntryName )
+ ' 設備類型:' + StrPAS( connections[ intIndex ].szDeviceType )
+ ' 設備名稱:' + StrPAS( connections[ intIndex ].szDeviceName );
//獲取連接狀態
dwResult := RasGetConnectStatus( connections[ intIndex ].hRasConn,@RASCONNSTATUSData );
if 0 <> dwResult then
strTemp := strTemp + ' 連接狀態未知:' + GetRasError( dwResult )
else if RASCONNSTATUSData.rasconnstate = RASCS_Connected then
strTemp := strTemp + ' 連接狀態:已連接'
else
strTemp := strTemp + ' 連接狀態:(' + 
inttostr(RASCONNSTATUSData.rasconnstate)+')';
memo1.lines.add( strTemp );
end;
end;
end;

以上程序在PWIN98+Delphi3.0下調試通過。





作者:深圳王發軍
 
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久精品国产99久久精品芒果| 日韩一区精品视频| 日韩一卡二卡三卡四卡| 欧美在线免费视屏| 欧美在线视频日韩| 国产精品一二三四| 国产一区二区在线影院| 国产精品18久久久久久久久久久久 | 欧美高清在线精品一区| 91蝌蚪porny| 色欧美片视频在线观看在线视频| 热久久国产精品| 久久精品72免费观看| 亚洲欧美日韩中文播放| 亚洲精品久久久久久国产精华液| 91成人在线精品| 日韩欧美在线综合网| xfplay精品久久| 亚洲欧美激情小说另类| 欧美精品一区二区三区四区| 久久这里只有精品首页| 国产精品福利一区二区| 尤物在线观看一区| 久久激情五月婷婷| 99久久伊人网影院| 欧美一区二区视频在线观看 | 国产精品私人影院| 亚洲人123区| 中文字幕精品一区| 一级女性全黄久久生活片免费| 久久久久久久免费视频了| 欧美一级电影网站| 国产精品国产三级国产专播品爱网| 欧美一卡2卡三卡4卡5免费| 国产无遮挡一区二区三区毛片日本| 91麻豆精品国产91久久久久| 欧美综合在线视频| 91在线精品一区二区| 欧美一区二区三区四区视频| 国产精品久久久久久久久果冻传媒| 精品国产一区二区三区不卡| 亚洲欧美在线视频观看| 捆绑紧缚一区二区三区视频| 成人黄色小视频在线观看| 精品美女在线播放| 国产精品不卡在线| 免费欧美日韩国产三级电影| 99久久久久久| 日韩精品专区在线影院重磅| 亚洲欧美日韩小说| 成人在线视频一区| 久久这里都是精品| 五月天一区二区| 欧亚一区二区三区| 亚洲色图视频网站| 波多野结衣91| 国产精品天美传媒沈樵| 久久91精品久久久久久秒播| 亚洲v日本v欧美v久久精品| 成人毛片老司机大片| 精品久久人人做人人爰| 亚洲国产精品av| 亚洲乱码中文字幕| 色综合亚洲欧洲| 亚洲欧美激情视频在线观看一区二区三区| 亚洲黄色尤物视频| 成人av电影在线| 中文字幕一区二区不卡 | 精品久久久久av影院| 午夜精品久久久久久久久久久| 青青青爽久久午夜综合久久午夜| 极品少妇xxxx精品少妇| 精品久久国产97色综合| 久草精品在线观看| 成人av网站免费观看| 国产精品免费视频一区| 粉嫩欧美一区二区三区高清影视| 色综合夜色一区| 艳妇臀荡乳欲伦亚洲一区| 在线观看一区二区视频| 午夜视频在线观看一区| 在线播放日韩导航| 裸体歌舞表演一区二区| wwwwww.欧美系列| 国产精品99久久久久久有的能看| 日本韩国欧美在线| 亚洲影院理伦片| 欧美一区二区三区日韩视频| 天天综合天天做天天综合| 日韩精品一区二区三区视频| 国产精品资源站在线| 国产精品青草久久| 色婷婷综合久久久久中文一区二区 | 国内久久精品视频| 欧美国产禁国产网站cc| 色一情一乱一乱一91av| 亚洲成人激情自拍| 久久久久久久久97黄色工厂| 91女厕偷拍女厕偷拍高清| 亚洲国产美国国产综合一区二区| 国产乱子伦一区二区三区国色天香| 91精品办公室少妇高潮对白| 视频一区二区中文字幕| 国产欧美一区二区在线观看| 99久久免费精品| 蜜乳av一区二区| 国产精品麻豆久久久| 欧美视频在线一区二区三区| 美国三级日本三级久久99| 日本一区二区三区久久久久久久久不 | 久久亚洲免费视频| 91麻豆国产福利精品| 蜜桃av一区二区三区电影| 自拍偷自拍亚洲精品播放| 国产一区二区三区蝌蚪| 亚洲人成7777| 国产人成一区二区三区影院| 欧亚一区二区三区| 成人黄色在线网站| 九九久久精品视频| 亚洲一区二区精品久久av| 久久综合视频网| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美精品在欧美一区二区少妇| 亚洲四区在线观看| 99精品在线观看视频| 国产一区二区三区最好精华液| 欧美不卡一二三| 欧美色爱综合网| 日韩国产一二三区| 亚洲伦理在线精品| 亚洲欧美一区二区在线观看| 精品国精品国产| 日韩午夜三级在线| 欧洲在线/亚洲| 色噜噜狠狠成人网p站| 亚洲综合在线视频| 中文字幕在线观看一区二区| 欧美mv日韩mv国产| 日韩一级完整毛片| 成人免费看的视频| 国产精品一二二区| 国产精品一区二区三区四区| 青青国产91久久久久久| 国产日产欧美精品一区二区三区| 95精品视频在线| 亚洲成在人线免费| 亚洲成人精品影院| 亚洲成人综合网站| 日韩高清在线一区| 国产精品久久久久精k8| 欧美群妇大交群的观看方式| 色狠狠av一区二区三区| 欧美性色综合网| 欧美视频一区二区三区在线观看 | 国产乱人伦精品一区二区在线观看| 国产精品久久夜| 综合久久久久久久| 亚洲免费av观看| 亚洲在线视频网站| 日韩精品国产欧美| 久久99精品久久久久久国产越南 | 日韩视频一区二区| 99久久精品国产精品久久| 91影院在线免费观看| 色婷婷亚洲精品| 欧美狂野另类xxxxoooo| 粉嫩久久99精品久久久久久夜| 亚洲国产精品综合小说图片区| 久久精品日产第一区二区三区高清版 | 国产99久久久久| 成人激情文学综合网| 色婷婷亚洲一区二区三区| 欧美日韩一二三| 欧美精品一区二区三区高清aⅴ | 日日摸夜夜添夜夜添国产精品| 国产精品免费久久久久| 亚洲激情第一区| 精品午夜久久福利影院| 亚洲影视在线播放| 中文字幕一区二区三区不卡| 亚洲综合网站在线观看| 精品一区二区三区在线播放视频| 亚洲一区二区欧美| 国产成人综合网| 欧美吞精做爰啪啪高潮| 久久人人爽人人爽| 亚洲一区二区三区四区在线观看| 椎名由奈av一区二区三区| 久久精品水蜜桃av综合天堂| 26uuu亚洲| 亚洲一区二区三区免费视频| 九九九精品视频| 91在线观看污| 久久综合久久鬼色中文字| 亚洲精品乱码久久久久久久久| 亚洲天堂精品视频| 国产一区二区网址| 欧美日本国产视频| 亚洲男人的天堂在线观看|