Ir para conteúdo
Fórum Script Brasil

Alef

Membros
  • Total de itens

    4
  • Registro em

  • Última visita

Sobre Alef

Alef's Achievements

0

Reputação

  1. Enfim,.... fiz isto... o prog abre mas trava... :huh: #include <windows.h> //#include "generic.h" HINSTANCE hCop; //ocorrencia atual LPCTSTR lpszNomeAplic = "Genérico"; LPCTSTR lpszTitulo = "Aplicativo Genérico"; BOOL RegisterWin95(CONST WNDCLASS* lpwc); int APIENTRY WinMain (HINSTANCE hCopia, HINSTANCE hCopiaAnt, LPSTR lpLinhaCmd, int nCmdExibe) { MSG msg; HWND hJan; HWND procJan; WNDCLASS cj; cj.style = CS_HREDRAW | CS_VREDRAW; cj.lpfnWndProc = (WNDPROC) procJan; cj.cbClsExtra = 0; cj.cbWndExtra = 0; cj.hInstance = 0; cj.hIcon = LoadIcon(hCopia, lpszNomeAplic); cj.hCursor = LoadCursor(NULL, IDC_ARROW); cj.hbrBackground = (HBRUSH) (COLOR_WINDOW+1); cj.lpszMenuName = lpszNomeAplic; cj.lpszClassName = lpszNomeAplic; if(!RegisterWin95(&cj)) return false; hCop = hCopia; hJan = CreateWindow (lpszNomeAplic, lpszTitulo, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hCopia, NULL); if(!hJan) return false; ShowWindow(hJan, nCmdExibe); UpdateWindow(hJan); while(GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return(msg.wParam); } BOOL RegisterWin95 (CONST WNDCLASS* lpcj) { WNDCLASSEX cjex; cjex.style = lpcj->style; cjex.lpfnWndProc = lpcj->lpfnWndProc; cjex.cbClsExtra = lpcj->cbClsExtra; cjex.cbWndExtra = lpcj->cbWndExtra; cjex.hInstance = lpcj->hInstance; cjex.hIcon = lpcj->hIcon; cjex.hCursor = lpcj->hCursor; cjex.hbrBackground = lpcj->hbrBackground; cjex.lpszMenuName = lpcj->lpszMenuName; cjex.lpszClassName = lpcj->lpszClassName; cjex.cbSize = sizeof(WNDCLASSEX); cjex.hIconSm = LoadIcon(cjex.hInstance, "PEQUENO"); return RegisterClassEx(&cjex); } LRESULT CALLBACK hJan(HWND hJan, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch(uMsg) { case WM_COMMAND: switch(LOWORD(wParam)) { case 'IDM_TESTAR': break; case 'IDM_SAIR': DestroyWindow(hJan); break; } break; case WM_DESTROY : PostQuitMessage(0); break; default: return (DefWindowProc(hJan, uMsg, wParam, lParam)); } return(0L); }
  2. Ai, meu Deus do céu... rs :wacko: fiz umas alterações, mas agora avisa que o "generic.h" não existe! Mais sugestões?
  3. Sua dica acertou em cheio, mas aí a linha abaixo se tornou a "UNDECLARED": cj.lpfnWndProc = (WNDPROC); ProcJan; Sua dica acertou em cheio, mas aí a linha abaixo se tornou a "UNDECLARED": cj.lpfnWndProc = (WNDPROC); ProcJan; Bom... mudei o cj.lpfnWndProc = (WNDPROC); ProcJan; para cj.lpfnWndProc = (WNDPROC); hJan; mas agora travou mais embaixo, literalmente!
  4. Pessoal, buenas! :blink: Digitei o código abaixo no Dev C++ e pimba... além de uma lista de erros o primeiro da lista é o "HJAN" UNDECLARED! Alguém arrisca alguma dica??? Como faço para esse código funcionar?? rs Agradeço possíveis sugestões! #include <windows.h> #include "generic.h" HINSTANCE hCop; LPCTSTR lpszNomeAplic = "Genérico"; LPCTSTR lpszTitulo = "Aplicativo Genérico"; BOOL RegisterWin95(CONST WNDCLASS* lpwc); int APIENTRY WinMain (HINSTANCE hCopia, HINSTANCE hCopiaAnt, LPSTR lpLinhaCmd, int nCmdExibe) { MSG msg; [b]HJAN hJan;[/b] <_< aqui é o valorzinho "undeclared" entre outros conflitos WNDCLASS cj; cj.style = CS_HREDRAW | CS_VREDRAW; cj.lpfnWndProc = (WNDPROC) ProcJan; cj.cbClsExtra = 0; cj.cbWndExtra = 0; cj.hInstance = 0; cj.hIcon = LoadIcon(hCopia, lpszNomeAplic); cj.hCursor = LoadCursor(NULL, IDC_ARROW); cj.hbrBackground = (HBRUSH) (COLOR_WINDOW+1); cj.lpszMenuName = lpszNomeAplic; cj.lpszClassName = lpszNomeAplic; if(!RegisterWin95(&cj)) return false; hCop = hCopia; hJan = CreateWindow (lpszNomeAplic, lpszTitulo, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hCopia, NULL); if(!hJan) return false; ShowWindow(hJan, nCmdExibe); UpdateWindow(hJan); while(GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return(msg.wParam); } BOOL RegisterWin95 (CONST WNDCLASS* lpcj) { WNDCLASSEX cjex; cjex.style cjex.lpfnWndProc cjex.cbClsExtra cjex.cbWndExtra cjex.hInstance cjex.hIcon cjex.hCursor cjex.hbrBackground cjex.lpszMenuName cjex.lpszClassName cjex.cbSize cjex.hIconSm return'RegisterClassEx(&cjex); } LRESULT CALLBACK ProcJan(HJAN hJan, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch(uMsg) { case WM_COMMAND: switch(LOWORD(wParam)) { case IDM_TESTAR : break case IDM_SAIR : DestroyWindow(hJan); break; } break; case WM_DESTROY : PostQuitMessage(0); break; default: return (DefWindowProc(hJan, uMsg, wParam, lParam)); } return(0L); }
×
×
  • Criar Novo...