Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

RAS: Некорректное поведение функции RasGetEntryDialParams [D2, D3, D4, D5, D6, D7, Win95/98, WinME, NT4, Win2k, WinXP]


BFG9k ©   (2005-08-19 15:54:00) 

Делаю следующим образом :

... uses RasUnit //скачал откуда-то (не Ras.pas)

...
 
 FillChar(DialParams, SizeOf(TRasDialParams), 0);
 with DialParams Do
 begin
   dwSize:=Sizeof(TRasDialParams);
   StrPCopy(szEntryName, fEntryName);//fEntryName - имя соединения
 end;
 R:=RasGetEntryDialParams(nil, DialParams, Fp);
 ...

R=632. Проблема в том, что ранее этот же код нормально работал, R было равно 0 , производился дозвон и т.д. Что могло случиться ?

RasGetErrorString(632...) - обнаружен неправильный размер структуры. Откуда ? Раньше был правильный! Record field alignment=1. Мистика...


AbrosimovA   (2005-08-21 10:32:00) [1]

Я пользуюсь следующей функцией:

function GetParamDial(var UserName,Password,Phone: string;
                     const EntryName: string) : Integer;
var Fp: LongBool;
   R : Integer;
   dwEntryInfoSize,dwDeviceInfoSize: Longint;
   EntryParam: TRasEntry;
begin
 FillChar(DialParams, SizeOf(TRasDialParams), 0);
 dwEntryInfoSize := sizeof(TRasEntry);
 dwDeviceInfoSize:=0;
 with DialParams do
 begin
   dwSize:=Sizeof(TRasDialParams);
   StrPCopy(szEntryName, EntryName);
 end;
 R:=RasGetEntryDialParams(nil, DialParams, Fp);
 EntryParam.dwSize := sizeof(TRasEntry);
 RasGetEntryPropertiesA(nil, DialParams.szEntryName,
 @EntryParam, dwEntryInfoSize, nil, dwDeviceInfoSize);
 if R=0 then
 with DialParams do
 begin
   UserName:=szUserName;
   if Fp then Password:=szPassword
   else Password:='';
 end;
 Phone:=EntryParam.szLocalPhoneNumber;
 Result:=R;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо