nomad____1 |
01-04-2013 22:35 2123948 |
нужна прога на асме
оооооооочень нужна прога на ассемблере которая выводит имя текущего диска. просто очень надо. помогите плиз. заранее спасибо
|
nomad____1, на страницах форума wasm[dot]ru нашел следующий код перехвата имени по id процесса.
Код:
UNICODE_STRING GetFullProcessName(HANDLE PID)
{
PEPROCESS proc;
PSECTION Section;
PSEGMENT Segment;
PCONTROL_AREA ControlArea;
PFILE_OBJECT FileObject;
PsLookupProcessByProcessId(PID,&proc);
if(proc->SectionObject)
{
Section = proc->SectionObject;
Segment = Section->Segment;
ControlArea = Segment->ControlArea;
FileObject = ControlArea->FilePointer;
DbgPrint("Section FileName: %S\n",FileObject->FileName.Buffer);
}
ObDereferenceObject((PVOID)proc);
return FileObject->FileName;
}
Как свернуть всё это в ассемблер -- понятия не имею. Надо вкапываться в строение ядра NT. Может темы про написание драйверов смогут помочь. Не знаю. Надо основательно гуглить.
Хотя! Можно попробовать посмотреть ReactOS и его исходные коды. РеактОС обеспечивает бинарную совместимость с Windows и должен быть схож с ней в принципах работы.
|
Что вы понимаете под текущим диском?
|
nomad____1 |
21-08-2013 21:09 2205344 |
Цитата:
Цитата BlackEric
Что вы понимаете под текущим диском? »
|
понимал тот логический диск на котором размещалась программа.
|
Время: 19:45.
© OSzone.net 2001-