Bonjour,
Je commence à développer un petit plugin pour OllyDBG en Delphi et je rencontre déjà un petit problème.
En effet, le plugin est correctement chargé dans OllyDBG mais seulement la première lettre de son nom est affichée dans le menu des plugins.
Voici mon code :
Savez-vous comment puis-je corriger ce problème ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 library MyPlugin; uses Classes, SysUtils, Windows; const PLUGIN_VERSION = 110; {$R *.res} function _ODBG_Plugindata(shortname:PWideChar):integer; cdecl; begin StrCopy(shortname,'MyPlugin'); Result := PLUGIN_VERSION; end; function _ODBG_Plugininit(ollydbgversion:integer; hw:HWND; features:ulong):integer; cdecl; begin Result := 0; end; exports _ODBG_Plugindata, _ODBG_Plugininit; begin end.
Si vous avez déjà développé un plugin en delphi pour OllyDBG, comment avez-vous déclaré ces deux fonctions ?
Voici l'aide :
Mandatory callback function that must be present in any valid OllyDbg plugin. It must fill in plugin name and return version of plugin interface (constant PLUGIN_VERSION). If function is absent, or version is not compatible, plugin will be not installed. Short name identifies plugin in OllyDbg. This name is limited to 31 alphanumerical characters or spaces followed by terminating null character. To keep life easy for users, name should be descriptive and correlate with the name of DLL.
int ODBG_Plugindata(char *shortname);
Parameters:
shortname - pointer to buffer of length at least 32 characters that receives name of plugin. This name may include spaces and punctuators but no special symbols.Merci,Mandatory callback function that must be present in any valid OllyDbg plugin. Here you can place all startup initializations and allocate resources. If startup was successfull, function must return 0. On error, it must free allocated resources and return -1, in this case plugin will be removed. Parameter ollydbgversion is the version of OllyDbg, use it to assure that OllyDbg is compatible with your plugin.
int ODBG_Plugininit(int ollydbgversion,HWND hw,ulong *features);
Parameters:
ollydbgversion - version of OllyDbg. Check that your plugin is compatible with this version. I will try to avoid incompatible changes in the future versions of OllyDbg;
hw - handle of main OllyDbg window, keep it if necessary;
features - reserved for future extentions.
ZiP
Partager