Rev 589 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 589 | Rev 631 | ||
---|---|---|---|
Line 2... | Line 2... | ||
2 | íªá¯®àâ¨àãîéãî á«¥¤ãî騥 äãªæ¨¨ ¨ ¯¥à¥¬¥ë¥ (¥ª®â®àë¥ äãªæ¨¨ ¬®£ãâ ®âáãâá⢮¢ âì). |
2 | íªá¯®àâ¨àãîéãî á«¥¤ãî騥 äãªæ¨¨ ¨ ¯¥à¥¬¥ë¥ (¥ª®â®àë¥ äãªæ¨¨ ¬®£ãâ ®âáãâá⢮¢ âì). |
3 | ãªæ¨¨ ¬®£ãâ à §àãè âì «î¡ë¥ ॣ¨áâàë. kfar £ à â¨àã¥â á¡à®è¥ë© ä« £ ¯à ¢«¥¨ï DF |
3 | ãªæ¨¨ ¬®£ãâ à §àãè âì «î¡ë¥ ॣ¨áâàë. kfar £ à â¨àã¥â á¡à®è¥ë© ä« £ ¯à ¢«¥¨ï DF |
4 | ¯à¨ ¢ë§®¢¥ íªá¯®àâ¨à㥬ëå äãªæ¨© ¨ ®¦¨¤ ¥â ⮣® ¦¥ ¤«ï callback-äãªæ¨©. |
4 | ¯à¨ ¢ë§®¢¥ íªá¯®àâ¨à㥬ëå äãªæ¨© ¨ ®¦¨¤ ¥â ⮣® ¦¥ ¤«ï callback-äãªæ¨©. |
Line 5... | Line 5... | ||
5 | 5 | ||
6 | int version; |
6 | int version; |
Line 7... | Line 7... | ||
7 | ¥àá¨ï ¨â¥à䥩á kfar, ª®â®àãî à ááç¨â ¯« £¨. ¥©ç á ¤®«¦ ¡ëâì 1. |
7 | ¥àá¨ï ¨â¥à䥩á kfar, ª®â®àãî à ááç¨â ¯« £¨. ¥©ç á ¤®«¦ ¡ëâì 2. |
8 | 8 | ||
9 | int __stdcall plugin_load(kfar_info* info); |
9 | int __stdcall plugin_load(kfar_info* info); |
10 | ë§ë¢ ¥âáï ¯à¨ § £à㧪¥ ¯« £¨ . |
10 | ë§ë¢ ¥âáï ¯à¨ § £à㧪¥ ¯« £¨ . |
Line 18... | Line 18... | ||
18 | // mode - ª®¬¡¨ æ¨ï ¡¨â®¢ëå ä« £®¢ |
18 | // mode - ª®¬¡¨ æ¨ï ¡¨â®¢ëå ä« £®¢ |
19 | // O_READ = 1 - ¤®áâ㯠¤«ï ç⥨ï |
19 | // O_READ = 1 - ¤®áâ㯠¤«ï ç⥨ï |
20 | // O_WRITE = 2 - ¤®áâ㯠¤«ï § ¯¨á¨ |
20 | // O_WRITE = 2 - ¤®áâ㯠¤«ï § ¯¨á¨ |
21 | // O_CREATE = 4 - ¥á«¨ ä ©« ¥ áãé¥áâ¢ã¥â, ᮧ¤ âì ¥£® |
21 | // O_CREATE = 4 - ¥á«¨ ä ©« ¥ áãé¥áâ¢ã¥â, ᮧ¤ âì ¥£® |
22 | // O_TRUNCATE = 8 - ãá¥çì ä ©« ¤® ã«¥¢®© ¤«¨ë |
22 | // O_TRUNCATE = 8 - ãá¥çì ä ©« ¤® ã«¥¢®© ¤«¨ë |
- | 23 | void* open2; // HANDLE __stdcall open2(int plugin_id, HANDLE plugin_instance, |
|
- | 24 | // const char* name, int mode); |
|
- | 25 | // «®£¨ç® open, ® ®âªàë¢ ¥â ä ©« á ¯ ¥«¨ ¯« £¨ |
|
- | 26 | // open2(0, |
|
23 | void* read; // unsigned __stdcall read(HANDLE hFile, void* buf, unsigned size); |
27 | void* read; // unsigned __stdcall read(HANDLE hFile, void* buf, unsigned size); |
24 | void* write; // ¥éñ ¥ ॠ«¨§®¢ ® |
28 | void* write; // ¥éñ ¥ ॠ«¨§®¢ ® |
25 | void* seek; // void __stdcall seek(HANDLE hFile, int method, __int64 newpos); |
29 | void* seek; // void __stdcall seek(HANDLE hFile, int method, __int64 newpos); |
- | 30 | void* tell; // __int64 __stdcall tell(HANDLE hFile); |
|
26 | void* flush; // ¥éñ ¥ ॠ«¨§®¢ ® |
31 | void* flush; // ¥éñ ¥ ॠ«¨§®¢ ® |
27 | void* filesize; // __int64 __stdcall filesize(HANDLE hFile); |
32 | void* filesize; // __int64 __stdcall filesize(HANDLE hFile); |
28 | void* close; // void __stdcall close(HANDLE hFile); |
33 | void* close; // void __stdcall close(HANDLE hFile); |
29 | /* ãªæ¨¨ à ¡®âë á ¯ ¬ïâìî (¯®áâà ¨ç®): */ |
34 | /* ãªæ¨¨ à ¡®âë á ¯ ¬ïâìî (¯®áâà ¨ç®): */ |
30 | void* pgalloc; // in: ecx=size, out: eax=pointer or NULL |
35 | void* pgalloc; // in: ecx=size, out: eax=pointer or NULL |
Line 58... | Line 63... | ||
58 | 2 = ®è¨¡ª ¨¨æ¨ «¨§ 樨 (kfar ¯à®¤®«¦¨â ¡¥§ á®®¡é¥¨©) |
63 | 2 = ®è¨¡ª ¨¨æ¨ «¨§ 樨 (kfar ¯à®¤®«¦¨â ¡¥§ á®®¡é¥¨©) |
Line 59... | Line 64... | ||
59 | 64 | ||
60 | void __stdcall plugin_unload(void); |
65 | void __stdcall plugin_unload(void); |
Line 61... | Line 66... | ||
61 | ë§ë¢ ¥âáï ¯à¨ ¢ë£à㧪¥ ¯« £¨ (¢ ¯à®æ¥áᥠ§ ¢¥à襨ï à ¡®âë kfar). |
66 | ë§ë¢ ¥âáï ¯à¨ ¢ë£à㧪¥ ¯« £¨ (¢ ¯à®æ¥áᥠ§ ¢¥à襨ï à ¡®âë kfar). |
62 | 67 | ||
- | 68 | HANDLE __stdcall OpenFilePlugin(HANDLE basefile, |
|
63 | HANDLE __stdcall OpenFilePlugin(HANDLE basefile, const char* name, |
69 | const void* attr, const void* data, int datasize, |
- | 70 | int baseplugin_id, HANDLE baseplugin_instance, const char* name); |
|
64 | const void* attr, const void* data, int datasize); |
71 | âªàë¢ ¥â ¯« £¨, í¬ã«¨àãî騩 ä ©«®¢ãî á¨á⥬㠡 §¥ ä ©« ( ¯à¨¬¥à, à娢 ). |
65 | âªàë¢ ¥â ¯« £¨, í¬ã«¨àãî騩 ä ©«®¢ãî á¨á⥬㠡 §¥ ä ©« ( ¯à¨¬¥à, à娢 ). |
- | |
66 | basefile - åí¤« ä ©« (ª ª®â®à®¬ã ¯à¨¬¥¨¬ë äãªæ¨¨ read ¨ seek ¨§ kfar_info) |
72 | |
67 | name - ¨¬ï ä ©« (¢® ¢à¥¬¥®¬ ¡ãä¥à¥) |
73 | basefile - åí¤« ä ©« (ª ª®â®à®¬ã ¯à¨¬¥¨¬ë äãªæ¨¨ read ¨ seek ¨§ kfar_info) |
68 | attr - 㪠§ ⥫ì áâàãªâãàã á âਡãâ ¬¨ ä ©« ¢ ä®à¬ ⥠á¨á⥬®© äãªæ¨¨ 70.1 |
74 | attr - 㪠§ ⥫ì áâàãªâãàã á âਡãâ ¬¨ ä ©« ¢ ä®à¬ ⥠á¨á⥬®© äãªæ¨¨ 70.1 |
- | 75 | data - ¡ãä¥à, ᮤ¥à¦ 騩 ¤ ë¥ ¨§ ç « ä ©« (¬®¦¥â ¨á¯®«ì§®¢ âìáï ¤«ï ®¯à¥¤¥«¥¨ï ⨯ ä ©« ) |
|
- | 76 | datasize - à §¬¥à ¤ ëå ¢ data. ⥪ã饩 ॠ«¨§ 樨 min(1024,à §¬¥à ä ©« ) |
|
- | 77 | baseplugin_id - ¨¤¥â¨ä¨ª â®à ¯« £¨ , ¯ ¥«¨ ª®â®à®£® à ᯮ« £ ¥âáï ®âªàë¢ ¥¬ë© ä ©«; |
|
- | 78 | 0 ¢ á«ãç ¥ ®¡ëçëå ¯ ¥«¥© |
|
- | 79 | baseplugin_instance - åí¤«, ¢®§¢à éñë© ¨§ äãªæ¨¨ GetOpenPluginInfo ¯« £¨ , |
|
- | 80 | ®¯à¥¤¥«ï¥¬®£® ¯® baseplugin_id |
|
69 | data - ¡ãä¥à, ᮤ¥à¦ 騩 ¤ ë¥ ¨§ ç « ä ©« (¬®¦¥â ¨á¯®«ì§®¢ âìáï ¤«ï ®¯à¥¤¥«¥¨ï ⨯ ä ©« ) |
81 | name - ¨¬ï ä ©« (¢® ¢à¥¬¥®¬ ¡ãä¥à¥) (¯®«®¥ ¨¬ï ®â®á¨â¥«ì® baseplugin) |
70 | datasize - à §¬¥à ¤ ëå ¢ data. ⥪ã饩 ॠ«¨§ 樨 min(1024,à §¬¥à ä ©« ) |
82 | |
71 | ᫨ ¯« £¨ ®¡à ¡ âë¢ ¥â ¯¥à¥¤ ë© ä ©«, â® ® ¤®«¦¥ ¢¥àãâì ®¢ë© ®¯¨á ⥫ì, |
83 | ᫨ ¯« £¨ ®¡à ¡ âë¢ ¥â ¯¥à¥¤ ë© ä ©«, â® ® ¤®«¦¥ ¢¥àãâì ®¢ë© ®¯¨á ⥫ì, |
72 | ª®â®àë© ¢ ¤ «ì¥©è¥¬ ¡ã¤¥â ¨á¯®«ì§®¢ âì kfar ¤«ï ®¡à é¥¨ï ª ¯« £¨ã. í⮬ á«ãç ¥ |
84 | ª®â®àë© ¢ ¤ «ì¥©è¥¬ ¡ã¤¥â ¨á¯®«ì§®¢ âì kfar ¤«ï ®¡à é¥¨ï ª ¯« £¨ã. í⮬ á«ãç ¥ |
73 | ¯« £¨ ¤®«¦¥ á ¬®áâ®ïâ¥«ì® § ªàëâì basefile äãªæ¨¥© close ¨§ kfar_info ( ¯à¨¬¥à, |
85 | ¯« £¨ ¤®«¦¥ á ¬®áâ®ïâ¥«ì® § ªàëâì basefile äãªæ¨¥© close ¨§ kfar_info ( ¯à¨¬¥à, |