table bestehet weiterhin... :(

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • table bestehet weiterhin... :(

    Hallo,

    In meinem Projekt mache ich mit der Max WinAPI 2 DLL in einem Room eine Tabelle. Mit einem Listview. Eigentlich erstellt der GM nur den Anfang, die einzelnen Zeilen aber stehen in einer TXT Datei. Es tut mir leid wenn ich den Namen des erfinders grad nicht mehr weiss, jedoch wird diese TXT-File mit dem script_add_v3 System ausgeführt und mit der XorCrypt DLL von BlackSpark verschlüsselt.

    Nun, bei einem Roomwechsel habe ich schon alles Probiert: API_Free(), with(table) instance_destroy(), instance_destroy(), usw. - ABER DIE TABELLE BLEIBT BESTEHEN, AUCH IN EINEM ROOM IN DEM DAS OBJEKT DER TABELLE GAR NICHT IST!

    Ich gebe euch nur ungern den Code, weil es eigentlich ein Geheimprojekt ist, aber hier ist er:

    Im :event_create: :

    GML-Quellcode

    1. alarm[0] = 10


    Im :event_timer: 0 :

    GML-Quellcode

    1. API_Init1()
    2. script_add_init()
    3. xor_crypt_init()
    4. xor_crypt_password("password")
    5. if (!registry_exists_ext("\Software\Software","path"))
    6. {
    7. alarm[10] = 300
    8. exit;
    9. }
    10. path_soft = registry_read_string_ext("\Software\Software","path")
    11. xor_decrypt_all(path_soft+"\files.or",path_soft)
    12. tab = script_add_from_file(path_soft+"\tab.spk","tab")
    13. tab_e = script_add_from_file(path_soft+"\tab_e.spk","tab_e")
    14. registry_set_root(0)
    15. if (registry_exists_ext("\Software\Software","language"))
    16. {
    17. Win5 = window_handle();
    18. Listview1 = API_Listview_Create (Win5,1,1,800,424,LVS_REPORT,WS_EX_CLIENTEDGE);
    19. API_Listview_SetExtendedStyle (Listview1,LVS_EX_FULLROWSELECT);
    20. language = registry_read_string_ext("\Software\Software","language")
    21. if (language == "dde")
    22. {
    23. // BEGINNE LISTVIEW FÜR DEUTSCHSPRACHIGE
    24. API_Listview_InsertColumnText (Listview1,0,250,"Dies");
    25. API_Listview_InsertColumnText (Listview1,1,550,"und Das");
    26. script_ex(tab)
    27. // ENDE DEUTSCH
    28. }
    29. else
    30. {
    31. // BEGINNE LISTVIEW FÜR ENGLISCHSPRACHIGE
    32. API_Listview_InsertColumnText (Listview1,0,250,"This");
    33. API_Listview_InsertColumnText (Listview1,1,550,"and That");
    34. script_ex(tab_e)
    35. // ENDE ENGLISCH
    36. }
    37. }
    38. else
    39. {
    40. // BEGINNE REGISTRY-SCHREIBEN FüR ERSTEN START (DEUTSCH) UND ZEIGE DEUTSCHES LISTVIEW
    41. registry_write_string_ext("\Software\Software","language","dde")
    42. Win = window_handle();
    43. Listview1 = API_Listview_Create (Win,1,1,800,424,LVS_REPORT,WS_EX_CLIENTEDGE);
    44. API_Listview_InsertColumnText (Listview1,0,250,"Dies");
    45. API_Listview_InsertColumnText (Listview1,1,550,"und Das");
    46. script_ex(tab)
    47. // ENDE REGISTRY-SCHREIBEN UND DEUTSCHES LISTVIEW ANZEIGEN
    48. }
    Alles anzeigen


    Im :event_timer: 10 :

    GML-Quellcode

    1. if (!registry_exists_ext("\Software\Software","path"))
    2. {
    3. wd_message_simple("Fehler 501: Es sind wichtige Dateien nicht vorhanden bzw. inkorrekt. Bitte melden Sie dies dem Support mit der Fehlernummer 501. Press OK for the English message!")
    4. wd_message_simple("Error 501: There are important files are missing or incorrect. Please report this to the support with the error number 501.")
    5. }
    6. else
    7. {
    8. alarm[0] = 30
    9. }


    Und im :event_other: Game End Event:

    GML-Quellcode

    1. API_Free()
    2. xor_crypt_free()
    3. http_free();




    So, wath is the Problem?



    PS: Der Code ist abgeändert an sensiblen Stellen! Es könnte durch ein Fehler mal irgendwo ein " Fehlen!
    PS 2: Ich musste aus etwas komischen Gründen das API_Init() auf ein API_Init1() verlegen... ^^


    Danke,
    jlsnews
    :thumbsup:
  • Ich schätze mal stark es gibt in der DLL ein Funktion, bestimmte Elemente der API zu entfernen und dass du eben diese Tabelle mit der Funktion zerstören musst.

    © 2008 by Teamgrill Productions
  • Nein, da API_free zu 99,9% der Befehl für das Entladen der Dll ist. Aber wie gesagt, ich kenne die dll nicht, schau mal nach obs nicht irgendeine Funktion zum Entfernen eingefügter Elemente gibt.

    © 2008 by Teamgrill Productions