Archív konference Delphi

Zpět na výběr roku archívu nebo přejít na fulltextové vyhledávání v konferenci.

Richedit,edit,opendialog

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 19.1.2002 19:03:46

18.1.2002 Tomis:
> Zdravi vsechny ucastniky konference,
> mam na vas dva dotazy. 1,Jak mam otevrit jeden soubor dvakrat, pokazde s
> jiniou priponou(napr. .dcc,.ddc), kdyz k nalezeni prvniho souboru pouzivam
> opendialog. Soubory jsou ve stejnem adresari a stejne se jmenuji.

Z OpenDialogu dostanes jmeno jednoho souboru vcetne cesty. Jmeno
druheho lze snadno vyrobit pomoci funkce ChangeFileExt()

s1 := OpenFialog.FileName;
s2 := ChangeFileExt(s1, '.DDC');

> 2, Jakym
> zpusobem jde udelat , kdyz mam richedit v nem mam nejaky text serazeny podle
> abecedy(na kazdem radku jedno slovo), a kdyz budu psat do editu tak at se
> automaticky kurzor presunuje na urcity radek(neco jako rejstrik v
> napovede).

Budes muset odchyt�vat kl�vesy (t�eba v RichEdit.OnKeyPress),
zapisovat si je do nejakeho pomocneho retezce a podle toho v
RichEditu vyhledavat odpovidajici radek. Pomoci funkci SelStart a
SelLength pak nastavit nalezeny text treba jako oznaceny blok.

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz


Nastaveni kompilatoru

[*] Milan ��ek - 19.1.2002 20:05:05

ahoj,
pouzivam MemProof a nebavi me stale prepinat nastaveni v Project Options
(Linker a Compiler). Chci se tedy zeptat, jak to udelat bez "rucniho"
prepinani.

Use Debug DCUs - $D?
Stack Frames - ze by $W?
Include TD32 debug Info - ??

Musi se tyto prepinace nachazet v kazde unite nebo staci pouze v unite
hlavniho formulare? Nebo primo v .dpr?
Chci mit jedno nastaveni pro debug a druhe pro finalni preklad.

Diky

S pozdravem Milan Cizek, amatersky programator, D6 Enterprise
Win2k (SP2) a Win98 SE, cizek.milan(zv)seznam(tec)cz, ICQ: 59826637


deklarace funkci v programu a DLL

[*] Milan ��ek - 19.1.2002 20:05:06

Ahoj,
patrne trosku zacatecnicky dotaz:

1) pokud volam funkci z DLL:

type TRSPM_Initialization = procedure(AppHandle: HWND); stdcall;
var RSPM_Initialization: TRSPM_Initialization;

begin
DLLHandle:=LoadLibrary(PChar(RSPM_Directory+'\'+FileName));
if DLLHandle<>0 then
begin
(zv)RSPM_Initialization:=GetProcAddress(DLLHandle,'RSPM_Initialization');
if Assigned(RSPM_Initialization) then
RSPM_Initialization(Application.Handle);
end;
end;

Muzu si ji dovolit nadeklarovat primo (bez pouziti type)?
var RSPM_Initialization: procedure(AppHandle: HWND); stdcall;

2) funkce v DLL vraci jako result vlastni typ:

type
TRSPM_Info = record {...} end;

function RSPM_GetInfo: TRSPM_Info; stdcall;
begin
with Result do
begin
{...}
end;
end;

Musim tento typ v programu deklarovat rovnez jako typ nebo muzu vysledek
funkce pridelit rovnou do promene ve var (pochopitelne stejne deklarovane)?

Mam takovy dojem, ze to take funguje, jelikoz jsem ale v archivu videl vzdy
pouziti s type, chci se zeptat, jestli v tom neni nejaky hacek. Jde mi o
deklaraci jak v DLL tak v programu samotnem. Diky

S pozdravem Milan Cizek, amatersky programator, D6 Enterprise
Win2k (SP2) a Win98 SE, cizek.milan(zv)seznam(tec)cz, ICQ: 59826637


Delphi6 a problem s breakpointy

[*] Milan ��ek - 19.1.2002 23:57:38

ahoj,
vyskytl se mi vetsi problem s breakpointy. At umistim kamkoli, vzdy je
ignorovan. Nepridaval jsem zadne cizi komponenty ani jsem nedelal vyrazne
zmeny, pouze ladil jednu DLL. Z niceho nic to prestalo chodit, coz je
neprijemne. Patral jsem v archivu kde to nekdo vyresil kompletni reinstalaci
Delphi. Jelikoz jsem predevcirem delal uplne novou instalaci (na ciste
reinstalovane PC), doufam, ze existuje nejake lepsi reseni.

Diky za kazdy napad. :-(

S pozdravem Milan Cizek, amatersky programator, D6 Enterprise
Win2k (SP2) a Win98 SE, cizek.milan(zv)seznam(tec)cz, ICQ: 59826637


Richedit,edit,opendialog

[*] Zden�k �t�p�nek�����^��ޏ����� - 20.1.2002 00:16:43

Zdravim

Prectes si OpenDialog1.FileName a ulozis do promene string. Tam mas jmeno
prvniho souboru i s cestou. Potom na ten string aplikuj
ChangeFileExt(tvujstring,'.ddc'). Tuhle unitu mas v mailu. Ted mas v
tvujstring jmeno souboru s novou priponou. S tim uz si udelej co chces.

Zdenek
----- Original Message -----

1,Jak mam otevrit jeden soubor dvakrat, pokazde s
> jiniou priponou(napr. .dcc,.ddc), kdyz k nalezeni prvniho souboru pouzivam
> opendialog. Soubory jsou ve stejnem adresari a stejne se jmenuji.

Delphi6 a problem s breakpointy

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 20.1.2002 00:23:25

From: "Milan ��ek" <cizek.milan(zv)seznam(tec)cz>
> vyskytl se mi vetsi problem s breakpointy. At umistim kamkoli, vzdy je
> ignorovan. Nepridaval jsem zadne cizi komponenty ani jsem nedelal vyrazne
> zmeny, pouze ladil jednu DLL. Z niceho nic to prestalo chodit, coz je
> neprijemne. Patral jsem v archivu kde to nekdo vyresil kompletni reinstalaci

Ahoj,

nemas v Project Options nastavenou relativni cestu v Output Directory ? Pokud
vim tak jedine zname potize pri ladeni DLL v D6 jsou na Windows XP

Petr Vones


QReport na vice stranek

[*] Volny <valentapat(zv)volny(tec)cz> - 20.1.2002 00:43:01

Potrebuju nakopnout...
Dynymicky creatuju jednotlive QrLabely na report, ale kdyz jich je vice
tak je potrebuju dat na novou stranku a nemuzu prijit na to jak.

valik

OT: Kop�rov�n� Windows z HDD1 na HDD2 se v��m v�u

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 20.1.2002 03:50:31

Puvodni zprava, kterou napsal Ing. Petr �vejda dne 18 Jan 2002:

> Dostal jsem se do stavu, kdy pot�ebuji star� disk 20 GB zam�nit za nov�
> disk 40 GB. Nen� pro m� �nosn� v�echno znovu instalovat (je to pr�ce na

Norton Ghost od Symantecu tohle umi v pohode a spoustu dalsich veci...

PS: A priste bez diakritiky... jak subjekt, tak text.

S pozdravem
Petr Zahradnik, pocitacovy expert

============================================================
Petr Zahradnik, Computer Laboratory
Obvodova 740/14, P.O. Box 15, 400 07 Usti nad Labem
Telefony: 047-5500610, 047-5501627, 0602-409601
Fax: 047-5511338
WWW: http://www.clexpert(tec)cz, http://www.zahradnik(tec)cz
E-Mail: clexpert(zv)clexpert(tec)cz, petr(zv)zahradnik(tec)cz
ICQ: 21215917
============================================================

odeslani souboru

[*] Gebauer Lukas <gebylist(zv)mlp(tec)cz> - 20.1.2002 09:09:24

> Lze programove odeslat scriptu na web soubor tak, aby to melo stejny efekt,
> jako kdyz uzivatel vybere soubor k uploadovani ve formulari HTML a odesle
> ho?

Pouzivej Synapsi... tam mas napriklad v unite httpsend.pas uz hotovou
funkci:

function HttpPostFile(const URL, FieldName, FileName: string;
const Data: TStream; const ResultData: TStringList): Boolean;

URL - to je snad jasne...
FieldName - nazev policka v simulovanem formulari (to co bys mel v
tom HTML kodu jako 'name' toho INPUTu, ze ktereho odesilas soubor...)
Filename - jak se ma odesilany soubor jmenovat
Data: Stream s vlastimi daty. (pro soubor na disku pouzij
TFileStream, atd...
ResultData: obsahuje to co WWW server odpovedel...

A cela funkce vraci true, jestlize se operace povdla,jinak vraci
false...

Toz, neni to snadne? :-)
-- Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Synapse Delphi and Kylix TCP/IP Lib.

Chovani D6 po kolizi

[*] Pavel ZIDEK <delphi(zv)kopr(tec)cz> - 20.1.2002 09:27:16

Zdravim,
po kolizi D6 s databazi FF2 doslo (chyba na me strane) nejak k naruseni
ovladacich klaves v D6 prof.
Klavesy Home a End chodi nahoru/dolu misto uplne vlevo/vpravo.
Dale v Menu je nekolik zmen:

-original
Menu Run/Run F9
Menu Run/EvaluateModify Ctrl+F7
...
-poruseni
Menu Run/Run Shift+F9
Menu Run/EvaluateModify
...

Kde nebo co mam nastavit v porusenych Delphi. Nebo mam D6 preinstalovat.
radeji bych vymenil nejaky konfiguracni soubor.
Diky Pavel
----- KOPR software -----
Pavel ZIDEK
http://www.kopr(tec)cz, kopr(zv)kopr(tec)cz, delphi(zv)kopr(tec)cz


Registry

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 20.1.2002 11:41:56

V programu pouzivam "Tip" pro sharewarovou 30 dennni verzi programu

Reg := TRegIniFile.Create('Software\Program');
Counter := Reg.ReadInteger('Program_1','Resources',0);
if Counter = 0 then begin
Reg.WriteInteger('Program_1','Resources',1);
Reg.WriteString ('Program_1','Date',DateToStr(Date));
end;
Dat := StrToDate(Reg.ReadString('Program_1','Date',''));
Reg.Free;
Counter := Round(Date - Dat);
if Counter > 30 then begin
shareware:='T�iceti denn� verze skon�ila. '+
#13#10 +'Odstra�te program z po��ta�e, ' +
#13#10 + 'nebo si objednejte plnou verzi. ';
Application.MessageBox(Pchar(Shareware), 'Informace ',
MB_Right + MB_ICONWarning);
Application.Terminate;
end;

Poradi nekdo jak programove odstranit zapis v registru

1) cely, to jest "Reg := TRegIniFile.Create('Software\Program');"
2) jen jeden program "Reg.WriteInteger('Program_1','Resources',1);"

Nasel jsem v helpu:
procedure EraseSection(const Section: string);
procedure DeleteKey(const Ident: string);

Ale protoze mam obavu, ze pri pokusech znectim PC tak se radsi ptam

Diky za radu

Viktor Marek
viktor(zv)mbox.vol(tec)cz


---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.1.2002


aplikace pro reklamni CD

[*] Vladim�r Zavadil <ZavadilV(zv)seznam(tec)cz> - 20.1.2002 15:17:00

Zdravim,
dostal jsem za ukol napsat aplikaci, ktera by ridila
reklamni CD-cko. Myslenka je takova,ze firma vyrabejici nekolik
zarizeni si chce udelat CD na nemz bude peknou grafickou formou
dana moznost si otevrit PDF dokumenty s jejich popisem a dalsima
informacema a ze to bude nezavisle na rozliseni monitoru a na soft.
konfiguraci compu.

V teto souvislosti se chci zeptat:
1) zda nekdo nedelal neco podobneho a na jeho zkusenosti a jakym
smerem se vydat.
2) jak zjistit, ze je nainstalovany prohlizec PDFek
3) existuje nekde na inetu nejaka komplexni database grafickych
prvku,
fotek,podkladu ... (hlavne z oblasti elektronickych soucastek)

predem dik za napady

Vlada
Zavadil

______________________________________________________________________
Co davaji v TV? http://tv.seznam(tec)cz


aplikace pro reklamni CD

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 20.1.2002 15:33:02

Puvodni zprava, kterou napsal Vladim�r Zavadil dne 20 Jan 2002:

> 1) zda nekdo nedelal neco podobneho a na jeho zkusenosti a jakym
> smerem se vydat.

Ja na to pouzivam DemoShield od InstallShieldu. Ten je na to vyborny. Pak
to muzes udelat treba PowerPointem nebo dalsimi programy pro to urcenymi.
Delat vlastni program asi neni to prave orechove, prilis se napracujes,
pokud to ma byt rozsahlejsi informacni CD...

> 2) jak zjistit, ze je nainstalovany prohlizec PDFek

Nemusis mit v pocitaci nainstalovany Acrobat Reader, ten lze spustit i
primo z CD, kdyz je tam vybaleny - viz Adobe Acrobat CD...

> 3) existuje nekde na inetu nejaka komplexni database grafickych
> prvku,
> fotek,podkladu ... (hlavne z oblasti elektronickych soucastek)

Doporucuji pouzit spis vlastni nebo zakoupene materialy, aby ses nedostal
do konfliktu s autorskym pravem...

S pozdravem
Petr Zahradnik, pocitacovy expert

============================================================
Petr Zahradnik, Computer Laboratory
Obvodova 740/14, P.O. Box 15, 400 07 Usti nad Labem
Telefony: 047-5500610, 047-5501627, 0602-409601
Fax: 047-5511338
WWW: http://www.clexpert(tec)cz, http://www.zahradnik(tec)cz
E-Mail: clexpert(zv)clexpert(tec)cz, petr(zv)zahradnik(tec)cz
ICQ: 21215917
============================================================

IB - Automaticka oprava/upgrade tabulek

[*] PeJaSoft <pejasoft(zv)volny(tec)cz> - 20.1.2002 16:15:52

Zdravim developery,
jak byste, prosim, resili nasledujici situaci?

Moje aplikace se sklada z jadra programu (EXE + BPL) a nekolika modulu
(BPL). Ty jsou dynamicky linkovane na zacatku programu. Kazdy modul ma
pristup do celeho programu a ke vsem tabulkam - pouzivam IB. Modulu muze byt
libovolny pocet, podle toho, ktere si zakaznik koupi.
Takze pokud si zakaznik prikoupi napriklad modul "Kontrakt", je potreba
vytvorit i jeho tabulky v pouzivane databazi. Jenze muze take vyzadovat
pridani pole do jiz existujici tabulky napr. u modulu "Adresar" nebo jen
zmenu struktury nekterych tabulek z duvodu nove verze programu (nebo jen
modulu) bez ztraty existujicich dat.
Uf, doufam, ze jsem to dostatecne popsal. :-)

Zatim me napadaji 2 varianty:
1) do hlavniho programu zabudovat objekt, ktery bude vse kontrolovat (napr.
po prihlaseni do profilu) a pripadne i opravovat (na urovni poli). Kazdy
modul by se u nej musel zaregistrovat a predat mu informace o svych
tabulkach. (Tohle ale neresi zmenu napr. v ulozene procedure)
2) vytvorit jen objekt pro tvorbu nove databaze a vse resit zpusobem:
vytvorit novou DB, zkopirovat data ze stavajici do nove vytvorene, smazat
starou DB, novou prejmenovat na jmeno stare. Tady by kazdy modul predal
svoje textove retezce ('CREATE TABLE ...', 'CREATE DOMAIN ...', 'CREATE
PROC...', atd.) hlavnimu programu (resp. objektu, ktery vse vytvori).

Existuje jeste jina varianta? Jak tuhle situaci resite vy?

Mockrat dekuju za kazdou pripominku.

S pozdravem

Petr Jarkovsky
pejasoft(zv)post(tec)cz

Delphi6 a problem s breakpointy

[*] bleak <bleak(zv)atlas(tec)cz> - 20.1.2002 16:27:17

to se mi stalo taky, pomohlo vymazat v�echny soubory *.dcu prislusne k
aplikaci...
bleak

----- Original Message -----
> > vyskytl se mi vetsi problem s breakpointy. At umistim kamkoli, vzdy je
> > ignorovan.

Nastaveni kompilatoru

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 20.1.2002 18:02:14

From: "Milan ��ek" <cizek.milan(zv)seznam(tec)cz>
> pouzivam MemProof a nebavi me stale prepinat nastaveni v Project Options
> (Linker a Compiler). Chci se tedy zeptat, jak to udelat bez "rucniho"
> prepinani.

Ahoj,

primo v IDE to nejde, ale mas nejmene dve moznosti:

1. Napsat si expert do IDE, kterym si budes prepinat jakesi profily nastaveni
kompilatoru pro projekt nebo skupinu projektu

2. Prekladat finalni build mimo IDE. Delphi podporuje makefily (ovsem jak to
funguje nevim, protoze jsou mi tyhle veci dost odporne) nebo muzes pouzit neco
lepe ovladatelneho, treba: http://www.atozedsoftware.com/finalbuilder.html

Petr Vones


stav threadu v DLL

[*] Milan ��ek - 20.1.2002 20:09:47

ahoj,
mam DLL, ve ktere se funkci vytvari thread. Druhou exportovanou funkci
potrebuji otestovat, v jakem stavu se tento thread prave nachazi.

type
TState = (Started,Terminated,Suspended); // muzou byt nejake dalsi stavy?

function GetState: TState; stdcall;
begin
if not Assigned(DLLThread) then
begin
Result:=Terminated;
Exit;
end;
if DLLThread.Suspended then Result:=Suspended else Result:=Started;
end;

Zatim jsem to napsal takto, problem ale je, ze jakmile jednou thread
vytvorim a pak ho nasledne zrusim, je stale Assigned. Jak to mam tedy
testovat, aby to fungovalo?

Diky

S pozdravem Milan Cizek, amatersky programator, D6 Enterprise
Win2k (SP2) a Win98 SE, cizek.milan(zv)seznam(tec)cz, ICQ: 59826637


Nastaveni kompilatoru

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 20.1.2002 20:26:36

> ahoj,
> pouzivam MemProof a nebavi me stale prepinat nastaveni v Project Options
> (Linker a Compiler). Chci se tedy zeptat, jak to udelat bez "rucniho"
> prepinani.

S nastavenim kompilatoru neni problem. Staci do vsech zdrojaku na zacatek
uvest:
{$I DEFINE.INC}
, kde DEFINE.INC je jmeno souboru, ktery obsahuje vsechny volby. Pak staci
zmenit tento soubor a vsechny unity se kompiluji s jinym nastavenim
prekladace.

Nastaveni linkeru podobnykm zpusobem ovlivnit bohuzel neumim.> Use Debug DCUs - $D?
> Stack Frames - ze by $W?
> Include TD32 debug Info - ??
>
> Musi se tyto prepinace nachazet v kazde unite nebo staci pouze v unite
> hlavniho formulare? Nebo primo v .dpr?

nektere volby jsou globalni nektere lokalni (vztahujici se jen k danemu
zdrojaku).
Nejlepsi je v kazde unite mit vlozeny soubor s definici

> Chci mit jedno nastaveni pro debug a druhe pro finalni preklad.

Ja to resim tak, ze v DEFINE.INC mam 3 sady options pro kompilator
(DEBUG, finalni verzi a pro MemProofa) a pokud potrebuju MemProofa, tak
k DEBUG jeste prihodim nastaveni z IDE rucne.

D. Toman


Zjisteni velikosti souboru

[*] Martin Falta <martin.falta(zv)atlas(tec)cz> - 20.1.2002 20:27:45

Ahoj,
v jedne sve aplikaci potrebuju stahnout nekolik souboru z internetu a
rad bych uzivatele informoval o prubehu stahovani. Nevite nekdo, jak
by se dala zjistit velikost stahovaneho souboru?

--
Martin

D6Pro+SP1, W2k SP2


Nastaveni kompilatoru

[*] Milan ��ek - 20.1.2002 20:35:07

ahoj,
mohl bys mi prosim poslat ten tvuj vzorovy .inc?

S pozdravem Milan Cizek, amatersky programator, D6 Enterprise
Win2k (SP2) a Win98 SE, cizek.milan(zv)seznam(tec)cz, ICQ: 59826637

> > ahoj,
> > pouzivam MemProof a nebavi me stale prepinat nastaveni v Project Options
> > (Linker a Compiler). Chci se tedy zeptat, jak to udelat bez "rucniho"
> > prepinani.
>
> S nastavenim kompilatoru neni problem. Staci do vsech zdrojaku na zacatek
> uvest:
> {$I DEFINE.INC}
> , kde DEFINE.INC je jmeno souboru, ktery obsahuje vsechny volby. Pak staci
> zmenit tento soubor a vsechny unity se kompiluji s jinym nastavenim
> prekladace.
>
> Nastaveni linkeru podobnykm zpusobem ovlivnit bohuzel neumim.
>
> > Use Debug DCUs - $D?
> > Stack Frames - ze by $W?
> > Include TD32 debug Info - ??
> >
> > Musi se tyto prepinace nachazet v kazde unite nebo staci pouze v unite
> > hlavniho formulare? Nebo primo v .dpr?
>
> nektere volby jsou globalni nektere lokalni (vztahujici se jen k danemu
> zdrojaku).
> Nejlepsi je v kazde unite mit vlozeny soubor s definici
>
> > Chci mit jedno nastaveni pro debug a druhe pro finalni preklad.
>
> Ja to resim tak, ze v DEFINE.INC mam 3 sady options pro kompilator
> (DEBUG, finalni verzi a pro MemProofa) a pokud potrebuju MemProofa, tak
> k DEBUG jeste prihodim nastaveni z IDE rucne.

pouziti cards.dll

[*] Zden�k �t�p�nek�����^��ޏ����� - 20.1.2002 20:39:50

Zdravim

5.12.2001 tady probehla unita na kresleni karet z knihovny cards.dll.
Zkousel jsem to, ale stale to hlasi "Unable to create process. Zarizeni
pripojene k systemu nefunguje." Nevite nekdo o nejakem prikladu, kde by bylo
videt jeji pouziti?

Diky
Zdenek


OT: test me aplikace

[*] Zden�k �t�p�nek�����^��ޏ����� - 20.1.2002 21:12:50

Zdravim

Mohl bych nekoho (cim vice tim lepe) pozadat, jestli by byl ochotny mi
otestovat aplikaci? Jde mi konkretne o postup pri instalaci. Skoro kazdy
uzivatel, co napsal mel problemy s instalaci. Ted jsem to predelal a
potrebuju to vyzkouset. Jednak na cistem pocitaci a jednak u uzivatele,
ktery ten program nezna lepe nez sebe (muj pripad).

Stahujte z http://lunasoft.hyperlink(tec)cz/programy/texteditor23b.rar.
Upozornuju, ze ma 702kB, je to kompletni aplikace.

Zjistene chyby a jakekoliv dalsi pripominky posilejte na muj mail
zstepanek(zv)atlas(tec)cz.

Diky
Zdenek

Nastaveni kompilatoru

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 20.1.2002 21:14:12



> ahoj,
> mohl bys mi prosim poslat ten tvuj vzorovy .inc?
>

neni na nem nic svetoborneho - staci zalozit novy soubor a stisknout CtrlO+O
a
ve vlozenych options provest pozadovane zmeny

D. Toman

--
{$MINSTACKSIZE $00010000}
{$MAXSTACKSIZE $00010000}
{$IMAGEBASE $00400000}
{$APPTYPE GUI}

{ $DEFINE FOR_SALE}

{$IFDEF FOR_SALE}
{$A+,B-,C-,D-,E-,F-,G+,H+,I-,J-,K-,L-,M-,N+,O+,P+,Q-,R-,S+,T-,U-,V+,W-,X+,Y-
,Z1}

{$ELSE}
{$A+,B-,C+,D+,E-,F-,G+,H+,I-,J-,K-,L+,M-,N+,O-,P+,Q-,R-,S-,T-,U-,V+,W+,X+,Y+
,Z1}

// PRO MEMORY PROOFA je treba:
// W+ = StackFrames
// O- = No optimization
//! + zapnout "Include TD32 debug info" rucne
// "Use debug DCUs"
{$ENDIF}

Zjisteni velikosti souboru

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 20.1.2002 21:16:22

> v jedne sve aplikaci potrebuju stahnout nekolik souboru z internetu a
> rad bych uzivatele informoval o prubehu stahovani. Nevite nekdo, jak
> by se dala zjistit velikost stahovaneho souboru?

to zalezit na tom odkud (jakym protokolem) downloadujes, pripadne
jake pouzivas prostredky pro download.

Napriklad HTTP server by mel (ale dost casto to nedela) generovat
Content-Length hlavicku. FTP serveru se muzes zeptat na vypis adresare
se souborem a rozparsovanim radku zjistit delku souboru

D. Toman


Re[2]: Zjisteni velikosti souboru

[*] Martin Falta <martin.falta(zv)atlas(tec)cz> - 20.1.2002 21:35:19

Sunday, January 20, 2002, 9:16:22 PM, you wrote:

>> v jedne sve aplikaci potrebuju stahnout nekolik souboru z internetu a
>> rad bych uzivatele informoval o prubehu stahovani. Nevite nekdo, jak
>> by se dala zjistit velikost stahovaneho souboru?

DT> to zalezit na tom odkud (jakym protokolem) downloadujes, pripadne
DT> jake pouzivas prostredky pro download.

DT> Napriklad HTTP server by mel (ale dost casto to nedela) generovat
DT> Content-Length hlavicku. FTP serveru se muzes zeptat na vypis adresare
DT> se souborem a rozparsovanim radku zjistit delku souboru

DT> D. Toman

stahuju to funcki InternetReadFile z WinInet, protokol HTTP

--
Martin


Registry2

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 20.1.2002 21:50:49

Asi jsem se neobratne zeptal takze to zkusim jeste jednou

V registrech mam

.....\software\prg\prg_1 (a v nem hodnoty -V�choz�, Resources, Date)
.....\software\prg\prg_2 (a v nem hodnoty -V�choz�, Resources, Date)
.....\software\prg\prg_3 (a v nem hodnoty -V�choz�, Resources, Date)

Umim odstranit pomoci "Reg.deletekey" hodnoty "date a Resources" ale nedari
se mi odstranit hodnotu "V�choz�"
a ani "prg_1" pripadne "prg"

Bezi mi to na WIN 2000

Diky za radu

Viktor Marek
viktor(zv)mbox.vol(tec)cz



---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.1.2002


Re[2]: Zjisteni velikosti souboru

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 20.1.2002 21:52:14

From: "Martin Falta" <martin.falta(zv)atlas(tec)cz>
> stahuju to funcki InternetReadFile z WinInet, protokol HTTP

Ahoj,

pomoci HttpQueryInfo a atributu HTTP_QUERY_CONTENT_LENGTH

Petr Vones


Prehratie zadaneho useku z WAV suboru

[*] Jaroslav Popluhar <delphi1(zv)acc.sk> - 20.1.2002 22:07:18

Potreboval by som prehravat kratke useky s WAV suboru
presne od zadaneho miesta a zadanu dlzku.

Najlepsie by vyhovovalo zadavat zaciatok a dlzku vo vzorkach.

Potrebujem to na slabikovanie zaznamenaneho slovneho prejavu...

Vedel by ma niekto nasmerovat.

Dik za kazdu pomoc.

Jaro



---
Odch�dzaj�ca spr�va neobsahuje v�rusy.
Skontrolovan� antiv�rusov�m syst�mom AVG (http://www.grisoft(tec)cz).
Verzia: 6.0.313 / V�rusov� datab�za: 174 - d�tum vydania: 2. 1. 2002


aplikace pro reklamni CD

[*] <konference(zv)fdsystem(tec)cz> - 20.1.2002 22:52:33

Zdravim

Jak psal uz Petr Zahradnik, je fajn, ze se daji otevirat ta PDFka
pomoci prohlizece primo z CD.
Kdyby zadavatel ustoupil z te absolutni nezavislosti na SW konfiguraci
a pripustil podminku, ze musi byt dostupny MS - Internet Explorer,
tak by se to dalo udelat jednoduse a graficka uroven by byla limitovana
pouze urovni grafika (webdesignera) a tvurce tech PDF dokumentu.
Kdyz uz jsme v konferenci Delphi, tak bych to asi pojal tak,
ze zakladem by byla aplikace napsana v Delphi,
ktera by tvorila ramec toho prohlizece.
Proste by se otevrelo hlavni okno aplikace,
otestovalo by to pritomnost MS-IE
a pripadne treba umoznilo zvolit jazykovou mutaci prezentace.
No a pak by se v tomto okne zobrazila uvodni stranka v HTML
pomoci komponenty TBrowser, a uzivatel se muze prochazet jak mu libo.
Melo by to tu vyhodu, ze by se do takto pojate aplikace dalo integrovat
i prohlizeni tech PDF dokumentu, vse v jednom okne, jednoducha navigace.
A dalsi vyhodou by bylo, ze funkcionalita aplikace je vicemene jednou dana
a veskere zmeny designu a struktury se deji v aplikacich pro tvorbu PDF
nebo HTML, a pri zmene obsahu neni potreba upravovat kod a kompilovat.
Nejvetsi prace si z *.INI nacist cestu k uvodni strance :-)
Ale jak jsem rikal na zacatku, je to ustupek od te SW cistoty daneho PC.
Otazkou je, kdo je cilova skupina uzivatelu teto aplikace.

S pozdravem
L.Svoboda

aplikace pro reklamni CD

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 20.1.2002 23:43:16

From: <konference(zv)fdsystem(tec)cz>
> Kdyby zadavatel ustoupil z te absolutni nezavislosti na SW konfiguraci
> a pripustil podminku, ze musi byt dostupny MS - Internet Explorer,

Ahoj,

tohle snad uz neni takovy problem, TWebBrowser funguje od IE4, pokud se clovek
obejde bez pokrocilejsich funkci, tak lze pouzit i WebBrowser_V1 ktery pracuje
od IE3 (soucast Win95 OSR2)

Petr Vones

aplikace pro reklamni CD

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 20.1.2002 23:49:19

Puvodni zprava, kterou napsal Petr Vones dne 20 Jan 2002:

> tohle snad uz neni takovy problem, TWebBrowser funguje od IE4, pokud se
> clovek obejde bez pokrocilejsich funkci, tak lze pouzit i WebBrowser_V1
> ktery pracuje od IE3 (soucast Win95 OSR2)

No ono je taky reseni to uz cele udelat v PDF a je to bez problemu...

S pozdravem
Petr Zahradnik, pocitacovy expert

============================================================
Petr Zahradnik, Computer Laboratory
Obvodova 740/14, P.O. Box 15, 400 07 Usti nad Labem
Telefony: 047-5500610, 047-5501627, 0602-409601
Fax: 047-5511338
WWW: http://www.clexpert(tec)cz, http://www.zahradnik(tec)cz
E-Mail: clexpert(zv)clexpert(tec)cz, petr(zv)zahradnik(tec)cz
ICQ: 21215917
============================================================

aplikace pro reklamni CD

[*] <konference(zv)fdsystem(tec)cz> - 21.1.2002 03:28:16

To je samozrejme taky reseni, ale me slo o to,
ze kdyz se bude napriklad pridavat nova polozka do prezentace,
napriklad novy vyrobek nebo nova reference na zakaznika,
tak se vubec nebude muset upravovat cokoliv ze stavajiciho,
tedy ani aplikace, ani zadny dokument PDF,
jenom se prida ten novy dokument a nekde ve strance HTML
se na nej uvede odkaz, pripadne se upravi *.INI, ci nejaky podobny
soubor informaci pro aplikaci o tom, co kde je...
L.Svoboda

> No ono je taky reseni to uz cele udelat v PDF a je to bez problemu...
>
> S pozdravem
> Petr Zahradnik, pocitacovy expert

tisk bitmapy

[*] Kan�r - 21.1.2002 04:14:56

jak udelat nasledujici?
mam 5 menicich se obrazku. potrebuju virtualne udelat novou bitmapu, kam
tech 5 menicich se "narovnam" podle urciteho pravidla a pak vytisknu. Jenze
vubec nevim, jak velkou bitmapu (rozmery) mam udelat, aby potom vyjezd z
tiskarny byl formatu A4.
Diky za radu
VJ

QReport na vice stranek

[*] Lasevic, Martin <MLasevic(zv)ratiopharm(tec)cz> - 21.1.2002 06:16:42

Asi bych pouzil stabilne TQRCompositeReport a dynamicky do nej pridaval
jednotlive Page jako reporty.

Martin

> -----Original Message-----
> From: Volny [mailto:valentapat(zv)volny(tec)cz]
> Subject: Re: QReport na vice stranek
>
>
> Dynymicky creatuju jednotlive QrLabely na report, ale kdyz
> jich je vice
> tak je potrebuju dat na novou stranku a nemuzu prijit na to jak.
>
> valik
>
>

Kop�rov�n� Windows z HDD1 na HDD2 se v��m

[*] Robert Plz�k <rpvp(zv)vagnerplast(tec)cz> - 21.1.2002 07:18:50

NORTON GHOST

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Ing. Petr �vejda
Sent: Friday, January 18, 2002 8:28 PM
To: Konference Delphi
Subject: OT: Kop�rov�n� Windows z HDD1 na HDD2 se v��m v�udy


Windows 2000 Prof

Dostal jsem se do stavu, kdy pot�ebuji star� disk 20 GB zam�nit za nov� disk
40 GB. Nen� pro m� �nosn� v�echno znovu instalovat (je to pr�ce na cel�
den - v lep��m p��pad�). Existuje n�jak� rozumn� postup, n�stroj, utilita,
atd.?

D�ky

Petr

---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.1.2002


---
P��choz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.1.2002

---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.1.2002


IB - Automaticka oprava/upgrade tabulek

[*] Kalhous Zdenek <zdenek.kalhous(zv)comarr(tec)cz> - 21.1.2002 07:44:49

> Moje aplikace se sklada z jadra programu (EXE + BPL) a nekolika modulu
> (BPL). Ty jsou dynamicky linkovane na zacatku programu. Kazdy modul ma
> pristup do celeho programu a ke vsem tabulkam - pouzivam IB. Modulu
> muze byt libovolny pocet, podle toho, ktere si zakaznik koupi. Takze
> pokud si zakaznik prikoupi napriklad modul "Kontrakt", je potreba
> vytvorit i jeho tabulky v pouzivane databazi. Jenze muze take
> vyzadovat pridani pole do jiz existujici tabulky napr. u modulu
> "Adresar" nebo jen zmenu struktury nekterych tabulek z duvodu nove
> verze programu (nebo jen modulu) bez ztraty existujicich dat.
Asi dost zalezi na tom, jak je ta databaze komplikovana, jak
komplexni jsou vnitrni vazby a zavislosti, mnoho-li je tam
ulozenych procedur, triggeru a pohledu. Pokud se nejedna o
nejakou trivialni databazicku tak se mi skoro zda ze nejpohodlnejsi
a na udrzbu nejschudnejsi je mit vsude "celou" databazi bez
ohledu na pocet instalovanych modulu (on jich asi zase tak
libovolny pocet nebude), nevyuzivane struktury zas tak moc
nezerou. Pri upgrade programu pak doma odladit skript na tuto
univerzalni databazi a ten spustit u vsech uzivatelu. Vytvorit tento
skript nemusi byt zejmena pri vetsim poctu zavislosti zadna
zvlastni legrace a bude-li mit kazdy uzivatel jinou strukturu
databaze, moc bych neveril tomu, ze se programu podari nejak
automaticky provest potrebne zmeny prave s respektovanim vsech
zavislosti. Ono totiz i proste zvetseni poctu znaku v nejakem
"nevyznamnem" sloupci se pri dostatecne komplikovanych
zavislostech muze promenit v dzihad.
> 2) vytvorit jen objekt pro tvorbu nove databaze a vse resit
> zpusobem: vytvorit novou DB, zkopirovat data ze stavajici do nove
> vytvorene, smazat starou DB, novou prejmenovat na jmeno stare.
Tady bych se bal dvou veci. Jednak pro kopirovani dat mezi
databazemi s ruznou strukturou bude asi platit to co pro vytvareni
upgrade skriptu, druhak SQL databaze nebyvaji nejsviznejsi pro
davkove zpracovani (ani to nemaji v popisu prace) a insert nekolika
desitek tisic zaznamu muze trvat hodiny a hodiny ... Ma-li to bezet
trochu svizne, musel by program poznat kter� triggery pro ktere
inserty vypnout musi, ktere muze a ktere musi nechat aktivni.
Z.Kalhous


Registry2

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 21.1.2002 07:44:35

Vychozi hodnota se odstranuje tak, ze nezadas jmeno klice, cili
prazdne apostrofy.

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

20.1.2002 Viktor Marek:
> V registrech mam

> .....\software\prg\prg_1 (a v nem hodnoty -V�choz�, Resources, Date)
> .....\software\prg\prg_2 (a v nem hodnoty -V�choz�, Resources, Date)
> .....\software\prg\prg_3 (a v nem hodnoty -V�choz�, Resources, Date)

> Umim odstranit pomoci "Reg.deletekey" hodnoty "date a Resources" ale nedari
> se mi odstranit hodnotu "V�choz�"
> a ani "prg_1" pripadne "prg"

Kop�rov�n� Windows z HDD1 na HDD2

[*] Mephisto <mephisto(zv)akvila(tec)cz> - 21.1.2002 08:23:27


NORTON GHOST


nebo DiskImage (PowerQuest)
---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.01.2002

IB - Automaticka oprava/upgrade tabulek

[*] PeJaSoft <pejasoft(zv)volny(tec)cz> - 21.1.2002 08:33:30

> Pokud se nejedna o nejakou trivialni databazicku tak se
> mi skoro zda ze nejpohodlnejsi a na udrzbu nejschudnejsi
> je mit vsude "celou" databazi bez ohledu na pocet
> instalovanych modulu (on jich asi zase tak libovolny pocet
> nebude), nevyuzivane struktury zas tak moc nezerou.

No, neni to zadna megabaze, ale problem je v tom, ze ty moduly budou
programovany postupne a zatim se nevi, co vsechno bude existovat.
Ted jsem nasel program, ktery meni strukturu DB podle jine. Zda se, ze
funguje a je free.

S pozdravem

Petr Jarkovsky
pejasoft(zv)post(tec)cz

IB - Automaticka oprava/upgrade tabulek

[*] Kalhous Zdenek <zdenek.kalhous(zv)comarr(tec)cz> - 21.1.2002 08:48:29

> No, neni to zadna megabaze, ale problem je v tom, ze ty moduly budou
> programovany postupne a zatim se nevi, co vsechno bude existovat.
To by snad nevadilo. Kdyz se narodi nove tabulky, udela se
upgrade struktury u vsech zakazniku bez ohledu na to, jestli ten
novy modul maji nebo ne. Stejne asi budete muset archivovat a
distribuovat skripty pro zmeny struktury databaze mezi jednotlivymi
verzemi, ale pokud tech instalaci budou radove alespon desitky
tezko se to bude servisovat kdyz kazdy uzivatel bude mit nejakou
jinou strukturu databaze kterou budou menit v ruznem poradi
instalovane moduly ruznych verzi.
> jsem nasel program, ktery meni strukturu DB podle jine. Zda se, ze
> funguje a je free.
Muzete mi na nej dat odkaz? Diky.
Kazdopadne asi bude dobre to po nem zkontrolovat. K podobnemu
ucelu jsem obcas pouzil porovnani databazi v IBAdminu, ten
celkem seriozne nabizi dve varianty vytvoreni diferencniho (nebo
chcete-li upgrade) skriptu s tim, ze se v te slozitejsi (paranoia)
variante POKUSI skript prerovnat tak, aby to s co nejvetsi
pravdepodobnosti proslo. Celkem se mu darilo, jen neumi (buhvi
proc) vygenerovat position aby v obou databazich bylo stejne poradi
sloupcu. Bohuzel ale celkem neseriozne na nekterych databazich
zhavaruje a netusim proc, proto ta prosbicka na zacatku.
Z.Kalhous


IB - Automaticka oprava/upgrade tabulek

[*] Roland Turcan <rolo(zv)sedas.sk> - 21.1.2002 08:51:21


----- Original Message -----
From: "PeJaSoft" <pejasoft(zv)volny(tec)cz>
Sent: Sunday, January 20, 2002 4:15 PM


> Zdravim developery,
> jak byste, prosim, resili nasledujici situaci?
>
> Moje aplikace se sklada z jadra programu (EXE + BPL) a nekolika modulu
> (BPL). Ty jsou dynamicky linkovane na zacatku programu. Kazdy modul ma
> pristup do celeho programu a ke vsem tabulkam - pouzivam IB. Modulu muze
byt
> libovolny pocet, podle toho, ktere si zakaznik koupi.
> Takze pokud si zakaznik prikoupi napriklad modul "Kontrakt", je potreba
> vytvorit i jeho tabulky v pouzivane databazi. Jenze muze take vyzadovat
> pridani pole do jiz existujici tabulky napr. u modulu "Adresar" nebo jen
> zmenu struktury nekterych tabulek z duvodu nove verze programu (nebo jen
> modulu) bez ztraty existujicich dat.
> Uf, doufam, ze jsem to dostatecne popsal. :-)
>
> Zatim me napadaji 2 varianty:
> 1) do hlavniho programu zabudovat objekt, ktery bude vse kontrolovat
(napr.
> po prihlaseni do profilu) a pripadne i opravovat (na urovni poli). Kazdy
> modul by se u nej musel zaregistrovat a predat mu informace o svych
> tabulkach. (Tohle ale neresi zmenu napr. v ulozene procedure)
> 2) vytvorit jen objekt pro tvorbu nove databaze a vse resit zpusobem:
> vytvorit novou DB, zkopirovat data ze stavajici do nove vytvorene, smazat
> starou DB, novou prejmenovat na jmeno stare. Tady by kazdy modul predal
> svoje textove retezce ('CREATE TABLE ...', 'CREATE DOMAIN ...', 'CREATE
> PROC...', atd.) hlavnimu programu (resp. objektu, ktery vse vytvori).
>
> Existuje jeste jina varianta? Jak tuhle situaci resite vy?
>
> Mockrat dekuju za kazdou pripominku.
>
> S pozdravem
>
> Petr Jarkovsky
> pejasoft(zv)post(tec)cz

Ahoj. Ja riesim nieco podobne, ale rozhodol som sa, ze najlepsie bude ked
zakaznik nema vsetky moduly kupene tak databaza IB obsahuje vsetky aj tie
ktore nepouziva. Odstrania sa mi problemy ktore treba riesit pri otazkach
(Co ma, co nema),... .

Roland.

Kop�rov�n� Windows z HDD1 na HDD2 se v��m

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 21.1.2002 08:53:56

> Dostal jsem se do stavu, kdy pot�ebuji star� disk 20 GB zam�nit za
nov� disk
> 40 GB. Nen� pro m� �nosn� v�echno znovu instalovat (je to pr�ce na
cel�
> den - v lep��m p��pad�). Existuje n�jak� rozumn� postup, n�stroj,
utilita,
> atd.?

no pokud se nepletu tak staci cilovy disk naformatovat na NTFS a stary
disk spolu
s novym vrazit do jineho PC s W2K a v nich pak stary na novy
prekopirovat.


D. Toman

WSAStartup

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 21.1.2002 08:59:15

Ahoj,

v archivu konference jsem nasel kod, jak zjistit lokalni IP adresu (je-
li jich vice, tak prvni z nich) takto:

function LokalniIP: string;
const
bufsize=255;
var
buf: pointer;
RemoteHost: PHostEnt;
begin
buf := NIL;
result := '127.0.0.1';
try
getmem(buf, bufsize);
winsock.gethostname(PChar(buf), bufsize);
if char(buf^) <> #0 then
begin
RemoteHost := Winsock.GetHostByName(buf);
if RemoteHost <> NIL then
result := pchar(RemoteHost^.h_addr);
end;
finally
if buf <> NIL then
freemem(buf,bufsize);
end;
end;

Nicmene v teto podobe to nefunguje - je potreba zavolat
WSAStartup a na konci mozna WSACleanup(?).
Jak nastavit parametry pro WSAStartup? Uvedena funkce je jedina,
ktera primo pracuje s globalni promennou Winsock.

Diky

David Lebeda


Zjisteni velikosti souboru

[*] Gebauer Lukas <gebylist(zv)mlp(tec)cz> - 21.1.2002 09:02:37

> Napriklad HTTP server by mel (ale dost casto to nedela) generovat
> Content-Length hlavicku.

Neni tomu zcela tak.. u HTTP jsou povoleny celkem tri metody
stahovani dat, a jen u jedne z nich je nutne mit Content-length
hlavicku... napriklad kdyz je pouzito 'chunked' kodovani, tak ani v
dobe generovani hlavicek nemuzes vedet, kolik celkem tech dat bude.

Takze na conent-length se spolehat principielne ani nelze, potoze je
hodne legalnich zpusobu, kdy tato hlavicka neexistuje. Respektive
tedy casto ani nelze vedet kolik tech dat pres HTTP spojeni ma celkem
pribehnout, takze nejaky progress-bar se dela opravdu spatne.

Zapomente na progressbar u HTTP, podivejte se jak zmatene informace
podavaji progressbary webovych pohlizecu.. taky to neni perfektni,..
ani nemuze byt perfektni, ono to totiz nejde!

-- Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Synapse Delphi and Kylix TCP/IP Lib.

Re[2]: Zjisteni velikosti souboru

[*] Gebauer Lukas <gebylist(zv)mlp(tec)cz> - 21.1.2002 09:12:09

> > stahuju to funcki InternetReadFile z WinInet, protokol HTTP
> pomoci HttpQueryInfo a atributu HTTP_QUERY_CONTENT_LENGTH

Skoda jen ze tohle nemuze fungovat ve vsech pripadech... ;-) (viz muj
predchozi mail na toto tema... web server ne ve vsech pripadech
predem vi kolik dat hodla poslat jako odpoved, tekze ani lint ve
vsech pripadech nemuze dopredu rict, kolik prijde dat a uzivatele o
tom predem informovat...

-- Lukas Gebauer.

E-mail: gebauerl(zv)mlp(tec)cz
http://www.ararat(tec)cz/synapse/ - Synapse Delphi and Kylix TCP/IP Lib.

IB - Automaticka oprava/upgrade tabulek

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 21.1.2002 09:21:21

21.1.2002 Kalhous Zdenek:
> Moje aplikace se sklada z jadra programu (EXE + BPL) a nekolika modulu
> (BPL). Ty jsou dynamicky linkovane na zacatku programu. Kazdy modul ma
> pristup do celeho programu a ke vsem tabulkam - pouzivam IB. Modulu
> muze byt libovolny pocet, podle toho, ktere si zakaznik koupi. Takze
> pokud si zakaznik prikoupi napriklad modul "Kontrakt", je potreba
> vytvorit i jeho tabulky v pouzivane databazi. Jenze muze take
> vyzadovat pridani pole do jiz existujici tabulky napr. u modulu
> "Adresar" nebo jen zmenu struktury nekterych tabulek z duvodu nove
> verze programu (nebo jen modulu) bez ztraty existujicich dat.

A je nejaky duvod, aby tam neexistovaly tabulky pro celou aplikaci, i
kdyz budou prazdne ?
Reseni, kdy s instalaci noveho modulu musim pridavat nejake pole do
existujici tabulky se mi nezda prave nejstastnejsi :-(
Asi bych to resil nejak takto:
mam stav databaze se skriptem, ktery mi vytvori batabazi.
Pokud dojde ke zmene v databazi, budu se delat vsechny zmeny (az
do dalsi velke povinne verze) do upgrade skriptu, ktery si vzdy
otestuje, zda je treba zmenu delat a kdyz ano tak ji udela a pokracuje
dal.
Takhle mas zaruceno, ze na odpovidajici verzi skript muzes spustit a
on ti udela, co potrebujes. Mas jede skript, ktery se da otestovat a
ne milion jinych pro kazdou kombinaci modulu u zakazniku.


--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

pouziti cards.dll

[*] Ondrej Kelle <O.Kelle(zv)digitalpublishing.de> - 21.1.2002 09:54:02

> 5.12.2001 tady probehla unita na kresleni karet z knihovny cards.dll.
> Zkousel jsem to, ale stale to hlasi "Unable to create
> process. Zarizeni pripojene k systemu nefunguje." Nevite nekdo
> o nejakem prikladu, kde by bylo videt jeji pouziti?

Ahoj, snad Ti toto na zaciatok pomoze:

procedure TForm1.FormCreate(Sender: TObject);
begin
if not cdtInit(FCardWidth, FCardHeight) then
raise Exception.Create('cdtInit');

with ComboBox1.Items do
begin
Clear;
Add('suClub');
Add('suDiamond');
Add('suHeart');
Add('suSpade');
end;
ComboBox1.OnChange := CardChanged;

with ComboBox2.Items do
begin
Clear;
Add('raAce');
Add('raTwo');
Add('raThree');
Add('raFour');
Add('raFive');
Add('raSix');
Add('raSeven');
Add('raEight');
Add('raNine');
Add('raTen');
Add('raJack');
Add('raQueen');
Add('raKing');
Add('raMax');
Add('raNil');
end;
ComboBox2.OnChange := CardChanged;
end;

procedure TForm1.CardChanged(Sender: TObject);
begin
if not cdtDraw(Canvas.Handle, 8, 40, ComboBox1.ItemIndex or
ComboBox2.ItemIndex * 4, mdFaceUp, 0) then
raise Exception.Create('cdtDraw');
end;

HTH
TOndrej


IBX a TDBGrid

[*] Milan Tome� <milan.tomes(zv)haida(tec)cz> - 21.1.2002 10:25:21

Zdravim vsechny,

rad bych znal vas nazor na propojeni TIBQuery a TDBGridu pouze pro
zobrazovani urcite mnoziny dat. Editace se bude dit na ne DB-Aware
komponentach.

Jeste jedna vec me otravuje:
Kdyz jsem zkousel postup zahajit transakci - otevrit Query - zavrit
transakci v IBO tak se v gridu zobrazil seznam, ale pod IBX musi zustat
transakce otevrena a to se mi moc nelibi. Nevite co s tim ?

S pozdravem

Milan Tome� [mailto:milan.tomes(zv)haida(tec)cz] (ORJ 6008)
GORDIC distributor sever, HAiDA s.r.o.
tel : +420 424 / 222282, 222284
fax : +420 424 / 222962


IBX a TDBGrid

[*] Jon� Mari�n <Jonas(zv)komercpoj(tec)cz> - 21.1.2002 10:45:40

> Milan Tome� napsal
>
> Jeste jedna vec me otravuje:
> Kdyz jsem zkousel postup zahajit transakci - otevrit Query - zavrit
> transakci v IBO tak se v gridu zobrazil seznam, ale pod IBX
> musi zustat
> transakce otevrena a to se mi moc nelibi. Nevite co s tim ?

Pokud tech dat neni moc (do cca dveste radku) tak otevrit Query,
presypat obsah toho query do memtable a pak to query zavrit.

Marian Jonas


IBX a TDBGrid

[*] Milan Tome� <milan.tomes(zv)haida(tec)cz> - 21.1.2002 10:47:40

To bych se z toho zblaznil :(
Tech query tam bude tolik, ze to asi takhle nepujde...

S pozdravem

Milan Tome� [mailto:milan.tomes(zv)haida(tec)cz] (ORJ 6008)
GORDIC distributor sever, HAiDA s.r.o.
tel : +420 424 / 222282, 222284
fax : +420 424 / 222962


> > Milan Tome� napsal
> >
> > Jeste jedna vec me otravuje:
> > Kdyz jsem zkousel postup zahajit transakci - otevrit Query - zavrit
> > transakci v IBO tak se v gridu zobrazil seznam, ale pod IBX
> > musi zustat
> > transakce otevrena a to se mi moc nelibi. Nevite co s tim ?
>
> Pokud tech dat neni moc (do cca dveste radku) tak otevrit Query,
> presypat obsah toho query do memtable a pak to query zavrit.
>
> Marian Jonas


OT - Zmena dane z prijmu v priebeho fiskalneho rok

[*] Roland Turcan <rolo(zv)sedas.sk> - 21.1.2002 10:48:38

Ahojte !

Moj fiskalny rok je napr. 6/2002-5/2003 a ministerstvo financii chce
zmenit sadzbu dane z prijmu. Ked by sme mali vsetci rok od januara do
decembra tak to ministerstvo urobi na prechode rokov. Ale ja mam fiskalny
rok iny tak ako sa to udeje ?

1. Alikvotnu cast roka musim spocitat v starej sadzbe a novu cast v novej
sadzbe. Mimoriadna uzavierka, vytlacienie hospodarskeho vysledku,..
2. Nechaju ma dozit moj rok so starou sadzbou a moj novy rok uz bude danit
podla noveho
3. Ministerstvo sa na zmenu sadzby radsej vykasle :-)))) - to je hlupost,
vsak?

Dakujem vam za vsetky pripomienky.

S pozdravom Roland Turcan

IBX a TDBGrid

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 21.1.2002 10:49:32

> rad bych znal vas nazor na propojeni TIBQuery a TDBGridu pouze pro
> zobrazovani urcite mnoziny dat. Editace se bude dit na ne DB-Aware
> komponentach.
>
> Jeste jedna vec me otravuje:
> Kdyz jsem zkousel postup zahajit transakci - otevrit Query - zavrit
> transakci v IBO tak se v gridu zobrazil seznam, ale pod IBX musi
> zustat transakce otevrena a to se mi moc nelibi. Nevite co s tim ?

Prijde na to. DBGrid pro svou cinnost potrebuje otevrene IBQuery a
IBQuery je otevrene jen tehdy, je-li aktivni transakce. A z toho se
musi odvijet Tvoje rozhodnuti.
Pokud je mnozstvi dat v gridu male (rekneme do 1000, podle
okolnosti), uvazoval bych o tom, data premistit do pametove
tabulky. Je-li mnozstvi dat velke, takze by naplneni pametove
tabulky trvalo dlouho nebo by bylo nevhodne, muzes zkusit to, co
pises. IBQuery se otevre temer hned, protoze na klienta se
natahne jen prvnich nekolik zaznamu. Je ale problem, pokud
pouzijes Last, Locate neceho na konci apod. - to pak trva dlouho.
V kazdem pripade bych vyhradil transakci jen pro cteni (do
parametru pridat read).

David Lebeda


Kop�rov�n� Windows z HDD1 na HDD2 se v��m v�udy

[*] V�clav ��ha <vaclav_riha(zv)softconsult(tec)cz> - 21.1.2002 10:50:37

A co "Zabezpeceni". Budou zkopirovan� soubory mit nastaven� spravne
zabezpeceni? A budou prekopirovane soubory vsechny? Funguje to i kdys je
disk z domenoveho radice (To znamena, ze PC na kterem se provadi kopie
dislku nebude mit moznost overit pristup k souborum, protoze domenovy
server bude vypnuty.)?

Vaclav Riha

-----P�vodn� zpr�va-----
Od: Dalibor Toman [SMTP:dtoman(zv)fortech(tec)cz]
Odesl�no: 21. ledna 2002 8:54
Komu: delphi-l(zv)clexpert(tec)cz
P�edm�t: Re: Kop�rov�n� Windows z HDD1 na HDD2 se v��m v�udy

> Dostal jsem se do stavu, kdy pot�ebuji star� disk 20 GB zam�nit za
nov� disk
> 40 GB. Nen� pro m� �nosn� v�echno znovu instalovat (je to pr�ce na
cel�
> den - v lep��m p��pad�). Existuje n�jak� rozumn� postup, n�stroj,
utilita,
> atd.?

no pokud se nepletu tak staci cilovy disk naformatovat na NTFS a stary
disk spolu
s novym vrazit do jineho PC s W2K a v nich pak stary na novy
prekopirovat.


D. Toman

OT: sdv

[*] DHederer(zv)softip.sk - 21.1.2002 11:08:47

Ospravedlnujem sa za otazku od mimo, ale chcel by som vediet, ktora
aplikacia si vytvara subory typu SDV?
Stretli ste sa stym niekto?

Disablovane tlacitka v options of project...

[*] Vlada Ponechal <vlada_ponechal(zv)post(tec)cz> - 21.1.2002 11:16:12

Ahoj vsichni,

Mel bych na Vas otazecku. Kdyz se podivam na do options of project, nemuzu menit ikonu applikace a dokonce ani menit treba verzi applikace atd... Tlacitka jsou disablovane. Napada vas, cim by to mohlo byt?

Kdyz si otevru novy project nebo jiny project, vsechno funguje.

Mam D6 prof.

Diky,

Vlada


Problem s thready v IB klientovi na Linuxu

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 21.1.2002 12:17:01

Dobry den

Podle meho nazoru fatalni problem, ktery znemoznuje
pouzivani IB v aplikacich psanych pro Linux: pokud
aplikace ve vice threadech komunikuje s IB dochazi
k nahodnym chybam EAccessViolation, generovanych
signalem SIGSEGV.

Pro komunikaci jsou pouzity IBX, kazdy thread ma
vlastni TIBDatabase a TIBTransaction a pro spojeni
s IB serverem se pouziva TCP (t.j. connection string
na databazi je ve tvaru "pocitac:/cesta/soubor.gdb".
Cili zakladni podminky pro threadovost IB.

Vzdy to pada v IBX pri volani API funkci klienta IB
(nejruznejsi funkce co zacinaji na "isc_"). Testovano
pod Kylix 1 i Kylix 2. Pouzita byla Borland Interbase
6.01 Open Edition, ale chybu vykazuje i Firebird 1.00
RC2. Stejny kod prelozeny pod Delphi 5 funguje proti
Windowsovemu IB klientovi bez problemu.

Podle ruznych zprav z newsgroupu od lidi blizkych
Borlandu (mimo jine Craig Stuntz) vyplyva, ze klient
IB na Linuxu neni napsan thread-safe, coz by na
tuto chybu ukazovalo. Zaroven se tam dost spekulovalo
s tim, ze v IB 6.5 tuto chybu bude mit vyresenou.
Viz http://www.google.com/grphp "+interbase +linux
+thread.safe"

A ted moje otazky:
- Mate nekdo nejake zkusenosti s thready a IB pro Linux?
- Mate nekdo zkusenosti s IB 6.5 pro Linux?
- Znate jeste nejaky klon IB, ktery by tuto chybu
mohl mit vyresenou?
- Chyba by se podle vseho mela projevovat i pri
pouziti dbExpress, ale presto - pouzivate nekdo
dbExpress s IB threadove?

Dekuji za jakekoliv zpravy

Martin Schayna
Aktis a.s.

Disablovane tlacitka v options of project...

[*] Rumcajs <prajz.rumcajs(zv)quick(tec)cz> - 21.1.2002 12:21:43

Nemas smazan soubr Project.res - popripade jestli ti nechybi v Project.dpr
syntaxe {$R *.RES}?> Ahoj vsichni,
>
> Mel bych na Vas otazecku. Kdyz se podivam na do options of project, nemuzu
menit ikonu applikace a dokonce ani menit treba verzi applikace atd...
Tlacitka jsou disablovane. Napada vas, cim by to mohlo byt?
>
> Kdyz si otevru novy project nebo jiny project, vsechno funguje.
>
> Mam D6 prof.
>
> Diky,
>
> Vlada
>

IBX a TDBGrid

[*] Milan Tomes <milan.tomes(zv)haida(tec)cz> - 21.1.2002 12:23:33

Problem je ovsem to, ze uzivatel si otevre tento seznam treba na cely den a
pak taky tech seznamu muze byt nekolik...

S pozdravem

Milan Tomes
mailto:Milan.Tomes(zv)haida(tec)cz

> > Kdyz jsem zkousel postup zahajit transakci - otevrit Query - zavrit
> > transakci v IBO tak se v gridu zobrazil seznam, ale pod IBX musi
> > zustat transakce otevrena a to se mi moc nelibi. Nevite co s tim ?
>
> V kazdem pripade bych vyhradil transakci jen pro cteni (do
> parametru pridat read).
>
> David Lebeda


IBX a Check Range Error

[*] L. Filip <lfilip(zv)lekis(tec)cz> - 21.1.2002 12:27:25

Zdravim,
pred nejakou dobou jsem si na instaloval FIB6. Vse fungovalo bezvadne.
Ted mi, ale vznikly problemy (nevim proc):
Pri navrhu je vse OK, muzu otevirat a zavirat datasety bez problemu. Ale
pokud projekt zkompiluju a spustim tak mi pri otevirani datasetu zpusobi
vyjimku s hlasenim Check Range Error. Pokud ale v datasetu zadam dotaz pro
jedine pole (jakekoliv) tak se i po kompilaci otevira v pohode. Zkusil jsem
IBQuery, IBTable i IBdataSet vse na stejno.
Nevite nekdo co to je?

Diky

Delphi 5 Ent., FIB 6, W2000


Vyznac okraj

[*] mstevlik(zv)gamo.sk - 21.1.2002 12:44:17


Mam problem ako oznacit ohranicenie vybranej casti obrazku
Mam na forme img: TImage a je vnom nahrany obrazok ako Bitmap
Chcel by som urobit nieco take, ze ked budem drzat stlacene lave tlacitko
mysi, aby mi zobrazoval obdlznik od MouseDown az po MouseUp
t.j. Nieco take ako ked si v hocjakom graf.editore chcete oznacit cast
obrazka, aby ste stou castou mohli pracovat
Mam uz vyriesene, tu pracu z danou vybranou castou, uz mi len chyba ta
grafika
Za vsetky napady vopred dakujem

Stevlik Marian
ISYS programator
GAMO a.s., Banska Bystrica
+421 48 413 7935, 413 2942
mstevlik(zv)gamo.sk
+421 905 462 010
ICQ: 38493645


Vyznac okraj

[*] Pesek Michal <Michal.Pesek(zv)MNUL.CZ> - 21.1.2002 12:49:25

Hi,

tady je p�ikl�dek

http://www.peprsoft(tec)cz/default.asp?stpm=delphi/tipy.asp?id=201

S pozdravem
Michal PEPR Pesek
http://www.peprsoft(tec)cz


.. -----Original Message-----
.. Subject: Vyznac okraj
..
..
..
.. Mam problem ako oznacit ohranicenie vybranej casti obrazku
.. Mam na forme img: TImage a je vnom nahrany obrazok ako Bitmap
.. Chcel by som urobit nieco take, ze ked budem drzat stlacene
.. lave tlacitko
.. mysi, aby mi zobrazoval obdlznik od MouseDown az po MouseUp
.. t.j. Nieco take ako ked si v hocjakom graf.editore chcete

Directory atribut W2000 - TSearchRec

[*] <jpecl(zv)volny(tec)cz> - 21.1.2002 12:59:10

Provadim hloubkove prohledavani adresaru pomoci FindFirst a FindNext,
adresare testuji na atribut faDir..., vse funguje pod W95/98, ale pod W2000
program nerozpozna directory. Nevi nekdo v cem je zakopany pes ?

Dik
Honza


Dotaz na vhodn� v�ber DB platformy

[*] Krmela Tom� <Krmela(zv)olc.pvt(tec)cz> - 21.1.2002 13:21:47


> Dobr� den,
>
> potreboval bych poradit , jakou DB pouzit pro nasleduj�c� aplikaci.
>
>
>
> Jedna se aplikaci pro maloobchodn� firmu , kter� d�l� prodej PC a
> mobil�. Ta firma m� 3 pobocky.
>
> Jsou potrebn� nasleduj�c� vlastnosti .
>
> Distribuce koncovych ceniku na pobocky
> Distribuce stavu skladu mezi pobockami , kazda pobocka vi , co je na
> ostatnich pobockach
> odesilani informaci o prodeji a o skladu na centralu
> odesilani informaci o zakaznick�ch objedn�vk�ch
>
> potrebuji , aby data prenasena pres internet byla nejak chranena .
>
> Premyslel jsem o flash fileru , ale na strance
> http://www.clexpert(tec)cz/software/turbopower/flashfiler.asp#cenik jsem
> nasel cenik s nulovymi cenami
>
> Vim , �e to neni asi primarni napln do konference a tak mi napiste
> na soukromy mail krmela(zv)post(tec)cz nebo icq 96562064
>
>
>
>

TnEmulVT : Range check error

[*] Vladimir Ponechal <Ponechal_Vladimir(zv)tesco-europe(tec)com> - 21.1.2002 13:56:37

Zdravim vsechny,

Pouzivam komponentu FPiette TnEmulVT a mam s ni malinky problem. Kdyz se
nekam prihlasim a pracuji, vse bezi OK, ale ve chvili, kdy chci
scrolovat do minulosti, najednou neco pretece a objevi se hlaska 'Range
check error' a neda se toho zbavit. Musim restartovat cely program.
Vypada to jakoby pretekl buffer.

Vite nekdo co s tim?

Mam D6,

Diky,

Vlada


IBX a Check Range Error

[*] Pavel Bare� <bares(zv)atoll(tec)cz> - 21.1.2002 14:21:08

Jo mne to dela na D5 a IB Express taky a taky se to stane uplne nahodne.

Problem je tady v te deklaraci:

soubor IBCustomDataSet.pas

TRecordData = record
rdBookmarkFlag: TBookmarkFlag;
rdFieldCount: Short;
rdRecordNumber: Long;
rdCachedUpdateStatus: TCachedUpdateStatus;
rdUpdateStatus: TUpdateStatus;
rdSavedOffset: DWORD;
rdDBKey: TIBDBKey;
rdFields: array[1..1] of TFieldData;
end;

konkretne
rdFields: array[1..1] of TFieldData;


a do tohoto pole o 1 prvku se pak vkladaji pole z databaze


{ Read the record from FQSelect.Current into the record buffer
Then write the buffer to in memory cache }
procedure TIBCustomDataSet.FetchCurrentRecordToBuffer(Qry: TIBSQL;
RecordNumber: Integer; Buffer: PChar);
...
...
if j > 0 then with p^ do
begin
rdFields[j].fdDataType :=
Qry.Current[i].Data^.sqltype and (not 1);

tak�e to samozrejme pri druhem pruchodu vyhodi chybu

ja jsem to prepsal na

rdFields: array[1..10] of TFieldData;

Je to sice blby reseni ale nic jineho s tim neslo udelat. Ted je to OK.
Horsi je ze to absolutne nechapu, kolegum to chodi a maji to pole jako 1..1
a vse je OK, vubec nechapu jak to muze fungovat.


Pavel Bares



----- Original Message -----
From: "L. Filip" <lfilip(zv)lekis(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, January 21, 2002 12:27 PM
Subject: IBX a Check Range Error


> Zdravim,
> pred nejakou dobou jsem si na instaloval FIB6. Vse fungovalo bezvadne.
> Ted mi, ale vznikly problemy (nevim proc):
> Pri navrhu je vse OK, muzu otevirat a zavirat datasety bez problemu. Ale
> pokud projekt zkompiluju a spustim tak mi pri otevirani datasetu zpusobi
> vyjimku s hlasenim Check Range Error. Pokud ale v datasetu zadam dotaz pro
> jedine pole (jakekoliv) tak se i po kompilaci otevira v pohode. Zkusil
jsem
> IBQuery, IBTable i IBdataSet vse na stejno.
> Nevite nekdo co to je?
>
> Diky
>
> Delphi 5 Ent., FIB 6, W2000
>

aplikace pro reklamni CD

[*] Tom Lebr <tom.lebr(zv)volny(tec)cz> - 21.1.2002 14:28:10

Dobry den,

delal jsem onehda neco podobneho, daleko nejefektivnejsi reseni je pouzit
Macromedia Director (Macromedia Flash by mel s .pdf asi dost problem, do
Directoru existuji doplnujici moduly). 30ti denni vcelku funkcni demo se
dalo kdysi stahnout z webu Macromedie (www.macromedia.com).

Prezentaci podobne slozitosti "naklikate" pri trose dobre vule za odpoledne,
graficky design je pro bezneho grafika otazka radove dnu. Hotova "aplikace"
je zkompilovany soubor (.dxr) a player pro PC a Mac a funguje prakticky
nezavisle na zbytku systemu. Coz je asi duvod, proc se vetsina firemnich
prezentaci na CD vytvari v tomto prostredi.

S Delphi to, pravda, moc nesouvisi, ale v historicky kratke dobe clovek
sotva vytvori neco lepsiho (ve smyslu spolehlivosti a nezavislosti na
zaludnostech konkretni konfiguraci PC), ani v Delphi ne :(

s pozdravem

Tomas Lebr

----- Original Message -----
From: "Vladim�r Zavadil" <ZavadilV(zv)seznam(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Sunday, January 20, 2002 3:17 PM
Subject: aplikace pro reklamni CD


Zdravim,
dostal jsem za ukol napsat aplikaci, ktera by ridila
reklamni CD-cko. Myslenka je takova,ze firma vyrabejici nekolik
zarizeni si chce udelat CD na nemz bude peknou grafickou formou
dana moznost si otevrit PDF dokumenty s jejich popisem a dalsima
informacema a ze to bude nezavisle na rozliseni monitoru a na soft.
konfiguraci compu.

V teto souvislosti se chci zeptat:
1) zda nekdo nedelal neco podobneho a na jeho zkusenosti a jakym
smerem se vydat.
2) jak zjistit, ze je nainstalovany prohlizec PDFek
3) existuje nekde na inetu nejaka komplexni database grafickych
prvku,
fotek,podkladu ... (hlavne z oblasti elektronickych soucastek)

predem dik za napady

Vlada
Zavadil

______________________________________________________________________
Co davaji v TV? http://tv.seznam(tec)cz

Vyznac okraj

[*] Martin Cajbik <cajbik(zv)sct.sk> - 21.1.2002 14:33:40

Najjednoduchsie (aj ked nie najoptimalnejsie) by bolo asi pouzit TShape.
Alebo mozes ten vybrany obdlznik kreslit programovo cez pmXor mod.

MarCaNT

----- Original Message -----
From: <mstevlik(zv)gamo.sk>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, January 21, 2002 12:44 PM
Subject: Vyznac okraj


>
> Mam problem ako oznacit ohranicenie vybranej casti obrazku
> Mam na forme img: TImage a je vnom nahrany obrazok ako Bitmap
> Chcel by som urobit nieco take, ze ked budem drzat stlacene lave tlacitko
> mysi, aby mi zobrazoval obdlznik od MouseDown az po MouseUp
> t.j. Nieco take ako ked si v hocjakom graf.editore chcete oznacit cast
> obrazka, aby ste stou castou mohli pracovat
> Mam uz vyriesene, tu pracu z danou vybranou castou, uz mi len chyba ta
> grafika
> Za vsetky napady vopred dakujem
>
> Stevlik Marian
> ISYS programator
> GAMO a.s., Banska Bystrica
> +421 48 413 7935, 413 2942
> mstevlik(zv)gamo.sk
> +421 905 462 010
> ICQ: 38493645
>
>

Porovnani komponent: Adonis vs Borland ADO

[*] delphi konference <delphi-konference(zv)bcpraha(tec)com> - 21.1.2002 14:48:48

Ahoj vsem,

Chtel bych se zeptat na porovnani ADO komponent. Znam Adonis a ADO
dodavane z delphi, ale nepouzivam obe verze dostatecne, abych je mohl
porovnat. Proto by me zajimalo, jestli by mi je nekdo mohl porovnat.
Jake maji vyhody a nevyhody, atd...

Michal

IBX a TDBGrid

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 21.1.2002 15:00:16

> Problem je ovsem to, ze uzivatel si otevre tento seznam treba na cely
> den a pak taky tech seznamu muze byt nekolik...

To ja vim, ale v IBX asi lepsi reseni neexistuje. Ostatne read
transakce by nemela nikoho blokovat, nemuze zpusobit kolizi...

David Lebeda

>
>
> > > Kdyz jsem zkousel postup zahajit transakci - otevrit Query -
> > > zavrit transakci v IBO tak se v gridu zobrazil seznam, ale pod IBX
> > > musi zustat transakce otevrena a to se mi moc nelibi. Nevite co s
> > > tim ?
> >
> > V kazdem pripade bych vyhradil transakci jen pro cteni (do
> > parametru pridat read).
> >
> > David Lebeda
>

IBX a TDBGrid

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 21.1.2002 15:04:06


> > > Kdyz jsem zkousel postup zahajit transakci - otevrit
> > > Query - zavrit transakci v IBO tak se v gridu zobrazil
> > > seznam, ale pod IBX musi zustat transakce otevrena
> > > a to se mi moc nelibi. Nevite co s tim ?

> > V kazdem pripade bych vyhradil transakci jen pro cteni (do
> > parametru pridat read).

> Problem je ovsem to, ze uzivatel si otevre tento seznam treba
> na cely den a pak taky tech seznamu muze byt nekolik...

no, to by nemelo nicemu vadit, mit read
transakci otevrenou cely den.

pokud se ti to nezda, tak ti opravdu nezbyde,
nez si data z query ulozit nekam na klienta.
klidne do txt, nebo do xml a pouzit nejaky
(client)dataset, ktery je schopen nad txt,
xml... pracovat. tedy pokud potrebujes hledat.

PeC(zv)

IB - Automaticka oprava/upgrade tabulek

[*] PeJaSoft <pejasoft(zv)volny(tec)cz> - 21.1.2002 15:23:38

From: "ing. Jan Fiala" <jan.fiala(zv)iol(tec)cz>
> A je nejaky duvod, aby tam neexistovaly tabulky pro celou aplikaci, i
> kdyz budou prazdne ?
> Reseni, kdy s instalaci noveho modulu musim pridavat nejake pole do
> existujici tabulky se mi nezda prave nejstastnejsi :-(
> Asi bych to resil nejak takto:
> mam stav databaze se skriptem, ktery mi vytvori batabazi.
> Pokud dojde ke zmene v databazi, budu se delat vsechny zmeny (az
> do dalsi velke povinne verze) do upgrade skriptu, ktery si vzdy
> otestuje, zda je treba zmenu delat a kdyz ano tak ji udela a pokracuje
> dal.
> Takhle mas zaruceno, ze na odpovidajici verzi skript muzes spustit a
> on ti udela, co potrebujes. Mas jede skript, ktery se da otestovat a
> ne milion jinych pro kazdou kombinaci modulu u zakazniku.

Ten program se bude stale vyvyjet a budou pribyvat nove a nove moduly.
Predem fakt nevim, co bude za rok. To se vsechno odvine az podle potreb
zakazniku.

Napadlo me ted dalsi mozne reseni: S kazdym novym modulem zvetsit verzi
(verze v ktere byla DB vytvorena se uklada do informacni tabulky v te DB) a
pokud nejakej modul ze zaregistrovanych vyzaduje databazi vetsi nez je k
dispozici, tak zarve a spravce musi DB upgradovat.
Proste kazdej modul (i hlavni aplikace) bude v sobe mit informaci o verzi
programu a informace o minimalni verzi modulu a databazi, se kteryma muze
pracovat.

Priklad (cislovani si vymyslim):
EXE + hlavni BPL - verze 1.5
ADRESAR.BPL - 1.5
KONTRAKT.BPL - 1.5
DATABAZE - 1.5

ted vznikla nova verze KONTRAKT.BPL - 2.0, ktera pracuje s DATABAZI min. od
2.0 => nutny upgrade na 2.0
vysledek:
EXE + hlavni BPL - verze 1.5
ADRESAR.BPL - 1.5
KONTRAKT.BPL - 2.0
DATABAZE - 2.0

opravy KONTRAKT.BPL - 2.2, nebyly provedeny zmeny ve strukture, takze porad
pracuje s DB min. od 2.0
novy modul BLABLA.BPL - 1.0 pracuje s DB od 2.5 => nutny upgrade na 2.5

vysledek:
EXE + hlavni BPL - verze 1.5
ADRESAR.BPL - 1.5
KONTRAKT.BPL - 2.0
BLABLA.BPL - 1.0
DATABAZE - 2.5
atd.

Cili, s kazdym dalsim uvolnenym modulem, ktery potrebuje zmenu v DB, poslu i
novy script na upgrade DB.

Co vy na to?

Upgrade IB database

[*] ales(zv)kerner(tec)cz - 21.1.2002 15:24:47

add1: Potreboval bych poradit (pro zacatecnika), jak udelat programove uprade
databaze, tzn. otestovat verzi, a provest upgrade databaze, ale treba i ob 2
verze.

add2: jak jednoduchym prikazem dostanu z databaze seznam indexu, triggeru apod.

dik

IB - Automaticka oprava/upgrade tabulek

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 21.1.2002 15:49:47

PeJaSoft dne 21 Jan 2002 v 15:23:

> Napadlo me ted dalsi mozne reseni: S kazdym novym modulem zvetsit
> verzi (verze v ktere byla DB vytvorena se uklada do informacni tabulky
> v te DB) a pokud nejakej modul ze zaregistrovanych vyzaduje databazi
> vetsi nez je k dispozici, tak zarve a spravce musi DB upgradovat.
> Proste kazdej modul (i hlavni aplikace) bude v sobe mit informaci o
> verzi programu a informace o minimalni verzi modulu a databazi, se
> kteryma muze pracovat.

Ahoj,

neco takoveho pouzivam a funguje to pomerne dobre, tedy za predpokladu, ze zrovna na neco nezapomenu.

Mam jeden skript pro vytvoreni kompletni databaze. Program pak obsahuje male "skriptiky", kazdy z nich umi povysit databazi
o jednu verzi dal. Tzn. v pripade, ze zakaznik nejakou dobu nenahraval nove verze aplikace, dojde pak pri jejim spusteni k
vicero zmenam databaze najednou.

Jedine, co je treba hlidat, je, aby databaze vytvarena hlavnim skriptem a databaze postupne modifikovana temi "skriptiky"
byly identicke, aby clovek v zapalu nadseni neco z toho nezapomnel aktualizovat.

Byt Tebou, asi bych se nesnazil o to, aby kazdy modul mel svoji "minimalni verzi databaze". Pokud budes moduly kompilovat
vzdy vsechny, bude mnohem jednodussi na udrzbu, kdyz budou i vyzadovat stejnou verzi databaze, rekl bych, ze Ti to muze
usetrit par neprijemnych prehlednuti...

Karel Rys


Upgrade IB database

[*] Kalhous Zdenek <zdenek.kalhous(zv)comarr(tec)cz> - 21.1.2002 15:50:44

On 21 Jan 2002, at 15:24, ales(zv)kerner(tec)cz wrote:
> add1: Potreboval bych poradit (pro zacatecnika), jak udelat programove
> uprade databaze, tzn. otestovat verzi, a provest upgrade databaze, ale
> treba i ob 2 verze.
Je mysleno upgrade programu IB (jako je IBServer,IBClient) nebo
upgrade struktury databaze?

> add2: jak jednoduchym prikazem dostanu z databaze seznam indexu,
> triggeru apod.
Tabulky zacinajici RDB$, zbytek nazvu je napovidajici.

Z.Kalhous


Komunikace s aplikaci v powerbuilderu

[*] <aldik(zv)quick(tec)cz> - 21.1.2002 16:05:15

Ahoj kluci,potrebuji spoustet aplikaci v powerbuilderu,respektive ani ne tak
spoustet jako spis jen vyvolat nejake wokno ve spustene aplikaci ktera je v
PowerBuilderu. Otazka zni: Jak na to? Mohu vyvolat aplikaci a pote ukazat wokno,
ktere chci s datama? Vim ze je to velice kuse a nepresne a abych to vysvetlil.
Mam service ktera hlida volani telefonu,kdyz nekdo vola potreboval bych ukazat
data o klientovi v aplikaci PB,ktery vola
a to nevim jak,neporadite mi??


Ales Pavel
W2000 D5 Ent


Kop�rov�n� Windows z HDD1 na HDD2 s

[*] Lstiburek Pavel <Lstiburek(zv)ceb(tec)cz> - 21.1.2002 16:19:14

Pripojuji se, naprosto exelentni nastroj, perfektni fce.
Zvladne i ruzne velke partition a umi i konverze file systemu.

Pavel

> -----P�vodn� zpr�va-----
> Od: Mephisto [mailto:mephisto(zv)akvila(tec)cz]
> Odesl�no: 21. ledna 2002 8:23
> Komu: delphi-l(zv)clexpert(tec)cz
> P�edm�t: RE: Kop�rov�n� Windows z HDD1 na HDD2 se v��m v�udy
>
>
>
> NORTON GHOST
>
>
> nebo DiskImage (PowerQuest)
> ---
> Odchoz� zpr�va neobsahuje viry.
> Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
> Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.01.2002
>
>

WSAStartup

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 21.1.2002 16:25:53

From: "Lebeda David" <david.lebeda(zv)comarr(tec)cz>
> v archivu konference jsem nasel kod, jak zjistit lokalni IP adresu (je-
>
> Nicmene v teto podobe to nefunguje - je potreba zavolat
> WSAStartup a na konci mozna WSACleanup(?).

Ahoj,

je to treba. Tak je to i ve funkci GetIPAddress v unit JclSysInfo (pro lokalni
IP predas do funkce prazdny retezec) v JCL:
http://delphi-jedi.org/Jedi:CODELIBJCL

Petr Vones


Prace s aplikaci v PowerBuilderu,handle podle nazv

[*] <aldik(zv)quick(tec)cz> - 21.1.2002 16:28:19

Dostal jsem napad,jak u externi bezici aplikace zjistim podle jmena wokna
handle??
Diky


Ales Pavel
W2000 D5 Ent


IB - Automaticka oprava/upgrade tabulek

[*] Martin Macko <martinm(zv)m-pro(tec)cz> - 21.1.2002 16:30:25

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Karel Rys

Ahoj,

neco takoveho pouzivam a funguje to pomerne dobre, tedy za predpokladu, ze
zrovna na neco nezapomenu.

Mam jeden skript pro vytvoreni kompletni databaze. Program pak obsahuje male
"skriptiky", kazdy z nich umi povysit databazi
o jednu verzi dal. Tzn. v pripade, ze zakaznik nejakou dobu nenahraval nove
verze aplikace, dojde pak pri jejim spusteni k
vicero zmenam databaze najednou.

--------------------------------------------------------------------

presne takhle to funguje i u naseho programu a muzu jedine doporucit -
jediny zadrhel - pokud je program viceuzivatelsky je potreba zabezpecit, aby
probihala uprava struktur v solo rezimu ...

Martin MACKO,
M-PRO s.r.o.
U mista Chersonu 1595/1
tel.: +420 (35) 610 79 48,
610 72 31 az 33

martinm(zv)m-pro(tec)cz
+420 (603) 48 39 40

---
Avast: Odchozi zprava vyhodnocena jako eista
Datum a eas testovani: 21.1.2002 16:30:24
Datum virove databaze (VPS): 11.1.2002
Avast! antivirus od Alwil Software


Avast32 (VPS 11.1.2002): zprava neobsahuje virus


IBX a Check Range Error

[*] Kaka�ka Pavol <kakacka(zv)proca(tec)cz> - 21.1.2002 16:30:05

From: "Pavel Bare�" <bares(zv)atoll(tec)cz>
> Jo mne to dela na D5 a IB Express taky a taky se to stane uplne nahodne.
> Problem je tady v te deklaraci:
> konkretne
> rdFields: array[1..1] of TFieldData;
> a do tohoto pole o 1 prvku se pak vkladaji pole z databaze
> tak�e to samozrejme pri druhem pruchodu vyhodi chybu
> ja jsem to prepsal na
> rdFields: array[1..10] of TFieldData;
> Je to sice blby reseni ale nic jineho s tim neslo udelat. Ted je to OK.
> Horsi je ze to absolutne nechapu, kolegum to chodi a maji to pole jako
1..1
> a vse je OK, vubec nechapu jak to muze fungovat.

To ale neni problem IBX ci IB. Zjednodusene povedane deklaracia
"array[1..1]" znamena ze pole bude dynamicky zvecsovane.
Toto je ale v rozporu s direktivou prekladaca ktoru mas zapnutu a to "Range
Checking". Tuto volbu si musis vypnut.

btw: Tiez je dobre tuto volbu pozivat iba pocas ladenia ale nie uz v ostrej
kompilacii kvoli rychlosti.

Kaka�ka Pavol
KasiX(zv)atlas(tec)cz

Problem s thready v IB klientovi na Linuxu

[*] DARVIS konference Delphi <delphi(zv)darvis(tec)cz> - 21.1.2002 16:37:08

Tak s tim jsme se setkali take, ale na platforme Win a D5 a novejsimi
verzemi IBX.
Nevim jestli je problem v IBX nebo IB.
Soucasne s AccessViol. se objevuji chyby v TCP/IP 10053 a 10055.
Po teto chybe se zacnou objevovat chyby 10053 a 10055 a po nejakem case IB
spadne uplne,
ale nasledny restart IB pres guardian neni uplne korektni,
protoze se tahle chyba tahne dalm, az IB bud zatuhne nebo spadne a guardian
ji uz nenastartuje.
Do normalniho stavu to vrati az zastaveni IB+Guard a znovunastartovani.
Nejvetsi problem je na WinNT SBS.
HW chyba site to neni protoze IB server i "klient" (v tomto pripade
aplikacni server)
bezi na stejnem pocitaci.
Zajimave je, ze se chyba projevi az po delsim case behu interbase (radove
hodin az dnu podle toho jak moc pracuji)
a zda se mi, ze to nastava v okamziku, kdy je server silne zatizen
(ani ne tak poctem pripojenych klientu jako spise pripravou dotazu).
Podle logu to vypada, ze to povetsinou sestreli select nebo nejaka funkce
okolo jeho otevirani,
ale pokazdy jindy.
Zkouseli jsme ruzne metody pripojeni k IB serveru i ruzne IB servery.
Nelepe z toho vychazi pripojovat to jako localhost:cesta_k_databazi (doba
mezi spadnutimi je radove nekolik dnu)
a resime to restartem IB nekdy v noci).
Bohuzel se nam nikdy nepodarilo chybu nasimulovat umele.
Ze by byla nejaka chyba i ve Win klientovi?

Jestli mate nekdo nejake napady, ozvete se.

Vlada Tucan
DARVIS spol. s r.o.
tel, fax: +420-312-621939
e-mail: vlada.tucan(zv)darvis(tec)cz

> -----P�vodn� zpr�va-----
> Od: Martin Schayna [mailto:mschayna(zv)aktis(tec)cz]
> Odesl�no: 21. ledna 2002 12:17
> Komu: delphi-l(zv)clexpert(tec)cz
> P�edm�t: Problem s thready v IB klientovi na Linuxu
>
>
> Dobry den
>
> Podle meho nazoru fatalni problem, ktery znemoznuje
> pouzivani IB v aplikacich psanych pro Linux: pokud
> aplikace ve vice threadech komunikuje s IB dochazi
> k nahodnym chybam EAccessViolation, generovanych
> signalem SIGSEGV.
>

Problem s thready v IB klientovi na Linuxu

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 21.1.2002 17:00:43

DARVIS konference Delphi dne 21 Jan 2002 v 16:37:

> Tak s tim jsme se setkali take, ale na platforme Win a D5 a novejsimi
> verzemi IBX. Nevim jestli je problem v IBX nebo IB. Soucasne s
> AccessViol. se objevuji chyby v TCP/IP 10053 a 10055. Po teto chybe se
> zacnou objevovat chyby 10053 a 10055 a po nejakem case IB spadne
> uplne, ale nasledny restart IB pres guardian neni uplne korektni,
> protoze se tahle chyba tahne dalm, az IB bud zatuhne nebo spadne a
> guardian ji uz nenastartuje. Do normalniho stavu to vrati az zastaveni
> IB+Guard a znovunastartovani.

Zdravim,

IB server nam take obcas zahadne padal (IB 6.0.1 pod Win2000), navic se k databazi nedalo pak pripojit do te doby, nez se
udelal Sweep. (Diky tomu, ze se k databazi nedalo pripojit, resili jsme to vzdycky brzy a nedoslo k vynucenemu restartu
celeho serveru).

Asi dva mesice tam ted bezi programek, ktery v noci provede Sweep automaticky; na 100 MB databazi to trva asi 10 minut a
zatim se stalo jen jednou, ze museli spoustet Sweep pres den rucne. Drive to bylo skoro na dennim poradku. Take se
nejednalo o HW problemy ani o potize se siti, protoze totez se stavalo i mne doma na solo pocitaci. Kdysi jsme tu o tom bez
kloudneho zaveru i debatovali.

Karel Rys


Problem s thready v IB klientovi na Linuxu

[*] Tomas =?iso-8859-2?Q?Michal=EDk?= <michalik(zv)proca(tec)cz> - 21.1.2002 17:10:23

Ahoj,

samozrejme si nejsem jisty, ale mozna to ma souvislost s clankem na
http://www.ibobjects.com/iboNews.html

"IBO Passes Asta's Threadsafety Soak Test
(but the news isn't so good for IBX users)"

Tom

DARVIS konference Delphi wrote:
>
> Jestli mate nekdo nejake napady, ozvete se.

=================================

Tomas Michalik
ProCA, s. r. o.
V Luzich 818, Praha 4
Czech Republic

e-mail: michalik(zv)proca(tec)cz
tel: +420 2 67283446


IBX a TDBGrid

[*] Slavomir Skopalik <skopalik(zv)hlubocky.del(tec)cz> - 21.1.2002 17:16:01

Na to je urcen MIDAS (a muzes si je pak jeste fitrovat a tridit on line),
jinak kazdy potomek Datasetu si nactene recordy
udrzuje v pameti (aby mel obousmerny cursor).
Te otenrene transakce bych se nebal, ja to tak delam a je to bez problemu.
Specialni transakce pro cteni typu read commited.
Pro zapis pouzivam SnapShot.

Slavek

> > > V kazdem pripade bych vyhradil transakci jen pro cteni (do
> > > parametru pridat read).
>
> > Problem je ovsem to, ze uzivatel si otevre tento seznam treba
> > na cely den a pak taky tech seznamu muze byt nekolik...
>
> no, to by nemelo nicemu vadit, mit read
> transakci otevrenou cely den.
>
> pokud se ti to nezda, tak ti opravdu nezbyde,
> nez si data z query ulozit nekam na klienta.
> klidne do txt, nebo do xml a pouzit nejaky
> (client)dataset, ktery je schopen nad txt,
> xml... pracovat. tedy pokud potrebujes hledat.
>
> PeC(zv)

Kop�rov�n� Windows z HDD1 na HDD2 s

[*] Slavomir Skopalik <skopalik(zv)hlubocky.del(tec)cz> - 21.1.2002 17:22:57

Jeste je treba novy disk sysnout, ja to delam ocesanou instalaci (WinNT),
nebo fdisk /mbr a sys pro Win9x (pozor v kteresi verzi cesky Win9x fungoval
sys nejak divne, nelal co mel).
Ocesana instalace funguje vzdy, jen treba instalovat do staejneho adresare,
v jakem jsou Windows na starem disku.

Slavek

> no pokud se nepletu tak staci cilovy disk naformatovat na NTFS a stary
> disk spolu
> s novym vrazit do jineho PC s W2K a v nich pak stary na novy
> prekopirovat.
>
>
> D. Toman
>
>

Desktop Ikona

[*] Peter Surovy <psurovy(zv)uevora.pt> - 21.1.2002 16:29:13 -0000

Ahoj
pouzivam na instalaciu Inno Setup Compiler
ktory vytvori na Desktope ikonu ta vsak nema ziadnu pracovnu cestu
potom mi program nepracuje korektne neviete niekto ako sa da ta cesta
nastavit pri instalacii.
Resp. programovo teda ze by som spravil maly programcek ktory
by som spustil po instalacii a on by tu cestu dorobil?
Peter Surovy


Desktop Ikona

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 21.1.2002 17:40:15

Peter Surovy dne 21 Jan 2002 v 16:29:

> Ahoj
> pouzivam na instalaciu Inno Setup Compiler
> ktory vytvori na Desktope ikonu ta vsak nema ziadnu pracovnu cestu
> potom mi program nepracuje korektne neviete niekto ako sa da ta cesta
> nastavit pri instalacii. Resp. programovo teda ze by som spravil maly
> programcek ktory by som spustil po instalacii a on by tu cestu
> dorobil? Peter Surovy

Ahoj,

Inno Setup tohle umi (neni spatne pri psani skriptu po ocku nahlizet do napovedy k nemu):

Name: "{userdesktop}\Jmeno aplikace"; Filename: "{app}\aplikace.exe"; WorkingDir: "{app}"; MinVersion: 4,4; Tasks:
desktopicon

Ovsem mnohem vic bych doporucoval na pracovni adresar nespolehat, zvlaste pokud nektere soubory oteviras pozdeji nez pri
spousteni - pokud uzivatel aktualni adresar zmeni, mas stejny problem jako ted...

Karel Rys


komunikace IP -> IP

[*] Zden�k �t�p�nek�����^��ޏ����� - 21.1.2002 22:12:54

Zdravim

Shanim nejake komponenty, do kterych zadam IP adresu, port a odchozi zpravu
(String). Kdyz vyvolam proceduru, na cilove adrese (jiny pocitac, tatz
komponenta nebo jeji prijimaci cast) se musi spustit nejaka procedura
IncomingMessage a predat mi ten string. Muze to byt komunikace s blokovanim
daneho portu. Chci si udelat aplikaci hodne podobnou WinPopUpu. Znate nekdo
takove komponenty?

Jo a nemate nekdo tabulku portu, abych vedel, ktere jsou volne?

Diky
Zdenek


IBX a TDBGrid - timeout

[*] Pavel Malinsky <spiderland(zv)iol(tec)cz> - 21.1.2002 23:23:05

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz]On Behalf Of Petr Palicka

> > > V kazdem pripade bych vyhradil transakci jen pro cteni (do
> > > parametru pridat read).

Ahoj,

kdyz je zde rec o IB transakci otevrene treba cely den...
Neni nahodou pro transakci nejaky timeout pro
ukonceni (pominuli nastaveni IdleTimeru) ??

S pozdravem a dikem
=====================================
> Pavel Malinsky; spiderland(zv)iol(tec)cz <
>===================================<
> ...The Truth Is Out There... <
=====================================
GSM: 0602 652 203

Sirka, vyska textu

[*] Jaroslav Popluhar <delphi1(zv)acc.sk> - 22.1.2002 01:53:17

Potreboval by som zistit sirku a vysku textu TLabel.Caption v pixeloch,
podla aktualne nastaveneho fontu atd.

Najma tu sirku...

Nevie niekto ako na to?

Resp. ako zariadit automaticke resize fontu v TLabel podla jeho rozmerov v
zavislosti na obsahu vlastnosti Caption.

Mozno dokonca existuje komponenta TResizedLabel ci co..., pozna niekto taku?

(Zatial to robim podla poctu znakov, ale pri proporcionalnom fonte to nie je
celkom OK).

Jaro



---
Odch�dzaj�ca spr�va neobsahuje v�rusy.
Skontrolovan� antiv�rusov�m syst�mom AVG (http://www.grisoft(tec)cz).
Verzia: 6.0.313 / V�rusov� datab�za: 174 - d�tum vydania: 2. 1. 2002


Sirka, vyska textu

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 22.1.2002 06:35:35

Sirka := Label.Canvas.TextWidth(Label.Caption);
Vyska := Label.Canvas.TextHeight(Label.Caption);

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

22.1.2002 Jaroslav Popluhar:
> Potreboval by som zistit sirku a vysku textu TLabel.Caption v pixeloch,
> podla aktualne nastaveneho fontu atd.

> Najma tu sirku...

SHFileOperation

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 22.1.2002 07:34:34

Ahoj,

pouzivam funkci SHFileOperation k vymazu souboru zadanych
hvezdickovou konvenci a funguje to dobre az na jednu vec. Pokud
soubor nelze smazat, protoze ho ma otevreny jina aplikace,
vyskoci chyba "Vyskytl se prestupek sdileni atd.". Ja bych
potreboval, aby se to obeslo bez hlasky. Proste se tam ten soubor
v tichosti necha. Jde to s pomoci teto funkce, nebo musim sahnout
k rucni praci pomoci FindFirst/FindNext a DeleteFile?

Diky

David Lebeda


SHFileOperation

[*] Tomas Rosa <trosa(zv)seznam(tec)cz> - 22.1.2002 07:53:54


fFlags:=FOF_SILENT or FOF_NOCONFIRMATION a pokud mazes do Kose tak jeste
FOF_ALLOWUNDO


>pouzivam funkci SHFileOperation k vymazu souboru zadanych
>hvezdickovou konvenci a funguje to dobre az na jednu vec. Pokud
>soubor nelze smazat, protoze ho ma otevreny jina aplikace,
>vyskoci chyba "Vyskytl se prestupek sdileni atd.". Ja bych
>potreboval, aby se to obeslo bez hlasky. Proste se tam ten soubor
>v tichosti necha. Jde to s pomoci teto funkce, nebo musim sahnout
>k rucni praci pomoci FindFirst/FindNext a DeleteFile?
>
>Diky
>
>David Lebeda

S pozdravem
Tomas Rosa

------------------------=[ pinknet on every screen ]=----------------------
Tomas Rosa
Tomas.Rosa(zv)PinkNet(tec)cz
Contact me via EFFATA.NET, my EID: trosa(zv)effata.net
PinkNet Web Server for Win32 - FREEWARE http://pnws.pinknet(tec)cz/
---------------------------------------------------------------------------


Praca s lubovolnou castou obrazovky

[*] iko <iko(zv)kamarad(tec)cz> - 22.1.2002 08:12:02

predpokladam ze to normalne spravit nepojde, ale tak, ze si skopirujes
obrazovku do bitmpay, potom vytvoris velke fullscreen okno bez ramikov a
titlebaru a nan namalujes tu bitmapu. kurzor si zmenis na tom forme a mozes
si tam spravit hocico na oramikovanie. oramikovanu cast z tej bitmapy si
potom slahnes do clipboardu. prikladam tu prvu cast, skopirovanie akt.
obrazovky do bitmapy:

var
DC:HDC;
Canvas:TCanvas;
bitmapa:TBitmap;
begin
Canvas:=TCanvas.Create;
bitmapa:=TBitmap.Create;
DC:=GetDC(0);
Canvas.Handle:=DC;
with Screen do begin
bitmapa.Width:=Width;
bitmapa.Height:=Height;
bitmapa.Canvas.CopyRect(Rect(0,0, Width, Height), Canvas, Rect(0, 0,
Width, Height));
end;
// sem si daj nieco co chces, lebo po tomto sa to vsetko zrusi z pamete
ReleaseDC(0, DC);
bitmapa.Free;
Canvas.Free;
end;

----- Original Message -----
From: "Martin Kasman" <martinkasman(zv)pobox.sk>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Saturday, January 19, 2002 2:04 PM
Subject: Praca s lubovolnou castou obrazovky


> Chcem urobit program, ktory bude spusteny ako rezidentny program. Po
> stlaceni nejakej klavesovej skratky sa program "aktivuje", zmeni sa kurzor
> mysi a uzivatel bude moct myskou oznacit nejaky obdlznik na obrazovke. Ked
> pusti tlacitko mysi, obrazok s obdlznika sa skopiruje do TImage a bude sa
s
> nim moct dalej pracovat.
> Takze potrebujem pomoct s:
> 1. reakcia programu na klavesovu skratku
> 2. zmena kurzoru mysi
> 3. vyznacenie myskou obdlznik na akejkolvek casti obrazovky a akomkolvek
> programe
> 4. skopirovanie obrazku s obdlznika do TImage
>
> Vdaka za kazdu radu.

Problem s thready v IB klientovi na Linuxu

[*] Karel Kral <kralkonf(zv)purus(tec)cz> - 22.1.2002 08:26:16

Ted jsem se docela zdesil. Uz delsi dobu premyslim o zavedeni Firebird
do nasi firmy a dle ohlasu se mi zda, ze to snad neni databaze, ktera by
byla schopna jet tydny a mesice bezproblemove.

Mam si snad koupit MS SQL? I to jsem ochotny.

>
> IB server nam take obcas zahadne padal (IB 6.0.1 pod Win2000), navic se k databazi nedalo pak pripojit do te doby, nez se
> udelal Sweep. (Diky tomu, ze se k databazi nedalo pripojit, resili jsme to vzdycky brzy a nedoslo k vynucenemu restartu
> celeho serveru).
>
> Asi dva mesice tam ted bezi programek, ktery v noci provede Sweep automaticky; na 100 MB databazi to trva asi 10 minut a
> zatim se stalo jen jednou, ze museli spoustet Sweep pres den rucne. Drive to bylo skoro na dennim poradku. Take se
> nejednalo o HW problemy ani o potize se siti, protoze totez se stavalo i mne doma na solo pocitaci. Kdysi jsme tu o tom bez
> kloudneho zaveru i debatovali.
>
> Karel Rys

--
______________________________________________________
Karel Kral, informatik
Purus, s.r.o., Cezavy 627, 664 56 Blucina, CZ
Tel: 05/47235000, 0602/552432, Fax: 05/47231203
E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
______________________________________________________


SHFileOperation

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 22.1.2002 08:37:54

> fFlags:=FOF_SILENT or FOF_NOCONFIRMATION a pokud mazes do Kose tak
> jeste FOF_ALLOWUNDO
>

Takhle to prave mam udelane, tedy bez FOF_ALLOWUNDO. Tento
flag rika, zda se ma pouzit kos? Pokud ne, kde pouzivani kose
nastavim? Cilem je vymaz bez kose.
Puvodni problem plati stale.

David Lebeda

> >pouzivam funkci SHFileOperation k vymazu souboru zadanych
> >hvezdickovou konvenci a funguje to dobre az na jednu vec. Pokud
> >soubor nelze smazat, protoze ho ma otevreny jina aplikace,
> >vyskoci chyba "Vyskytl se prestupek sdileni atd.". Ja bych
> >potreboval, aby se to obeslo bez hlasky. Proste se tam ten soubor v
> >tichosti necha. Jde to s pomoci teto funkce, nebo musim sahnout k
> >rucni praci pomoci FindFirst/FindNext a DeleteFile?
> >

Problem s thready v IB klientovi na Linuxu

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 22.1.2002 08:39:53

> Mam si snad koupit MS SQL? I to jsem ochotny.

opravdu si nemyslim, ze bys na tom byl lepe.
ja mam s M$ takove zkusenosti, ze mi tvrdili,
ze pozadovana funkce je soucasti produktu
(exchange serveru, nikoli zrovna MS SQL) a ze
je naprosto snadne ji spustit (kliknete tam a
tady a uz to bezi). po nekolika tydnech jsme
to vzdali s tim, ze M$ hotline nam neni schopen
poradit a jsme bud blby, nebo nam kecaji.
pouzili jsme produkt treti strany. po pul roce
vysla nova verze, kde jako velkou novinku M$
udaval funkci, kterou jsme se snazili zprovoznit,
ktera tam nebyla a o ktere nam jeji hotline tvrdil,
ze ji neumime spustit. :D

u FireBirda aspon vim na cem jsem. vyskytneli se
nejaky problem, vim o nem hned a zpravidla byva
vzapeti odstranen (treba ty proflaknuty zadni vratka
v IB6). nikdo ti nemaze med kolem ust a kdyz uz
si snekym kailujes, tak si nepripadas jak pri
rozhovoru hluchej s blbym ;).

dekuji PeC(zv)

Problem s thready v IB klientovi na Linuxu

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 22.1.2002 08:44:13

Karel Kral dne 22 Jan 2002 v 8:26:

> Ted jsem se docela zdesil. Uz delsi dobu premyslim o zavedeni Firebird
> do nasi firmy a dle ohlasu se mi zda, ze to snad neni databaze, ktera
> by byla schopna jet tydny a mesice bezproblemove.
> >
> > IB server nam take obcas zahadne padal (IB 6.0.1 pod Win2000), navic
> > se k databazi nedalo pak pripojit do te doby, nez se udelal Sweep.

Firebird jsem zatim nezkousel (behem sezony jsem nechtel riskovat, ze budou nekompatibilni v nejake malickosti a zpusobi to
trable napr. s exporty dat mezi pobockami), ale chystam se k tomu v dohledne dobe. Potize, o kterych jsem psal, delala IB
6.0.1 stazena od Borlandu.

Karel Rys


Presunuti zaznamu v IBQuery

[*] Libor Junek, KSH-Data <junek(zv)ksh-data(tec)cz> - 22.1.2002 08:54:36

Ahoj,
nenapada nahodou nekoho jak by se dalo resit presouvani zaznamu v IBQuery?
Mam Field PORADI podle ktereho bych potreboval rovnat. Close/Open nemuzu
pouzit protoze ty data mam pouze na localu a prisel bych o ne. Ukladat do IB
a drzet to v transakci nepovazuju za dobre reseni. Dalsi moznost ze prepisu
radek jinym taky nemuzu pouzit protoze ja kontroluji zda byl zaznam
vlozen/upraven a delalo by mi to bordel protoze pouzivam ID polozky jako
Foreign Key v ostatnich tabulkach. Nechce se mi to resit tak ze si to budu
presouvat primo v nejakem gridu protoze mame upraveny DBGrid ktery ma mnoho
vlastnosti ktere potrebuju. Nelze nejak nastavit aby se IBQuery interne
rovnalo podle nejakeho fieldu?

Dik Libor


Lokalizace VCL60.BPL nebo Consts.pas

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 22.1.2002 08:56:33

Na tema "lokalizace"...

Pokousim se udelat preklad sve aplikace psane v Delphi 6 Pro. Pro zacatek bych potreboval, aby misto "Yes", "No" apod. bylo
"Ano", "Ne"... Tyto texty jsou v Consts.pas; mohu je tam sice prelozit, ale nevim, jak primet aplikaci, aby je pak
pouzivala...

Chtel jsem tedy misto toho pomoci Lokalizatoru prelozit VCL60.BPL, ale to se nedari (hlasi, ze neobsahuje zadne
resourcestringy - verze Lokalizatoru 3.03 mozna spise nerozumi tomuto formatu, na druhou stranu ale treba vcldb60.bpl
prelozit jde).

Neporadili byste nekdo, jak ten preklad udelat?

Karel Rys


Chyba v inkrementaci generatoru ?

[*] Ales Janda <ales.janda(zv)atlas(tec)cz> - 22.1.2002 09:00:10

D5Ent, Interbase 6.0 Open Source

Ahoj,
v tabulce pouzivam primarni klic generovany pomoci generatoru a funkce gen id(). Hodnotu generatoru negeneruji v triggeru, ale v kodu programu. A ted se mi u zakaznika stalo, ze hodnota id posledni vlozene vety je 262, ale hodnota generatoru je 214 ! Samozrejme, ze dalsi hodnoty nejdou vlozit. Program bezi na Serveru s 2000.
V historii konference jsem nasel prispevek o tom, ze generatory jsou nadtransakcni, takze jsem vyloucil moznost vraceni hodnoty pri rollbacku.
Setkal se nekdo z Vas s touto situaci ? Je mozne, aby doslo ke zmene hodnoty generatoru nejakou chybou interbase tedy bez vnejsiho zasahu ze strany zakaznika ?

Predem diky za odpovedi.

Ales


Presunuti zaznamu v IBQuery

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 22.1.2002 09:06:00

ahoj,
na todle by mel byt TClientDataSet
z midasu. v D6 uz je snad i nejaky
nelicencovany pro ne-vice-vrstve
pouziti. prave na D6 prechazime,
takze ho teprve budu zkoumat. jinak
je soucasti predchozich verzi deplf
rady enterprice.

dekuji PeC(zv)

Chyba v inkrementaci generatoru ?

[*] Kalhous Zdenek <zdenek.kalhous(zv)comarr(tec)cz> - 22.1.2002 09:12:53

On 22 Jan 2002, at 9:00, Ales Janda wrote:
> v tabulce pouzivam primarni klic generovany pomoci generatoru a funkce
> gen_id(). Hodnotu generatoru negeneruji v triggeru, ale v kodu
> programu. A ted se mi u zakaznika stalo, ze hodnota id posledni
> vlozene vety je 262, ale hodnota generatoru je 214 !
> Setkal se nekdo z Vas s touto situaci ? Je mozne, aby doslo
> ke zmene hodnoty generatoru nejakou chybou interbase tedy bez vnejsiho
> zasahu ze strany zakaznika ?
To asi ne, krome pouziti set generator a gen_id() se hodnota
generatoru meni dost obtizne. Spis bych hledal chybu v programu.
Uz to, ze se ID negeneruje triggerem ale v programu se mi nezda
stastne. Je gen_id pouzito vsude a tak, aby generator opravdu
posunulo?
Z.Kalhous


Lokalizace VCL60.BPL nebo Consts.pas

[*] B�in�il Tom� - 22.1.2002 09:19:33


Tento problem jsem take resil.

Nejprve jsem si zazalohoval prelozene consts a dbconsts. Potom jsem je
smazal z knihovny. Upravil jsem zdroje consts a dbconsts a potom vytvoril
prazdnou aplikaci, kterou jsem ulozil do stejneho adresare jako upravene
zdroje. Tyto zdroje jsem dal do sekce "uses" v hlavnim programu a pouzil
dialog s nejakou konstantou z consts a spustil.
Zdroje se prelozili a nakopiroval jsem je zpet do knihovny.
Ale pozor na pouziti runtime packages. Protoze pokud je tato volba
zaskrtnuta jsou pouzity consts z balicku. Proto je treba projekt prekladat
cely.
Je mozne, ze postup prekladu neni presny, trochu jsem experimentoval, ale
nejakym takovymto zpusobem jsem zprovoznil ceske dialogy.
Mam tyto soubory castecne lokalizovane, takze pokud by se nezdarilo, mohu je
poskytnout.

S pozdravem

Tomas Brincil


-----Original Message-----
From: Karel Rys [mailto:delphi(zv)zas-me(tec)cz]
Sent: Tuesday, January 22, 2002 8:57 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Lokalizace VCL60.BPL nebo Consts.pas


Na tema "lokalizace"...

Pokousim se udelat preklad sve aplikace psane v Delphi 6 Pro. Pro zacatek
bych potreboval, aby misto "Yes", "No" apod. bylo
"Ano", "Ne"... Tyto texty jsou v Consts.pas; mohu je tam sice prelozit, ale
nevim, jak primet aplikaci, aby je pak
pouzivala...

Chtel jsem tedy misto toho pomoci Lokalizatoru prelozit VCL60.BPL, ale to se
nedari (hlasi, ze neobsahuje zadne
resourcestringy - verze Lokalizatoru 3.03 mozna spise nerozumi tomuto
formatu, na druhou stranu ale treba vcldb60.bpl
prelozit jde).

Neporadili byste nekdo, jak ten preklad udelat?

Karel Rys



---
Avast/SMTP2000 Antivirus: Inbound message clean.
Virus Database (VPS): 11.1.2002
Tested on: 22.1.2002 09:03:54 +0200
Avast! is copyright (c) 2000-2001 ALWIL Software.
---
Avast/SMTP2000 Antivirus: Outbound message clean.
Virus Database (VPS): 11.1.2002
Tested on: 22.1.2002 09:19:43 +0200
Avast! is copyright (c) 2000-2001 ALWIL Software.

InnoSetup a diakritika

[*] Zapl�k <zaplik(zv)volny(tec)cz> - 22.1.2002 10:14:06

Pratele, nevite prosim nekdo jak pomoci InnoSetup vytvorit adresar s
diakritikou. Potrebuji a vdresari nainstalovane app jeste dalsi subdir napr:
{app}\Uzivatele\Cesky uzivatel. Bez diakritiky je to OK, ale s ni se
nepodari preklad inst.skriptu.

Dik
zaplik(zv)volny(tec)cz



---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.313 / Virov� b�ze: 174 - datum vyd�n�: 2.1.2002


Chyba v inkrementaci generatoru ?

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 22.1.2002 10:22:13

Haj hou!

On 22 Jan 2002, at 9:00, Ales Janda wrote:

> v tabulce pouzivam primarni klic generovany pomoci generatoru a
> funkce gen_id(). Hodnotu generatoru negeneruji v triggeru, ale v
> kodu programu. A ted se mi u zakaznika stalo, ze hodnota id
> posledni vlozene vety je 262, ale hodnota generatoru je 214 !
> Samozrejme, ze dalsi hodnoty nejdou vlozit. Program bezi na
> Serveru s 2000. V historii konference jsem nasel prispevek o tom,
> ze generatory jsou nadtransakcni, takze jsem vyloucil moznost
> vraceni hodnoty pri rollbacku. Setkal se nekdo z Vas s touto
> situaci ? Je mozne, aby doslo ke zmene hodnoty generatoru nejakou
> chybou interbase tedy bez vnejsiho zasahu ze strany zakaznika ?

Dojit k tomu muze pri padu serveru, pokud neni nastaveno Forced
Write. Pak mohou zustat nektere db stranky neaktualizovany a v
databazi je (nepredvidatelny) binec. Windows verze IB6 ma
defaultne nastaveno Forced Write na OFF (mimo Firebirdu RC1 a
RC2).

S pozdravem

Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase


InnoSetup a diakritika

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 22.1.2002 10:30:22

teda, ja vim, ze bych to asi ani nemel psat,
ale osobne nepovazuji pouzivani cestiny
v nazvech adresaru za stastne reseni.

napriklad, pokud pouziju cestinu, tak se
nekdy nepodari kopirovat soubor jinym nastrojem,
nez windows pruzkumnikem. stava se mi to hlavne
kdyz vznikne treba pri ukladani html stranek.

mam pocit, ze to souvisi s pouzitym kodovanim,
ktere si windows uvnitr zpracuji dobre, ale
treba nejaky filemanager s tim moc nepocita.

abych teda neplacal uplne mimo, tak mozna,
jestlis to uz neudelal, zkus dat ten nazev
do uvozovek, nebo pouzit kodovani pro stary dos
(dos-latin-2, 852).

PeC(zv)

Delphi6 a problem s breakpointy

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 22.1.2002 10:34:23

no, taky musi byt v
project options/compiler
zatrzeno debug information, ne?

jednou jsem se tim taky nachytal.
vypnul jsem si to a koukam, modre
tecky zmizeli a bp jsou ignorovany.
nez mi to doslo, docela jsem se
natrapil.

PeC(zv)

MDI Form a menu

[*] tomsir1.edu(zv)mail.cez(tec)cz - 22.1.2002 10:37:41


Ahoj,

mam zacatecnicky dotaz :O( Jestlize vlozim na child form TMainMenu, po
vytvoreni child okna dojde k prepsani menu parent okna. Potrebuji, aby menu
hlavniho okna zustalo na svem miste a kazdy child mel sve menu ... jak na
to, kopnete me please


Radek


Lokalni promenne <C> -> <P>

[*] Blazek Jaroslav <Jaroslav.Blazek(zv)access-it(tec)cz> - 22.1.2002 11:00:53

Ahoj,
potrebuji v <P>(Delphi) nejakym identifikatorem nahradit to " static "

Pri 1. projeti MyFce() se i=0, pri 2. a dalsim je to vzdy Inc(i)
<C>
int MyFce(...)
{
static int i=0;

//nekde pouzivej " i "
...
i++;
...
}

S pozdravem

Bc. Jaroslav Blazek
Access-IT Ceska Lipa
jaroslav.blazek(zv)access-it(tec)cz
www.access-it(tec)cz
ICQ : 13367373990
+420605/813644


Directory atribut W2000 - TSearchRec

[*] Alan Cermak <alexoft(zv)razdva(tec)cz> - 22.1.2002 11:36:49

Neco takoveho se mi stalo, kdyz jsem porovnaval atribut adresare na =faDir, ale adresar na disku mel navic nastaveny atribut faArchive. FindFirst s faDir ho pak nenalezl.

Alex

----- Original Message -----
From: <jpecl(zv)volny(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, January 21, 2002 12:59 PM
Subject: Directory atribut W2000 - TSearchRec


> Provadim hloubkove prohledavani adresaru pomoci FindFirst a FindNext,
> adresare testuji na atribut faDir..., vse funguje pod W95/98, ale pod W2000
> program nerozpozna directory. Nevi nekdo v cem je zakopany pes ?
>
> Dik
> Honza
>
>
>

OT:Intranet aplikacia

[*] Rastislav Lazan <lazan(zv)nr.dflex.sk> - 22.1.2002 11:47:06


Uvazuje sa aj o Delphi pre .NET ?

R. Lazan


-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Erik Salaj
Sent: Thursday, January 17, 2002 6:19 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: OT:Intranet aplikacia


> Mozno som len prilis rozmaznany z Delphi :-) Ale aj tak, by som velmi
ocenil
> (bohuzial nie financne) ak by mi niekto poskytol viac informacii o inych
> moznostiach (Java, ASP, Perl...), hlavne ma zaujima porovnanie a nejake
> zhrnutie
> vyhod a nevyhod jednotlivych pristupov k tvorbe. Alebo aspon odkazy na
> nejake linky.

skus .NET, tam mas moznost programovat web aplikacie pomocou lubovolneho
.Net jazyka napr. C#, VBasic, Eiffel.Net, atd.

Erik


Vytvorenie DBase for Windows

[*] Slavom�r �eke� - 22.1.2002 12:01:24

Zdravim ...

chcem softwarovo vytvorit databazu typu DBase for Windows ... ako to
dosiahnem ?
Table1.TableType := ???; v helpe sa spomina iba typ ttDBase, ale ktory
to je ? Alebo to treba kdesi v BDE nastavit ? Pomozte prosim ...


Slavo


Lokalni promenne <C> -> <P>

[*] ing. Pavel �ilinec����)b���zf���3 - 22.1.2002 12:08:27

Nadefinuj to primo v dane unite a bude si pamatovat svuj posledni
stav.
var i : integer = 0

Doufam, ze to pomuze, pze nevim, co je <P>Delphi :(

------
ing. Pavel �ilinec
mailto:zilinec(zv)email(tec)cz

22.1.2002 Blazek Jaroslav:
> Ahoj,
> potrebuji v <P>(Delphi) nejakym identifikatorem nahradit to " static "

> Pri 1. projeti MyFce() se i=0, pri 2. a dalsim je to vzdy Inc(i)
> <C>
> int MyFce(...)
> {
> static int i=0;

> //nekde pouzivej " i "
> ...
> i++;
> ...
> }

Lokalni promenne <C> -> <P>

[*] Pavel Krehula <pavel.krehula(zv)nlm(tec)cz> - 22.1.2002 12:11:05


BJ> Ahoj,
BJ> potrebuji v <P>(Delphi) nejakym identifikatorem nahradit to " static "

BJ> Pri 1. projeti MyFce() se i=0, pri 2. a dalsim je to vzdy Inc(i)
BJ> <C>
BJ> int MyFce(...)
BJ> {
BJ> static int i=0;

BJ> //nekde pouzivej " i "
BJ> ...
BJ> i++;
BJ> ...
BJ> }

function MyFce(..): integer;
const
i: integer = 0;
begin
. .
.
end;

--
Best regards,
Pavel

pavel.krehula(zv)nlm(tec)cz


Volne systemove prostredky

[*] Jirka <W.Jirka(zv)seznam(tec)cz> - 22.1.2002 12:13:04

Ahoj Vsem

Potreboval bych zjistit pod Win98 volne systemove prostredky.
Pod Win2000 mne to je jedno, protoze ty se kvuli nedostatku nezhroutej :-)
Volnou pamet zjistit umim, ale to co ukazujou Win98 jako systemove prostredky ne.

Predem diky

Jirka

Lokalni promenne <C> -> <P>

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 22.1.2002 12:46:22

> Doufam, ze to pomuze, pze nevim, co je <P>Delphi :(

autor zrejme myslel <P> jako Pascal (Delphi ;)
a <C> jako C-cko.

globalni promenna to jisti urcite.

pouziti const si nejsem jistej.

ja si vdy myslel, ze pomoci const
definuju konstantu, tedy ze to umozni
nejakou lepsi otimalizaci pri prekladu,
nikoli, ze si nadefinuju trvaleplatnou
lokalni promennou. kdyby nekdo fundovany
mohl toto vyvratit potvrdit, byl bych mu
vdecny. zatim jdu cist help ;)

dekuji PeC(zv)

Lokalni promenne <C> -> <P>

[*] Blazek Jaroslav <Jaroslav.Blazek(zv)access-it(tec)cz> - 22.1.2002 13:14:24

je to tak, uz jsem to vyzkousel a je to presne to co jsem potreboval.
globalnim promennym se vyhybam.....

S pozdravem

Bc. Jaroslav Blazek
Access-IT Ceska Lipa
jaroslav.blazek(zv)access-it(tec)cz
www.access-it(tec)cz
ICQ : 13367373990
+420605/813644

>>> petr.palicka(zv)atlas(tec)cz 22.1.02 12:46 >>>
> Doufam, ze to pomuze, pze nevim, co je <P>Delphi :(

autor zrejme myslel <P> jako Pascal (Delphi ;)
a <C> jako C-cko.

globalni promenna to jisti urcite.

pouziti const si nejsem jistej.

ja si vdy myslel, ze pomoci const
definuju konstantu, tedy ze to umozni
nejakou lepsi otimalizaci pri prekladu,
nikoli, ze si nadefinuju trvaleplatnou
lokalni promennou. kdyby nekdo fundovany
mohl toto vyvratit potvrdit, byl bych mu
vdecny. zatim jdu cist help ;)

dekuji PeC(zv)

MySQL, stabilita, auditing

[*] Roman Krisak <rkrisak(zv)usske.sk> - 22.1.2002 13:17:42

This is a MIME message. If you are reading this text, you may want to
consider changing to a mail reader or gateway that understands how to
properly handle MIME multipart messages.

Zdravim,

Zaujimalo by ma, ci sa niekto z Vas stretol pri MySQL s poskodenou tabulkou, poskodenym indexom, pripadne inym poskodenim a ako sa s tym dokazal vysporiadat. Ide mi o moznost obnovy a zachrany dat, nepocitajuc poslednu zalohu.
Dalej ake mate skusenosti s jej stabilitou.... dlzka bezporuchoveho behu.
A ako poslednu otazku, existuje nejaky nastroj v pripade MySQL na jej auditing. Predstavujem si pod tym log konekcii, prijate SQL dotazy atd.
Dufam, ze moje otazky neboli velmi OT.

Dakujem za odpovede

Roman

..................................................................................................
Ing. Roman Krisak /
ISPaV U.S. Steel /
rkrisak(zv)usske.sk /
++421/55/6735167 /

Lokalni promenne <C> -> <P>

[*] Karel Kral <kralkonf(zv)purus(tec)cz> - 22.1.2002 13:48:13

V Object Pascalu od Borlandu jsou dve ruzne "const".

Jedny jsou opravdu konstanty ve smyslu literalu. Deklarace:
const
X = 10
zpusobi, ze kompilator vsude, kde se v programu vyskytuje X ho nahradi
hodnotou 10. Samozrejme X:= 10 neprojde ani pres kompilator.

Pak se ale vyskytuji jeste "Borlandovske" const, coz ve zkutecnosti neni
konstanta ale inicializovana promenna.
const
X: integer = 10;

Pak se X povazuje za normalni promennou typu integer s tim, ze pri
startu programu ma hodnotu 10. Lze ji pak ale menit, treba X:= 20 projde
a je legalni.

Petr Palicka wrote:
> ja si vdy myslel, ze pomoci const
> definuju konstantu, tedy ze to umozni
> nejakou lepsi otimalizaci pri prekladu,
> nikoli, ze si nadefinuju trvaleplatnou
> lokalni promennou. kdyby nekdo fundovany
> mohl toto vyvratit potvrdit, byl bych mu
> vdecny. zatim jdu cist help ;)
>
> dekuji PeC(zv)

--
______________________________________________________
Karel Kral, informatik
Purus, s.r.o., Cezavy 627, 664 56 Blucina, CZ
Tel: 05/47235000, 0602/552432, Fax: 05/47231203
E-Mail: mailto:kral(zv)purus(tec)cz, WWW: http://www.purus(tec)cz
______________________________________________________


SHFileOperation

[*] Tomas Rosa <trosa(zv)seznam(tec)cz> - 22.1.2002 13:49:03

Ano FOF_ALLOWUNDO znamena ze se to vymaze do kose...

>Takhle to prave mam udelane, tedy bez FOF_ALLOWUNDO. Tento
>flag rika, zda se ma pouzit kos? Pokud ne, kde pouzivani kose
>nastavim? Cilem je vymaz bez kose.
> Puvodni problem plati stale.

S pozdravem
Tomas Rosa

------------------------=[ pinknet on every screen ]=----------------------
Tomas Rosa
Tomas.Rosa(zv)PinkNet(tec)cz
Contact me via EFFATA.NET, my EID: trosa(zv)effata.net
PinkNet Web Server for Win32 - FREEWARE http://pnws.pinknet(tec)cz/
---------------------------------------------------------------------------


OF vltava 2000

[*] Krmela Tom� <Krmela(zv)olc.pvt(tec)cz> - 22.1.2002 13:56:50

Ahoj all ,

mame na vltave 2000 nas obchod a ja dostal za ukol udelat mustek do
naseho systemu ,d�lali jste n�kdo to jiz ?

Computer press chce za zhotoveni udesne penize , pritom pou�ivat tuto
branu mame povoleno .

odpovedi prosim na muj mail

Tomas Krmela


Volne systemove prostredky

[*] Kaka�ka Pavol <kakacka(zv)proca(tec)cz> - 22.1.2002 14:28:32

From: "Jirka" <W.Jirka(zv)seznam(tec)cz>
> Potreboval bych zjistit pod Win98 volne systemove prostredky.
> Pod Win2000 mne to je jedno, protoze ty se kvuli nedostatku nezhroutej :-)
> Volnou pamet zjistit umim, ale to co ukazujou Win98 jako systemove
prostredky ne.

Tu najdes zdrojaky, mozes z nich vychadzat:

ftp.mlp(tec)cz/pub/misc/Delphi/konference/Other/WinResources2.rar

Kaka�ka Pavol
KasiX(zv)atlas(tec)cz

MySQL, stabilita, auditing

[*] David Janko <djanko(zv)infoware(tec)cz> - 22.1.2002 14:56:10

Take zdravim,
ano, setkal jsem se s poskozenim indexu v pripade, ze nekolikrat vypadlo
napajeni a mysql zrovna zapisovalo, na to pozor. Vetsinu spravil myisamchk,
ale nekolik tabulek sem musel obnovit ze zalohy (mozna by pomohl dump a
reinsert, ale obnova ze zalohy byla pro me jednodussi, tak jsem to
nezkousel).
Se stabilitou sem spokojen - kdyz chcipla, tak to zatim nikdy nebyla jeji
vina (napajeni, blba prava, dosla pamet nebo disk ;-)).
Umi logovat veskere connecty + dotazy, log zmenovych sql prikazu (moc good
na zalohy). Parsovanim techto logu sem se nezabyval, ale urcite na to nejaky
soft bude ...

Neni zac - pokud je to moc OT, tak databases(zv)linux(tec)cz. Manual k ni je take
celkem good.

---
Best Regards,
David Janko
programmer & Linux system administrator
djanko(zv)infoware(tec)cz
Czech Republic / Central Europe


Zdravim,

Zaujimalo by ma, ci sa niekto z Vas stretol pri MySQL s poskodenou tabulkou,
poskodenym indexom, pripadne inym poskodenim a ako sa s tym dokazal
vysporiadat. Ide mi o moznost obnovy a zachrany dat, nepocitajuc poslednu
zalohu.
Dalej ake mate skusenosti s jej stabilitou.... dlzka bezporuchoveho behu.
A ako poslednu otazku, existuje nejaky nastroj v pripade MySQL na jej
auditing. Predstavujem si pod tym log konekcii, prijate SQL dotazy atd.
Dufam, ze moje otazky neboli velmi OT.

Dakujem za odpovede

Roman


TImage a ScrollBars

[*] mstevlik(zv)gamo.sk - 22.1.2002 14:58:20


Cafte
Mam na panely
- tb: TToolBar; tb.Align := alTop;
- img: TImage; tb.Align := alNone; img.AutoSize := true;
- sb: TStatusBar; sb.Align := alBottom;
Viditelna cast toho img je 300x300
Ked tam dam obrazok vacsi ako 300x300 tak mi z neho len cast
Chcel by som nejakym sposobom (ScrollBary) aby som sa vedel v ramci obrazka
pohnut (t.j. vidiet i pravu dolnu cast)

Stevlik Marian
ISYS programator
GAMO a.s., Banska Bystrica
+421 48 413 7935, 413 2942
mstevlik(zv)gamo.sk
+421 905 462 010
ICQ: 38493645


Delphi6 a problem s breakpointy

[*] Milan ��ek <Cizek.Milan(zv)seznam(tec)cz> - 22.1.2002 15:07:05

> no, taky musi byt v
> project options/compiler
> zatrzeno debug information, ne?

Ahoj, presne toto bylo pricinou meho problemu. Diky

S pozdravem Milan Cizek, amatersky programator, D5 Ent (SP1), D6 Ent
Win2k (SP2,Pre-SP3) a Win98 SE, cizek.milan(zv)seznam(tec)cz, ICQ:
59826637

______________________________________________________________________
E-mail zdarma na cely zivot: http://email.seznam(tec)cz


Volne systemove prostredky

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.1.2002 15:45:07

From: "Jirka" <W.Jirka(zv)seznam(tec)cz>
> Potreboval bych zjistit pod Win98 volne systemove prostredky.

Ahoj,

Interface to Windows9x Resource Meter library
http://radweb.borland.com/codecentral/ccweb.exe/listing?id=15313

Petr Vones


�t�te 2

[*] Marek Vilda Jelen <marek.jelen(zv)mybox(tec)cz> - 22.1.2002 15:46:19

Zn�mej prosil o radu:

Dobr� den.

P�ece jen bych je�t� pot�eboval poradit. D� se do t�ch DLL knihoven n�jak
zapsat, i obrazov� komponenta, t�eba aby se m� na formu tohle a tohle
zobrazilo tady a takhle.

P��klad : R�d bych zkusil naprogramovat takovou malinkatou hru, pod DELPHIX
a pot�eboval bych abych na��tal n�kter� p��kazy z DLL to aby to nebylo tak velik�,
ale po��d se m� n�jak nevede d�t odkaz �e je to na formu 1 a atd.. Tady je kousek
z programu co by m�l bejt v t� DLL.

// ==================== Zkyrt� Mapy. ( �ada.1)
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,71,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,91,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,111,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,131,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,151,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,171,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,191,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,211,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,231,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,251,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,271,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,291,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,311,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,331,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,351,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,371,0);
DXImageList1.Items[5].Draw(DXDraw1.Surface,250,391,0);

Jde n�jak vy�e�it aby se to tam zobrazilo ? M�j n�zor je asi n� co ?
Co v�echno jde do t�ch DLL d�vat ?

Moc moc d�kuji za ka�dou odpov�d !

Prosim V�s, nev�te n�kdo co s tim?
D�ky moc Marek JElen

IB - Automaticka oprava/upgrade tabulek

[*] PeJaSoft <pejasoft(zv)volny(tec)cz> - 22.1.2002 15:47:37

From: "Kalhous Zdenek" <zdenek.kalhous(zv)comarr(tec)cz>
> > jsem nasel program, ktery meni strukturu DB podle jine. Zda se, ze
> > funguje a je free.
> Muzete mi na nej dat odkaz? Diky.


Protoze to po me chtelo vic lidi, odkaz na stranky je:
http://ibrest.4mg.com/
resp. primo sekce download:
http://ibrest.4mg.com/download.htm

S pozdravem

Petr Jarkovsky
pejasoft(zv)post(tec)cz

OT:Cestina a Win98ME

[*] Peter Surovy <psurovy(zv)uevora.pt> - 22.1.2002 14:52:49 -0000

Ahoj
mam zopar suborov na CD ktorych
mena su ulozene z ceskou diakritikou
na nejakej nizsej verzii windows

teraz pouzivam win98ME anglicky a on mi ich nevie nacitat.
Neexistuje nejaky plug-in alebo nieco take
co by mi pomohlo nechce sa mi instalovat cely system.
Dik
Peter Surovy


ShutDown WinNT - W2k - WinXP

[*] JIM Design <jim.design(zv)iol(tec)cz> - 22.1.2002 15:57:11

ahoj,

od sup(zv)svitap(tec)cz z 27.10.2000

-----

procedure TForm1.Button2Click(Sender: TObject);
const SE_SHUTDOWN_NAME = 'SeShutdownPrivilege'; // Borland forgot this
declaration
var hToken:THandle;
tkp:TTokenPrivileges;
tkpo:TTokenPrivileges;
zero:DWORD;
begin
zero := 0;
if not OpenProcessToken( GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then begin
MessageBox(0,'Exit Error','OpenProcessToken() Failed',MB_OK );
Exit;
end;
if not OpenProcessToken( GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then begin
MessageBox(0,'Exit Error','OpenProcessToken() Failed',MB_OK );
Exit;
end;
// SE_SHUTDOWN_NAME
if not LookupPrivilegeValue( nil, 'SeShutdownPrivilege' ,
tkp.Privileges[ 0 ].Luid ) then begin
MessageBox(0,'Exit Error','LookupPrivilegeValue() Failed',MB_OK );
Exit;
end;
tkp.PrivilegeCount := 1;
tkp.Privileges[ 0 ].Attributes := SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges( hToken, False, tkp,SizeOf(TTokenPrivileges ),
tkpo, zero );
if Boolean( GetLastError()) then begin
MessageBox(0, 'Exit Error', 'AdjustTokenPrivileges() Failed',MB_OK );
Exit; end
else
ExitWindowsEx( EWX_FORCE or EWX_REBOOT, 0 );
// just shut the machine down
halt(0);
end;

Jaroslav Weiss
odd. informatiky

---

M.Jirman

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Robert Suska

Zdravi konferenciu a vsetkych co su v nej!

Potreboval by som kod ktorym dam pokyn pc-cku aby mi shutdownlo masinku ked
napr. macknem buttonik.

Pod Win9x je to jednoduche ExitWindowsEx(EWX_SHUTDOWN or EWX?POWEROFF, 0);
ci ako to je... ale pod W2k treba ziskat nejake prava ci co a potrebujem
vediet ako to obsluzim kodom.

QReport na vice stranek

[*] JIM Design <jim.design(zv)iol(tec)cz> - 22.1.2002 15:57:05

ahoj,

dela se to uplne jednoduse, das si tam jeden QRBand a nastavis aby byl
rbDetail, do neho pak umistis ten QRLabely, kterym menis caption pomoci
cyklu v procedure QReport.OnNeedData a ten QRBand se pak podsebe opakuje (i
se svym obsahem) podle toho jaky mas cykl v tom OnNeedData.

M.Jirman

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Volny

Potrebuju nakopnout...
Dynymicky creatuju jednotlive QrLabely na report, ale kdyz jich je vice
tak je potrebuju dat na novou stranku a nemuzu prijit na to jak.

valik

Lokalni promenne <C> -> <P>

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.1.2002 16:04:38

From: "Karel Kral" <kralkonf(zv)purus(tec)cz>
> Pak se ale vyskytuji jeste "Borlandovske" const, coz ve zkutecnosti neni
> konstanta ale inicializovana promenna.
> const
> X: integer = 10;
>
> Pak se X povazuje za normalni promennou typu integer s tim, ze pri
> startu programu ma hodnotu 10. Lze ji pak ale menit, treba X:= 20 projde
> a je legalni.

Tohle je presne to co by se v 'ciste' aplikaci nemelo pouzivat. Konstanta je
totiz od toho aby byla konstantni. Vyse uvedena 'prasarna' je mozna pouze v
pripade, ze mas nastavene v kompilatoru Assignable typed constants. Nastesti
je tento option v Delphi 6 jiz vypnut coby vychozi nastaveni (tak to melo byt
vzdycky) takze to pri psani noveho kodu nesvadi k takovymto technikam.

Petr Vones

RX 2.75 a divna vec s RxDBGrid

[*] Roman <sw.maurice(zv)seznam(tec)cz> - 22.1.2002 16:27:03

Ahoj,
uz jsem tu o tom kdysi bez odezvy psal, tak uvedu prakticky priklad:
pri jiste kombinaci sirky gridu a viditelnych a skrytych sloupcu vyhazuje
nasledujici metoda z RxDBCtrl vyjimku AccessViolation:

procedure TRxDBGrid.Paint;
begin
inherited Paint;
if not (csDesigning in ComponentState) and
(dgRowSelect in Options) and DefaultDrawing and Focused then
begin
Canvas.Font.Color := clWindowText;
with Selection do
DrawFocusRect(Canvas.Handle, BoxRect(Left, Top, Right, Bottom));
end;
end;

Pokud se v metode ponecha pouze prvni radek, je vse v poradku.
Nejlepsi je, ze se chyba projevi jen pri zapnute optimalizaci!

Kdyby mel nekdo zajem, muzu zaslat kraticky kod (pro d4) nebo i prelozeny
.exe

Roman

Seznam vlastnosti

[*] Ota Maly <ota.maly(zv)volny(tec)cz> - 22.1.2002 16:35:46

Ahoj,
pokud mam objekt, ktery je potomkem TComponent, mohu zjistit seznam jeho
properties? Samozrejme mam na mysli v runtime.

S pozdravem
Ota Maly

PaPouch elektronika
http://www.papouch.com

Lokalni promenne <C> -> <P>

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 22.1.2002 16:38:37

> > const
> > X: integer = 10;

jinymy slovy, jde o globalni promennou,
je to tak?

nebo je nejaky rozdil mezi vyse
uvedenym a

....

var
X: integer = 10;

implementaton;

....

?

dekuji PeC(zv)

Lokalni promenne <C> -> <P>

[*] Blazek Jaroslav <Jaroslav.Blazek(zv)access-it(tec)cz> - 22.1.2002 16:43:04

pokud ji deklaruji uvnitr fce tak ne.....ta je viditelna jen v te funkci

S pozdravem

Bc. Jaroslav Blazek
Access-IT Ceska Lipa
jaroslav.blazek(zv)access-it(tec)cz
www.access-it(tec)cz
ICQ : 13367373990
+420605/813644

>>> petr.palicka(zv)atlas(tec)cz 22.1.02 16:38 >>>
> > const
> > X: integer = 10;

jinymy slovy, jde o globalni promennou,
je to tak?

nebo je nejaky rozdil mezi vyse
uvedenym a

....

var
X: integer = 10;

implementaton;

....

?

dekuji PeC(zv)

Lokalni promenne <C> -> <P>

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.1.2002 16:46:00

From: "Petr Palicka" <petr.palicka(zv)atlas(tec)cz>
> jinymy slovy, jde o globalni promennou, je to tak?

const
X: Integer = 10;

je typova konstanta (typu integer s hodnotou deset). Pokus o prirazeni hodnoty
do teto konstanty kdekoli v kodu (pokud je kompilator spravne nastaven, viz
moje predchozi odpoved) zpusobi samozrejme chybu pri prekladu:

[Error] : Left side cannot be assigned to

var
X: Integer = 10;

je inicializovana promenna, do ktere lze samozrejme za behu priradit jakoukoli
hodnotu.

Petr Vones


OT:Intranet aplikacia

[*] Erik Salaj <winsoft(zv)stonline.sk> - 22.1.2002 16:46:28

> Uvazuje sa aj o Delphi pre .NET ?

to neviem. Ale co sa tyka jazyka, tak myslim, ze C# alebo
Eiffel.Net su vyhodnejsou alternativou ako Object Pascal.

C# je az na c-ckovu syntax velmi podobny Object Pascal-u
a bol vytvoreny specialne pre .Net platformu.

Eiffel je zase spickovy OOP jazyk s najkvalitnejsou podporou
pre objektove programovanie aku som kedy u programovacieho
jazyka videl, pricom sa nejedna iba o programovaci jazyk ale
o uplne novy pristup k programovaniu kvalitneho software,
zalozeny na DBC (Design By Contract) paradigme a niekolkych
dalsich velmi zaujimavych myslienkach ako CQS - Command
Query Separation, automaticke generovanie dokumentacie, atd..

Erik

Lokalni promenne <C> -> <P>

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.1.2002 16:51:16

From: "Blazek Jaroslav" <Jaroslav.Blazek(zv)access-it(tec)cz>
> pokud ji deklaruji uvnitr fce tak ne.....ta je viditelna jen v te funkci

Ano, to ale stale nic nemeni na to, ze by mela zustat *konstantou* a ne
jakousi nahrazkou za staticke lokalni promenne z C. Prave z takovychto veci
pak vznikaji nepekne chyby, protoze na prvni pohled to vypada, ze hodnota teto
konstanty bude stale stejna, ovsem pri dalsim vstupu do dane funkce muze mit
uz jinou hodnotu. Techto chyb se lze snadno vyvarovat pouzivanim veci k tomu
ucelu ke kteremu jsou urceny. Staticke lokalni promenne lze v Object Pascalu
nahradit pomoci globalnich promennych deklarovanych bezprostredne pred danou
funkci s pouzitich vhodnych nazvovych konvenci.

Petr Vones

Lokalni promenne <C> -> <P>

[*] Blazek Jaroslav <Jaroslav.Blazek(zv)access-it(tec)cz> - 22.1.2002 17:10:18

Ja jsem Cckar a identifikator <C> "static" nevypada jako konstanta. To uz je potom vec Borlandu, ze to pojala jako "const i:integer=0;"
Pak s tebou naprosto souhlasim, ze to mate a clovek ocekava, ze tam bude nejaka konstanta.
V <C> vim, ze je to staticka promenna a ne konstanta....

S pozdravem

Bc. Jaroslav Blazek
Access-IT Ceska Lipa
jaroslav.blazek(zv)access-it(tec)cz
www.access-it(tec)cz
ICQ : 13367373990
+420605/813644

>>> pvones(zv)mbox.vol(tec)cz 22.1.02 16:51 >>>
From: "Blazek Jaroslav" <Jaroslav.Blazek(zv)access-it(tec)cz>
> pokud ji deklaruji uvnitr fce tak ne.....ta je viditelna jen v te funkci

Ano, to ale stale nic nemeni na to, ze by mela zustat *konstantou* a ne
jakousi nahrazkou za staticke lokalni promenne z C. Prave z takovychto veci
pak vznikaji nepekne chyby, protoze na prvni pohled to vypada, ze hodnota teto
konstanty bude stale stejna, ovsem pri dalsim vstupu do dane funkce muze mit
uz jinou hodnotu. Techto chyb se lze snadno vyvarovat pouzivanim veci k tomu
ucelu ke kteremu jsou urceny. Staticke lokalni promenne lze v Object Pascalu
nahradit pomoci globalnich promennych deklarovanych bezprostredne pred danou
funkci s pouzitich vhodnych nazvovych konvenci.

Petr Vones


Lokalni promenne <C> -> <P>

[*] Josef Kokes <kokes(zv)fsid.cvut(tec)cz> - 22.1.2002 17:15:19

> function MyFce(..): integer;
> const
> i: integer = 0;
> begin
> . .
> .
> end;

No, ja bych se tehle konstrukce bal jak cert krize.
Teorie totiz pravi, ze P. (a tedy i Delphi) si lokalni promenne
ukladaji do zasobniku. Jestli to plati i pro typovane konstanty
nevim, ale vzhledem k tomu, ze se jinak chovaji jako bezne
promenne s definovanou pocatecni hodnotou, tak bych rekl,
ze asi ano. Coz je ovsem problem: jakmile treba jen na okamzik
vyskocis z te funkce, tak vsechno, co ta funkce mela na zasobniku,
prestava byt definovane!! To je zrada. Nikdo na tom zasobniku
nic nevymazava, a tak kdyz se do te funkce hned zase vratis,
tak tam ty ulozene hodnoty jeste byt muzou. A muze se stat, ze
to zkusis 1000x a opravdu tam 1000x ty hodnoty najdes. Ale
taky se muze stat, ze jednou za X hodin se zrovna do toho okamziku
strefi preruseni nebo neco jineho, co zmeni obsah zasobniku
- a je problem. Pak se budes divit, ze jednou za cas program
zablbne a udela neco naprosto necekaneho. To se snad ani neda
odladit.
Zkratka, ja bych se toho bal...
Kokes

Lokalni promenne <C> -> <P>

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.1.2002 17:27:39

From: "Josef Kokes" <kokes(zv)fsid.cvut(tec)cz>
> > function MyFce(..): integer;
> > const
> > i: integer = 0;
> > begin
> > . .
> > .
> > end;
>
> No, ja bych se tehle konstrukce bal jak cert krize.
> Teorie totiz pravi, ze P. (a tedy i Delphi) si lokalni promenne
> ukladaji do zasobniku. Jestli to plati i pro typovane konstanty

Jenze konstanta neni lokalni promenna. Pokud ji pouzijes (nespravne, pri
zaplem Assignable typed constants) jako lokalni statickou promennou, tak je ve
skutecnosti ulozena stejne jako globalni promenna, akorat ze neni viditelna
mimo danou funkci.

Petr Vones


Lokalni promenne <C> -> <P>

[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 22.1.2002 18:50:15

> tak tam ty ulozene hodnoty jeste byt muzou. A muze se stat, ze
> to zkusis 1000x a opravdu tam 1000x ty hodnoty najdes. Ale
> taky se muze stat, ze jednou za X hodin se zrovna do toho okamziku
> strefi preruseni nebo neco jineho, co zmeni obsah zasobniku

no to by bylo vzruso, kdyby system pouzival pro svuj zasobnik
userspace. Stacilo by
posunout ESP na spravne misto a bylo by po ptakach.
Zadny interuupt (bavime se o Windows) Ti stack neprepise. Ale prepise
ti ho
kazda jina funkce volana po/pred tou, ktera pouziva "static".

Cckovy static neni nic jineho nez prevlecena globalni promenna (nemuze
byt alokovana
na heapu - jinak by nemohla udrzet bezpecne obsah). Cili jeji
nahrazeni pravou globalni
je zcela na miste - jedine o jeji pojmenovani se musi programator
postarat sam (bohuzel
bude videt i z dalsich rutin nez v te kde je to zadouci)

D. Toman

Oblast formulare

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.1.2002 19:33:47

From: "Zden�k Sv�en" <dkonf(zv)seznam(tec)cz>
> lze nejak omezit oblast formulare, kde se mohou umistovat komponenty? Jde mi
> o to, abych si mohl kreslit na fomular, kam me napadne, ale chci urcit vyrez
> (nejlepe treba i RoundRect tvaru), ktery se bude chovat jako client cast.

Ahoj,

pokud chces vymezit cast kam budes kreslit tak pouzij TPaintBox a kresli v
jeho udalosti OnPaint

Petr Vones


Upgrade IB database

[*] Ale Kerner <ales(zv)kerner(tec)cz> - 22.1.2002 20:00:51

Je mysleno upgrade programu IB (jako je IBServer,IBClient) nebo
upgrade struktury databaze?
- struktury databaze

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Kalhous Zdenek
Sent: Monday, January 21, 2002 3:51 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: Upgrade IB database


On 21 Jan 2002, at 15:24, ales(zv)kerner(tec)cz wrote:
> add1: Potreboval bych poradit (pro zacatecnika), jak udelat programove
> uprade databaze, tzn. otestovat verzi, a provest upgrade databaze, ale
> treba i ob 2 verze.
Je mysleno upgrade programu IB (jako je IBServer,IBClient) nebo
upgrade struktury databaze?

> add2: jak jednoduchym prikazem dostanu z databaze seznam indexu,
> triggeru apod.
Tabulky zacinajici RDB$, zbytek nazvu je napovidajici.

Z.Kalhous

---
P��choz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.1.2002

---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.314 / Virov� b�ze: 175 - datum vyd�n�: 11.1.2002

komunikace IP -> IP

[*] brant(zv)dcomm(tec)cz - 22.1.2002 21:23:53

Komponenty Indy to umeji urcite (IdTCPClient a Server) a Synapse
pravdepodobne take.

RNDr. Petr Brant

********************************************
* D&COMM s.r.o. - sledov�n� vozidel *
* v re�ln�m �ase a prodej licenc� *
* v r�mci programu Microsoft Select *
* ---------------------------------------- *
* Korunova�n� 6 *
* Praha 7 *
********************************************


Shanim nejake komponenty, do kterych zadam IP adresu, port a odchozi zpravu
(String). Kdyz vyvolam proceduru, na cilove adrese (jiny pocitac, tatz
komponenta nebo jeji prijimaci cast) se musi spustit nejaka procedura
IncomingMessage a predat mi ten string. Muze to byt komunikace s blokovanim
daneho portu. Chci si udelat aplikaci hodne podobnou WinPopUpu.

Jo a nemate nekdo tabulku portu, abych vedel, ktere jsou volne?

Seznam vlastnosti

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 22.1.2002 21:33:23

From: "Ota Maly" <ota.maly(zv)volny(tec)cz>
> pokud mam objekt, ktery je potomkem TComponent, mohu zjistit seznam jeho
> properties? Samozrejme mam na mysli v runtime.

Ahoj,

pro published properties treba takhle:
http://www.delphi(tec)cz/soubor.asp?rok=1999&mesic=oct&den=31&soubor=dlfaaaas.htm

Petr Vones


komunikace IP -> IP

[*] Acron <acron(zv)nextra.sk> - 23.1.2002 00:59:43

Zdar,
ja som to robil cez komponenty Internet: ClientSocket a ServerSocket.
Nastavis si obe komponetny (IP, port), nezabudni ich "activovat".

Odoslanie textu: (napr. v udalosti OnClick buttonu):
ClientSocket1.Socket.SendText(Edit1.Text);

ServerSocket do udalosti OnClientRead:
Label1.Caption:=Socket.ReceiveText;

Dufam ze staci aj taketo jednoduche riesenie :-)

Acron

----- Original Message -----
From: "Zden�k �t�p�nek" <zstepanek(zv)atlas(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, January 21, 2002 10:12 PM
Subject: komunikace IP -> IP


> Zdravim
>
> Shanim nejake komponenty, do kterych zadam IP adresu, port a odchozi
zpravu
> (String). Kdyz vyvolam proceduru, na cilove adrese (jiny pocitac, tatz
> komponenta nebo jeji prijimaci cast) se musi spustit nejaka procedura
> IncomingMessage a predat mi ten string. Muze to byt komunikace s
blokovanim
> daneho portu. Chci si udelat aplikaci hodne podobnou WinPopUpu. Znate
nekdo
> takove komponenty?
>
> Jo a nemate nekdo tabulku portu, abych vedel, ktere jsou volne?
>
> Diky
> Zdenek
>


---
Odch�dzaj�ca spr�va neobsahuje v�rusy.
Skontrolovan� antiv�rusov�m syst�mom AVG (http://www.grisoft(tec)cz).
Verzia: 6.0.314 / V�rusov� datab�za: 175 - d�tum vydania: 11. 1. 2002


Lokalni promenne <C> -> <P>

[*] Blazek Jaroslav <Jaroslav.Blazek(zv)access-it(tec)cz> - 23.1.2002 07:15:46

>To je zrada. Nikdo na tom zasobniku
>nic nevymazava, a tak kdyz se do te funkce hned zase vratis,
>tak tam ty ulozene hodnoty jeste byt muzou. A muze se stat, ze
>to zkusis 1000x a opravdu tam 1000x ty hodnoty najdes. Ale
>taky se muze stat, ze jednou za X hodin se zrovna do toho okamziku
>strefi preruseni nebo neco jineho, co zmeni obsah zasobniku
>- a je problem. Pak se budes divit, ze jednou za cas program
>zablbne a udela neco naprosto necekaneho. To se snad ani neda
>odladit.

Tak to s tebou nemohu souhlasit.
Definice lokalnich statickych promennych (ve smyslu <C> "static")
- stejne jako globalni promenne jsou alokovany na zacatku programu (jsou alokovany i ve stejnem pametovem segmentu), daly by se teda chapat jako globalni promenne, jen s tim rozdilem, ze jsou viditelne jen ve fci, kde byly deklarovany
- jak jsem psal, ze jsou viditelne jen v dane fci, tak to neni tak docela pravda, lze k nim, pristupovat neprimo pres ukazatel
- jsou inicializovany jen jednou a pri opetovnem navratu do fce si zachovavaji svou hodnotu
- nevim jestli tohle plati i v <P> (v <C> ano), ale deklaruji-li globalni statickou promennou - jedna se o neexportovatelne globalni promenne

//Neprimy pristup k lokalni staticke promenne

procedure MyProc1(var pp:pointer);
const
p:integer = 0;
begin
Inc(p);
pp:=(zv)p;
end;

procedure MyProc2;
var p:pointer;
begin
MyProc1(p);
integer(p^):=integer(p^)+10;
// tady je lokalni staticka promenna uz 11
MyProc1(p);
// tady uz je 12
end;

S pozdravem

Bc. Jaroslav Blazek
Access-IT Ceska Lipa
jaroslav.blazek(zv)access-it(tec)cz
www.access-it(tec)cz
ICQ : 13367373990
+420605/813644



© Delphi.cz, program netcode.cz, 2008-9.