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 Zitieren
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 Zitieren
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 Zitieren
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...) Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.