Хотел сделать обертку для системной функции инициалиазции интернет подключения RasDial msdn(rasdial.exe является ее консольной реализацией). Но пока глухо. Как и вообще с rasapi32.dll - никто пока, увы, не сделал UDF под нее, а ведь полезная библиотека.
Если кому нужно могу выложить обертку для RasEnumConnections (возвращает инфу об активном подключении) и еще случайно нашел готовую обертку для RasGetConnectionStatistics - выдает статистику по интернет-трафику.
Вот мой образец RasDial который не работает
Может кто разберется, что там не так - внятной ошибку не выдает, но и ничего не делает.
Если кому нужно могу выложить обертку для RasEnumConnections (возвращает инфу об активном подключении) и еще случайно нашел готовую обертку для RasGetConnectionStatistics - выдает статистику по интернет-трафику.
Вот мой образец RasDial который не работает

Код:
#include <array.au3>
#include <WinAPI.au3>
Local $Res=_RasDial('имя интернет подключения','логин','пароль')
ConsoleWrite($Res &'|error=' & @error)
Func _RasDial($sConnectName,$sUserName,$sPassword,$sDomain='',$sPhoneNumber='',$sCallbackNumber='',$vRasDialExtensions=0,$sPhonebook='',$vNotifierType='',$hNotifier=0)
Local Const $MAX_PATH = 260
Local Const $RAS_MaxEntryName = 256
Local Const $RAS_MaxPhoneNumber = 128
Local Const $RAS_MaxCallbackNumber = 128
Local Const $UNLEN = 128
Local Const $PWLEN = 128
Local Const $DNLEN = 128
Local Const $RAS_MaxDeviceType = 16
Local Const $RAS_MaxDeviceName = 128
Local $tRASDIALPARAMS=DllStructCreate( _
'dword dwSize;' & _
'char szEntryName[' & $RAS_MaxEntryName + 1 &'];' & _
'char szPhoneNumber[' & $RAS_MaxPhoneNumber + 1 &'];' & _
'char szCallbackNumber[' & $RAS_MaxCallbackNumber + 1 &'];' & _
'char szUserName[' & $UNLEN + 1 &'];' & _
'char szPassword[' & $PWLEN + 1 &'];' & _
'char szDomain[' & $DNLEN + 1 &'];' & _
'dword dwSubEntry;' & _
'ulong_ptr dwCallbackId;' & _
'dword dwIfIndex')
DllStructSetData($tRASDIALPARAMS,'dwSize', DllStructGetSize($tRASDIALPARAMS))
DllStructSetData($tRASDIALPARAMS,'szEntryName' ,$sConnectName)
DllStructSetData($tRASDIALPARAMS,'szPhoneNumber' ,$sPhoneNumber)
DllStructSetData($tRASDIALPARAMS,'szCallbackNumber',$sCallbackNumber)
DllStructSetData($tRASDIALPARAMS,'szUserName', $sUserName)
DllStructSetData($tRASDIALPARAMS,'szPassword', $sPassword)
DllStructSetData($tRASDIALPARAMS,'szDomain', $sDomain)
DllStructSetData($tRASDIALPARAMS,'dwSubEntry', 0)
DllStructSetData($tRASDIALPARAMS,'dwCallbackId', 0)
DllStructSetData($tRASDIALPARAMS,'dwIfIndex', 0)
Local $tRASCONN = DllStructCreate( _
'dword dwSize;hwnd hRasConn;' & _
'char szEntryName[' & $RAS_MaxEntryName +1 &'];' & _
'char szDeviceType['& $RAS_MaxDeviceType +1 &'];' & _
'char szDeviceName['& $RAS_MaxDeviceName +1 &'];' & _
'char szPhonebook[' & $MAX_PATH &'];' & _
'dword dwSubEntry;byte guidEntry[16];dword dwFlags;byte luid[8]')
Local $pRASDIALPARAMS = DllStructGetPtr($tRASDIALPARAMS)
Local $pRASCONN = DllStructGetPtr($tRASCONN)
Local $aRet = DllCall('rasapi32.dll', 'int', 'RasDialW', 'ptr',$vRasDialExtensions,'str',$sPhonebook,'ptr',$pRASDIALPARAMS,'int',$vNotifierType,'hwnd', $hNotifier,'ptr',$pRASCONN)
;проверяем корректность заполнения структуры
;ConsoleWrite(DllStructGetData($tRASDIALPARAMS,1) & @CRLF)
;ConsoleWrite(DllStructGetData($tRASDIALPARAMS,2)& @CRLF)
;ConsoleWrite(DllStructGetData($tRASDIALPARAMS,5)& @CRLF)
;ConsoleWrite(DllStructGetData($tRASDIALPARAMS,6)& @CRLF)
Local $hRasConn = DllStructGetData($tRASCONN,'hRasConn')
;вернем описатель подключения
Return SetError(_WinAPI_GetLastError(), 0, $hRasConn)
EndFunc