Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Вызов процедуры обнуляет переменные 
Author Message
D1P



PostPosted: Wed Mar 02, 2005 12:20    Post subject: Вызов процедуры обнуляет переменные Reply with quote

Во время написания плагина super_wdx столкнулся со следующей проблемой: одна из процедур программы при работе с плагином FileType обнуляет все строковый переменные той процедуры, из которой она была вызвана.
Т.е, выглядит примерно так:

Code:

Function GetFieldValue (const PlugName, FieldName, FileName:string):string;
Begin
//загружаем плагин, получаем из него значение, возвращаем его
//внутри - всё в порядке, получаем значение из wdx-плагина.
result:=ТО_ЧТО_НАДО; //возвращаемое значение - правильное.
End;

Function DecodeContentString (ContentString:String):String;
Var
//some string variables here
a,b,c,x:string;
Begin
a:=SomeFuncResult;
b:=SomeOtherFuncResult;
c:=ThirdFuncResult;
//тут всё в порядке
x:=GetFieldValue (a,b,c);
//вот тут-то начинаются глюки - все строковые переменные становятся пустыми.
End;


При работе с ЛЮБЫМ плагином всё тип-топ, все переменные сохраняются. При работе с FileType в GetFieldValue всё проходит нормально, но x в DecodeContentString (и все строковые переменные в DecodeContentString) обнуляются.

Пробовал переделывать передачу параметров по всякому (глобальными переменными, ссылками, как угодно) - результаты те же - не работает только с FileType.wdx. Посмотрел, как ведёт себя WdxGuide с эти плагином - тоже выдаёт ошибку (ессно, когда отлаживаешь код), но проходит дальше - там по-другому сделана передача параметров, найденное поле сразу добавляется в список. Мне этот вариант ну никак не подходит.

Может быть кто-то сталкивался с такой проблемой, и знает как это исправить?
View user's profile Send private message Visit poster's website ICQ Number


Powered by phpBB © 2001, 2005 phpBB Group