Français
C ++ Forum

Zugriffsverletzungen chez Callbacks sur TIimer...

 
allô Sebastian...

und dir um folgenden Voir le texte source aus [...]  Fil:
KompilierenMarqueSéparation
Testprogramm Timer
Profan Version 9
 $H Windows.ph
-Proc Einstellungen

Proc Einstellungen

    Declare hD%, hA%, hB%, OK%, hTime%
    Declare hF1%, hT1%
    Clear OK%
    Dialogfenster erzeugen
    hD% = @Create("Dialog",%hWnd,"Einstellungen",%WinLeft+80,%WinTop+155,230,190)
    hF1% = @Create("Font","Arial",16,0,0,0,0)
    hT1% = @Create("Text",hD%,"Einstellungen...",10,10,220,20)
    SetFont hT1%,hF1%
    hTime% = @Create("TimeEdit", hD%, "00:00:00", 10, 35, 70, 24)
    hB% = @Create("Button",hD%,"&Nachstellen",10,120,100,28)
    hA% = @Create("Button",hD%,"&Abbrechen",120,120,100,28)

    WhileNot Ok%

        WaitInput

        If @Clicked(hB%)  Nachstellen

            Ok% = 1
            Aktionen hier

        ElseIf @Clicked(hA%) Abbrechen

            Ok% = 1

        ElseIf (%Key = 2) ALT+F4 bzw. schließen

            Ok% = 1

        EndIf

    EndWhile

    DeleteObject hF1%
    @DestroyWindow(hD%)

EndProc

-Prozedur die in bestimmten Zeitintervallen ausgefuehrt wird (4x pro Sekunde)

Proc Timer

    Inc Timer_Busy%
    Locate 5,5
    Print "Timer:" + @str$(Timer_Busy%) + " Durchläufe"

EndProc

-Main----------------------------------------------------------------
Declare Timer_Busy%,Ende%
WindowStyle 26
WindowTitle "Timertest PHU-60"
Window 100,100 - 370,200
cls
Timer setzen (4x pro Sekunde, 250ms)
Declare TimerID&
TimerID& = ~SetTimer(0, 0, 250, @ProcAddr("Timer", 0))
-Menue---------------------------------------------------------------
PopUp "&Programm"
AppendMenu 108,"&Einstellungen"
AppendMenu 109,"&Ende"
Ende% = 0

WhileNot Ende%

    WaitInput

    If @MenuItem(108)

        Einstellungen

    Endif

    If @MenuItem(109)

        ~KillTimer(0, TimerID&)
        Ende% = 1

    Endif

Wend

Fin

chez meinen Profan2Cpp Versionen gibts es pas seulement Kuddelmuddel im Dialogfenster, mais es entsteht sogar (zeitweise) une Zugriffsverletzung. peux on cela irgendwie beheben?
[...]  ist qui Erklärung pour Profan.
 
06.09.2006  
 



ici tritt il häufiger sur:
KompilierenMarqueSéparation
DEF @GetDlgCtrlID(1) !"USER32","GetDlgCtrlID"
DEF @ButtonClicked(1) @GetDlgCtrlID(@&(1))=-%MENUITEM
Testprogramm Timer
Profan Version 9
 $H Windows.ph
-Main----------------------------------------------------------------
Declare Timer_Busy%,Ende%
Declare TimerID&,Create%,T_Text&,Test#
WindowStyle 26
WindowTitle "Timertest PHU-60"
Window 100,100 - 370,200
cls
Let T_TEXT&=@CREATETEXT(%HWND,"",30,30,300,30)
-Menue---------------------------------------------------------------
PopUp "&Programm"
AppendMenu 108,"&Einstellungen"
AppendMenu 109,"&Ende"
Ende% = 0
Timer setzen (4x pro Sekunde, 250ms)
TimerID& = ~SetTimer(%HWND,333,25,@ProcAddr("Timer",4))

WhileNot Ende%

    WaitInput

    If @MenuItem(108)

        Einstellungen

    Endif

    If @MenuItem(109)

        ~KillTimer(%HWND,333)
        Ende% = 1

    Endif

Wend

End
-Proc Einstellungen

Proc Einstellungen

    Declare hD%, hA%, hB%, OK%, hTime%
    Declare hF1%, hT1%
    Clear OK%
    Dialogfenster erzeugen
    hD% = @Create("Dialog",%hWnd,"Einstellungen",%WinLeft+80,%WinTop+155,230,190)
    hF1% = @Create("Font","Arial",16,0,0,0,0)
    hT1% = @Create("Text",hD%,"Einstellungen...",10,10,220,20)
    SetFont hT1%,hF1%
    hTime% = @Create("TimeEdit", hD%, "00:00:00", 10, 35, 70, 24)
    hB% = @Create("Button",hD%,"&Nachstellen",10,120,100,28)
    hA% = @Create("Button",hD%,"&Abbrechen",120,120,100,28)

    WhileNot Ok%

        WaitInput

        If @ButtonClicked(hB%)  Nachstellen

            Ok% = 1
            Aktionen hier

        ElseIf @ButtonClicked(hA%) Abbrechen

            Ok% = 1

        ElseIf (%Key = 2) ALT+F4 bzw. schließen

            Ok% = 1

        EndIf

    EndWhile

    DeleteObject hF1%
    @DestroyWindow(hD%)

EndProc

-Prozedur die in bestimmten Zeitintervallen ausgefuehrt wird (4x pro Sekunde)

Proc Timer

    Parameters P1&,P2&,P3&,P4&
    Dim Test#,1000000
    Inc Timer_Busy%
    Locate 5,5
    Print "Timer:" + @str$(Timer_Busy%) + " Durchläufe"
    Settext T_Text&,"Timer:" + @str$(Timer_Busy%) + " Durchläufe"
    se Test#

ENDPROC

 
06.09.2006  
 




Sebastian
König
allô Andreas,

seltsam - je konnte den beschriebenen faute chez mir (WinXP Prof. SP2 sur aktuellem Update-Stand) malheureusement pas reproduzieren... weder Zugriffsverletzung encore Kuddelmuddel treten sur.

la hâte Du es aussi déjà avec qui aktuellen Beta-Version 1.5.9f getestet? là habe je nämlich u.a. un Detail chez qui Behandlung de CallBack-Funktionen-Funktionen geändert, cela sonst peut-être. trop Problemen hätte mener peut...

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
06.09.2006  
 



Aktuelle Beta encore pas, fais je mais encore. qui faute tritt sur, si sur cela menu qui Dialog aufgerufen wird - mais pas toujours (Rechnerabhängig). Im Anhang ist mon EXE.

2 kB
Hochgeladen:06.09.2006
Downloadcounter79
Download
 
06.09.2006  
 



la hâte du la fois den Lien de téléchargement?
chez qui Beta, qui je mir plan heruntergeladen habe, tritt qui faute toujours sur (Zugriffsverletzung), ist bloß seltener...
 
06.09.2006  
 




Sebastian
König
avec dem zweiten Code konnte je sous XProfan selbst den faute maintenant reproduzieren (Dialogfenster bleibt vide et reagiertt pas sur Schließen). avec Profan2Cpp allerdings trotz zahlreicher Versuche allerdings encore toujours pas... liegt es peut-être wirklich à meinem System ou bien devrait qui faute, si il sur einem calculateur avec XProfan auftritt aussi avec Profan2Cpp auftreten?

quoi je déjà dire peux ist, dass zumindest qui Ursache avec Profan2Cpp une autre son devrait. ici nutzen nämliche seulement normale Prozeduren den gemeinsamen paramètre-Stack - chez CallBack-Funktionen et eingebauten Befehlen et Funktionen wird qui entier normale Stack (comment dans ASM) zur Übergabe benutzt, sodass sich ici qui Aufrufe pas mutuel stören peut...

P.S.: Votre EXE ist malheureusement seulement qui .cpp-Dossier...
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
06.09.2006  
 




Sebastian
König
[quote-part:f458ed4358]la hâte du la fois den Lien de téléchargement?
chez qui Beta, qui je mir plan heruntergeladen habe, tritt qui faute toujours sur (Zugriffsverletzung), ist bloß seltener... [/quote-part:f458ed4358]
ici qui directe Link: [...] .

quelle Version oui c'est ca la hâte Du car maintenant?
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
06.09.2006  
 



Zeigt 1.5a à. qui EXE habe je récente hochgeladen (hoffentlich maintenant richtig, viens justement aus qui Nachtschicht )
 
06.09.2006  
 




Sebastian
König
[quote-part:bebe64f95b]Zeigt 1.5a à.[/quote-part:bebe64f95b] Ok, qui ist encore relativ vieux . sous dem Link dessus findest Du qui aktuelle Beta-Version 1.5.9f. y sommes près de einigen Bugfixes aussi déjà qui neuen XProfan 10-Features enthalten.

[quote-part:bebe64f95b]qui EXE habe je récente hochgeladen (hoffentlich maintenant richtig, viens justement aus qui Nachtschicht )[/quote-part:bebe64f95b] Ähmm... wohin? sous dem Link dessus est sich toujours qui gleiche Dossier... (EDIT: je vois justement: qui doppelte Begriff Link dessus ist naturellement kontextabhängig trop interpetieren )
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
06.09.2006  
 



allô Sebastian...

je werde une Voir le texte source ,construire chez dem cela Problem häufiger auftritt, peux mais quelque chose dauern....
 
06.09.2006  
 




Sebastian
König
[quote-part:5ea9f5dcc3]je werde une Voir le texte source ,construire chez dem cela Problem häufiger auftritt, peux mais quelque chose dauern.... [/quote-part:5ea9f5dcc3]
Super - merci!

ensuite tritt cela Problem alors aussi avec 1.5.9f encore sur? si oui, habe je encore une concept: Versuch la fois s'il te plaît, den SetTimer-Aufruf so trop gestalten:

P2CPP: <USE_CALL_ST,USE_EXTERNAL_ST>
Timerid& = ~Settimer(%Hwnd,333,25,@Procaddr(Minuteur,4))
P2CPP: </USE_CALL_ST,/USE_EXTERNAL_ST>

(funktioniert allerdings encore pas avec 1.5a) peut-être liegt qui Ursache oui im Multithread-Konzept qui übersetzten Programme...
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
06.09.2006  
 



si qui faute Auftritt ou bien pas hängt u.a. de qui Speicherauslastung ab. sous qui neuen Beta konnte Je l' faute encore pas nachvollziehen. sous Windows2000 J'ai eu aussi avec qui älteren Profan2Cpp Version jusqu'alors encore aucun Fehlermeldung. S'inscrire mich wieder.
 
06.09.2006  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

3.474 Views

Untitledvor 0 min.
gerd12.01.2013

Themeninformationen

cet Thema hat 2 participant:

unbekannt (9x)
Sebastian König (6x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie