Ваша программа в функции PluginExec передаёт аж три параметра, котррые сама функция не испльзоует. Вы для чего их указали?
Code
function PluginExec(Uin,Msg:String; index: integer): PChar;
var
n1,n2: integer;
znak,dob,html: string;
begin
with form1 do
begin
IdHTTP1:=TIdHTTP.Create(nil);
IdHTTP1.HandleRedirects:=true;
znak:=copy(msg,9,length(msg));
znak:=trim(znak);
result:='Знак зодиака не верный! Пишутся маленькими буквами: Пример "гороскоп близнецы".';
if znak ='овен' then znak:='ОВЕН (21 марта - 20 апреля)'
else if znak ='телец' then znak:='ТЕЛЕЦ (21 апреля - 21 мая)'
else if znak ='близнецы' then znak:='БЛИЗНЕЦЫ (22 мая - 21 июня)'
else if znak ='рак' then znak:='РАК (22 июня - 23 июля)'
else if znak ='лев' then znak:='ЛЕВ (24 июля - 23 августа)'
else if znak ='дева' then znak:='ДЕВА (24 августа - 23 сентября)'
else if znak ='весы' then znak:='ВЕСЫ (24 сентября - 23 октября)'
else if znak ='скорпион' then znak:='СКОРПИОН (24 октября - 22 ноября)'
else if znak ='стрелец' then znak:='СТРЕЛЕЦ (23 ноября - 21 декабря)'
else if znak ='козерог' then znak:='КОЗЕРОГ (22 декабря - 20 января)'
else if znak ='водолей' then znak:='ВОДОЛЕЙ (21 января - 19 февраля)'
else if znak ='рыбы' then znak:='РЫБЫ (20 февраля - 20 марта)'
else exit;
html:=UTF8ToAnsi(IdHTTP1.Get('http://rssportal.ru/feed/12480.xml'));
n1:=pos('<description><![CDATA[',html)+22;
n2:=pos(']></description>',html)-1;
dob:=copy(html,n1,n2-n1);
n1:=pos(znak,html)+7;
n2:=pos('</rss>',html);
html:=copy(html,n1,n2-n1);
n1:=pos('<description><![CDATA[',html)+22;
n2:=pos(']]></description>',html);
html:=copy(html,n1,n2-n1);
html:=dob+#10#13+#10#13+znak+#10#13+html;
result:=PChar(html);
IdHTTP1.Free;
end;
end;
Не работает вызов самой фунции. Я попробоавл:
showmessage(PluginExec('', 'ДЕВА', 6));
Однако ме могу понять, какие нужно передавать параметры, так как ни один из них в данной функции не исользуется!