|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июн 15, 2003 23:52:54 А ты не мучайся с прописыванием скриптов, а юзай АПИшные ф-ции CreateMenu и все что с ней связано |
|
|
Дата: Июн 16, 2003 00:36:00 Именно об этом я и спрашивал, не получается правильно использовать CreateMenu() и иже с ней. Мне-бы работающий кусок кода посмотреть. |
|
|
Дата: Июн 16, 2003 04:27:03 640kb работающий кусок кода посмотреть Качайте Ч. Петзолд - Программирование для Windows 95 в двух томах (8'113'188 байт) и будет Вам не только CreateMenu, которое в 10-ой главе. |
|
|
Дата: Июн 17, 2003 01:41:04 Спасибо! |
|
|
Дата: Июн 26, 2003 05:30:08 · Поправил: P2M 640kb Можно ли содержимое .rc прописать в .cpp-исходнике, и если можно то как. Оказывается можно (магическое слово RC_INVOKED). Пример: [code] // test.c #include <windows.h> #define IDD_MAIN 100 #ifndef RC_INVOKED #include <tchar.h> static BOOL CALLBACK DialogFunc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) { if (WM_INITDIALOG == msg) return TRUE; if (WM_CLOSE == msg || (WM_COMMAND == msg && IDOK == LOWORD(wParam))) { EndDialog(hwndDlg, 0); return TRUE; } return FALSE; } int WINAPI _tWinMain(HINSTANCE hInst, HINSTANCE hPervInst, PTSTR pszCmdLine, int nshowCmd) { return DialogBox(hInst, MAKEINTRESOURCE(IDD_MAIN), NULL, (DLGPROC) DialogFunc); } #else IDD_MAIN DIALOG 7, 20, 195, 86 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU CAPTION "Test" FONT 8, "Helv" { DEFPUSHBUTTON "OK", IDOK, 149, 6, 40, 14 } #endif [/code] Bat-файл для сборки: [code] @echo off if exist test.res del test.res > nul if exist test.obj del test.obj > nul if exist test.exe del test.exe > nul call "C:\Program Files\Microsoft Visual Studio\VC98\bin\vcvars32.bat" copy test.c test.rc rc.exe /r /d_RC32 /fotest.res test.rc del test.rc > nul cl.exe /c test.c link.exe /SUBSYSTEM:WINDOWS test test.res user32.lib if exist test.res del test.res > nul if exist test.obj del test.obj > nul [/code] PS Более того есть возможность поместить в исходный текст С/С++ команды для nmake. И тогда останется только nmake -ftest.c |
|
|
Дата: Июн 26, 2003 07:29:29 P2M copy test.c test.rc Так нечестно ;-) |
|
|
Дата: Июн 26, 2003 07:37:04 Quantum Afaik VS6sp3 по другому никак. Я был бы рад "rc.exe /fotest.res test.c". Imho глупо/перегиб требовать, чтобы расширение было RC. |
|
|
Дата: Июн 26, 2003 08:23:24 P2M Эврика! Поменяйте расширение на cpp (test.cpp) и новый BAT-файл сократится на две строчки: [code] @echo off if exist test.res del test.res > nul if exist test.obj del test.obj > nul if exist test.exe del test.exe > nul call "vcvars32.bat" rc.exe /r /d_RC32 /fotest.res test.cpp cl.exe /c test.cpp link.exe /SUBSYSTEM:WINDOWS test test.res user32.lib if exist test.res del test.res > nul if exist test.obj del test.obj > nul [/code] |
|
|
Дата: Июн 26, 2003 09:40:47 Quantum Поменяйте расширение на cpp Я предпочитаю Си. А вот с LCC'шный компилятор ресурсов без проблем переваривает test.c. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.343 |