Ras Api Rassetentryproperties размер структуры?

  • Автор темы MadMas
  • Дата начала
M

MadMas

Гость
#1
Подскажите, как правильно определять размер структуры для Windows XP?

Как сделать подобное для RAsEnumDevices понятно - увеличиваем размер на количество устройств... Как для RasSetEntryProperties?

На данный момент возвращает постоянно "ERROR_BUFFER_TOO_SMALL".

[codebox]NeedBytes:=sizeof(TRasEntry);
Fillchar(RasEntry, sizeof(TRasEntry), 0);
RasEntry.dwSize:=NeedBytes;
dwError:=RasGetEntryPropertiesA(nil, '', @RasEntry, NeedBytes, nil, nil);
if dwError=632 then
begin

with RasEntry do
begin
Fillchar(RasEntry, sizeof(TRasEntry), 0);
dwSize := sizeof(TRasEntry);
dwCountryID := 7;
dwCountryCode := 7;
szAreaCode := '';
szLocalPhoneNumber:=ip_VPN;
szDeviceType:= RASDT_Vpn;
dwfNetProtocols := RASNP_Ip;
dwFramingProtocol := RASFP_Ppp;
//dwVpnStrategy := 1;
dwfOptions := RASEO_PreviewUserPw;
dwType:=5;
end;
NeedBytes:=sizeof(TRasEntry);
dwError:=RasSetEntryPropertiesA(nil,
PChar(name_of_connection),
@RasEntry,
sizeof(TRasEntry),
nil,
0);
if dwError=0 then ShowMessage('VPN!');
ShowMessage(IntToStr(dwError));
end;[/codebox]