Поиск:

Ответ в темуСоздание новой темы Создание опроса
> <<серийный номер винта>> 
:(
    Опции темы
kostik_16
  Дата 22.12.2003, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 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

но у меня оно чего-то не работает, что я сделал неправильно?
PM MAIL   Вверх
p0s0l
Дата 23.12.2003, 07:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

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



Код
mov edi,[esp+4*5]
push 0
push 0
lea ecx, [edi + @dw1]
push ecx
push ecx
lea ecx, [edi + @serial_]
push ecx
push 0
push 0
lea ecx, [edi + @Disk]
push ecx
call eax // в eax у меня адрес функции

@Disk: db 'c:\',0
@dw1: dd 000000000h
@serial_: dd 000000000h



--------------------
С уважением, г-н Посол.
PM   Вверх
Ruterian
Дата 9.1.2004, 18:01 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


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
Дата 9.1.2004, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва

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



Цитата

А не проще ли напрямую через порты:


Вряд ли винда дас тебе это сделать в win32- приложении ;)


--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm: Общие вопросы"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

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

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


 




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


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

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