SwordMaster Geschrieben 22. Mai 2008 Geschrieben 22. Mai 2008 Hallo Zusammen, Ich verwende aktuell noch Visual Studio 6.0 (Ich weiß ich hink noch hinterher :floet: ). Ich hab das ganze auch unter Windows Vista zum laufen gebraucht u. hat noch nie probleme gemacht! Jetzt bin ich jedoch auf Code gestoßen der unter Windows XP nie probleme gemacht hat. Unter Vista läuft das ganze leider nicht mehr (Laufzeitfehler). Egal ob ich das ganze unter XP oder Vista comiliere. Der Laufzeitfehler tritt immer auf. Folgender Code macht probleme: Eine Membervariable: CWnd* m_control; Und den Code in OnInitDialog m_control = new CToolBar(); ((CToolBar*)m_control)->Create(this); int anz = 3; for (int i=0;i < anz ; i++) { TBBUTTON button[1]; TBBUTTON foreignbutton; button[0].fsState = TBSTATE_ENABLED; button[0].fsStyle = TBSTYLE_BUTTON ; button[0].idCommand = 10000 + i; ((CToolBar*)m_control)->GetToolBarCtrl().AddButtons(1,button); } RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0); Bei "AddButtons" hängt sich das Programm auf. Vista sagt dann das das Progamm nicht mehr reagiert u. ob es geschlossen werden soll. Wenn ich im Debugger bin sagt Visual Studio: Unbehandelte Ausnahme in Toolbar.exe (Kernel32.dll) 0xC0000005: Access Violation. Hat jemand nach ne idee? Oder liegt es tatsächlich am alten Visual Studio? Hat jemand das neue Visual Studio u. Windows Vista? Könnte da jemand den code mal ausprobieren? Bin für jeden kleinen Tipp dankbar! Viele Grüße Stefan
TDM Geschrieben 23. Mai 2008 Geschrieben 23. Mai 2008 (bearbeitet) Kann ja nicht gehen. button[0].fsState = TBSTATE_ENABLED; button[0].fsStyle = TBSTYLE_BUTTON ; button[0].idCommand = 10000 + i; [...] AddButtons(1,button); Parameters: nNumButtons Number of buttons to add. Ergo: Du verweißt auf 1 und dabei ist das letzte Element 0; Tausch mal die 1 gegen 0 aus. PS: Ich kann's mir einfach nicht verkneifen: I beat the SwordMaster. :bimei Edit: Och menno, ich sollte richtig lesen. Number of buttons nicht of Button, mist dann geht das ja auch ne... Hast du mal durchdebuggt? Bearbeitet 23. Mai 2008 von TDM
SwordMaster Geschrieben 23. Mai 2008 Autor Geschrieben 23. Mai 2008 Edit: Och menno, ich sollte richtig lesen. Number of buttons nicht of Button, mist dann geht das ja auch ne... Hast du mal durchdebuggt? ich bin halt auch nicht von vorgestern.. Ja ich hab schon mal in die AddButtons methode reindebuckt, leider hat die nur einen Aufruf "::SendMessage(m_hWnd, TB_ADDBUTTONS, nNumButtons, (LPARAM)lpButtons);" und in die SendMessage Methode kann ich schon nicht mehr reindebuggen, weil die "Unbehandelte Ausnahme" dann kommt. :-( Viele Grüße Stefan
TDM Geschrieben 23. Mai 2008 Geschrieben 23. Mai 2008 Zu Testzwecken würd ich einfach mal die Zeile in einen try-Block schreiben und die Exception anschauen, vielleicht steht da ja was drin. Außerdem würd ich die Variablen noch in der SendMessage-Methode prüfen, ob die Werte alle passen. (Ich weiß, eigentlich müssten sie's aber man kann ja nie wissen...)
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden