Seite 1 von 1

Task Problem

Verfasst: 07.04.2007 14:24
von hmi222
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]

Verfasst: 07.04.2007 14:50
von Kaeru Gaman
das hab ich mal ins anfängerforum verschoben, weil es sich wohl weniger um einen Bug-Report handelt.

Re: Task Problem

Verfasst: 07.04.2007 14:51
von Kiffi
hmi222 hat geschrieben:Kann mir jemand sagen, woran das liegt??
das lässt sich (so ohne Kristallkugel) schwer eindeutig sagen. Beendest Du
das Programm mit 'End'? Verwendest Du Threads? Kannst Du einen kurzen
Code zeigen, anhand dessen sich das nachvollziehen lässt?

Grüße ... Kiffi

Verfasst: 07.04.2007 14:59
von TomTom
hiho ich habe das gleiche problem also bei mir kommt das immer, wenn ich einen fehler im programm hatte und es ausversehen 2mal starte. dann macht er nur eins davon weg (das andere bleibt) wenn mann dann mal einen tag durchprogrammiert hat sind dort an die 8-15 solcher exen...

Verfasst: 07.04.2007 15:12
von Kaeru Gaman
@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.

Verfasst: 07.04.2007 15:24
von hmi222
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...

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"

Verfasst: 07.04.2007 21:02
von hmi222
hab s nochmal getestet:

wenn ich den selben code im editor mehrmals compiliere und beende
löscht der compiler manchmal die PurebasicX.exe
und manchmal nicht!?!?
Warum???
DAnn kann s ja nicht am code liegen... oder?