Forum | | | | - page 1 - |
| Peter Gückstock | Salut,
habe un Problem beim finissons eines Programms cela Programme wird sur une Button normal finissez et ist aussi vom Bildschirm verschwunden. Im Taskmanager läuf qui prozess mais plus, d.h. qui Interpreter bleibt aktiv. aussi qui EXE des Programms verhält sich so. avez son une Tip zur Fehlersuche ou bien une concept quoi soetwas verursachen peux? Habe déjà 2 Tage avec Grübeln verloren.
vielen Dank |
| | | | |
| | | | - page 2 - |
| | | bien sûr cela mag aussi scheinbar aider, bleibt mais Fusch qui à anderer Stelle wieder zum Vorschein venons peux.
Ist mais Wurscht, si es car ausreiche... |
| | | | |
| | Peter Gückstock | Salut,
j'ai maintenant seulement la fois den Hauptteil angehängt. sous VISTA et XProfan 11 (avec dem neusten Update de Roland) bleibt qui Prozess pour dem finissons des Programms bestehen et unetr Windows XP et XProfan 10 stürzt XProfan pour dem finissons des Programms ab vraie zum Verzweifeln, car alle anderen Programme marcher.
Aider,Aider.... KompilierenMarqueSéparation $I PROFALT.INC
$I SKControl.inc
$I Listview_Funktionen.inc
$I WFMCAL.INC
declare image#,string#,h1&,h2&,h3&,h4&,h5&,h6&
Buttons
declare Feiertage&,DateButton1&,DateButton2&,ladenals&,speichernals&,Jubilar&,info&,adress&
declare adresse%,Jubilar%,ende&,beenden&,progende%
declare Text%
Dialoge_Controlls
declare MonthCal1&,Jubibox%,listview_Jubi&,Adressbox&
Farben für Kalender
declare bg&,txt&,titlebg&,titletext&,calcol&,month&
für DLL
declare skDll&,lvdll&
skDll& = UseDll("SKControl.dll")
lvdll& = usedll("Listview.dll")
SKCtrl_InitDll()
=======================Hauptprogramm============================================
SetTrueColor 1
WindowStyle 16
WindowTitle "PGM Terminplaner lite Version alfa 0.1"
Window 100,100-900,600
cls RGB(210,210,210)
SetDialogFont 1
UseFont "Batang",10,0,0,0,0
startPaint %Hwnd
Usebrush 1,RGB(160,160,160)
RoundRect 4,8-878,52;10,10
endpaint
---------------Buttons-----------------------------------------------
dim image#,255
dim string#,255
string image#,0 = @add$(GetDir$("@"),"\feier.rle")
string string#,0 = ""
Feiertage& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(234,234,234),540,10,40,40,%hInstance)
Create("Tooltip",%HWnd,Feiertage&,"Die Feiertage werden berechnet!")
string image#,0 = @add$(GetDir$("@"),"\ok.rle")
string string#,0 = "laden "
DateButton1& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(160,160,160),10,10,110,40,%hInstance)
string image#,0 = @add$(GetDir$("@"),"\ok.rle")
string string#,0 = "sichern"
DateButton2& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(160,160,160),120,10,115,40,%hInstance)
string image#,0 = @add$(GetDir$("@"),"\laden.rle")
string string#,0 = ""
ladenals& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(234,234,234),300,10,40,40,%hInstance)
h1&=Create("Tooltip",%HWnd,ladenals&,"Datei manuell laden!")
string image#,0 = @add$(GetDir$("@"),"\speichern.rle")
string string#,0 = ""
speichernals& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(234,234,234),340,10,40,40,%hInstance)
h2&=Create("Tooltip",%HWnd,speichernals&,"Datei speichern als..!")
string image#,0 = @add$(GetDir$("@"),"\fett.rle")
string string#,0 = ""
Jubilar& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(234,234,234),400,10,40,40,%hInstance)
string image#,0 = @add$(GetDir$("@"),"\help.rle")
string string#,0 = ""
info& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(234,234,234),440,10,40,40,%hInstance)
string image#,0 = @add$(GetDir$("@"),"\lupe.rle")
string string#,0 = ""
adress& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(234,234,234),480,10,40,40,%hInstance)
h5&=Create("Tooltip",%HWnd,speichernals&,"Adresse suchen!")
jubilar%=@Create("Button",%Hwnd,"Jubiläen eintragen",5,550,150,20)
adresse%=@Create("Button",%Hwnd,"Adressen eintragen",155,550,150,20)
string image#,0 = @add$(GetDir$("@"),"\ende.rle")
string string#,0 = ""
ende& = SKCtrl_CreateClrImageButton(%Hwnd,image#,string#,0,0,RGB(110,40,20),RGB(234,234,234),830,10,40,40,%hInstance)
h6&=Create("Tooltip",%HWnd,ende&,"Das Programm wird beendet!")
SetStyle h1&,$0000040 Style für ToolTips
SetStyle h2&,$0000040
SetStyle h3&,$0000040
SetStyle h4&,$0000040
SetStyle h5&,$0000040
SetStyle h6&,$0000040
----CONTROLS--------------------
text% = Create("RichEdit",%HWnd,"",300,90,550,350)
SendMessage(text%,$0443,0,rgb(200,200,180))
Let MonthCal1&=Control("SysMonthCal32","",$54800005,10,60,220,175,%hwnd,0,%hinstance,$0)
Jubibox%=@Create("ListBox", %Hwnd, 1, 10, 250, 220, 150)
listview_Jubi&=CreateListview(%Hwnd,%hinstance,0,Rgb(255,255,255),-1,$31)
InsertColumn listview_Jubi&,"Monat",100,0
InsertColumn listview_Jubi&,"Tag",50,0
InsertColumn listview_Jubi&,"Name",220,0
InsertColumn listview_Jubi&,"Text",380,0
AutoSortListview listview_Jubi&,2,2,2,2
Adressbox&=CreateListview(%Hwnd,%hinstance,0,Rgb(255,255,255),-1,$31)
InsertColumn Adressbox&,"Name",160,0
InsertColumn Adressbox&,"Vorname",120,0
InsertColumn Adressbox&,"Firma",180,0
InsertColumn Adressbox&,"Strasse",150,0
InsertColumn Adressbox&,"Postleizzahl",80,0
InsertColumn Adressbox&,"Ort",180,0
InsertColumn Adressbox&,"Telefon",120,0
InsertColumn Adressbox&,"Mobil",120,0
InsertColumn Adressbox&,"E-Mail",190,0
ShowListView(Adressbox&,4,450,878,80)
InitMessages(%Hwnd)
-------------- Farben für Kalender --------------------------------------------------
bg&= rgb(255,255,0)
txt&=rgb(0,0,0)
titlebg&= rgb(255,0,241)Farbe für Titelzeile, Wochentage und Wochenzahlen
titletext&= rgb(255,255,0)Titelfarbe des Monatsnamens
calcol&= rgb(255,255,255) Farbe des Fensters
month&= rgb(192,192,192)
setmccolors(monthcal1&,bg&,txt&,titlebg&,titletext&,calcol&,month&)
----------- Steuerung der Aktionen --------------------------------
WhileNot ende&=1
WaitInput
------------------------------------------------------------------------
If GetFocus(Jubilar%)
jubi
endif
------------------------------------------------------------------------
If GetFocus(adresse%)
Adressen
endif
-------------------------------------------------------------------------
If GetFocus(DateButton1&) Aufruf Dialog zum Laden/Speichern
Dim DateTimePick#,20
DTP_GETSYSTEMTIME(MonthCal1&,DateTimePick#)
Let Meldung$ = Str$(word(DateTimePick#,6));".";Str$(word(DateTimePick#,2));".";Str$(word(DateTimePick#,0))
Monat$= Str$(word(DateTimePick#,2))
Dispose DateTimePick#
Eintrag_laden
Endif
-------------------------------------------------------------------------------
If GetFocus(DateButton2&) Aufruf Dialog zum Laden/Speichern
Dim DateTimePick#,20
DTP_GETSYSTEMTIME(MonthCal1&,DateTimePick#)
Let Meldung$ = Str$(word(DateTimePick#,6));".";Str$(word(DateTimePick#,2));".";Str$(word(DateTimePick#,0))
Dispose DateTimePick#
Eintrag_speichern
Endif
------------------------------------------------------------------------------
if getfocus(beenden&)
@destroywindow(Feiertagdialog&)
endif
-------------------------------------------------------------------------------
if getfocus(speichernals&)
datei_speichernals
endif
---------------------------------------------------------------------------------
if getfocus(ladenals&)
Datei_LadenAls
endif
---------------------------------------------------------------------------------
if getfocus(Feiertage&)
Feiertage
endif
----------------------------------------------------------------------------------
if getfocus(Jubilar&)
jubi_manuell
endif
-------------------------------------------------------------------------------------
IF GETFOCUS(Info&)
info
endif
-------------------------------------------------------------------------------------
IF GETFOCUS(adress&)
suchen
endif
--------------------------------------------------------------------------------------
If getfocus(ende&)
progende%=@Messagebox("Soll das Programm ohne speichern beendet werden?","ACHTUNG",308)
if progende%=6
@destroywindow(Aktionsdialog&)
ende&=1
endif
endif
----------------------------------------------------------------------------------------
endwhile
freedll lvdll&
freedll skdll&
href='./../../funktionsreferenzen/XProfan/dispose/'>dispose image#
dispose string#
end
|
| | | | |
| | | Du musst déjà alle notwendigen Fichiers anhängen, z.B. dans einer ZIP-Dossier, avec cela es possible chacun testen peux - si Du cela veux.
j'ai z.B. weder qui Comprend encore DLL pour.
là qui SKControl.dll et Listview.dll "läuft" wäre la première Frage à qui jeweiligen Auteurs: Eigene Threads?
si jeweils oui, ensuite peux on beide DLL so pas nutzen, sans den Hauptthread des XProfan dans péril trop apporter. (Abstürze, Fehlermeldungen, ...) |
| | | | |
| | Frank Abbing | qui Listview.dll erzeugt aucun Threads.
Mir ist aufgefallen, im Code wird un InitMessages(%Hwnd) benutzt, mais ne...aucune CloseMessages(%Hwnd). là ici beide Dlls wohl cela Hauptfenster subclassen, ist aussi qui Reihenfolge qui Dlls beim débrancher des Subclassings einzuhalten. qui sicherste Methode ist mais dans chaque le cas, cela Hauptfenster trop anéantir. avec cela wird qui gesubclasste WindowProc sur jeden le cas entfernt, et qui externe Code wird pas plus fonctionnement, qui u. U. den Absturz erzeugt. cela hat avec Fusch rein gar rien trop 1faire. |
| | | | |
| | | Gebe Fank droite vais dans meiner Beendigungsprocedur so avant:
PROC finissons Delete Object..... alle Fonts usw... CloseMessages(qui jeweilige la fenêtre-variable) écrit qui Aider qui LISTVIEW.DLL avant Destroywindow(%HWnd) - avec cela wird alles détruit EE%=1 ...dépendant de qui Boucle im Programme - si EE% auparavant 0 était FIN Rückfall dans vieille Basic-Zeiten aus purer Gewohnheit ENDPROC
c'est seulement un Beispiel et sieht de Programme trop Programme anders aus. Allerdings wird avec cette Art des finissons aussi anstanslos finissez. Ende ;) |
| | | | |
| | E.T. | Hab plan la fois un älteres Prog de mir rausgesucht, welches qui SKControl.dll utilise. aussi cet Dll erzeugt (chez mir ) wärend des Programme-Ablaufs aucun eigenen Threads. |
| | | Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 17.11.2008 ▲ |
| |
| | | Ok, ensuite peut wir chez qui skcontrol peut-être de Timern sortir, quoi aucun Probleme faire sollte, besonders si le Minuteur per subClassing abgefragt volonté.
qui sicherste Methode ist mais dans chaque le cas, cela Hauptfenster trop anéantir. avec cela wird qui gesubclasste WindowProc sur jeden le cas entfernt, et qui externe Code wird pas plus fonctionnement, qui u. U. den Absturz erzeugt.
c'est so simple seulement faux - c'est moi mais Wurstegal si avec cela une Solution trouvé wurde, qui (pas) funktioniert. |
| | | | |
| | Frank Abbing | iF
Ok, ensuite peut wir chez qui skcontrol peut-être de Timern sortir, quoi aucun Probleme faire sollte, besonders si le Minuteur per subClassing abgefragt volonté. iFqui sicherste Methode ist mais dans chaque le cas, cela Hauptfenster trop anéantir. avec cela wird qui gesubclasste WindowProc sur jeden le cas entfernt, et qui externe Code wird pas plus fonctionnement, qui u. U. den Absturz erzeugt. c'est so simple seulement faux - c'est moi mais Wurstegal si avec cela une Solution trouvé wurde, qui (pas) funktioniert.
iF
avec cela wird qui gesubclasste WindowProc sur jeden le cas entfernt, et qui externe Code wird pas plus fonctionnement, qui u. U. den Absturz erzeugt.
c'est faux, dass qui Aussage faux ist. je lasse mich mais volontiers umstimmen, sobald du cela Gegenteil bewiesen la hâte. |
| | | | |
| | | Nunu, komische Formel |
| | | | |
| | E.T. | alors, c'est faux, là qui Aussage faux ist ??
Sollten den, si je mon (X)Profan-Prog (réglé) finis, eigentlich alle Threads, quelle mon Prog erzeugt, aussi avec finissez volonté ??
si je Word, Excel ou bien Paintshop ou bien sonst irgendwelches Programme finis, doit je doch aussi pas chercher, si encore quoi en fonctionne.
et si je meinem XProfan-Prog sage: ENDE!! (dans forme de FIN), ensuite vais je en aus, cela aussi wirklich alles finissez wird !! |
| | | Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 18.11.2008 ▲ |
| |
| | | exposition la fois quoi chez ExitProcess [...] alles passiert, anders comme chez [...] welches Verhalten Du oui plutôt beschreibst. Fin pouvoir wohl ExitProcess. |
| | | | |
| | Peter Gückstock | allô Profaner,
vielen Dank pour qui Tipps, je crois ,dass Je l' faute trouvé habe. là je avec den $H windows.ph,$H structs.ph,$H messages.ph,$H commctrl.ph et $H shellapi.ph arbeite, habe je beim finissons "OnApplicationExit" oublier qc. maintenant funktioniert alles.
Salut Peter |
| | | | |
|
répondreOptions du sujet | 13.426 Views |
Themeninformationencet Thema hat 9 participant: |