我想要根据手机的Modem口创建一个拨号连接,要设置拨号号码,用户名,密码?
请高手指点。谢谢!
请高手指点。谢谢!
解决方案 »
- label中如何数字相加
- 动态调用Dll
- 一个路由器连接下的电脑如何进行访问和窃听?
- 如何在memo的caretpos位置创建一个任意的控件?
- 我用了TShellListView这个对象,当鼠标右击的时候,弹出的是windows的菜单,我想让他弹出自己的菜单!
- 又见sql语句问题.谢谢,提供有价值线索者,另加30分
- 求救!发了三回了真的没人会么?有关线程中动态调用ocx的socket的问题。
- 请问哪有delphi 5 开发人员指南配套程序下载?
- 有关TADOTable的问题
- 运行时更改exe文件内容!!!!!!!!!!!!!
- 怎么在应用程序的指定窗口中打开另一个应用程序
- 关于DBGRIDEH插入列赋值的问题
function RasCreatePhonebookEntryA( hwnd : THandle;lpszPhonebook: pchar ) : DWORD
可以调用Windows创建拨号连接, 但是我不想提示这个步骤,我在程序里面直接创建一个拨号连接,请大侠指点!有没有相关的方法或者控件?拜谢!
解决方法:
使用RasSetEntryProperties: function (lpszPhonebook: PChar; lpszEntry: PChar;
lpRasEntry: PRasEntry; dwEntryInfoSize: DWORD;
lpbDeviceInfo: Pointer; lpdwDeviceInfoSize: DWORD): DWORD; stdcall;
方法;
代码:procedure TForm1.btnCreateClick(Sender: TObject);
var
dwResult, Size: Integer;
rasEntry: TRasEntry;
Buffer: array[0..255] of Byte;
ErrorInfo: array[0..100] of Char;
begin
Size := SizeOf(TRasEntry);
FillChar(RasEntry, SizeOf(TRasEntry), 0);
with RasEntry do
begin
dwSize := SizeOf(TRasEntry);
dwfOptions := RASEO_PreviewUserPw + RASEO_ShowDialingProgress + RASEO_ModemLights;
strCopy(szDeviceType, 'Modem');
strCopy(szDeviceName, CSDeviceName);
strCopy(szLocalPhoneNumber, CSDialNumber);
end;
//创建拨号连接
dwResult := RasSetEntryProperties(nil, CSDialName, @rasEntry, Size, @Buffer[0], 256);
if dwResult <> 0 then //创建拨号连接失败
begin
RasGetErrorString(dwResult, ErrorInfo, 100);
mmo1.Lines.Add(ErrorInfo);
end
else
mmo1.Lines.Add('创建拨号连接成功');
end;这个方法有点小缺点:不能传递用户名密码创建拨号连接,需要用这个方法再修改拨号连接的用户名密码:
RasSetEntryDialParams: function (lpszPhonebook: PChar;
lprasdialparams: PRasDialParams; fRemovePassword: BOOL): DWORD; stdcall;
大家有没有更好的方法? 谢谢了!