Zitat von
Luckie:
Zitat von
EWeiss:
Warum wird bei IDM_EXIT oder beim klick auf den X-Button kein WM_DESTROY ausgelößt?
EDIT:
Hat sich erledigt.
Und wo war jetzt der Fehler?
Denke mir das hast du selbst schon bemerkt oder ?
WM_CLOSE
Zumindest wenn ich den XButton klicke.
DestroyWindow(hWnd); geht nicht.. liegt daran das zu diesen zeitpunkt die WMPVis noch aktiv ist.
Solange wie ich kein BassVis_Quit sende bleibt das Programm im speicher.
Sende ich es aus dem Menu heraus wird dieses nicht mher korrekt gezeichnet.
---------------
Aber nebenbei eine andere Frage gehört zum gleichen Thema
Warum wird in C++ der Speicher nicht so freigegeben wie in Delphi ?
Nach jedem start (SoniqueVis) wird die
DLL geschlossen
FreeMem ausgefürt und alle anderen relativen Dinge freigegeben.
Aber anscheinend soll das unter C++ nicht funktionieren (Delphi geht es)
Meine Antwort Mail mit sehr schlechten Englisch...
Zitat:
Hi
I do this
when you call BASSVIS_Free
is a valid
handle exist
then i give the Memory free.
you call many BASSVIS_Free after one call
then nothing work .. a valid
Handle no exist anymore.
you understand ?
-------------------------------------
if (not S_ValidHandle(
handle)) then
begin
BassFuncs^.SetError(BASS_ERROR_HANDLE);
Exit;
end;
-------------------------------------
is a valid
handle exist
1. DeInit the Pointer of the
DLL if version more or self as 1.
2. remove BMP
3. remove
DC
4. FreeLibrary
5. FreeMem.
now tell me what i can do other ?
greets Emil
gruss Emil