Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Доп. информация об устройствах.   Найти похожие ветки 

 
OlegNik ©   (2009-02-10 11:12) [0]

GetLogicalDrives
GetDriveType
спасибо спасибо.
Ну и еще вопрос. Как получить информацию такого рода.

контроллер IDE/ATAPI PCMCIA диск (H) или
Запоминающее устроиство для USB диск (I)


 
clickmaker ©   (2009-02-10 11:59) [1]

через WMI, наверно
класс Win32_DiskDrive


 
OlegNik ©   (2009-02-10 14:09) [2]


> через WMI, наверно
> класс Win32_DiskDrive

А подробние можно.


 
Eraser ©   (2009-02-10 17:34) [3]

> А подробние можно.

можно - msdn.com


 
Smile   (2009-02-10 19:28) [4]

Заляни сюда
http://www.delphi3000.com/articles/article_4841.asp?SK=USB
и сюда
http://www.delphi3000.com/articles/article_4077.asp?SK=USB
возможно, что и найдешь что-то по интересующему тебя вопросу.


 
OlegNik ©   (2009-02-11 12:26) [5]

раскрою тему:
мне необходимо работать с ВЗУ тип PCMCIA.
При этом программа в автоматически должна определять есть ли такое
или его нет на компе (я не имею слот а саму флеш).
Изыскания решения ввели меня в уныние и вот почему.
Используя функции
  I :=  GetLogicalDriveStrings()
  и далее по I
   GetDriveType();
  вроде и однозначно отвечала мне кто есть кто.
  До определенного момента. вставил флеш размером 512м, а она
возьми да и определись  как основной диск (DRIVE_FIXED). Ну и попутно
мелькнула мысль что USB флеш будет DRIVE_REMOVABLE, а это уже не
моя задача.
  Понятно что винда это отслеживает. Но вот как? Может кто ответит. а?


 
clickmaker ©   (2009-02-11 13:15) [6]

> винда это отслеживает. Но вот как?

plug-and-play
контроллер устройства оповещает систему, что в него что-то воткнули.
Винда в свою очередь рассылает сообщение WM_DEVICECHANGE

вообще, много чего можно узнать из реестра
отсюда, например
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum


 
OlegNik ©   (2009-02-12 12:49) [7]

Свершилось делюсь и жду критиков.
Подход следующий.

Получаю список всех дисков: GetLogicalDriveStrings();

Лезу в  реестр
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCMCIA
за что спасибо clickmaker ©  (да открываю ключи только на чтение)
PCMCIA али USB здесь не суть.
Собираю имена всех подкаталогов.
Далее по списку дисков через DeviceIoControl получаю паспорт диска
(производитель и т.д.)
Далее сравнеие паспортов диска с списком из реестра. Совпало хорошо
PCMCIA(USB) есть нет плохо.
проверял на NT,XP (PCMCIA шт. 10 от разных производителей ну личную USB проверил проверку вынесла и PCMCIA тоже)



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.061 c
2-1265953833
n_sch
2010-02-12 08:50
2010.08.27
Rave Reports 5


15-1265395623
GreyWolf
2010-02-05 21:47
2010.08.27
Ищу Fix for QC report 37403


2-1271226026
smman
2010-04-14 10:20
2010.08.27
Как двумерному массиву присвоить элементы одномерного?


2-1273183195
Light-blr
2010-05-07 01:59
2010.08.27
Переход стрелочками между окошками


2-1266950781
Женя
2010-02-23 21:46
2010.08.27
Перенос строки при экспорте из acces в dbgrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский