Форум: "Система";
Текущий архив: 2003.04.07;
Скачать: [xml.tar.bz2];
Внизфуткция RasEnumDevices. Кто знает, как ей пользоваться? Найти похожие ветки
← →
ych_boriss (2003-02-13 04:03) [0]Если кто знает, скажите пожалуйста, как правильно производить вызов функции RasEnumDevices?
Заранее благодарен
← →
Набережных С. (2003-02-13 20:09) [1]
type
ERasError = class(Exception)
private
FErrorCode: Cardinal;
public
property ErrorCode: Cardinal read FErrorCode;
constructor CreateOnCode(Error: Cardinal);
end;
constructor ERasError.CreateOnCode(Error: Cardinal);
var
s: string;
begin
FErrorCode:=Error;
SetLength(s, 1024);
RasGetErrorStringA(Error, @s[1], 1024);
Message:=PChar(s);
end;
procedure EnumRasDevices(const List: TStrings);
type
TDevArr = array[0..0] of TRasDevInfoA;
PDevArr = ^TDevArr;
var
Size, n, Count: integer;
P: PDevArr;
begin
Size:=0; Count:=0;
n:=RasEnumDevicesA(nil, Size, Count);
if
(n <> 0) and
(n <> ERROR_BUFFER_TOO_SMALL)
then
raise ERasError.CreateOnCode(n);
GetMem(P,Size);
try
P[0].dwSize:=SizeOf(TRasDevInfoA);
n:=RasEnumDevicesA(LpRasDevInfoA(P), Size, Count);
if n <> 0 then raise ERasError.CreateOnCode(n);
{$R-}
for n:=0 to Pred(Count) do
List.Add(P[n].szDeviceType + " :"#9 + P[n].szDeviceName);
{$R+}
finally
FreeMem(P);
end;
end;
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.04.07;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.008 c