Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.07.2010, 11:35   #1
Horus92
Форумчанин
 
Аватар для Horus92
 
Регистрация: 04.05.2009
Сообщений: 147
По умолчанию API Функция

Не могу реализовать функцию FlashWindow
вот мой код
Код:
.586
 .model flat,stdcall
 
FlashWindow PROTO      ,:DWORD, :DWORD, :DWORD
option casemap:none


includelib user32.lib
invoke FlashWindow, hWnd, offset bInvert, 2d, NULL
не работает почему??
Horus92 вне форума Ответить с цитированием
Старый 19.07.2010, 12:03   #2
airyashov
Форумчанин
 
Регистрация: 02.04.2008
Сообщений: 358
По умолчанию

у функции 2-а параметра
FlashWindow(Wnd: HWnd; Invert: Bool)
неплохо пишу на ассемблере для 80х86
icq: 3(один)7748666
mail: airyashov(а)inbox.ru
airyashov вне форума Ответить с цитированием
Старый 19.07.2010, 12:05   #3
Horus92
Форумчанин
 
Аватар для Horus92
 
Регистрация: 04.05.2009
Сообщений: 147
По умолчанию

а как вывисти незнаю !
немоглибы вы помоч мне с выводом с помошью инвок

Последний раз редактировалось Horus92; 19.07.2010 в 12:23.
Horus92 вне форума Ответить с цитированием
Старый 19.07.2010, 13:16   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
вывисти
Вывести
Цитата:
не работает почему??
А это что и весь код?
Как уже сказали выше invoke FlashWindow, hWnd, true
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.07.2010, 13:25   #5
yuran666666
Форумчанин
 
Аватар для yuran666666
 
Регистрация: 23.04.2009
Сообщений: 346
По умолчанию

Код:
; а почему бы и не вот так?

	.386
	.model flat,stdcall
	option casemap:none
	include \masm32\include\windows.inc
	include \masm32\include\user32.inc
	include \masm32\include\kernel32.inc
	include \masm32\include\gdi32.inc
	include \masm32\include\comdlg32.inc
	include \masm32\include\shell32.inc
	includelib \masm32\lib\user32.lib
	includelib \masm32\lib\kernel32.lib
	includelib \masm32\lib\gdi32.lib
	includelib \masm32\lib\comdlg32.lib
	includelib \masm32\lib\shell32.lib
WinMain proto :DWORD,:DWORD,:DWORD,:DWORD
.const
IDC_TIMER		equ 1
.data?
hInstance		HINSTANCE ?
CommandLine		LPSTR ?
TimerID 		dd ?
.data
ClassName 		db "FlashWind"
FormCaption		db "Form",0
.code
start:
	invoke	GetModuleHandle,NULL
	mov		hInstance,eax
	invoke	GetCommandLine
	invoke	WinMain,hInstance,NULL,CommandLine,SW_SHOWDEFAULT
	invoke	ExitProcess,eax
WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD
LOCAL wc	:WNDCLASSEX
LOCAL msg 	:MSG
LOCAL hwnd	:HWND
	mov		wc.cbSize,SIZEOF WNDCLASSEX
	mov		wc.style,CS_BYTEALIGNCLIENT
	mov		wc.lpfnWndProc,offset WndProc
	mov		wc.cbClsExtra,NULL
	mov		wc.cbWndExtra,NULL
	push	hInst
	pop		wc.hInstance
	mov		wc.hbrBackground,COLOR_BTNFACE+1
	mov		wc.lpszClassName,OFFSET ClassName
	invoke	LoadIcon,NULL,IDI_APPLICATION
	mov		wc.hIcon,eax
	mov		wc.hIconSm,eax
	invoke	LoadCursor,NULL,IDC_ARROW
	mov		wc.hCursor,eax
	invoke	RegisterClassEx,addr wc
invoke CreateWindowEx,0,ADDR ClassName,ADDR FormCaption,WS_SYSMENU or WS_SIZEBOX,648,84,384,291,0,0,hInst,0
	mov		hwnd,eax
	INVOKE	ShowWindow,hwnd,SW_SHOWNORMAL
	INVOKE	UpdateWindow,hwnd
	

	.WHILE TRUE
		invoke	GetMessage,ADDR msg,0,0,0

		.BREAK .IF (!eax)
		invoke	TranslateMessage,ADDR msg
		invoke	DispatchMessage,ADDR msg
	.ENDW
 	mov	eax,msg.wParam
	ret
WinMain endp


WndProc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
	.IF uMsg == WM_DESTROY
		invoke KillTimer,hWnd,TimerID
		invoke	PostQuitMessage,NULL
;#############################################################
				
	.elseif uMsg == WM_TIMER
			invoke FlashWindow, hWnd, TRUE
			invoke Sleep,300
			invoke FlashWindow, hWnd, FALSE
			
;#############################################################		
	.ELSEIF uMsg == WM_CREATE
			invoke SetTimer,hWnd,IDC_TIMER,300,NULL
			
			mov TimerID,eax
	.ELSE
		invoke	DefWindowProc,hWnd,uMsg,wParam,lParam
		ret
	.ENDIF
	xor		eax,eax
	ret
WndProc endp
end start
Нет, ну правда..

Последний раз редактировалось Stilet; 19.07.2010 в 13:31.
yuran666666 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OpenCV. C++ API. TheVampire Общие вопросы C/C++ 3 11.04.2010 19:41
API функция возвращающая имена дисков всистеме AIst Win Api 2 09.08.2008 19:17
API-функция NeiL Win Api 2 02.05.2008 22:08
одна функция потока, а другая функция - член класса запускающего этот поток Дмитрий_Ч Общие вопросы C/C++ 2 27.09.2007 08:50