Текст програми
«System Directory»
.386 ;
Для процесора не нижче INTEL-386
.model
flat, STDCALL ;
компілювати як програму для WIN32;
;
Визначення
зовнішніх процедур:
extrn
ExitProcess :proc ;
Ліквідація
процесу,
extrn
MessageBoxA :proc ;
Вивід
вікна з повідомленням,
extrn
GetSystemDirectoryA
:proc
;
Отримання
шляху
до системного каталогу
.data ;
Вміст сегменту даних:
buflen
dd 256 ;
Визначення комірки пам’яті
hello_title
db ' Лаб.
№ 1 Виконав:
ст.гр.КІ-21 Денисюк В.В.',
0
hello_message
db 'System
Directory:
' ;
Рядок байтів
user_name
db 256 dup (0) ;
Буфер заповнений нулями
.code
;
Вміст сегменту коду:
Start:
call
GetSystemDirectoryA,
offset
user_name,
offset
buflen
call
MessageBoxA,
0,
offset
hello_message,
offset
hello_title,
40h
call
ExitProcess,
0
end Start
Результат виконання програми «System Directory»
Текст програми
«TempPath»
.386 ;
Для процесора не нижче INTEL-386
.model
flat, STDCALL ;
компілювати як програму для WIN32;
;
Визначення
зовнішніх процедур:
extrn
ExitProcess :proc ;
Ліквідація
процесу,
extrn
MessageBoxA :proc ;
Вивід
вікна з повідомленням,
extrn
GetTempPathA
:proc
;
Отримання
шляху
до тимчасових файлів
.data ;
Вміст сегменту даних:
buflen
dd 256 ;
Визначення комірки пам’яті
hello_title
db ' Лаб.
№ 1 Виконав:
ст.гр.КІ-21 Денисюк В.В.',
0
hello_message
db 'Temp
Path:
' ;
Рядок байтів
user_name
db 256 dup (0) ;
Буфер заповнений нулями
.code
;
Вміст сегменту коду:
Start:
call
GetTempPathA,
offset
buflen,
offset user_name
call
MessageBoxA,
0,
offset
hello_message,
offset
hello_title,
40h
call
ExitProcess,
0
end Start
Результат виконання програми «TempPath»
Текст програми
«CurrentDirectory»
.386 ;
Для процесора не нижче INTEL-386
.model
flat, STDCALL ;
компілювати як програму для WIN32;
;
Визначення
зовнішніх процедур:
extrn
ExitProcess :proc ;
Ліквідація
процесу,
extrn
MessageBoxA :proc ;
Вивід
вікна з повідомленням,
extrn
GetCurrentDirectoryA
:proc
;
Отримання
шляху
до поточного каталогу
.data ;
Вміст сегменту даних:
buflen
dd 256 ;
Визначення комірки пам’яті
hello_title
db ' Лаб.
№ 1 Виконав:
ст.гр.КІ-21 Денисюк В.В.',
0
hello_message
db '
CurrentDirectory:
' ;
Рядок байтів
user_name
db 256 dup (0) ;
Буфер заповнений нулями
.code
;
Вміст сегменту коду:
Start:
call
GetCurrentDirectoryA,
offset
buflen,
offset
user_name
call
MessageBoxA,
0,
offset
hello_message,
offset
hello_title,
40h
call
ExitProcess,
0
end Start
Результат виконання програми «Current Directory»