View previous topic :: View next topic |
Author |
Message |
Pash0k
Joined: 07 Oct 2006 Posts: 2
|
(Separately) Posted: Sat Oct 07, 2006 12:44 Post subject: Отображение размера содержимого директории по формуле |
|
|
Есть ли плагин или какая-то возможность сделать отображение содержимого директории или выделенных файлов рамером, не в кБ, а по формуле=кБ*0.53 (любая формула).
Именно тот размер что отображается в нижней панели. |
|
Back to top |
|
 |
D1P

Joined: 20 Dec 2004 Posts: 2973 Location: Тбилиси
|
(Separately) Posted: Sat Oct 07, 2006 22:03 Post subject: |
|
|
Плагина, afaik, нет, но написать его довольно просто. WDX, который будет брать размер файла/каталога и делать соответсвующие преобразования - ничего сложного. Я бы даже сказал - настолько просто, что вряд ли кто возьмётся  _________________ База знаний о Total Commander
Блог |
|
Back to top |
|
 |
funduk

Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Sat Oct 07, 2006 23:11 Post subject: |
|
|
Имхо, это задача для super_wdx...  |
|
Back to top |
|
 |
D1P

Joined: 20 Dec 2004 Posts: 2973 Location: Тбилиси
|
(Separately) Posted: Sun Oct 08, 2006 13:20 Post subject: |
|
|
Quote: | Имхо, это задача для super_wdx... |
Функциональности "каркулятора" в этом плагине нет. И обрабатывать получаемые значения (регэкспами или ещё как) он тоже не может.
На самом деле всё очень тривиально, вот, набросал код на коленке:
Code: |
library file_size;
uses
SysUtils,
Windows;
{$R *.res}
{$E wdx}
{------------------------------------------------------------------------------}
function ContentGetSupportedField(FieldIndex:integer;FieldName:pchar;Units:pchar;maxlen:integer):integer; stdcall;
Begin
Case FieldIndex of
0: Begin
Strlcopy (FieldName,'FileSize',MaxLen-1);
result:=8;{ft_string}
end;
else result:=0; {ft_nomorefields}
End;
End;
{------------------------------------------------------------------------------}
function ContentGetValue(FileName:pchar;FieldIndex,UnitIndex:integer;FieldValue:pbyte;maxlen,flags:integer):integer; stdcall;
var
FileInfo:tWIN32FINDDATA;
FileSize:Extended;
Begin
Windows.FindClose (FindFirstFile (FileName,FileInfo));
FileSize:=(FileInfo.nFileSizeHigh*MAXDWORD)+Fileinfo.nFileSizeLow;
FileSize:=FileSize*0.53; {Сюда вписываем формулу, либо, при желании, обработчик формулы, заданной в настройках}
Strlcopy (pchar (Fieldvalue), Pchar(CurrToStr(FileSize)),maxlen-1);
result:=8;{ft_string}
End;
exports
ContentGetSupportedField,
ContentGetValue;
begin
end.
|
Сохраняем в файл file_size.dpr, компилим любой версией Delphi, полученный WDX устанавливаем как обычно. _________________ База знаний о Total Commander
Блог |
|
Back to top |
|
 |
Pash0k
Joined: 07 Oct 2006 Posts: 2
|
(Separately) Posted: Mon Oct 09, 2006 11:24 Post subject: |
|
|
спасибо большое, буим ставить делфи а потом попробую |
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Mon Oct 09, 2006 11:53 Post subject: |
|
|
Интересно, а Script Content Plugin с таким разве не может справиться? Я, правда, им сам не пользовался, но, судя по описанию, должен мочь...
Кстати, перенесу-ка тему в "Плагины", ей явно там место.  _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|