End Stürzt ab

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Konne
Beiträge: 764
Registriert: 30.03.2005 02:20
Kontaktdaten:

End Stürzt ab

Beitrag von Konne »

Hallo ich schreibe gerade ein Programm. So weit alles OK. Es tut sogar einwandfrei. Nur wenn ich es mit dem Befehl End beenden möcht stürzt es ab und es kommt ein Invalid Memory Acces.
Ich benutze in meinem Programm dlls kann es vielleicht daran liegen?
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Wenn die DLLs Prozeduren haben, die zu Ende ausgeführt werden müssen,
dann müssen die natürlich auch vor dem End befehl ausgeführt werden.

Es könnte aber auch an Userlibs liegen, die von 3. Benutzt.
Bild
Benutzeravatar
Konne
Beiträge: 764
Registriert: 30.03.2005 02:20
Kontaktdaten:

Beitrag von Konne »

Nunja ich mach jetzt am ende filgendes:

Code: Alles auswählen

  ForEach Dlls()
    CloseLibrary(dlls()\ID)
  Next
  ForEach MainList()
    FreeMemory(MainList()\Unternodes)
  Next
  End
und es stürzt immernoch am :(
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Vielleicht vergessen irgendwelche Objekte oder Controls, die von den DLLs erstellt wurden zu Destroyen?
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

ForEach Dlls()
; Hier müsste noch ein Anruf zu einer Funktion der DLL sein, wo
; die DLL dann selbst alle geöffneten Handles schließt.
CloseLibrary(dlls()\ID)
Next
Bild
Benutzeravatar
Konne
Beiträge: 764
Registriert: 30.03.2005 02:20
Kontaktdaten:

Beitrag von Konne »

ForEach Dlls()
; Hier müsste noch ein Anruf zu einer Funktion der DLL sein, wo
; die DLL dann selbst alle geöffneten Handles schließt.
CloseLibrary(dlls()\ID)
Next
Gute Idee werd ich mal versuchen :allright:
Benutzeravatar
Konne
Beiträge: 764
Registriert: 30.03.2005 02:20
Kontaktdaten:

Beitrag von Konne »

Mit
ProcedureDLL DetachProcess(Instanz)

geht es wunderbar! Danke:)
Antworten