Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2009.03.15;
Скачать: [xml.tar.bz2];

Вниз

Про KolService   Найти похожие ветки 

 
Александр 2006   (2007-12-17 10:46) [0]

KolService использует это:

Uses UWrd;

А где его взять?


 
Jon ©   (2007-12-17 11:39) [1]

http://kolmck.net/KOLobjects.zip


 
Dimaxx ©   (2007-12-17 11:40) [2]

Он короткий, поэтому кладу в виде поста:

unit UWrd;

interface

function  words  (str:string;d:char):integer;
function  wordn  (str:string;d:char;n:integer):string ;
function  wordd  (str:string;d:char;n:integer):string ;
function  wordp  (str:string;d:char;n:integer):integer;
function  wordi  (wrd,str:string;d:cHar):boolean;
function  wordf  (str:string;d:char;n:integer):string ;

implementation

function  words;
var tempstr : string;
       ins : boolean;
       i,j : integer;
begin
  tempstr := d + str + d;
  ins     := false;
  j       := 0;
  for i := 1 to length(tempstr) do begin
     if ins then
        if tempstr[i] =d then ins:=false
                         else begin end
            else
     if tempstr[i]<>d then begin
        inc(j);ins:=true;
     end;
  end;
  words:=j;
end;

function  wordn;
var i,j:integer;
tempstr:string;
begin
  i:=words(str, d);
  if i<n then begin
     wordn:="";
     exit;
  end;
  i:=1;
  while words(copy(str,1,i), d)<n do inc(i);
  j:=i;
  tempstr:=str+d;
  while tempstr[j]<>d do inc(j);
  wordn:=copy(str,i,j-i);
end;

function  wordd;
var i,j:integer;
   sss:string;
tempstr:string;
begin
  i:=words(str, d);
  if i<n then begin
     wordd:=str;
     exit;
  end;
  i:=1;
  while words(copy(str,1,i), d)<n do inc(i);
  j:=i;
  tempstr:=str+d;
  while tempstr[j]<>d do inc(j);
  sss  :=copy(str,1,i-1);
  wordd:=sss+copy(str,j+1,length(tempstr)-j);
end;

function  wordp;
var i:integer;
begin
  i:=words(str, d);
  if i < n then begin
     wordp := 0;
     exit;
  end;
  i:=1;
  while words(copy(str,1,i), d)<n do inc(i);
  wordp   := i;
end;

function wordi;
var i : integer;
begin
  wordi := true;
  for i := 1 to words(str, d) do
     if wrd = wordn(str, d, i) tHen exit;
  wordi := false;
end;

function wordf;
var i: integer;
begin
  i := wordp(str, d, n);
  wordf := "";
  if (i > 0) and (i < length(str)) then
     wordf := copy(str, i, length(str) - i + 1);  
end;

end.


 
Александр 2006   (2007-12-17 14:30) [3]

Спасибо за помощь, но теперь при компиляции выдается ошибка:

procedure AfterGeneratePAS( SL: TStringList ); override;

differs from previous declaration.

Смотрю предка - он TKOLDataModule, там оно выглядит как

function AfterGeneratePAS( SL: TStringList ):Boolean; override; -
что-то такое.
Меняю по тексту это дело.

Тогда ругается на inherited в TKOLServiceEx.AfterGeneratePAS - несовместимые типы.

Что-то не то наверно делаю изначально? Как надо сделать?


 
Jon ©   (2007-12-17 15:39) [4]

procedure AfterGeneratePAS
function AfterGeneratePAS

That is wrong :-(
Download again from:

http://kolmck.net/Components/KOLService.zip


 
Александр 2006   (2007-12-17 16:00) [5]

>Download again from...

Ничего не поменялось:

[Error] mckService.pas(59): Declaration of "AfterGeneratePAS" differs from previous declaration


 
Barloggg   (2007-12-17 17:53) [6]

ребилдолу прими.


 
Дмитрий К ©   (2007-12-17 18:08) [7]


> Тогда ругается на inherited в TKOLServiceEx.AfterGeneratePAS
> - несовместимые типы.

inherited AfterGeneratePAS(SL);


 
Александр 2006   (2007-12-18 11:12) [8]

> ребилдолу прими.
Это я не знаю что такое. Звиняйте...

> inherited AfterGeneratePAS(SL);
А вот это помогло. Всё работает, спасибо (собственно, это очевидно - просто давно не лазил в Delphi, поэтому малость туплю).


 
Александр 2006   (2007-12-18 15:16) [9]

P.S.
Всё классно, но вот одна неприятность: если запускать службу не с учётной записью LocalSystem, а какого-нибудь реального пользователя (ну, например, чтобы она имела доступ к UNC - ресурсу на чужом диске), то ни окошек нет (что в демке к KolService), ни кнопка остановки в окне "Службы" не активна, т.е. её вообще нельзя остановить. Чего-то всё-таки не хватает по сравнению с "традиционными" службами.
Как подправить? Кто-нибудь может разбирался?



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2009.03.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.043 c
15-1231835570
Кузьма Захарович
2009-01-13 11:32
2009.03.15
файрвол и касперский антивирус вместе?


6-1200663723
sdram
2008-01-18 16:42
2009.03.15
Как отправить email ?


2-1232705794
R13
2009-01-23 13:16
2009.03.15
Событие разрушения формы


15-1231595719
Slider007
2009-01-10 16:55
2009.03.15
С днем рождения ! 7 января 2009 среда


3-1216851431
Евгений Р.
2008-07-24 02:17
2009.03.15
view и параметры





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский