如何新增數據機跟撥號連線 |
尚未結案
|
Windyboy
版主 發表:7 回覆:119 積分:210 註冊:2002-11-07 發送簡訊給我 |
|
m8815010
版主 發表:99 回覆:372 積分:289 註冊:2003-11-13 發送簡訊給我 |
引言: 請問大家, 要怎麼透過程式去新增一台 標準數據機 的裝置, 跟 新增一個 撥號連線 謝謝^___^ -------------------------- ~天下本無事 庸人自擾之~Windyboy你好: 無意中看到一本書中有用一些 href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/establishing_a_dial_up_connection_to_the_internet.asp">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/establishing_a_dial_up_connection_to_the_internet.asp title:WinINet Functions http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/wininet_functions.asp 可是我試了一下,有很奇怪的問題,就是這些function在BCB 5.0中run ok,可是BCB 6.0中run 卻總是說不認識這些function,即使我們include了 wininet.h或是 USELIB("wininet.lib");或是把 library路徑加指到\lib\Psdk…也都是一樣不行! 就是這樣,同機環境,只是5.0改6.0,source code完全照寫,6.0就是不行,很奇怪! 目前卡在這問題比較嚴重,所以就先不try那些function怎麼用了! 另外builder有什麼現成的元件可用,我就都不知道了,嘿嘿! 小小測試,參著參著! |
Windyboy
版主 發表:7 回覆:119 積分:210 註冊:2002-11-07 發送簡訊給我 |
Hi m8815010: 謝謝你的回覆, 我還以為沒有人會回我這個問題說(因為已經好幾次我發問都沒人回我了@.@), 我昨天也有找到這些FUNCTION, 起初也很高興的去了解它的用法, 但是看了看後, 好像跟我的需求不同, 因為WININET的FUNC是用來建立連線, 而我要的不是去呼叫已建立好的撥號連線連到INTERNET, 而是要新增一個新的撥號連線,就像在Win2000下的 [網路和撥號連線]->[建立新連線] 這個動作, 但是是程式來做, 不是手動, 數據機裝置的新增也是, 其實說起來, 我想做的東西應該就類似Yahoo或Sina的撥接精靈, 附上該軟體的連結 http://www.artstudio.com.tw/project/YahooFreeISP/trafficRef.php?ref_code=download&goURL=software http://www.sinaplay.com.tw/visp/download/sinadial.exe 辛苦各位大大看完的問題, 再次感謝^____^
(希望有人回應我cc) --------------------------
~天下本無事 庸人自擾之~
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
|
8866
中階會員 發表:27 回覆:147 積分:69 註冊:2002-10-14 發送簡訊給我 |
|
Windyboy
版主 發表:7 回覆:119 積分:210 註冊:2002-11-07 發送簡訊給我 |
引言: 1 regedit 自己偵測一下 其他的就利用API去處理AP相關動作Hi conundrum: 剛試著監控登錄檔, 我新增一個撥號連線後, 登錄檔只有一個地方有變化, 但看不出來跟撥號有什麼關聯, HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\installer\userdata\s-1-5-18\products\4040820900063d11c8ef00054038389c\usage productnonbootfiles=int:826343493 -> int:826343494 很無奈, 我看不出個所以然.@.@ 我再去找找DDK的資料, 謝謝大家^_^ -------------------------- ~天下本無事 庸人自擾之~ |
axsoft
版主 發表:681 回覆:1056 積分:969 註冊:2002-03-13 發送簡訊給我 |
Windyboy您好 試試RAS API(Remote Access external API),但不能像你說的直接產生,還是有部分需要用Key-IN的,如電話號碼,連線名稱,如果要自動產生可能要動用到Registry了
Unit1.h //--------------------------------------------------------------------------- #ifndef Unit1H #define Unit1H //--------------------------------------------------------------------------- #include /*生活是一種藝術,用心生活享受生活*/ |
8866
中階會員 發表:27 回覆:147 積分:69 註冊:2002-10-14 發送簡訊給我 |
|
Windyboy
版主 發表:7 回覆:119 積分:210 註冊:2002-11-07 發送簡訊給我 |
Dear all: 先謝過大家的建議, 但我還是實做不出來,因為要做出像YAHOO那個撥接精靈, 是不能像使用RAS一樣, 還會出現提示使用者的DIALOG, 而是要直接就新增一個撥接連線, 然後程式再去呼叫那個剛新增的連線, 撥號, 連上INTERNET, 再一個就是setupapi.dll, 我查了好一會了, 查不出個所以然, FUNCTION太多, 我看setupapi.h看到頭昏了, 呵呵!! 所以, 再研究研究囉!! 等我研究出來再跟大家報告, 要是還有誰有好的方法, 再提供一下唄!!^___^ --------------------------
~天下本無事 庸人自擾之~
|
conundrum
尊榮會員 發表:893 回覆:1272 積分:643 註冊:2004-01-06 發送簡訊給我 |
1 偵測reg請用RegSpy
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=47167
參考
http://www.geocities.com/Athens/Delphi/2998/speed.htm 2 你說的應不需寫ddk 因為不是寫驅動 只需呼應控制
(好加在 不然頭暈暈如8866所說)
3 控制RS232 序列埠通訊的非視覺化元件 很多 這個無源碼
http://vcl.vclxx.org/DELPHI/D32FREE/ASYNC32.ZIP
可在 Windows 95/98/ME/NT/2000 以多執行緒 ( Multi-Thread ) 控制 RS232 序列埠通訊的非視覺化元件 ( 1.82 版,無原始程式碼 Delphi 3.0/4.0/5.0 版適用 ),作者: Varian Software Services NL 在Delphi中怎樣控制 Modem
http://www.china-askpro.com/msg26/qa95.shtml
http://www.china-askpro.com/download/tcomm.txt http://www.activedelphi.com.br/modules.php?op=modload&name=News&file=article&sid=7 http://www.efg2.com/Lab/Library/Delphi/IO/PortIO.htm 參考 如有 不準是正常ㄟ 當練身體 http://www.borland.co.jp/qanda/delphi/d0009399.html
procedure TForm1.Button1Click(Sender: TObject); var CommPort : String; hCommFile : THandle; ModemStat : DWord; begin CommPort := 'COM1'; // Comm接口open hCommFile := CreateFile(PChar(CommPort),GENERIC_READ, 0,nil,OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,0); if hCommFile = INVALID_HANDLE_VALUE then begin ShowMessage(CommPort 'open成果籬笆'); Exit; end; if GetCommModemStatus(hCommFile, ModemStat) then begin if ModemStat and MS_CTS_ON <> 0 then ShowMessage('CTS ON'); if ModemStat and MS_DSR_ON <> 0 then ShowMessage('DSR ON'); if ModemStat and MS_RING_ON <> 0 then ShowMessage('Ring ON'); if ModemStat and MS_RLSD_ON <> 0 then ShowMessage('RLSD ON'); end; CloseHandle(hCommFile); end;【Delphi】【問題】請教...如何由程式直接控制撥號 http://delphi.ktop.com.tw/topic.php?topic_id=30105 此外, Turbopower 也有相關的 Modem 元件. 這才是我想要的 哈哈 看看 axsoft 版主應算解題了 哈哈 哈哈哈 發表人 - conundrum 於 2004/10/01 21:46:31 |
Windyboy
版主 發表:7 回覆:119 積分:210 註冊:2002-11-07 發送簡訊給我 |
Dear all: 終於, 解決了, 跟大家分享一下, 雖然,跟大家討論的好像不大一樣@.@, 但我最後還是找到了解決的方法... 就是找到了撥號連線的設定檔, 其實它就是一個INI檔, 存在於 C:\Documents and Settings\All Users\Application Data\Microsoft\Network\Connections\Pbk\rasphone.pbk 在這裡檔家增加新的Section, 就等於是增加一個撥號連線 所以我想這一分還是從缺好了, 我覺得不是我吝嗇給這一分,而是 因為沒有人提到這個設定檔..呵呵 謝謝大家的協助^_^ 啊~~問題解決的感覺真是好啊!! --------------------------
~天下本無事 庸人自擾之~
|
Rickpto
一般會員 發表:6 回覆:4 積分:2 註冊:2002-06-15 發送簡訊給我 |
可以使用TRAS元件,應該可達到你想做的功能,TRAS有點舊了元件不好找,這裡有新版的http://www.magsys.co.uk/delphi/,但是不確定BCB可不可裝(我裝不起來@_@),但是我之前有用過TRAS寫過。 TRAS *ras;
ras->PhoneNumber = "12345678";
ras->UserName = "username";
ras->Password = "pwd";
ras->Connections;
ras->GetConnectStatus();
ras->DisConnect();
ras->Connect();
ras->CurrentStatus();
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |