![]() |
|
|
![]()
|
|
| kostik_16 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 23.7.2003 Репутация: нет Всего: 1 |
На Delphi я вызывал сирийник:
var serial, dw1 : cardinal; begin GetVolumeInformation('c:\', nil, 0, @serial, dw1, dw1, nil, 0) //в serial содержиться серийник end; На асме: mov edi,[esp+4*5] push 0 push 0 push [edi + @dw1] push [edi + @dw1] push [edi + @serial_] push 0 push 0 push [edi + @Disk] call eax // в eax у меня адрес функции @Disk: db 'c:\' @dw1: dd 000000000h @serial_: dd 000000000h но у меня оно чего-то не работает, что я сделал неправильно? |
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 2 Всего: 112 |
-------------------- С уважением, г-н Посол. |
|||
|
||||
| Ruterian |
|
|||
|
Unregistered |
А не проще ли напрямую через порты:
mov dx, base_port ;177 - sm, 1f7 - pm mov al, 0ech ; ECH - получить паспорт диска out dx,al mov cx,512/2 ; кол-во байт/2, т.к.читаем ;словами mov di,offset buffer mov dx,data_port ; Порт данных (1x0) rep insw ; повторить CX раз В ответ получаем 512 байт паспорта в буфере :-) |
|||
|
||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Вряд ли винда дас тебе это сделать в win32- приложении ;) -------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
![]()
|
| Правила форума "Asm: Общие вопросы" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |