Сейчас на форуме: hgdagon, asfa, bartolomeo (+4 невидимых)

 eXeL@B —› Программирование —› Как программно поменять Volume SN раздела на винте?
Посл.ответ Сообщение

Ранг: 218.5 (наставник), 2thx
Активность: 0.090
Статус: Участник

Создано: 12 декабря 2006 07:48
· Личное сообщение · #1

Може АПИ такая есть?



Ранг: 146.7 (ветеран), 1thx
Активность: 0.070
Статус: Участник

Создано: 12 декабря 2006 07:56
· Личное сообщение · #2

0xy
если тебя интересует именно утиль, то...:
_hxxp://download.sysinternals.com/Files/VolumeId.zip
ну и в дизасм её будет полезно засунуть...




Ранг: 450.3 (мудрец), 13thx
Активность: 0.20
Статус: Участник

Создано: 12 декабря 2006 08:51
· Личное сообщение · #3

Нужен низкоуровневый доступ к диску... Есть исходники на VB.



Ранг: 218.5 (наставник), 2thx
Активность: 0.090
Статус: Участник

Создано: 12 декабря 2006 09:08
· Личное сообщение · #4

ToBad пишет:
Нужен низкоуровневый доступ к диску... Есть исходники на VB.

В самый раз Давай!



Ранг: 516.1 (!), 39thx
Активность: 0.280
Статус: Участник

Создано: 12 декабря 2006 12:01
· Личное сообщение · #5

низкоуровневый доступ, на vb... жесть



Ранг: 24.1 (новичок), 1thx
Активность: 0.010
Статус: Участник

Создано: 12 декабря 2006 12:33
· Личное сообщение · #6

1. Под какую операционку делать будешь? Вин32? 98? 2000? ХР?
2. На каком языке? Хотя ВинАпи и под VB тоже использовать можно...




Ранг: 450.3 (мудрец), 13thx
Активность: 0.20
Статус: Участник

Создано: 12 декабря 2006 13:55
· Личное сообщение · #7

0xy пишет:
В самый раз Давай!


Лови. Я чуть подредактировал и оставил только то, что нужно мне. Под XP работает, на других не проверял.
Если захочешь найти полный оригинал, то шапку автора я оставил...

d020_12.12.2006_CRACKLAB.rU.tgz - mDirectRW.bas




Ранг: 450.3 (мудрец), 13thx
Активность: 0.20
Статус: Участник

Создано: 12 декабря 2006 13:57 · Поправил: ToBad
· Личное сообщение · #8

Av0id пишет:
низкоуровневый доступ, на vb... жесть


Да, точно. Ещё кстати асм вставлять можно... В смысле коды, не инструкции...



Ранг: 218.5 (наставник), 2thx
Активность: 0.090
Статус: Участник

Создано: 13 декабря 2006 10:08 · Поправил: 0xy
· Личное сообщение · #9

ToBad
Спасибо за сорц!

Кстати, а как в VB вставлять ASM?
Типа создаём массив кода... А jmp на него как сделать?




Ранг: 450.3 (мудрец), 13thx
Активность: 0.20
Статус: Участник

Создано: 13 декабря 2006 16:08
· Личное сообщение · #10

Вот пример:

Dim bmas(0 To 23) As Long
bmas(0) = 6314573
bmas(1) = 1
bmas(2) = 16777218
bmas(3) = 327679
bmas(4) = 4096
bmas(5) = 0
bmas(6) = 28
bmas(7) = 0
bmas(8) = 549003022
bmas(9) = -536823296
bmas(10) = 1381047523
bmas(11) = 12245646
bmas(12) = 268482816
bmas(13) = -1207959109
bmas(14) = 567099392
bmas(15) = 477256026
bmas(16) = 16827009
bmas(17) = -628169502
bmas(18) = -1182793542
bmas(19) = 29032448
bmas(20) = 1073788928
bmas(21) = 567084771
bmas(22) = 11534962
bmas(23) = 567102644
ptrMC = VarPtr(Bmas1(0))
CallWindowProc ptrMC, param1, param2, param3, 0

Массивчик на fasm делать можно.



Ранг: 218.5 (наставник), 2thx
Активность: 0.090
Статус: Участник

Создано: 13 декабря 2006 16:43
· Личное сообщение · #11

ToBad пишет:
CallWindowProc ptrMC, param1, param2, param3, 0

А где взять эти param_xx?
Кстати, CallWindowProc как правильно дикларится?




Ранг: 450.3 (мудрец), 13thx
Активность: 0.20
Статус: Участник

Создано: 14 декабря 2006 16:40
· Личное сообщение · #12

0xy пишет:
Кстати, CallWindowProc как правильно дикларится?


Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, lParam As Long) As Long

0xy пишет:
А где взять эти param_xx?


Ты их сам определяешь. Это для передачи параметров в твою асм программу.

p.s. Вообще я всё это из гугля вытаскивал... Приватной инфы тут нет. Поиск рулит.


 eXeL@B —› Программирование —› Как программно поменять Volume SN раздела на винте?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати