关于TDialUp得到拨号连接号码的疑问。(100分)

  • 主题发起人 主题发起人 小神通
  • 开始时间 开始时间

小神通

Unregistered / Unconfirmed
GUEST, unregistred user!
我决定使用TDialUp组件进行拨号控制。
功能如下:
1、可以选择要拨号的连接
2、可以查看、更改已选择连接的电话号码、用户名和密码
3、拨号、挂断、检测是否连通等
其中只差查看、更改已选择连接的电话号码不能实现。
我大体看了一下源码,TDialUp没有提供操作电话号码的函数。
如下在DialUp.pas中增加如下函数,还是没取道电话。
function TDialUp.GetEntryPhoneNumber(Value: string): Integer;
var
Fp: LongBool;
R: Integer;
// C : Array[0..100] of Char;
DialParams: TRasDialParams;
begin
FillChar(DialParams, SizeOf(TRasDialParams), 0);
with DialParams do
begin
dwSize := Sizeof(TRasDialParams);
StrPCopy(szEntryName, FEntry2Dial);
end;
R := RasGetEntryDialParams(nil, DialParams, Fp);
if R = 0 then
with DialParams do
begin
Value := szPhoneNumber
end;
Result := R;
end;
搞了半天,没办法,只好求助各位高手,如何得到拨号连接的电话号码,最好给出调试成功的源码。
谢谢
 
http://vcl.vclxx.org/DELPHI/D32FREE/D_RAS.ZIP
RAS ( Remote Access Service ) 宣告档 (包含 Windows NT Extensions 部份之函式宣告 ) 及范例程序 ( 2.11 版,附源码 ),作者 : Davide Moretti 。

从你的功能描述来看,我认为你使用这个控件更合适一些的,而你所说的DialUp控件,好象仅适用于WIN95系统,你看一下吧,希望对你有帮助。
 
谢谢,我试试。
不过有没有,不用另加动态连接库的?
我准备做成activeform,作为一个文件发布
 
好想法,别忘了给我发一份。yckxzjj@163.com
 
那你要做的工作就多了,你直接调用串口控件MSCOMM32.OCX或SPCOMM控件从串口发MODEM的指令,这样我也只听说过,没试过了。
 
不,那样会麻烦死的。
我的意思是只调用一般windows都带的rasapi32.dll(算是标准的api吧)。
 
我不是很清楚一般的系统是不是都带这个东西哦,但我用时都在执行文件目录下放一个的
rasapi32.dll
 
app2001
你说的D_RAS.ZIP还多调用了一个dll. 我不想安装时用户太麻烦,所以没试。
我也听说DialUp只对95起作用,但是我在xp下居然也可以选择拨号。
可以显示账号和密码,不过,我刚发现修改后保存不上。还不能得到电话号码。
你们在2000/xp上是如何解决以上问题的?
 
多人接受答案了。
 
后退
顶部