Rev 589 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 589 | Rev 631 | ||
---|---|---|---|
1 | « £¨ ¯à¥¤áâ ¢«ï¥â ᮡ®© áâ ¤ àâãî ¤«ï ®«¨¡à¨ ¤¨ ¬¨ç¥áªãî ¡¨¡«¨®â¥ªã (ä®à¬ â COFF), |
1 | « £¨ ¯à¥¤áâ ¢«ï¥â ᮡ®© áâ ¤ àâãî ¤«ï ®«¨¡à¨ ¤¨ ¬¨ç¥áªãî ¡¨¡«¨®â¥ªã (ä®à¬ â COFF), |
2 | íªá¯®àâ¨àãîéãî á«¥¤ãî騥 äãªæ¨¨ ¨ ¯¥à¥¬¥ë¥ (¥ª®â®àë¥ äãªæ¨¨ ¬®£ãâ ®âáãâá⢮¢ âì). |
2 | íªá¯®àâ¨àãîéãî á«¥¤ãî騥 äãªæ¨¨ ¨ ¯¥à¥¬¥ë¥ (¥ª®â®àë¥ äãªæ¨¨ ¬®£ãâ ®âáãâá⢮¢ âì). |
3 | ãªæ¨¨ ¬®£ãâ à §àãè âì «î¡ë¥ ॣ¨áâàë. kfar £ à â¨àã¥â á¡à®è¥ë© ä« £ ¯à ¢«¥¨ï DF |
3 | ãªæ¨¨ ¬®£ãâ à §àãè âì «î¡ë¥ ॣ¨áâàë. kfar £ à â¨àã¥â á¡à®è¥ë© ä« £ ¯à ¢«¥¨ï DF |
4 | ¯à¨ ¢ë§®¢¥ íªá¯®àâ¨à㥬ëå äãªæ¨© ¨ ®¦¨¤ ¥â ⮣® ¦¥ ¤«ï callback-äãªæ¨©. |
4 | ¯à¨ ¢ë§®¢¥ íªá¯®àâ¨à㥬ëå äãªæ¨© ¨ ®¦¨¤ ¥â ⮣® ¦¥ ¤«ï callback-äãªæ¨©. |
5 | 5 | ||
6 | int version; |
6 | int version; |
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 | ë§ë¢ ¥âáï ¯à¨ § £à㧪¥ ¯« £¨ . |
11 | typedef struct |
11 | typedef struct |
12 | { |
12 | { |
13 | int StructSize; // = sizeof(kfar_info) |
13 | int StructSize; // = sizeof(kfar_info) |
14 | int kfar_ver; // 10000h*major + minor |
14 | int kfar_ver; // 10000h*major + minor |
15 | /* ᥠcallback-äãªæ¨¨ á®åà ïî⠢ᥠॣ¨áâàë, § ¨áª«î票¥¬ eax. */ |
15 | /* ᥠcallback-äãªæ¨¨ á®åà ïî⠢ᥠॣ¨áâàë, § ¨áª«î票¥¬ eax. */ |
16 | /* ãªæ¨¨ à ¡®âë á ä ©« ¬¨: */ |
16 | /* ãªæ¨¨ à ¡®âë á ä ©« ¬¨: */ |
17 | void* open; // HANDLE __stdcall open(const char* name, int mode); |
17 | void* open; // HANDLE __stdcall open(const char* name, int mode); |
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 |
31 | // ¯à¨ ¥å¢ ⪥ ¯ ¬ï⨠ᮮ¡é ¥â ¯®«ì§®¢ â¥«î ¨ ¢®§¢à é ¥â NULL |
36 | // ¯à¨ ¥å¢ ⪥ ¯ ¬ï⨠ᮮ¡é ¥â ¯®«ì§®¢ â¥«î ¨ ¢®§¢à é ¥â NULL |
32 | void* pgrealloc; // in: edx=pointer, ecx=new size, out: eax=pointer or NULL |
37 | void* pgrealloc; // in: edx=pointer, ecx=new size, out: eax=pointer or NULL |
33 | // ¯à¨ ¥å¢ ⪥ ¯ ¬ï⨠ᮮ¡é ¥â ¯®«ì§®¢ â¥«î ¨ ¢®§¢à é ¥â NULL |
38 | // ¯à¨ ¥å¢ ⪥ ¯ ¬ï⨠ᮮ¡é ¥â ¯®«ì§®¢ â¥«î ¨ ¢®§¢à é ¥â NULL |
34 | void* pgfree; // in: ecx=pointer |
39 | void* pgfree; // in: ecx=pointer |
35 | void* getfreemem; // unsigned __stdcall getfreemem(void); |
40 | void* getfreemem; // unsigned __stdcall getfreemem(void); |
36 | // ¢®§¢à é ¥â à §¬¥à ᢮¡®¤®© ®¯¥à ⨢®© ¯ ¬ï⨠¢ ¡ |
41 | // ¢®§¢à é ¥â à §¬¥à ᢮¡®¤®© ®¯¥à ⨢®© ¯ ¬ï⨠¢ ¡ |
37 | void* pgalloc2; // void* __stdcall pgalloc2(unsigned size); |
42 | void* pgalloc2; // void* __stdcall pgalloc2(unsigned size); |
38 | void* pgrealloc2; // void* __stdcall pgrealloc2(void* pointer, unsigned size); |
43 | void* pgrealloc2; // void* __stdcall pgrealloc2(void* pointer, unsigned size); |
39 | void* pgfree2; // void __stdcall pgfree2(void* pointer); |
44 | void* pgfree2; // void __stdcall pgfree2(void* pointer); |
40 | /* ãªæ¨¨ à ¡®âë á ¤¨ «®£ ¬¨: */ |
45 | /* ãªæ¨¨ à ¡®âë á ¤¨ «®£ ¬¨: */ |
41 | void* menu; // int __stdcall menu(void* variants, const char* title, unsigned flags); |
46 | void* menu; // int __stdcall menu(void* variants, const char* title, unsigned flags); |
42 | // variants 㪠§ë¢ ¥â ⥪ã騩 í«¥¬¥â ¢ ¤¢ãá¢ï§®¬ ᯨ᪥ |
47 | // variants 㪠§ë¢ ¥â ⥪ã騩 í«¥¬¥â ¢ ¤¢ãá¢ï§®¬ ᯨ᪥ |
43 | void* menu_centered_in; // int __stdcall menu_centered_in(unsigned left, unsigned top, |
48 | void* menu_centered_in; // int __stdcall menu_centered_in(unsigned left, unsigned top, |
44 | // unsigned width, unsigned height, |
49 | // unsigned width, unsigned height, |
45 | // void* variants, const char* title, unsigned flags); |
50 | // void* variants, const char* title, unsigned flags); |
46 | void* DialogBox; // int __stdcall DialogBox(DLGDATA* dlg); |
51 | void* DialogBox; // int __stdcall DialogBox(DLGDATA* dlg); |
47 | void* SayErr; // int __stdcall SayErr(int num_strings, const char** strings, |
52 | void* SayErr; // int __stdcall SayErr(int num_strings, const char** strings, |
48 | // int num_buttons, const char** buttons); |
53 | // int num_buttons, const char** buttons); |
49 | void* Message; // int __stdcall Message(const char* title, |
54 | void* Message; // int __stdcall Message(const char* title, |
50 | // int num_strings, const char** strings, |
55 | // int num_strings, const char** strings, |
51 | // int num_buttons, const char** buttons); |
56 | // int num_buttons, const char** buttons); |
52 | // may be x=-1 and/or y=-1 |
57 | // may be x=-1 and/or y=-1 |
53 | struct {unsigned width;unsigned height;}* cur_console_size; |
58 | struct {unsigned width;unsigned height;}* cur_console_size; |
54 | } kfar_info; |
59 | } kfar_info; |
55 | ®§¢à é ¥¬®¥ § 票¥: |
60 | ®§¢à é ¥¬®¥ § 票¥: |
56 | 0 = ãᯥè ï ¨¨æ¨ «¨§ æ¨ï |
61 | 0 = ãᯥè ï ¨¨æ¨ «¨§ æ¨ï |
57 | 1 = ®è¨¡ª ¨¨æ¨ «¨§ 樨 (kfar ¢ë¤ áâ á®®¡é¥¨¥ ¯®«ì§®¢ ⥫î) |
62 | 1 = ®è¨¡ª ¨¨æ¨ «¨§ 樨 (kfar ¢ë¤ áâ á®®¡é¥¨¥ ¯®«ì§®¢ ⥫î) |
58 | 2 = ®è¨¡ª ¨¨æ¨ «¨§ 樨 (kfar ¯à®¤®«¦¨â ¡¥§ á®®¡é¥¨©) |
63 | 2 = ®è¨¡ª ¨¨æ¨ «¨§ 樨 (kfar ¯à®¤®«¦¨â ¡¥§ á®®¡é¥¨©) |
59 | 64 | ||
60 | void __stdcall plugin_unload(void); |
65 | void __stdcall plugin_unload(void); |
61 | ë§ë¢ ¥âáï ¯à¨ ¢ë£à㧪¥ ¯« £¨ (¢ ¯à®æ¥áᥠ§ ¢¥à襨ï à ¡®âë kfar). |
66 | ë§ë¢ ¥âáï ¯à¨ ¢ë£à㧪¥ ¯« £¨ (¢ ¯à®æ¥áᥠ§ ¢¥à襨ï à ¡®âë kfar). |
62 | 67 | ||
63 | HANDLE __stdcall OpenFilePlugin(HANDLE basefile, const char* name, |
68 | HANDLE __stdcall OpenFilePlugin(HANDLE basefile, |
- | 69 | const void* attr, const void* data, int datasize, |
|
64 | const void* attr, const void* data, int datasize); |
70 | int baseplugin_id, HANDLE baseplugin_instance, const char* name); |
- | 71 | âªàë¢ ¥â ¯« £¨, í¬ã«¨àãî騩 ä ©«®¢ãî á¨á⥬㠡 §¥ ä ©« ( ¯à¨¬¥à, à娢 ). |
|
65 | âªàë¢ ¥â ¯« £¨, í¬ã«¨àãî騩 ä ©«®¢ãî á¨á⥬㠡 §¥ ä ©« ( ¯à¨¬¥à, à娢 ). |
72 | |
66 | basefile - åí¤« ä ©« (ª ª®â®à®¬ã ¯à¨¬¥¨¬ë äãªæ¨¨ read ¨ seek ¨§ kfar_info) |
- | |
67 | name - ¨¬ï ä ©« (¢® ¢à¥¬¥®¬ ¡ãä¥à¥) |
73 | basefile - åí¤« ä ©« (ª ª®â®à®¬ã ¯à¨¬¥¨¬ë äãªæ¨¨ read ¨ seek ¨§ kfar_info) |
68 | attr - 㪠§ ⥫ì áâàãªâãàã á âਡãâ ¬¨ ä ©« ¢ ä®à¬ ⥠á¨á⥬®© äãªæ¨¨ 70.1 |
74 | attr - 㪠§ ⥫ì áâàãªâãàã á âਡãâ ¬¨ ä ©« ¢ ä®à¬ ⥠á¨á⥬®© äãªæ¨¨ 70.1 |
69 | data - ¡ãä¥à, ᮤ¥à¦ 騩 ¤ ë¥ ¨§ ç « ä ©« (¬®¦¥â ¨á¯®«ì§®¢ âìáï ¤«ï ®¯à¥¤¥«¥¨ï ⨯ ä ©« ) |
75 | data - ¡ãä¥à, ᮤ¥à¦ 騩 ¤ ë¥ ¨§ ç « ä ©« (¬®¦¥â ¨á¯®«ì§®¢ âìáï ¤«ï ®¯à¥¤¥«¥¨ï ⨯ ä ©« ) |
70 | datasize - à §¬¥à ¤ ëå ¢ data. ⥪ã饩 ॠ«¨§ 樨 min(1024,à §¬¥à ä ©« ) |
76 | datasize - à §¬¥à ¤ ëå ¢ data. ⥪ã饩 ॠ«¨§ 樨 min(1024,à §¬¥à ä ©« ) |
- | 77 | baseplugin_id - ¨¤¥â¨ä¨ª â®à ¯« £¨ , ¯ ¥«¨ ª®â®à®£® à ᯮ« £ ¥âáï ®âªàë¢ ¥¬ë© ä ©«; |
|
- | 78 | 0 ¢ á«ãç ¥ ®¡ëçëå ¯ ¥«¥© |
|
- | 79 | baseplugin_instance - åí¤«, ¢®§¢à éñë© ¨§ äãªæ¨¨ GetOpenPluginInfo ¯« £¨ , |
|
- | 80 | ®¯à¥¤¥«ï¥¬®£® ¯® baseplugin_id |
|
- | 81 | name - ¨¬ï ä ©« (¢® ¢à¥¬¥®¬ ¡ãä¥à¥) (¯®«®¥ ¨¬ï ®â®á¨â¥«ì® baseplugin) |
|
- | 82 | ||
71 | ᫨ ¯« £¨ ®¡à ¡ âë¢ ¥â ¯¥à¥¤ ë© ä ©«, â® ® ¤®«¦¥ ¢¥àãâì ®¢ë© ®¯¨á ⥫ì, |
83 | ᫨ ¯« £¨ ®¡à ¡ âë¢ ¥â ¯¥à¥¤ ë© ä ©«, â® ® ¤®«¦¥ ¢¥àãâì ®¢ë© ®¯¨á ⥫ì, |
72 | ª®â®àë© ¢ ¤ «ì¥©è¥¬ ¡ã¤¥â ¨á¯®«ì§®¢ âì kfar ¤«ï ®¡à é¥¨ï ª ¯« £¨ã. í⮬ á«ãç ¥ |
84 | ª®â®àë© ¢ ¤ «ì¥©è¥¬ ¡ã¤¥â ¨á¯®«ì§®¢ âì kfar ¤«ï ®¡à é¥¨ï ª ¯« £¨ã. í⮬ á«ãç ¥ |
73 | ¯« £¨ ¤®«¦¥ á ¬®áâ®ïâ¥«ì® § ªàëâì basefile äãªæ¨¥© close ¨§ kfar_info ( ¯à¨¬¥à, |
85 | ¯« £¨ ¤®«¦¥ á ¬®áâ®ïâ¥«ì® § ªàëâì basefile äãªæ¨¥© close ¨§ kfar_info ( ¯à¨¬¥à, |
74 | ¯à¨ § ªàë⨨ ®¯¨á â¥«ï ¯« £¨ ¢ ClosePlugin ¨«¨ ¥¯®á।á⢥® ¢ OpenFilePlugin, |
86 | ¯à¨ § ªàë⨨ ®¯¨á â¥«ï ¯« £¨ ¢ ClosePlugin ¨«¨ ¥¯®á।á⢥® ¢ OpenFilePlugin, |
75 | ¥á«¨ basefile ¢®®¡é¥ ¢¯®á«¥¤á⢨¨ ¥ 㦥). |
87 | ¥á«¨ basefile ¢®®¡é¥ ¢¯®á«¥¤á⢨¨ ¥ 㦥). |
76 | ᫨ ¯« £¨ ¥ ®¡à ¡ âë¢ ¥â ¯¥à¥¤ ë© ä ©«, ¤®«¦¥ ¢®§¢à é âìáï 0. |
88 | ᫨ ¯« £¨ ¥ ®¡à ¡ âë¢ ¥â ¯¥à¥¤ ë© ä ©«, ¤®«¦¥ ¢®§¢à é âìáï 0. |
77 | ᫨ ®¯¥à æ¨ï ¯à¥à¢ ¯®«ì§®¢ ⥫¥¬, ¤®«¦® ¢®§¢à é âìáï § 票¥ -1. |
89 | ᫨ ®¯¥à æ¨ï ¯à¥à¢ ¯®«ì§®¢ ⥫¥¬, ¤®«¦® ¢®§¢à é âìáï § 票¥ -1. |
78 | 90 | ||
79 | void __stdcall ClosePlugin(HANDLE hPlugin); |
91 | void __stdcall ClosePlugin(HANDLE hPlugin); |
80 | ªàë¢ ¥â ᮧ¤ ë© ¢ OpenFilePlugin ®¯¨á ⥫ì. |
92 | ªàë¢ ¥â ᮧ¤ ë© ¢ OpenFilePlugin ®¯¨á ⥫ì. |
81 | 93 | ||
82 | void __stdcall GetOpenPluginInfo(HANDLE hPlugin, OpenPluginInfo* Info); |
94 | void __stdcall GetOpenPluginInfo(HANDLE hPlugin, OpenPluginInfo* Info); |
83 | ®«ãç¨âì ¨ä®à¬ æ¨î ®¡ ®âªàë⮬ íª§¥¬¯«ïॠ¯« £¨ . |
95 | ®«ãç¨âì ¨ä®à¬ æ¨î ®¡ ®âªàë⮬ íª§¥¬¯«ïॠ¯« £¨ . |
84 | typedef struct |
96 | typedef struct |
85 | { |
97 | { |
86 | unsigned flags; // ¡¨â 0: ¤®¡ ¢«ïâì í«¥¬¥â '..', ¥á«¨ ® ®âáãâáâ¢ã¥â |
98 | unsigned flags; // ¡¨â 0: ¤®¡ ¢«ïâì í«¥¬¥â '..', ¥á«¨ ® ®âáãâáâ¢ã¥â |
87 | // ¡¨â 1: ª®¯¨à®¢ ¨¥ ®¡à ¡ âë¢ ¥âáï äãªæ¨¥© GetFiles |
99 | // ¡¨â 1: ª®¯¨à®¢ ¨¥ ®¡à ¡ âë¢ ¥âáï äãªæ¨¥© GetFiles |
88 | } OpenPluginInfo; |
100 | } OpenPluginInfo; |
89 | 101 | ||
90 | void __stdcall GetPanelTitle(HANDLE hPlugin, char title[1024], |
102 | void __stdcall GetPanelTitle(HANDLE hPlugin, char title[1024], |
91 | const char* host_file, const char* curdir); |
103 | const char* host_file, const char* curdir); |
92 | ®«ãç¨âì § £®«®¢®ª ¯ ¥«¨ ¯« £¨ . à ¬¥âà host_file ᮢ¯ ¤ ¥â á ¨¬¥¥¬ ä ©« , ¯¥à¥¤ ë¬ |
104 | ®«ãç¨âì § £®«®¢®ª ¯ ¥«¨ ¯« £¨ . à ¬¥âà host_file ᮢ¯ ¤ ¥â á ¨¬¥¥¬ ä ©« , ¯¥à¥¤ ë¬ |
93 | ¢ OpenFilePlugin. à ¬¥âà curdir ᮢ¯ ¤ ¥â á ⥪ã饩 ¯ ¯ª®©, ãáâ ¢«¨¢ ¥¬®© ¢ SetFolder. |
105 | ¢ OpenFilePlugin. à ¬¥âà curdir ᮢ¯ ¤ ¥â á ⥪ã饩 ¯ ¯ª®©, ãáâ ¢«¨¢ ¥¬®© ¢ SetFolder. |
94 | 106 | ||
95 | int __stdcall ReadFolder(HANDLE hPlugin, unsigned dirinfo_start, |
107 | int __stdcall ReadFolder(HANDLE hPlugin, unsigned dirinfo_start, |
96 | unsigned dirinfo_size, void* dirdata); |
108 | unsigned dirinfo_size, void* dirdata); |
97 | ¨â ¥â ⥪ãéãî ¯ ¯ªã. hPlugin - ¢®§¢à éñë© ¨§ OpenFilePlugin ®¯¨á ⥫ì. |
109 | ¨â ¥â ⥪ãéãî ¯ ¯ªã. hPlugin - ¢®§¢à éñë© ¨§ OpenFilePlugin ®¯¨á ⥫ì. |
98 | dirinfo_start - á ª ª®£® ä ©« ç¨â âì, dirinfo_size - ᪮«ìª® ä ©«®¢ ç¨â âì. |
110 | dirinfo_start - á ª ª®£® ä ©« ç¨â âì, dirinfo_size - ᪮«ìª® ä ©«®¢ ç¨â âì. |
99 | ®§¢à é ¥¬®¥ § 票¥ ¨ ¢®§¢à é ¥¬ë¥ ¢ dirdata ¤ ë¥ ¤®«¦ë ᮮ⢥âá⢮¢ âì äãªæ¨¨ 70.1. |
111 | ®§¢à é ¥¬®¥ § 票¥ ¨ ¢®§¢à é ¥¬ë¥ ¢ dirdata ¤ ë¥ ¤®«¦ë ᮮ⢥âá⢮¢ âì äãªæ¨¨ 70.1. |
100 | 112 | ||
101 | bool __stdcall SetFolder(HANDLE hPlugin, const char* relative_path, const char* absolute_path); |
113 | bool __stdcall SetFolder(HANDLE hPlugin, const char* relative_path, const char* absolute_path); |
102 | áâ ®¢¨âì ⥪ãéãî ¯ ¯ªã. relative_path - ®â®á¨â¥«ìë© ¯ãâì (".." ¨«¨ ¨¬ï ¯®¤¯ ¯ª¨), |
114 | áâ ®¢¨âì ⥪ãéãî ¯ ¯ªã. relative_path - ®â®á¨â¥«ìë© ¯ãâì (".." ¨«¨ ¨¬ï ¯®¤¯ ¯ª¨), |
103 | absolute_path - ¡á®«îâë© ¯ãâì (¯ ¯ª í¬ã«¨à㥬®© ¯« £¨®¬ ä ©«®¢®© á¨á⥬ë). |
115 | absolute_path - ¡á®«îâë© ¯ãâì (¯ ¯ª í¬ã«¨à㥬®© ¯« £¨®¬ ä ©«®¢®© á¨á⥬ë). |
104 | 116 | ||
105 | void __stdcall GetFiles(HANDLE hPlugin, int NumItems, void* items[], void* addfile, void* adddir); |
117 | void __stdcall GetFiles(HANDLE hPlugin, int NumItems, void* items[], void* addfile, void* adddir); |
106 | bool __stdcall addfile(const char* name, void* bdfe_info, HANDLE hFile); |
118 | bool __stdcall addfile(const char* name, void* bdfe_info, HANDLE hFile); |
107 | bool __stdcall adddir(const char* name, void* bdfe_info); |
119 | bool __stdcall adddir(const char* name, void* bdfe_info); |
108 | ë§ë¢ ¥âáï ¤«ï ª®¯¨à®¢ ¨ï, ¥á«¨ ¢® ä« £ å, ¢®§¢à é ¥¬ëå GetOpenPluginInfo, ãáâ ®¢«¥ ¡¨â 1. |
120 | ë§ë¢ ¥âáï ¤«ï ª®¯¨à®¢ ¨ï, ¥á«¨ ¢® ä« £ å, ¢®§¢à é ¥¬ëå GetOpenPluginInfo, ãáâ ®¢«¥ ¡¨â 1. |
109 | âã äãªæ¨î ४®¬¥¤ã¥âáï ॠ«¨§®¢ë¢ âì ¢ á«ãç ¥, ¥á«¨ áâ ¤ àâë© à¥ªãàá¨¢ë© ®¡å®¤ ¯ ¯®ª |
121 | âã äãªæ¨î ४®¬¥¤ã¥âáï ॠ«¨§®¢ë¢ âì ¢ á«ãç ¥, ¥á«¨ áâ ¤ àâë© à¥ªãàá¨¢ë© ®¡å®¤ ¯ ¯®ª |
110 | ¥ã¤®¡¥. |
122 | ¥ã¤®¡¥. |
111 | hPlugin - ®¯¨á ⥫ì, ᮧ¤ ë© ¢ OpenFilePlugin. |
123 | hPlugin - ®¯¨á ⥫ì, ᮧ¤ ë© ¢ OpenFilePlugin. |
112 | NumItems - ç¨á«® ª®¯¨à㥬ëå í«¥¬¥â®¢. |
124 | NumItems - ç¨á«® ª®¯¨à㥬ëå í«¥¬¥â®¢. |
113 | items - ¬ áᨢ ª®¯¨à㥬ëå í«¥¬¥â®¢, ª ¦¤ë© ¨§ ª®â®àëå § ¤ ñâáï 㪠§ ⥫¥¬ áâàãªâãàã BDFE. |
125 | items - ¬ áᨢ ª®¯¨à㥬ëå í«¥¬¥â®¢, ª ¦¤ë© ¨§ ª®â®àëå § ¤ ñâáï 㪠§ ⥫¥¬ áâàãªâãàã BDFE. |
114 | ¯¥æ¨ «ìë© á«ãç © NumItems=-1, items=NULL ®§ ç ¥â "¢á¥ ä ©«ë" (¢ ⥪ã饩 ¯ ¯ª¥ ¨ ¯®¤¯ ¯ª å). |
126 | ¯¥æ¨ «ìë© á«ãç © NumItems=-1, items=NULL ®§ ç ¥â "¢á¥ ä ©«ë" (¢ ⥪ã饩 ¯ ¯ª¥ ¨ ¯®¤¯ ¯ª å). |
115 | addfile, adddir - callback-äãªæ¨¨ kfar' . ®§¢à â false ®§ ç ¥â "¯à¥à¢ âì ª®¯¨à®¢ ¨¥". |
127 | addfile, adddir - callback-äãªæ¨¨ kfar' . ®§¢à â false ®§ ç ¥â "¯à¥à¢ âì ª®¯¨à®¢ ¨¥". |
116 | à ¬¥âà name ¤®«¦¥ § ¤ ¢ âì ¨¬ï ®â®á¨â¥«ì® ⥪ã饩 ¯ ¯ª¨. à ¬¥âà bdfe_info - |
128 | à ¬¥âà name ¤®«¦¥ § ¤ ¢ âì ¨¬ï ®â®á¨â¥«ì® ⥪ã饩 ¯ ¯ª¨. à ¬¥âà bdfe_info - |
117 | 㪠§ ⥫ì ᮪à éñãî (40 ¡ ©â) § ¯¨áì ¢ ä®à¬ ⥠äãªæ¨¨ 70.5. |
129 | 㪠§ ⥫ì ᮪à éñãî (40 ¡ ©â) § ¯¨áì ¢ ä®à¬ ⥠äãªæ¨¨ 70.5. |
118 | âªàë⨥¬ ¨ § ªàë⨥¬ ®¯¨á ⥫ï hFile ¤®«¦¥ § ¨¬ âìáï ¯« £¨. ãªæ¨ï addfile ¡ã¤¥â |
130 | âªàë⨥¬ ¨ § ªàë⨥¬ ®¯¨á ⥫ï hFile ¤®«¦¥ § ¨¬ âìáï ¯« £¨. ãªæ¨ï addfile ¡ã¤¥â |
119 | ¢ë§ë¢ âì ⮫쪮 äãªæ¨î read. |
131 | ¢ë§ë¢ âì ⮫쪮 äãªæ¨î read. |
120 | 132 | ||
121 | int __stdcall getattr(HANDLE hPlugin, const char* filename, void* info); |
133 | int __stdcall getattr(HANDLE hPlugin, const char* filename, void* info); |
122 | ®«ãç¨âì ¨ä®à¬ æ¨î ® ä ©«¥. ®§¢à é ¥¬®¥ § 票¥ ¨ ¤ ë¥ ¢ info ¤®«¦ë ᮮ⢥âá⢮¢ âì |
134 | ®«ãç¨âì ¨ä®à¬ æ¨î ® ä ©«¥. ®§¢à é ¥¬®¥ § 票¥ ¨ ¤ ë¥ ¢ info ¤®«¦ë ᮮ⢥âá⢮¢ âì |
123 | äãªæ¨¨ 70.5. |
135 | äãªæ¨¨ 70.5. |
124 | 136 | ||
125 | HANDLE __stdcall open(HANDLE hPlugin, const char* filename, int mode); |
137 | HANDLE __stdcall open(HANDLE hPlugin, const char* filename, int mode); |
126 | âªàëâì ä ©« filename. à ¬¥âà mode § १¥à¢¨à®¢ ¨ ¢ ⥪ã饩 ¢¥àᨨ kfar ¢á¥£¤ à ¢¥ 1. |
138 | âªàëâì ä ©« filename. à ¬¥âà mode § १¥à¢¨à®¢ ¨ ¢ ⥪ã饩 ¢¥àᨨ kfar ¢á¥£¤ à ¢¥ 1. |
127 | 139 | ||
128 | unsigned __stdcall read(HANDLE hFile, void* buf, unsigned size); |
140 | unsigned __stdcall read(HANDLE hFile, void* buf, unsigned size); |
129 | ⥨¥ size ¡ ©â ¢ ¡ãä¥à buf ¨§ ä ©« hFile, à ¥¥ ®âªàë⮣® ç¥à¥§ open. |
141 | ⥨¥ size ¡ ©â ¢ ¡ãä¥à buf ¨§ ä ©« hFile, à ¥¥ ®âªàë⮣® ç¥à¥§ open. |
130 | kfar £ à â¨àã¥â, çâ® size ªà ⥠512 ¡ ©â. |
142 | kfar £ à â¨àã¥â, çâ® size ªà ⥠512 ¡ ©â. |
131 | ®§¢à é ¥¬®¥ § 票¥: ç¨á«® ¯à®ç¨â ëå ¡ ©â, -1 ¯à¨ ®è¨¡ª¥. |
143 | ®§¢à é ¥¬®¥ § 票¥: ç¨á«® ¯à®ç¨â ëå ¡ ©â, -1 ¯à¨ ®è¨¡ª¥. |
132 | 144 | ||
133 | void __stdcall setpos(HANDLE hFile, __int64 pos); |
145 | void __stdcall setpos(HANDLE hFile, __int64 pos); |
134 | áâ ®¢¨âì ⥪ãéãî ¯®§¨æ¨î ¢ ä ©«¥ hFile, à ¥¥ ®âªàë⮣® ç¥à¥§ open, ¢ pos. |
146 | áâ ®¢¨âì ⥪ãéãî ¯®§¨æ¨î ¢ ä ©«¥ hFile, à ¥¥ ®âªàë⮣® ç¥à¥§ open, ¢ pos. |
135 | à â¨àã¥âáï, çâ® pos ªà â® 512 ¡ ©â. |
147 | à â¨àã¥âáï, çâ® pos ªà â® 512 ¡ ©â. |
136 | 148 | ||
137 | void __stdcall close(HANDLE hFile); |
149 | void __stdcall close(HANDLE hFile); |