| |
|
|
- Seite 1 - |
|
Jac de Lad | Der Titel sagts schon. Ähhhm, hat jemand vielleicht ein (sinnvolles) Beispiel?
Der Jac |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 13.11.2007 ▲ |
|
|
|
|
| |
|
- Seite 1 - |
|
Jac de Lad | Und die Variable hdll& brauche ich dann, um die DLL wieder mit FreeDLL freizugeben??
Und wie ist das mit ImportFunc()? Ist die Variable da überhaupt nötig? Soweit ich gelesen habe ist das die Addresse der Funktion, das dürfte nur selten notwendig sein. |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 14.11.2007 ▲ |
|
|
|
|
Jörg Sellmeyer | Jac
Und die Variable hdll& brauche ich dann, um die DLL wieder mit FreeDLL freizugeben??
Genau.
Jac
Und wie ist das mit ImportFunc()? Ist die Variable da überhaupt nötig? Soweit ich gelesen habe ist das die Addresse der Funktion, das dürfte nur selten notwendig sein.
Das ersetzt quasi die frühere Anmeldung einer einzelnen Funktion mit Def. Wenn Du also aus einer Dll nur eine, b.z.w. wenige Funktionen benötigst, kann es evtl. sinnnvoll sein, diese mit ImportFunc(hDll&,Name$,Alias$) einzubinden. Vorher mußt Du dann aber wieder UseDll einsetzen. Wenn Du noch (aus welchen Gründen auch immer) Call einsetzen willst, brauchst Du das Handle, sonst ist es wahrscheinlich unwichtig. Ich glaube kaum, daß man die einzelnen Funktionen wieder irgendwie freigeben muß. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 14.11.2007 ▲ |
|
|
|
|
Jac de Lad | Aber es ist doch umständlicher, wenn ich erst die DLL laden muss und dann wieder freigeben muss, als wenn ich Def nehme... |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 14.11.2007 ▲ |
|
|
|
|
Jörg Sellmeyer | Schon, aber Profan greift schneller auf die Funktion zu und ist sicherer gegen Hacker geschützt. Lies Dir mal diesen Thread dazu durch: [...] |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 14.11.2007 ▲ |
|
|
|
|
Jac de Lad | Aha. Aber wieso ist das sicherer gegen Hacker? Selbst wenn die DLL statisch gelinkt ist hilft es nicht, wenn sie manipuliert ist... |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 14.11.2007 ▲ |
|
|
|
|
Nico Madysa | Ich hab das so verstanden, dass die meisten Hacker versuchen, das Programm, während es abläuft, umzuleiten zu einer falschen Funktion. Wenn das Programm die Funktionen, die es braucht, bereits am Anfang zusammensammelt, ist das unmöglich. iF, Frank, hab ichs richtig erklärt? |
|
|
| |
|
|
|
RGH | Jac
Aber es ist doch umständlicher, wenn ich erst die DLL laden muss und dann wieder freigeben muss, als wenn ich Def nehme...
Das DEF ist ja nur eine Definition. Erst beim Aufruf wird die DLL geladen, die Funktion ausgeführt und die DLL wieder entladen. Sobald man die DLL-Funktion bzw. andere Funktionen aus derselben DLL öfter benutzt, wird die DLL unnötig oft geladen und entladen, was beides relativ viel Zeit kostet. Und wenn man die DLL-Funktion nur einmal aufrufen will, geht es noch einfacher mit der External-Funktion.
Außerdem gibt es etliche DLLs mit eigener Datenhaltung, etwa für Einstellungen. Diese müssen vor ihrem ersten Aufruf auch bei Definition mit DEF mit UseDLL geladen werden und nach dem letzten Aufruf wieder entladen.
Gruß Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 14.11.2007 ▲ |
|
|
|
|
Jac de Lad | Aha, ok.
@Nico: Nichts ist unmöglich! |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 14.11.2007 ▲ |
|
|
|
| |
|
- Seite 2 - |
|
|
Frank Abbing |
Ich hab das so verstanden, dass die meisten Hacker versuchen, das Programm, während es abläuft, umzuleiten zu einer falschen Funktion. Wenn das Programm die Funktionen, die es braucht, bereits am Anfang zusammensammelt, ist das unmöglich.
Wenn die Exporttables vom Hacker geändert werden, nachdem XProfan die Adressen der Funktionen gesichert hat, guckt der Hacker in die Röhre. Meisstens passiert das aber schon vor dem Start des Profanprogramms, z.B. beim Windowsstart. Ich selber habe für meine Tools die andere Variante benutzt, nämlich den Code der Dll im Speicher selber zu ändern. Das ist nicht so leicht zu umgehen. |
|
|
| |
|
|
|
Jac de Lad | Aber wenn der Cracker die DLL vor dem Programmstart ändert?? |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 14.11.2007 ▲ |
|
|
|
|
Frank Abbing | Jac, vergiss die Cracker-Hacker-Verschwörungs-Theorie. AH ist hier nicht mehr. |
|
|
| |
|
|
|
Jac de Lad | Ich sags mal so. Halo 2 wurde nur für Vista geschrieben, bzw. enthält einige Funktionen, die nur in Vista vorkommen (obwohl es technisch ohne Abstriche auch auf XP gehen würde). Aber, es gibt eine Möglichkeit, das Ding auch auf XP auszuführen, nämlich mit der wow.dll (windows on windows). Das ist ja im Prinzip das gleiche... |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 14.11.2007 ▲ |
|
|
|