Problem mit VS2005 ResourceEditor
-
Ich habe ein Icon und ein Menu mit dem ResourceEditor gebastelt. Dann habe ich nach F5, die resource.h Datei geschaut. Sie sah folgenderweise aus (excerpt):
#define ID_FILE_NEW40001 40001
#define ID_FILE_OPEN40002 40002
#define ID_FILE_CLOSE40003 40003
#define ID_FILE_SAVE40004 40004
#define ID_FILE_SAVEAS 40005
#define ID_FILE_PRINT40006 40006
#define ID_FILE_EXIT 40007
#define ID_EDIT_UNDO40008 40008
#define ID_EDIT_CUT40009 40009
#define ID_EDIT_COPY40010 40010
#define ID_EDIT_PASTE40011 40011
#define ID_EDIT_DELETE 40012Was sollen das für ID's seien?
-
Die IDs für das Menü?
-
Ja, aber... sie sehen komisch aus. Etwas stimmt nicht.
Können sie mir sagen wie man i. A. mit Resourcen in VS2005 umgeht?
Danke im Voraus!
-
Du hast die Menüeinträge evtl. kopiert. Der ressourcen-Editor hat aus irgen einem Grund evtl. neue IDs vergeben.
Bleibt die Frage ob diese IDs in der resource.h überhaupt verwendet werden.
Klick auf die RC Datei im Resource-View und wähle Resource-Symbols aus.
-
Ich probiere es noch mal. Dann poste ich das Ergebnis.
-
Aa, nein - etwas ist faul dabei.
Mein Menü:
[img=http://img35.picoodle.com/img/img35/9/7/19/t_Clipboard01m_f2469f7.png]//{{NO_DEPENDENCIES}} // Microsoft Visual C++ generated include file. // Used by test1.rc // #define IDR_MENU1 101 #define ID_FILE_NEW40001 40001 #define ID_FILE_OPEN40002 40002 #define ID_FILE_CLOSE40003 40003 #define ID_FILE_SAVE40004 40004 #define ID_FILE_SAVEAS 40005 #define ID_FILE_PRINT40006 40006 #define ID_FILE_EXIT 40007 #define ID_EDIT_CUT40008 40008 #define ID_EDIT_COPY40009 40009 #define ID_EDIT_PASTE40010 40010 #define ID_EDIT_DELETE 40011 #define ID_EDIT_SELECTALL 40012 #define ID_EDIT_UNDO40013 40013 #define ID_WINDOW_CASCADE40014 40014 #define ID_WINDOW_TILE 40015 #define ID_WINDOW_ARRANGE40016 40016 #define ID_WINDOW_CLOSEALL 40017 #define ID_HELP_ABOUTARCS 40018 // Next default values for new objects // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 102 #define _APS_NEXT_COMMAND_VALUE 40019 #define _APS_NEXT_CONTROL_VALUE 1001 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif// Microsoft Visual C++ generated resource script. // #include "resource.h" #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #include "afxres.h" ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // Bulgarian resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_BGR) #ifdef _WIN32 LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT #pragma code_page(1251) #endif //_WIN32 #ifdef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // TEXTINCLUDE // 1 TEXTINCLUDE BEGIN "resource.h\0" END 2 TEXTINCLUDE BEGIN "#include ""afxres.h""\r\n" "\0" END 3 TEXTINCLUDE BEGIN "\r\n" "\0" END #endif // APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Menu // IDR_MENU1 MENU BEGIN POPUP "&File" BEGIN MENUITEM "&New", ID_FILE_NEW40001 MENUITEM "&Open", ID_FILE_OPEN40002 MENUITEM "&Close", ID_FILE_CLOSE40003 MENUITEM SEPARATOR MENUITEM "&Save", ID_FILE_SAVE40004 MENUITEM "Save &As...", ID_FILE_SAVEAS MENUITEM SEPARATOR MENUITEM "&Print", ID_FILE_PRINT40006 MENUITEM SEPARATOR MENUITEM "E&xit", ID_FILE_EXIT END POPUP "&Edit" BEGIN MENUITEM "&Undo", ID_EDIT_UNDO40013 MENUITEM SEPARATOR MENUITEM "Cu&t", ID_EDIT_CUT40008 MENUITEM "&Copy", ID_EDIT_COPY40009 MENUITEM "&Paste", ID_EDIT_PASTE40010 MENUITEM "&Delete", ID_EDIT_DELETE MENUITEM SEPARATOR MENUITEM "Select &All", ID_EDIT_SELECTALL END POPUP "&Window" BEGIN MENUITEM "&Cascade", ID_WINDOW_CASCADE40014 MENUITEM "&Tile", ID_WINDOW_TILE MENUITEM "&Arrange", ID_WINDOW_ARRANGE40016 MENUITEM "C&lose All", ID_WINDOW_CLOSEALL END POPUP "&Help" BEGIN MENUITEM "&About ARCS..", ID_HELP_ABOUTARCS END END #endif // Bulgarian resources ///////////////////////////////////////////////////////////////////////////// #ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 3 resource. // ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED
-
Dann ändere die IDs doch zurück. Hatst Du wirklich nichtskopiert?
-
Martin Richter schrieb:
Dann ändere die IDs doch zurück. Hatst Du wirklich nichtskopiert?
Wieso sollte ich die IDs ändern? Ich habe nix gewechselt. Ich habe nur das Menü erstellt, dann F5 Taste gedrückt, alles kompillierte sich OK. Dann öffne ich die Resource Dateien - und voila! Eine schöne nette Scheiße von IDs. Warum das?
-
Zdravko schrieb:
Martin Richter schrieb:
Dann ändere die IDs doch zurück. Hatst Du wirklich nichtskopiert?
Wieso sollte ich die IDs ändern? Ich habe nix gewechselt. Ich habe nur das Menü erstellt, dann F5 Taste gedrückt, alles kompillierte sich OK. Dann öffne ich die Resource Dateien - und voila! Eine schöne nette Scheiße von IDs. Warum das?
Ich hatte so etwas noch nie.
Warum kann ich Dir auch nicht sagen? Vermutlich persönliches Pech...
Du musst in jedem Fall ID_FILE_CLOSE etc drin stehen haben. Mit Deinen IDs wird das nicht gehen. Deine Menüs werden alle fein grau bleiben.
-
Hmm echte Scheiße.
Was mache ich dann so falsch?
-
Ich habe gerade ein neues Projekt gebaut, diesmal aber NICHT leer. Dann habe ich ein Paar neue Menüeinträge gemacht. Alles funzte einwandfrei!
Also wo liegt das Problem? Wenn das Projekt am Anfang leer ist, kann der Resource Editor nicht korrekt arbeiten. Das ist aber ein großer Bug!