Oh mein Gott o.O Gatherplugin xD Ihr seid meine Helden! Kanns kaum erwarten das zu testen :) Alchi skillen suckt... hust*
Dickes dankeschön :)
Dickes dankeschön :)
BOOL Initialize(char *szModuleVer, // Schreibt das Modul seine Versions-Nr als Sting rein
int nModuleVerLen, // Maximale Länge für szModuleVer
DWORD *pdwModuleBuild, // Schreibt das Module seine Build-Ver rein
char *szHackVer, // Wird vom Hack die Version als String übergeben
DWORD dwHackBuild) ; // Selbsterklärend ^^
Die Funktions Definition welche für die Aufrufe der Callbacks zuständig ist, ist bereits als stdcall deklariert. Sicher das deine Funktion wirklich nie aufgerufen wurde? Wie ich das sehe sollte es "nur" Probleme bei der Umwandlung des Parameter-Typs gegeben haben.Quote:
Sehr schön :) Allerdings hast du in deiner Dokumentation bei Uninitialize und RenderCallback den Returntype vergessen :b
Ich hab jetzt mal mein Test-Plugin auf RegisterChatCommand umrüsten wollen (super Idee btw), was allerdings einige Probleme aufwarf. Meine Befehle wurden zwar registriert (bei .help angezeigt), allerdings bekam ich nichts zu sehen, als ich meinen Befehl dann benutzen wollte. Da hab ich kurzentschlossen mal dein WinAMP Plugin reversed und festgestellt, dass die Callback Funktionen keine stdcall, sondern vielmehr eine Delphi-Register/Fastcall Konvention zu benutzen scheinen (Register werden benutzt ohne von der Funktion selbst initialisiert zu werden, Funktion räumt am Ende nicht den Stack auf).
Wenn man das erstmal weiß, ist das (sofern man in ASM schreibt) kein Problem damit umzugehen, aber da ich für meinen Chat vorraussichtlich C++ usen werde, wäre es gut, wenn die Callback Funktionen ebenfalls stdcall wären, da es mit C++ sonst recht umständlich wäre deinen Register-Call zu handeln ;)
g_Tamia.AddChatMessage("miaaaaaaaaaau") ;
Nö, habe nichts dagegen, dafür ist die Schnittstelle ja gedacht. :pQuote:
Natürlich, werde das dann immer alles entsprechend anpassen (natürlich nur, wenn du nichts dagegen hast), ist ja keine Arbeit ;) Ich hab nur halt so die Angewohntheit mir für alles erstmal ne Base zu schreiben :p