Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> RAS API RasEnumDevices возвращает ошибку 632 
V
    Опции темы
MadMas
Дата 19.1.2009, 07:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Блондинко
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 5.5.2006
Где: Екатеринбург

Репутация: нет
Всего: нет



Работаю с RAS API + delphi 7.

При вызове функции RasEnumDevices   возвращается ошибка "632 ERROR_INVALID_SIZE (The structure size is incorrect / Определен неверный размер структуры.)"

Код: 
Код

devs := 0;
devices := nil;
NeedBytes := SizeOf(PRasDevInfo);
GetMem(devices, NeedBytes);
devices^.dwSize := NeedBytes;

 try
   dwError := RasEnumDevices(devices, NeedBytes, devs);

   if dwError=603 then //ERROR_BUFFER_TOO_SMALL
   begin
      FillChar(devices^, SizeOf(PRasDevInfo), 0);
      FreeMem(devices, SizeOf(PRasDevInfo));
      GetMem(devices, SizeOf(PRasDevInfo)*devs);
      dwError := RasEnumDevices(devices, NeedBytes, devs);
      showMessage(IntToStr(dwError));
   end;

   showMessage(IntToStr(dwError));
   if dwError=0 then
   begin
      showMessage('!');
   end;
   finally;
   end;


Есть подозрения на неверное определение версии ОС(стоит WinXP SP2), так как строки в модуле между {$IFDEF WINVER_0x401_OR_GREATER} {$ENDIF} компилятор не видит. 

Как исправить это недоразумение?

PM   Вверх
dumb
Дата 19.1.2009, 07:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 5
Всего: 158



есть подозрение, что надо таки определять размер структуры, а не указателя на нее: NeedBytes := SizeOf(TRasDevInfo);
PM MAIL   Вверх
MadMas
Дата 19.1.2009, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Блондинко
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 5.5.2006
Где: Екатеринбург

Репутация: нет
Всего: нет



Спасибо. Все беды от невнимательности :( 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0431 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.