Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 13.05.2013, 14:23
Tonyy Tonyy вне форума
Новичок
 
Регистрация: 05.04.2010
Сообщения: 85
Репутация: 10
По умолчанию ошибка при написании wdx плагина

Уважаемые участники форума!
нужна помощь. не могу найти ошибку, из-за которой не работает плагин.
вот код:
Код:
{$E wdx}
library Segd1Inf1;

uses
  Windows,
  SysUtils,ContPlug,Usegdread,
  Classes;

  const
  _DetectString: PAnsiChar = 'EXT="segd"';

  _FieldsNum = 3;
  _Fields: array[0.._FieldsNum-1] of PAnsiChar = (
    'prof ',
    'piket ',
    'data ');

procedure ContentGetDetectString(DetectString: PAnsiChar; maxlen: integer); stdcall;
begin
  lstrcpynA(DetectString, _DetectString,maxlen);
end;

function ContentGetSupportedField(FieldIndex: integer; FieldName: PAnsiChar;
  Units: PAnsiChar; maxlen: integer): integer; stdcall;
begin
  if FieldIndex in [0..High(_Fields)] then
  begin
    lstrcpynA(FieldName,_Fields[FieldIndex],maxlen);
    strcopy(Units,'');

    Result := FT_STRING;
  end else Result := ft_NoMoreFields;
end;                                                                                

function ContentGetValueW(fn: PWideChar; FieldIndex, UnitIndex: integer;
  FieldValue: PWideChar; MaxLen, Flags: integer): integer; stdcall;
var

  s: AnsiString;
  ext: string;
  
begin

  if (FieldIndex<0) or (FieldIndex >= _FieldsNum) then
    begin Result:= FT_NOSUCHFIELD; Exit end;

  ext:= LowerCase(ExtractFileExt(fn));

  if (Flags and CONTENT_DELAYIFSLOW)>0 then
    if (ext<>'') then begin Result:= FT_DELAYED; Exit end;

        s:= segdread(fn, FieldIndex);

        if s=''
          then
            Result:= FT_FIELDEMPTY
          else
          begin
             lstrcpynW(FieldValue, PWideChar(Widestring(s)), MaxLen);
             Result:= FT_STRINGW;
          end;

end;


function ContentGetValue(fn: PAnsiChar; FieldIndex, UnitIndex: integer;                                   
  FieldValue: PWideChar; MaxLen, Flags: integer): integer; stdcall;

begin
  //Result := ContentGetValueW(PWideChar(WideString(fn)), FieldIndex, UnitIndex, FieldValue, MaxLen, Flags);
   Result:=ft_fieldempty;


end;                                                                                                      

exports
  ContentGetDetectString,
  ContentGetSupportedField,
  ContentGetValueW,
  ContentGetValue;
                                                                                                          
end.
надеюсь на конструктивную помощь. это мой первый плагин. буду благодарен любой помощи.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:02.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025