Форум — Ответы     (  К темам )
 ?  Ильдар: список удаленных соединений (Dial-up connections) (29-04-2003 19:40:26)
НАрод помогите... Мне нужно получить имена всех удаленных соединений которые есть на машине... Тех самых которые хранятся в PWL файле в 98 винде.... Никак не могу найти.
 Павел (29-04-2003 20:36:49)
Смотри функцию RasEnumEntries в Help-e к C++Builder:

The RasEnumEntries function lists all entry names in a remote access phone book.

DWORD RasEnumEntries (

LPTSTR reserved, // reserved, must be NULL
LPTSTR lpszPhonebook, // pointer to full path and filename of phone-book file
LPRASENTRYNAME lprasentryname, // buffer to receive phone-book entries
LPDWORD lpcb, // size in bytes of buffer
LPDWORD lpcEntries // number of entries written to buffer
);


Или небольшое описание на русском:

http://www.delphikingdom.ru/helloworld/rasapi.htm

Там по Delphi, но понять можно, и вроде пример есть (на Delphi)
 Владимир (29-04-2003 21:05:32)
А вот примерно так это выглядит на C++Builder:
//---------------------------------------------------------------------------

#include < ras.h>
#define MaxEnt 50
void __fastcall TForm1::Button1Click(TObject *Sender)
{
unsigned long BuffSize;
unsigned long Entries;
RASENTRYNAME Entry[MaxEnt];
int Result;
Entry[0].dwSize = sizeof(RASENTRYNAME);
BuffSize = sizeof(RASENTRYNAME)*MaxEnt;
Result = RasEnumEntries(NULL, NULL, &Entry[0], &BuffSize, &Entries);
if(Result == 0 && Entries> 0)
{
TStringList *AllEntries = new TStringList();
for(int i=0; i<(int)Entries; i++){
AllEntries->Add(Entry[i].szEntryName);
}
ListBox1->Items->AddStrings(AllEntries);
delete AllEntries;
}
}
//-----------------------------------------------------------------

Result_- в случае успешного выполнения возвращает 0, в противном случае получим
ERROR_BUFFER_TOO_SMALL (буфер слишком маленький) или
ERROR_NOT_ENOUGH_MEMORY(не хватает памяти).
BuffSize — указанный нами размер AnsiChar-массива.
&Entry[0]- получим указатель на первый элемент массива,
в который поместились необходимые нам сведения.
Entries — получим количество зарегистрированных в системе "удаленных доступов".
Остальное смотри в Help-e или указанной выше статье королевства Delphi.
 Ильдар (30-04-2003 12:36:07)
Блин.. классно.... но работает в 2000 винде... а вот в 98 не хочет
 Ильдар (30-04-2003 12:50:42)
Блин.. классно.... но работает в 2000 винде... а вот в 98 не хочет