Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Определить серийный номер устройства с которого запущен скрипт.

Ответить
Настройки темы
[решено] Определить серийный номер устройства с которого запущен скрипт.

Аватара для Centrinar

Старожил


Сообщения: 247
Благодарности: 1

Профиль | Цитировать


Собственно как определить серийник если устройство может быть как и флешка так и HDD ну и т.д. Спасибо!

Отправлено: 22:44, 09-04-2011

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Что подразумевается под «серийный номер устройства»? WMI, класс «Win32_LogicalDisk», свойство «VolumeSerialNumber», оно же «DriveGetSerial ()»?!

Последний раз редактировалось Iska, 10-04-2011 в 01:15.


Отправлено: 01:07, 10-04-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Centrinar

Старожил


Сообщения: 247
Благодарности: 1

Профиль | Цитировать


DriveGetSeria

Отправлено: 02:08, 10-04-2011 | #3


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


Centrinar,
Код: Выделить весь код
#include <WinAPIEx.au3>

$sProcess = 'notepad.exe'
Run('notepad.exe', '', @SW_MINIMIZE)
Sleep(1000)
$PID = ProcessExists($sProcess)
If $PID Then
    $sPath = _WinAPI_GetProcessFileName($PID)
    $sDrive = _WinAPI_PathStripToRoot($sPath)
    $sSerial = DriveGetSerial($sDrive)
    MsgBox(64, 'Info', 'Процесс: ' & $sProcess & @LF & 'Путь: ' & $sPath & @LF & 'Диск: ' & _
            $sDrive & @LF & '№: Диска ' & $sDrive & ' = ' & $sSerial)
    ProcessClose($sProcess)
EndIf
WinAPIEx.au3
Это сообщение посчитали полезным следующие участники:

Отправлено: 05:35, 10-04-2011 | #4


Аватара для AZJIO

Старожил


Сообщения: 254
Благодарности: 126

Профиль | Отправить PM | Цитировать


Centrinar, MsgBox(0, 'Это что ли?', DriveGetSerial(StringLeft(@ScriptDir, 2)))
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:27, 10-04-2011 | #5


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
#include <file.au3>
AutoItSetOption("MustDeclareVars", 1)

Local $sDrive, $sDir, $sFName, $sExt
_PathSplit(@ScriptFullPath, $sDrive, $sDir, $sFName, $sExt)
ConsoleWrite(Hex(Number(DriveGetSerial($sDrive))) & @CRLF)


Local $oFSO = ObjCreate("Scripting.FileSystemObject")
ConsoleWrite(Hex($oFSO.GetDrive($oFSO.GetDriveName(@ScriptFullPath)).SerialNumber) & @CRLF)
$oFSO = 0


Local $oSWbemLocator = ObjCreate("WbemScripting.SWbemLocator")
ConsoleWrite($oSWbemLocator.ConnectServer(".", "root\cimv2").Get("Win32_LogicalDisk.DeviceID='" & $sDrive & "'").VolumeSerialNumber & @CRLF)
$oSWbemLocator = 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:30, 10-04-2011 | #6


Аватара для AZJIO

Старожил


Сообщения: 254
Благодарности: 126

Профиль | Отправить PM | Цитировать


Можно просто hex сделать MsgBox(0, 'Это что ли?', Hex(DriveGetSerial(StringLeft(@ScriptDir, 2))))
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:35, 10-04-2011 | #7


Аватара для Centrinar

Старожил


Сообщения: 247
Благодарности: 1

Профиль | Цитировать


Для не знающих, что значит HEX

Отправлено: 14:20, 10-04-2011 | #8


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Перевод числа в строку в шестнадцатеричной системе счисления.
Цитата Function Reference:
Hex

Returns a string representation of an integer or of a binary type converted to hexadecimal.
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:27, 10-04-2011 | #9



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Определить серийный номер устройства с которого запущен скрипт.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Сменить серийный номер Ser6720 Хочу все знать 7 21-12-2009 14:37
[решено] Узнать имя пользователя, от которого запущен процесс vitalisvv AutoIt 4 16-09-2009 01:16
[решено] Получить имя диска, с которого запущен скрипт frostyland AutoIt 2 18-08-2009 10:11
Как определить серийный номер имеющегося дистрибутива Windows 98 SE (ru) eastman75 Microsoft Windows 95/98/Me (архив) 4 31-08-2008 21:12
Серийный номер Butunin Klim Microsoft Windows NT/2000/2003 1 02-05-2007 22:40




 
Переход