Форум программистов, компьютерный форум CyberForum.ru

Delphi и WinAPI

Войти
Регистрация
Восстановить пароль
 
n971030
163 / 95 / 1
Регистрация: 23.01.2010
Сообщений: 1,192
#1

Как получить номер USB флешки? - Delphi WinAPI

22.09.2016, 11:19. Просмотров 534. Ответов 1
Метки нет (Все метки)

Пробовал так выдвет хрень, какой та номер наверно USB порта
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
program Project1;
 
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils,
  windows;
 
var
 
 SerialNum,dtyp:DWORD;
 
 a,b:DWORD;
 
 Buffer,disk :Array[0..255]of char;
 
begin
 
  dtyp:=GetDriveType('E:');
 
  if dtyp = DRIVE_REMOVABLE then
 
    writeln('Disk(type): Yes')
 
  else
 
    writeln('Disk(type): No');
 
  GetVolumeInformation(
 
                'E:',
 
                Buffer,
 
                sizeof(Buffer),
 
                @SerialNum,
 
                a,
 
                b,
 
                nil,
 
                0);
 
  if SerialNum = 1018821877 then //Г±Г°Г*ГўГ*ГЁГўГ*ГҐГ¬ ñåðèéГ*ûé Г*îìåð
 
    writeln('S\N: Yes')
 
  else
 
    writeln('S\N: No');
 
  readln;
 
end.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2016, 11:19     Как получить номер USB флешки?
Посмотрите здесь:

Как узнать сирейный номер флешки на Делфи - Delphi WinAPI
Как узнать сирейный номер флешки и внешнего винчестепа на Делфи зарание спасибо

Получить информацию о всех установленных USB флешках в ListBox - Delphi WinAPI
Доброго времени суток! Помогите пожалуйста, как мне получить информацию о всех установленных USB флешках в ListBox, некий аналог...

Как запустить программу с флешки аутораном - Delphi WinAPI
Я хочу написать программу чтоб эта программа начала работать при подключении к компютеру ПРограмма расположена на флешке и должна она...

Как получить введенный текст из едита? - Delphi WinAPI
Подскажите при помощи каких функций или процедур можно вытащить текст введеный в edit. Если можно приведите кусок программы с коментами!!!

Как получить имя пользователя по PID - Delphi WinAPI
Здравствуйте. Делаю диспетчер задач. Возник вопрос, как получить имя пользователя по PID процесса? Возможно ли такое? Вот код: var ...

Как получить данные из TVirtualStringTree, зная его Handle? - Delphi WinAPI
Как прочитать данные первой колонки из TVirtualStringTree, зная его Handle. Для ListView делал так (правда в чужом процессе): ...

Как получить список открытых окно юзера из под системной службы? - Delphi WinAPI
День добрый! Необходимо мониторить юзверей на предмет занятости. Проблема в том что в логфайл не идет запись имен окон. Либо нет...

Как получить доступ к субкомпоненту компонента которое расположено на чужом окне - Delphi WinAPI
Здравствуйте. Есть библиотека dll которая подключена к главной програми.На главном окне программы есть компонент у которого ComponentCount...

Delphi 7. Как получить информацию о установленном железе и список установленных драйверов к нему - Delphi WinAPI
В гугле я уже был, там мало интересного на эту тему для Delphi 7. Если кто то сталкивался с этим поделитесь с начинающим. Буду благодарен...

Шифрование данных на usb носителе - Delphi WinAPI
Помогите пожалуйста, требуется написать программу, которая определяла бы наличие флешки при подключении и шифровала бы данные на ней, по...

Серийный номер USB флешки - C++ Builder
Доброе время суток помогите исходничком, необходимо при нажатии на кнопку в эдите выдовало Серийный номер USB флешки.Заранее спасибо


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MyEternity
84 / 84 / 19
Регистрация: 25.04.2016
Сообщений: 453
27.09.2016, 21:09     Как получить номер USB флешки? #2
Учитывайте, что GetVolumeInformation выдаст вам серийный номер тома, а не устройства.

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function GetDriveInformation(Drive : String; Var VolumeName, FileSystemName, VolumeSerialNo : String; var MaxComponentLength, FileSystemFlags : LongWord) : Boolean;
var
  _VolumeName,_FileSystemName: array [0..MAX_PATH-1] of Char;
  VolumeSerialNumber: DWORD;
Begin
  try
    if GetVolumeInformation(PChar(Drive),_VolumeName,MAX_PATH,@VolumeSerialNumber, MaxComponentLength,FileSystemFlags,_FileSystemName,MAX_PATH) then
    Begin
      VolumeSerialNo := Format('%8.8X', [VolumeSerialNumber]);
      VolumeName :=_VolumeName;
      FileSystemName :=_FileSystemName;
      Result := True;
    End else Result:=False;
  except
    Result:=False;
  end;
end;
Yandex
Объявления
27.09.2016, 21:09     Как получить номер USB флешки?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru