Hi !
Hab mit PB4 ein kleines Problem:
Wenn ich eine *exe compile, starte , beende und diesen Vorgang
mehrmals wiederhole
steht im Taskmanager :
Purebasic0.exe
Purebasic1.exe
Purebasic2.exe
Purebasic3.exe
...
Muß diese Einträge dann von Hand löschen...
Kann mir jemand sagen, woran das liegt??
OS= XP SP2
Vielen Dank im Vorraus
[/img]
Task Problem
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
Re: Task Problem
das lässt sich (so ohne Kristallkugel) schwer eindeutig sagen. Beendest Duhmi222 hat geschrieben:Kann mir jemand sagen, woran das liegt??
das Programm mit 'End'? Verwendest Du Threads? Kannst Du einen kurzen
Code zeigen, anhand dessen sich das nachvollziehen lässt?
Grüße ... Kiffi
a²+b²=mc²
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
@hmi222
der fehler muss in deinem code liegen...
die bezeichnung des prozesses "Purebasic0.exe" tritt nur auf, wenn du ein programm aus dem editor startest.
wenn du eine fertig kompilierte exe startest, trägt der prozess den namen der exe.
wenn ein fehler auftritt, wird oft das programm noch laufen.
dann musst du das "totenkopf-icon" klicken, bevor du neu startest.
was eigentlich kein problem darstellen sollte, da du den code
auch nicht editieren kannst, bevor du das programm beendet hast.
falls dieses problem auftritt ohne dass ein fehler auftritt,
dann trägt dein code einen fehler dass dein programm gar nicht beendet wird.
....allerdings sollte man dann das programm auch nicht ohne weiteres noch einmal starten können...
ich bekomme zumindest die messagebox, ob ich das programm mit externem debugger starten möchte,
weil der interne debugger nur die erste instanz überwacht.
der fehler muss in deinem code liegen...
die bezeichnung des prozesses "Purebasic0.exe" tritt nur auf, wenn du ein programm aus dem editor startest.
wenn du eine fertig kompilierte exe startest, trägt der prozess den namen der exe.
wenn ein fehler auftritt, wird oft das programm noch laufen.
dann musst du das "totenkopf-icon" klicken, bevor du neu startest.
was eigentlich kein problem darstellen sollte, da du den code
auch nicht editieren kannst, bevor du das programm beendet hast.
falls dieses problem auftritt ohne dass ein fehler auftritt,
dann trägt dein code einen fehler dass dein programm gar nicht beendet wird.
....allerdings sollte man dann das programm auch nicht ohne weiteres noch einmal starten können...
ich bekomme zumindest die messagebox, ob ich das programm mit externem debugger starten möchte,
weil der interne debugger nur die erste instanz überwacht.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
Das stimmt, ich starte aus dem Editor....und compiliere.
Das Programm startet ohne Fehler, bis ich es mit ESCAPE beende.
Danach stehen die Purebasic0....x.exe im Taskmanager.
Anbei mal ein Beispielcode, vielleicht findet ihr was...
Das Programm startet ohne Fehler, bis ich es mit ESCAPE beende.
Danach stehen die Purebasic0....x.exe im Taskmanager.
Anbei mal ein Beispielcode, vielleicht findet ihr was...
Code: Alles auswählen
Enumeration
#Logo1=1
#logo1_puffer=2
EndEnumeration
Procedure linien(a.l)
StartDrawing(ScreenOutput())
StopDrawing()
EndProcedure
InitSprite()
InitKeyboard()
OpenScreen(800,600,16,"Hallo")
UsePNGImageDecoder()
CatchSprite(#Logo1,?logo,0)
offset.l=0
teil.l=50
;offset.l=10
;teil.l=50
i.f=1.0
x.l=0
richt=0
Repeat
ClearScreen(RGB(0,0,0))
; ClipSprite(#Logo1,0,i*offset,540,teil)
; DisplayTransparentSprite(#Logo1,100,i*offset)
; If Speed.l >2: i=i+0.5 :Speed=0 :EndIf
; If i > 250/offset:i=0:EndIf
; Speed=Speed+1
For x=0 To 4
ClipSprite(#Logo1,0,x*teil,540,teil)
DisplaySprite(#Logo1,110,0+x*teil+x*offset)
Next
If richt=0: offset=offset+1:EndIf
If richt=1: offset=offset-1:EndIf
If offset>30:richt=1:EndIf
If offset<0:richt=0:EndIf
ExamineKeyboard()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
End
DataSection
logo: IncludeBinary "G:\PureBasic\Dextro+hmi\PB4\Effekte\FLD\Data\dawn.png"