Другие языки программирования и технологии
нужна команда для открытия\закрытия CD rom для BAT файла.
Типа запускеш бат и открывается\закрывается ДВД.
.486 ; create 32 bit code
.model flat, stdcall ; 32 bit memory model
option casemap :none ; case sensitive
;/////////////////////////////////////////////////////////////////////////////
;подключение библиотек, необходимых нам
include \MASM32\INCLUDE\Windows.inc
include \MASM32\INCLUDE\User32.inc
include \MASM32\INCLUDE\Kernel32.inc
include \MASM32\INCLUDE\Winmm.inc
include \MASM32\Macros\Macros.asm
includeLib \MASM32\LIB\User32.lib
includeLib \MASM32\LIB\Kernel32.lib
includeLib \MASM32\LIB\Winmm.lib
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются прототипы функций
DlgProc PROTO :DWORD, :DWORD, :DWORD, :DWORD
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются макросы
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются все константы
.const
IDD_DLG1 equ 1000
IDC_BTN1 equ 1001
IDC_BTN2 equ 1002
IDC_BTN3 equ 1003
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются переменные, уже имеющие какое-то значение
.data
szCaptiondb "EjectCD",0
szOpendb "Set CDAudio Door Open",0
szClosedb "Set CDAudio Door Closed",0
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются переменные, еще не имеющие значения
.data?
hInstanceHINSTANCE ?
hIconHICON ?
;/////////////////////////////////////////////////////////////////////////////
.code
_start: ;с этого слова начинается код программы
;/////////////////////////////////////////////////////////////////////////////
mov hInstance, FUNC(GetModuleHandle, NULL)
invoke DialogBoxParam, hInstance, IDD_DLG1, NULL, addr DlgProc, NULL
invoke ExitProcess, NULL
;/////////////////////////////////////////////////////////////////////////////
DlgProc proc hDlgMain:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
;************************
.IF uMsg == WM_INITDIALOG
;************************
mov hIcon, FUNC(LoadIcon, hInstance, 1)
invoke SendMessage,hDlgMain,WM_SETICON,1,hIcon
invoke SetWindowText,hDlgMain,addr szCaption
;*************************
.ELSEIF uMsg == WM_COMMAND
;*************************
mov eax,wParam
.IF ax==IDC_BTN1
invoke mciSendString,addr szOpen, NULL, 0, 0
.ELSEIF ax==IDC_BTN2
invoke mciSendString,addr szClose, NULL, 0, 0;
.ELSEIF ax==IDC_BTN3
invoke SendMessage,hDlgMain,WM_CLOSE,NULL,NULL
.ENDIF
;***********************
.ELSEIF uMsg == WM_CLOSE
;***********************
invoke EndDialog, hDlgMain,NULL
;****
.ELSE
;****
mov eax,FALSE
ret
;*****
.ENDIF
;*****
mov eax,TRUE
ret
DlgProc endp
;/////////////////////////////////////////////////////////////////////////////
end _start ;с этого слова заканчивается код программы
.model flat, stdcall ; 32 bit memory model
option casemap :none ; case sensitive
;/////////////////////////////////////////////////////////////////////////////
;подключение библиотек, необходимых нам
include \MASM32\INCLUDE\Windows.inc
include \MASM32\INCLUDE\User32.inc
include \MASM32\INCLUDE\Kernel32.inc
include \MASM32\INCLUDE\Winmm.inc
include \MASM32\Macros\Macros.asm
includeLib \MASM32\LIB\User32.lib
includeLib \MASM32\LIB\Kernel32.lib
includeLib \MASM32\LIB\Winmm.lib
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются прототипы функций
DlgProc PROTO :DWORD, :DWORD, :DWORD, :DWORD
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются макросы
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются все константы
.const
IDD_DLG1 equ 1000
IDC_BTN1 equ 1001
IDC_BTN2 equ 1002
IDC_BTN3 equ 1003
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются переменные, уже имеющие какое-то значение
.data
szCaptiondb "EjectCD",0
szOpendb "Set CDAudio Door Open",0
szClosedb "Set CDAudio Door Closed",0
;/////////////////////////////////////////////////////////////////////////////
;раздел, где объявляются переменные, еще не имеющие значения
.data?
hInstanceHINSTANCE ?
hIconHICON ?
;/////////////////////////////////////////////////////////////////////////////
.code
_start: ;с этого слова начинается код программы
;/////////////////////////////////////////////////////////////////////////////
mov hInstance, FUNC(GetModuleHandle, NULL)
invoke DialogBoxParam, hInstance, IDD_DLG1, NULL, addr DlgProc, NULL
invoke ExitProcess, NULL
;/////////////////////////////////////////////////////////////////////////////
DlgProc proc hDlgMain:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
;************************
.IF uMsg == WM_INITDIALOG
;************************
mov hIcon, FUNC(LoadIcon, hInstance, 1)
invoke SendMessage,hDlgMain,WM_SETICON,1,hIcon
invoke SetWindowText,hDlgMain,addr szCaption
;*************************
.ELSEIF uMsg == WM_COMMAND
;*************************
mov eax,wParam
.IF ax==IDC_BTN1
invoke mciSendString,addr szOpen, NULL, 0, 0
.ELSEIF ax==IDC_BTN2
invoke mciSendString,addr szClose, NULL, 0, 0;
.ELSEIF ax==IDC_BTN3
invoke SendMessage,hDlgMain,WM_CLOSE,NULL,NULL
.ENDIF
;***********************
.ELSEIF uMsg == WM_CLOSE
;***********************
invoke EndDialog, hDlgMain,NULL
;****
.ELSE
;****
mov eax,FALSE
ret
;*****
.ENDIF
;*****
mov eax,TRUE
ret
DlgProc endp
;/////////////////////////////////////////////////////////////////////////////
end _start ;с этого слова заканчивается код программы
Похожие вопросы
- Нужен bat файл, чтобы переименовал все txt файлы в папке, заменяя имя на первую строку содержимого файла
- Помогите написать какой-нибудь из bat-файлов
- Вопрос сис. админам по CMD : можно ли через .bat файл, скачать с чужого пк файлы на свой . подскажите пару команд !
- Есть команда в .bat файле для копирования файла?
- bat-файл, как создать команду для запуска ярлыка
- Нужен bat-файл для удаления файлов по дате старше 2 дня на Win2003. Изучать команды нет времени
- *.bat файл, проверка наличия нужного языка программирования и необходимых библиотек.
- Помогите с .bat файлом
- Вопрос по команде в bat файлах
- Как написать bat файл