InternetAutoDial
1640
5
Проблем в следующем при вызове процедурки InternetAutoDial собсно ничего не происходит, т.е. окно дозвона до прова не появляется. В чем может быть проблема?



З.Ы. У меня в ОС настроено 2 подключения одно для LAN и одно модемное.
DeHuC
Описываю следующим образом:



function InternetAutodial(dwFlags: DWORD; dwReserved: DWORD): BOOL; stdcall; external winetdll;



......



procedure TForm1.FormClick(Sender: TObject);

begin

InternetAutodial(0,0);

end;

DeHuC
Эта функция работает только в Win 2000 и XP и вызывать её на до бы вот так:
InternetAutoDial (INTERNET_AUTODIAL_FORCE_ONLINE, handle);

handle = родительское окно

Если у тебя не NT, то используем такую процедурку для коннекта через Dial-Up по умалчанию:

Uses Registry, windows;

Function DUNDialDefault(Hide : Boolean) : Boolean;
// Показать или скрыть диалог dial-up
var Reg : TRegistry;
var TempResult : Boolean;
var Name, con : String;
var ASW : Integer;
begin
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CURRENT_USER;
if Reg.OpenKey('\RemoteAccess', False) then
begin
TempResult := True;
Name := Reg.ReadString('Default');
end
else begin
tempresult := False;
end;
Reg.Free;
if TempResult = True then
begin
if Hide = True then ASW := SW_HIDE
else ASW := SW_SHOWDEFAULT;
con := 'rnaui.dll,RnaDial ' + Name;
ShellExecute(0, nil, 'rundll32.exe' , PChar
(con), 'C:\windows\', ASW);
end;
Result := tempResult;
end;

В случае успеха она возвращает True :спок:
Сибиряк
Эта функция работает только в Win 2000 и XP и вызывать её на до бы вот так:
InternetAutoDial (INTERNET_AUTODIAL_FORCE_ONLINE, handle);

handle = родительское окно
на самом деле InternetAutoDial (INTERNET_AUTODIAL_FORCE_ONLINE, handle) = InternetAutoDial (0, 0);
Кстати с флагами как у тебя я тоже пробовал... короче не получилось, сделал через какую то левую библиотечку.
DeHuC
А у тебя система то какая?
Не 98 случайно :спок: ?
Сибиряк
Случайно ХР, на 2К тож пробовал... :а\?: