Archív konference Delphi

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

Crystal Report x Delphi 5

[*] Libor V�trovec <libor(zv)wlw(tec)cz> - 8.2.2002 10:47:56

Zdravim
nemate prosim nekdo zkusenost s Crystal reportem v Delphi 5 mam nactene VCL
componenty Crystal Report a CRViewer v ActiveX a vypracovany report ktery
potrebuji v delphi otevrit n nahledu muzete mi prosim odkazat na stranky,
kde je nejaky help nebo poradit jak otevrit componentu.

Libor Vetrovec


ClientDataSet, Locate pres string polozku

[*] Ben, Martin (CAP, GCF) <Martin.Ben(zv)gecapital(tec)com> - 8.2.2002 10:50:24

Jak je nastaveny parametr Options ?

Martin Ben

> -----Puvodni zprava-----
> Od: Michal Sefcik [mailto:sefcik(zv)benefitcz(tec)cz]
>
> Nevim, na co jdu spatne, ale mam velke problemi s locatem v
> clientdatasetu
> nad ADODatasetem. Pokud je locatovaci polozka typu Integer, je vse v
> poradku.
> Pokud je vsak typu String, pak nelocatuje. Deje se tak pouze
> v pripade, ze
> hodnota polozky ma stejnou delku jako deklarovany typ.
> Pripada mi, ze funkce
> bere vyhledavaci hodnoty z databaze i s doplnenymi mezerami
> na konci tak ,
> jak
> je vraci napr. do DBaware komponent. Rozhodne se mi nechce
> hodnotu parametru
> pro vyhledani take doplnovat mezerami na konci (beru ji z tehoz
> ClientDatasetu
> pred Postem a nechapu, proc by mela byt jina, nez po
> ulozeni). Nepripadami
> to
> jako korektni chovani. Doposud jsem pracoval s BDE komponentami a vse
> probihalo normalne.
> Nemate nekdo jine reseni? Predem dekuji.

DBMemo & SelStart

[*] Jan Krizek <krizek(zv)vitasw(tec)cz> - 8.2.2002 11:12:52

dbmemo.Text obsahuje cely text ulozeny v memo, tedy je naprosto logicke
ze zapis dbmemo.Text := dbmemo.Text + 'xxxx' vlozi tvuj text na konec
celeho obsahu memo. To ze jsi dostal radu pouzit memo.SelStart se tykalo
nastaveni kurzoru pro psani uzivatelem.

Nejdrive si ujasni co chces a pak nejlepe pouzij property memo.Lines. A
to tak, ze v memo.Lines[i-1] je obsah radky i-teho radku (je to
indexovano od nuly). Tedy chces-li na i-te radce mit ten tvuj text, tak
pouzij
memo.Lines[i-1].Text := 'tvuj text';

- pripadne jej naformatuj tak jak jej potrebujes. Samozrejme, ze ta
radka musi existovat. Pokud chces na dalsi radku, tak to je pomoci
memo.Lines.Add( 'tvuj text' );

Honza +

-----Original Message-----
From: cYd [mailto:cyd(zv)seznam(tec)cz]
Sent: Friday, February 08, 2002 10:41 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: DBMemo & SelStart


Hezky den,
pardon, ze zase otravuju, ale mam nasledujici problem:

dbmemo1.text:= dbmemo1.text+
DBGrid1.Datasource.Dataset.Fields[0].AsString+'
';
dbmemo1.selstart:=50;

dbmemo1.text:=dbmemo1.text+dbgrid1.datasource.dataset.fields[1].asstring
;

timto se snazim primitivne udelat to, aby se mi data z "fields[1]"
vypisovala od 50. pozice na radce DBMemo...bohuzel jsou vsak vzdy
posunuta podle poctu znaku u "fields[2]" ...a ja potrebuji, aby pokazde
zacinal zapis "fields[2]" na pozici 50....

co vsechno delam spatne?


diky

cYd


DBMemo & SelStart

[*] Ben, Martin (CAP, GCF) <Martin.Ben(zv)gecapital(tec)com> - 8.2.2002 11:21:16

Pokud chces field[1] vypsat na radce kde mas field[0]:

1)
const
xxx = ' ';
begin
dbmemo1.text:=DBGrid1.Datasource.Dataset.Fields[0].AsString+xxx;
dbmemo1.selstart:=50;
dbmemo1.SelLength:=Length(dbmemo1.Text)-dbmemo1.selstart;

dbmemo1.SetSelTextBuf(PChar(DBGrid1.Datasource.Dataset.Fields[1].AsString));
end;

2)
begin
dbmemo2.text:=DBGrid1.Datasource.Dataset.Fields[0].AsString;
while Length(dbmemo2.Text)<50 do dbmemo2.Text:=dbmemo2.Text+'_';
dbmemo2.Text:=dbmemo2.Text+DBGrid1.Datasource.Dataset.Fields[1].AsString;
end;

Pokud chces kazdy field vypsat na nove radce:
const
xxx = ' ';
var
I: integer;
begin
//vsechny fields
for I:=0 to DBGrid1.Datasource.Dataset.Fields.Count-1 do
dbmemo1.add(xxx+DBGrid1.Datasource.Dataset.Fields[I].AsString);
//pouye fields[0..2]
dbmemo1.add(xxx+DBGrid1.Datasource.Dataset.Fields[0].AsString);
dbmemo1.add(xxx+DBGrid1.Datasource.Dataset.Fields[1].AsString);
dbmemo1.add(xxx+DBGrid1.Datasource.Dataset.Fields[2].AsString);
end;

Martin Ben

-----Puvodni zprava-----
Od: cYd [mailto:cyd(zv)seznam(tec)cz]

Hezky den,
pardon, ze zase otravuju, ale mam nasledujici problem:

dbmemo1.text:= dbmemo1.text+
DBGrid1.Datasource.Dataset.Fields[0].AsString+'
';
dbmemo1.selstart:=50;
dbmemo1.text:=dbmemo1.text+dbgrid1.datasource.dataset.fields[1].asstring;

timto se snazim primitivne udelat to, aby se mi data z "fields[1]"
vypisovala od 50. pozice na radce DBMemo...bohuzel jsou vsak vzdy posunuta
podle poctu znaku u "fields[2]" ...a ja potrebuji, aby pokazde zacinal zapis
"fields[2]" na pozici 50....

TPopupMenu

[*] tomsir1.edu(zv)mail.cez(tec)cz - 8.2.2002 11:37:38


Resim malou zapeklitost ..

... na TForm dynamicky umistuji komponenty TLabel, ktere rozlisuji pomoci
hodnoty ulozene v property Tag .
Do property PopupMenu tech dynamickych TLabel umistuji propojeni na
komponentu TPopupMenu ... potud vse OK, problem nastava, ze pri vyvolani
popup menu a vyberu nejake volby potrebuji rozlisit /podle hodnoty v Tag/,
na kterem TLabelu bylo stisknuto prave tlacitko mysi a podle toho provest
dalsi akce .. jak na to ???


Diky za rady

Radegast


D4+WinXP

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 8.2.2002 11:41:16


----- Original Message -----
From: "Zdenek Brejsa" <prog(zv)hjsoft(tec)cz>> Ahoj
> Zkusil jsem jak se chova muj program napsany v D4 (+BDE+IB6.0) pod WinXP.
A
> zjistil jsem ze pri spusteni to nahlasi chybu:
> "Vstupni bod procedury ThunkConnected32 se nepodarilo v dynamicky
> propojovane knihovne kernel32.dll nalezt."
> ale pak to normalne nabehne.
>
> O co jde ?

Thunkovani se pouziva pro volani funkci z 16bitovych DLL, samozrejme pokud
bys neco takoveho pouzival asi bys o tom vedel. Jednou z takovych veci je
napr.
programove zjistovani volnych resourcu (ma smysl pouze u Win9x), nedelas
to ve svem programu?

Martin Schayna

Pritomnost debuggeru v pameti

[*] Milan ��ek <Cizek.Milan(zv)seznam(tec)cz> - 08.2.2002 12:00:02

> Jak muze program zjistit ze je debugovan...

Uz si presne nevzpominam, ale mam takovy dojem, ze v dobe debugingu
je procesor prepnut do nejakeho "jineho stavu". Neznam principy
dnesnich CPU, ale matne si pamatuju, ze na to byl snad nejaky FLAG v
priznakovem registru procesoru. Jestli to uz neplati, tak se omlouvam
- jen jsem oprasil par vzpominek na skolu. :-)

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

______________________________________________________________________
http://www.mistral(tec)cz Internet po kabelovce: rychlost a� 320 kb.s-1,
cena od 1,36 K�/hod., neomezen� p�enos dat, pro prvn�ch 300 instalace zdarma


ClientDataSet, Locate pres string polozku

[*] Michal Sefcik <sefcik(zv)benefitcz(tec)cz> - 8.2.2002 12:02:19

Pokud myslis Options primo u metody Locate, pak samozrejme [];
Vyhledavam PK.


----- Puvodn� zpr�va -----
Od: "Ben, Martin (CAP, GCF)" <Martin.Ben(zv)gecapital.com>> Jak je nastaveny parametr Options ?
>
> Martin Ben
>
> > -----Puvodni zprava-----
> > Od: Michal Sefcik [mailto:sefcik(zv)benefitcz(tec)cz]
> >
> > Nevim, na co jdu spatne, ale mam velke problemi s locatem v
> > clientdatasetu
> > nad ADODatasetem. Pokud je locatovaci polozka typu Integer, je vse v
> > poradku.


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

TPopupMenu

[*] Jaroslav Sipek <jaroslav.sipek(zv)idea(tec)cz> - 8.2.2002 12:20:09

> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz]On Behalf Of
> tomsir1.edu(zv)mail.cez(tec)cz
>
> ... na TForm dynamicky umistuji komponenty TLabel, ktere
> rozlisuji pomoci
> hodnoty ulozene v property Tag .
> Do property PopupMenu tech dynamickych TLabel umistuji propojeni na
> komponentu TPopupMenu ... potud vse OK, problem nastava, ze
> pri vyvolani
> popup menu a vyberu nejake volby potrebuji rozlisit /podle
> hodnoty v Tag/,
> na kterem TLabelu bylo stisknuto prave tlacitko mysi a podle
> toho provest
> dalsi akce .. jak na to ???

Ahoj,
muzes to udelat napr. takto:

TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
PopupMenu1: TPopupMenu;
MI1: TMenuItem;
procedure PopupMenu1Popup(Sender: TObject);
procedure LabelXMouseDown(Sender: TObject; Button: TMouseButton; Shift:
TShiftState; X, Y: Integer);
private
Lab: TLabel;
public
end;

procedure TForm1.PopupMenu1Popup(Sender: TObject);
begin
ShowMessage(IntToStr(Lab.Tag));
end;

procedure TForm1.LabelXMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if (Button = mbRight ) and (Sender is TLabel) then
Lab := TLabel(Sender);
end;

Proceduru LabelXMouseDown je nutne priradit udalosti OnMouseDown
jednotlivych Labelu.

S pozdravem
Ing. Jaroslav Sipek
IDEA spol. s r.o.
mailto:jaroslav.sipek(zv)idea(tec)cz
http://www.idea(tec)cz

TEdit pro TIME

[*] Robert Plz�k <rpvp(zv)vagnerplast(tec)cz> - 8.2.2002 12:44:33

Ahoj,
nevite nekdo o komponente na editaci casu HH:MM:SS s UpDown sipkami, ktere
by menily zvlast hodiny, minuty a nebo sec. podle polohy kurzoru v editu?


Robert Plz�k

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


Viac SQL prikazov naraz (ADOCommand.Execute)

[*] Ondrej Krsko <krsko(zv)gjh.sk> - 8.2.2002 12:52:48



> Pokud je to jak na MS SQL, tak funguje i hezci zapis :)
> DELETE FROM listky WHERE predstavenie = 1 AND miesto_id in (340, 339)
>
> Jinak v tom puvodni prikladu se mi nezdal ten strednik, ale neznam
> styl prace v MS Access a ADO.

Ano, to suhlasim, ze sa to da aj takto.... V podstate som ale celkom dobre
nepopisal moj problem, pretoze ja potrebujem VKLADAT, nie MAZAT... s mazanim
sa to takto da, ale ked potrebujem vela INSERTOV ????> 6.2.2002 Jakub Dusek:
> > DELETE FROM listky WHERE predstavenie = 1 AND (miesto_id =
> > 340 or miesto_id=339)
>
> >> Ahoj,
> >> v jednom programe potrebuje vlozit do databazy viac zaznamov naraz, ked
to
> >> robim postupne, trva to dost dlho. chcel by som to urobit nejako naral,
> > teda
> >> napriklad takto:
> >>
> >> SQL:='DELETE FROM listky WHERE predstavenie = 1 AND miesto_id =
> >> 340;'+#13#10;
> >> SQL:=SQL + 'DELETE FROM listky WHERE predstavenie = 1 AND miesto_id =
> >> 339;'+#13#10;
> >> DataModule1.ADOCommand.CommandText:=SQL;
> >> DataModule1.ADOCommand.Execute;
> >>
> >> (samozrejme, ze to nefunguje - inak by som nepisal:-)
> >> Skusal som tie dotazy oddelit bodkociarkou, #13#10 alebo prikazom GO,
ale
> >> nic nepomohlo...
> >> Pouzivam MS Access a ADO.

Interbase - problem na W2000 SP2

[*] Slavomir Skopalik <skopalik(zv)hlubocky.del(tec)cz> - 8.2.2002 13:08:16

Ano, pri instalaci Clienta IB5.6, problem jsem proste ignoroval. Pro spravny beh
klienta jsou treba dve veci: gds32.dll (ke svym aplikacim dodavam vlasni a prejmenovane)
a zapsat do services toto:
gds_db 3050/tcp # InterBase Server


Slavek

> Nazdar,
>
> narazil som na problem pri instalacii Interbase ver. WI-V5.5.0.742 na W2000
> SP2. (Chodi mi to bez problemov na W98, W2000, W2000 SP1), ale pri W2000 SP2
> US vypise pri instalacii: chyba v subore setupapi.dll (ako keby mu chybala
> nejaka funkcia) a padne instalacia. Podarilo sa mi to raz opravit s velkymi
> problemami za pomoci prekopirovania tejto kniznice z instalacie IB6 ale je
> to dost neobvykly postup. Stretol sa s tym niekto ?
>
> (Skusal som to na 2 roznych PC (Athlon/Celeron))
>

ClientDataSet, Locate pres string polozku

[*] Ben, Martin (CAP, GCF) <Martin.Ben(zv)gecapital(tec)com> - 8.2.2002 13:27:23

V tom pripade si dovolim ocitovat cast helpu:

loCaseInsensitive - Key fields and key values are matched without regard to
case.

loPartialKey - Key values can include only part of the matching key field
value; for example, 'HAM' would match both 'HAMM' and 'HAMMER.'

Zvlaste u polozek typu string (varchar) by si dovolil upozornit na
uzitecnost Options.

Martin Ben


> -----Puvodni zprava-----
> Od: Michal Sefcik [mailto:sefcik(zv)benefitcz(tec)cz]
>
>
> Pokud myslis Options primo u metody Locate, pak samozrejme [];
> Vyhledavam PK.
>
>
> ----- Puvodn� zpr�va -----
> Od: "Ben, Martin (CAP, GCF)" <Martin.Ben(zv)gecapital.com>
>
>
> > Jak je nastaveny parametr Options ?
> >
> > Martin Ben


TEdit pro TIME

[*] Ben, Martin (CAP, GCF) <Martin.Ben(zv)gecapital(tec)com> - 8.2.2002 13:32:58

Od D4 je na palete Win32 komponenta TDateTimePicker a u ni nastavit
vlastnost Kind := dtkTime.

Martin Ben

> -----Puvodni zprava-----
> Od: Robert Plz�k [mailto:rpvp(zv)vagnerplast(tec)cz]
>
> Ahoj,
> nevite nekdo o komponente na editaci casu HH:MM:SS s UpDown
> sipkami, ktere
> by menily zvlast hodiny, minuty a nebo sec. podle polohy
> kurzoru v editu?

Crypto API

[*] Sula Milos <milos.sula(zv)oku-su(tec)cz> - 8.2.2002 13:45:02

ahoj nevite nekdo proc mi vraci funkce CryptExportKey v bufferu prazdno ? Pouzivam JEDI unitu wcrypt2.pas
dik

Milos

var hProv:HCRYPTPROV;
hKey:HCRYPTKEY;
pbKeyBlob:PByte;
dwKeyBlobLen:ulong;
fh,res:integer;
begin
if not CryptAcquireContext((zv)hProv, nil, nil, PROV_RSA_FULL, 0) then
begin
if GetLastError <> NTE_KEYSET_NOT_DEF then Exit;
if not CryptAcquireContext((zv)hProv, nil, nil, PROV_RSA_FULL, CRYPT_NEWKEYSET)
then Exit;
end;
CryptGenKey(hProv,CALG_DES,CRYPT_EXPORTABLE+$2000000,(zv)hKey);
pbKeyBlob:=AllocMem(1024);
dwKeyBlobLen:=84;
CryptExportKey (hKey, 0, PUBLICKEYBLOB, 0, pbKeyBlob,(zv)dwKeyBlobLen);
fh:=FileCreate('klic.pub');
FileWrite(fh,pbKeyBlob^,dwKeyBlobLen);
FileClose(fh);

Viac SQL prikazov naraz (ADOCommand.Execute)

[*] ing. Pavel Zilinec <zilinec(zv)email(tec)cz> - 8.2.2002 13:48:53

Tak potom ja toto na SQL resim jednoduchym zpusobem:

insert Tabulka (Sloupec1, Sloupec2)
select Hodnota1, Hodnota11
union select Hodnota2, Hodnota22
union select Hodnota3, Hodnota33
...

Doufam, ze to pobezi i u Tebe

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

8.2.2002 Ondrej Krsko:>> Pokud je to jak na MS SQL, tak funguje i hezci zapis :)
>> DELETE FROM listky WHERE predstavenie = 1 AND miesto_id in (340, 339)
>> Jinak v tom puvodni prikladu se mi nezdal ten strednik, ale neznam
>> styl prace v MS Access a ADO.

> Ano, to suhlasim, ze sa to da aj takto.... V podstate som ale celkom dobre
> nepopisal moj problem, pretoze ja potrebujem VKLADAT, nie MAZAT... s mazanim
> sa to takto da, ale ked potrebujem vela INSERTOV ????

ClientDataSet, Locate pres string polozku

[*] Michal Sefcik <sefcik(zv)benefitcz(tec)cz> - 8.2.2002 14:20:39

Dekuju za radu. Ver mi, ze takovy neandrtalec zase nejsem.
Vyhledavam primarni klic (prip. polozky, kde potrebuji, aby vyhledal
skutecne prave jen tu moji hodnotu); kdyz chci vyhledat MAKRO,
potrebuji dostat skutecne MAKRO, ne treba MAKROMEDIA.

Je to vubec podivne chovani: v Db-aware komponente vidim ze serveru
nactenou polozku typu Char(10) "A " a vetsina metod ADO datasetu
pracuje s takovouto hodnotou. Naproti tomu metoda Field.AsString mi
vraci jiz hodnotu orezanou o mezery a ja ji tak musim pracne pred Locatem
mezerami zpetne doplnovat.

Jinak dekuji za snahu pomoci.

PS: Mezitim jsem narazil na dalsi problem ve vztahu ClientDataSet a ADO
DataSet - predavani NULL hodnoty parametru typu String je prakticky
nemozne. Snazim se to obchazet, nicmene jsou to velice otravne chyby.


----- Puvodn� zpr�va -----
Od: "Ben, Martin (CAP, GCF)" <Martin.Ben(zv)gecapital.com>> V tom pripade si dovolim ocitovat cast helpu:
>
> loCaseInsensitive - Key fields and key values are matched without regard
to
> case.
>
> loPartialKey - Key values can include only part of the matching key field
> value; for example, 'HAM' would match both 'HAMM' and 'HAMMER.'
>
> Zvlaste u polozek typu string (varchar) by si dovolil upozornit na
> uzitecnost Options.
>
> Martin Ben
>
>


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

Ovladani sluzby

[*] Martinec <martin108(zv)post(tec)cz> - 8.2.2002 14:57:16

Potrebuji nejak online ovladat a monitorovat sluzbu, kterou jsem udelal. Spustit,zastavit a pozastavit bych ji umel. Potrebuji vsak i menit parametry a zjistovat jeji stav pokud bezi - proste potrebuji udelat front-end sluzby. Nevim vsak jak na to.

Predem dekuji za kazdou radu

Martinec


Params

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 8.2.2002 15:07:18

Ahoj,

mam takovyhle problem. V IBSQL komponente je nejaky SQL
prikaz s nejakymi parametry. Potrebuji nyni ten samy prikaz
provest v jinem IBSQL. Jak ho do nej prevest? Nemam problem do
druheho IBSQL dostat SQL dotaz, ale ty parametry. Property
Params je jen pro cteni, takze nelze vzit Params puvodniho IBSQL
a priradit je do druheho. Dokonce ani Params.AsXSQLDA, coz by
podle helpu melo fungovat, nefunguje - i to se tvari jen jako read-
only.

Text SQL prikazu i parametry se ruzne meni (pocty, typy...).

Jak na to?

Dik.

David Lebeda


Params

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 8.2.2002 15:18:17

zkus:
IBSQL2.Params.AssignValues(IBSQL1.Params);

u TIBQuery mi to tak funguje.

dekuji PeC(zv)

Viac SQL prikazov naraz (ADOCommand.Execute)

[*] Ondrej Krsko <krsko(zv)gjh.sk> - 8.2.2002 15:41:54

no, skoda, ale nefunguje...
nebezi dokonca ani:

insert Tabulka (Sloupec1, Sloupec2) select Hodnota1, Hodnota11
(Syntakticka chyba v INSERT INTO prikaze, General SQL Error)

takze Access asi taketo nieco nepozna...

----- Original Message -----
From: "ing. Pavel Zilinec" <zilinec(zv)email(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Friday, February 08, 2002 1:48 PM
Subject: Re: Viac SQL prikazov naraz (ADOCommand.Execute)> Tak potom ja toto na SQL resim jednoduchym zpusobem:
>
> insert Tabulka (Sloupec1, Sloupec2)
> select Hodnota1, Hodnota11
> union select Hodnota2, Hodnota22
> union select Hodnota3, Hodnota33
> ...
>
> Doufam, ze to pobezi i u Tebe
>
> ------
> ing. Pavel Zilinec
> mailto:zilinec(zv)email(tec)cz
>
> 8.2.2002 Ondrej Krsko:
>
> >> Pokud je to jak na MS SQL, tak funguje i hezci zapis :)
> >> DELETE FROM listky WHERE predstavenie = 1 AND miesto_id in (340, 339)
> >> Jinak v tom puvodni prikladu se mi nezdal ten strednik, ale neznam
> >> styl prace v MS Access a ADO.
>
> > Ano, to suhlasim, ze sa to da aj takto.... V podstate som ale celkom
dobre
> > nepopisal moj problem, pretoze ja potrebujem VKLADAT, nie MAZAT... s
mazanim
> > sa to takto da, ale ked potrebujem vela INSERTOV ????

Jak sestavit SQL dotaz

[*] Mephisto <mephisto(zv)akvila(tec)cz> - 8.2.2002 15:55:18

Potrebuji sestavit select se kterym si nevim rady pokusinm se vysvetlil
situaci.

Tabulka1 ID, Nazev
Tabulka2 ID, IDTabulka1, IDTabulka3
Tabulka3 ID, Storno

Potrebuji udelat select vsech nazvu s Tabulky1 ktere se nevyskytuji v Tabuce
2 ale zaroven pokud se vyskytuji overit v tabulce 3 jestli neni zaznam
stornovan. Nevim jestli jsem dobre popsal situaci pokusim se to nastinit na
datech.

Tabulka 1
ID - Nazev
1 - A
2 - B
3 - C

Tabulka 2
ID - IDT1 - IDT3
1 - 1 - 1
2 - 3 - 2

Tabuklka 3
ID - Storno
1 - Ne
2 - Ano

SELECT = B,C protoze
A se nezobrazi protoze se vyskytuje v tabulce 2 a neni stornovan v t3
B protoze se nevyskytuje v t2
C se zobrazi je sice uvedeno v t2 ale v t3 je stornovano takze ho je treva
zahrnout do vysledku

Jak na to.
Diky za kazdou inspiraci uz jsem v koncich


HEX-->String

[*] Peter Surovy <psurovy(zv)uevora.pt> - 8.2.2002 15:08:17 -0000

Ahoj
mam asi taku amatersku otazku
ale ako prevediem hexadecimalny retazec
na normalny string. resp na nieco citatelne?

Napr: 424547494E3A5643414C454E4441520D0A56455253494F4E3A312E300D0A4245
taketo nieco na
citatelnu verziu.
Vdaka s pozdravom
Peter Surovy


TWebBrowser a ErrorPage

[*] <petr_kl(zv)centrum(tec)cz> - 8.2.2002 16:43:49

ahoj,

pouzivam komponentu TEmbeddedWb (rozsireni TWebBrowser) a potreboval bych
nahradit standardni chybove stranky jako 'The page cannot be displayed', ...
svymi vlastnimi, coz se mi nedari. Poradi mi nekdo?

Diky,
Petr

D5, IE5.0

HEX-->String

[*] Jakub Dusek <jdev(zv)seznam(tec)cz> - 8.2.2002 16:47:46

Projed to cely po dvou znacich a pro kazdou dvojici zavolej neco jako:

function HexToInt (s: string): Integer;
const Hex : array ['A'..'F'] of Integer = (10,11,12,13,14,15);
var i : Integer;
begin
Result := 0;
for i := 1 to Length (s) do
begin
if s [i] < 'A' then Result := Result * 16 + Ord (s [i]) - 48
else
Result := Result * 16 + Hex [s [i]];
end;
end;

Jakub Dusek

-------------------------------------------
Homepage : http://dusek.zde(tec)cz
Phone : +420604615795
Sms email : jakub.dusek(zv)click(tec)cz
Icq : 86063232
Apps : Add/Remove Manager, Charmaper,
Sms GateKeeper
-------------------------------------------

From: "Peter Surovy" <psurovy(zv)uevora.pt>> Ahoj
> mam asi taku amatersku otazku
> ale ako prevediem hexadecimalny retazec
> na normalny string. resp na nieco citatelne?
>
> Napr: 424547494E3A5643414C454E4441520D0A56455253494F4E3A312E300D0A4245
> taketo nieco na
> citatelnu verziu.
> Vdaka s pozdravom
> Peter Surovy
>
>

Jak sestavit SQL dotaz

[*] Lstiburek Pavel <Lstiburek(zv)ceb(tec)cz> - 8.2.2002 16:59:04

Napr. takto:
------------

SELECT Tabulka1.* FROM Tabulka1 LEFT JOIN Tabulka2 ON Tabulka1.ID =
Tabulka2.IDTabulka1
LEFT JOIN Tabulka3 ON Tabulka1.ID =
Tabulka3.ID
WHERE Tabulka2.ID is null
AND ( Tabulka3.Storno IS NULL OR Tabulka3.Storno = Ne)

POZNAMKA: neni mi jasne na co se vaze sloupec ID tabulky3 na Tabulku1 (viz
priklad) nebo na Tabulku2 ?

Pavel

> Potrebuji sestavit select se kterym si nevim rady pokusinm se
> vysvetlil
> situaci.
>
> Tabulka1 ID, Nazev
> Tabulka2 ID, IDTabulka1, IDTabulka3
> Tabulka3 ID, Storno
>
> Potrebuji udelat select vsech nazvu s Tabulky1 ktere se
> nevyskytuji v Tabuce
> 2 ale zaroven pokud se vyskytuji overit v tabulce 3 jestli neni zaznam
> stornovan. Nevim jestli jsem dobre popsal situaci pokusim se
> to nastinit na
> datech.
>
> Tabulka 1
> ID - Nazev
> 1 - A
> 2 - B
> 3 - C
>
> Tabulka 2
> ID - IDT1 - IDT3
> 1 - 1 - 1
> 2 - 3 - 2
>
> Tabuklka 3
> ID - Storno
> 1 - Ne
> 2 - Ano
>
> SELECT = B,C protoze
> A se nezobrazi protoze se vyskytuje v tabulce 2 a neni stornovan v t3
> B protoze se nevyskytuje v t2
> C se zobrazi je sice uvedeno v t2 ale v t3 je stornovano
> takze ho je treva
> zahrnout do vysledku


HEX-->String

[*] Milan Schembera <milan(zv)missoftware(tec)cz> - 8.2.2002 17:00:22

Nebo:

for j := 1 to Length(S) div 2 do
Result := Result + Chr(StrToInt('$' + Copy(S, (j * 2) - 1, 2)));

S = Zdrojovy string
Result: Vysledek


S pozdravem a pranim hezkeho dne

Milan Schembera
MISSOFTWARE Lanskroun

tel. 0 776 677 776
tel. 0467 521 555

http://www.missoftware(tec)cz
mailto:info(zv)missoftware(tec)cz

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz]On Behalf Of Jakub Dusek
> Sent: Friday, February 08, 2002 4:48 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: HEX-->String
>
>
> Projed to cely po dvou znacich a pro kazdou dvojici zavolej neco jako:
>
> function HexToInt (s: string): Integer;
> const Hex : array ['A'..'F'] of Integer = (10,11,12,13,14,15);
> var i : Integer;
> begin
> Result := 0;
> for i := 1 to Length (s) do
> begin
> if s [i] < 'A' then Result := Result * 16 + Ord (s [i]) - 48
> else
> Result := Result * 16 + Hex [s [i]];
> end;
> end;
>
> Jakub Dusek
>
> -------------------------------------------
> Homepage : http://dusek.zde(tec)cz
> Phone : +420604615795
> Sms email : jakub.dusek(zv)click(tec)cz
> Icq : 86063232
> Apps : Add/Remove Manager, Charmaper,
> Sms GateKeeper
> -------------------------------------------
>
> From: "Peter Surovy" <psurovy(zv)uevora.pt>
>
>
> > Ahoj
> > mam asi taku amatersku otazku
> > ale ako prevediem hexadecimalny retazec
> > na normalny string. resp na nieco citatelne?
> >
> > Napr:
> 424547494E3A5643414C454E4441520D0A56455253494F4E3A312E300D0A4245
> > taketo nieco na
> > citatelnu verziu.
> > Vdaka s pozdravom
> > Peter Surovy
> >
> >

Jak sestavit SQL dotaz

[*] Martinec <martin108(zv)post(tec)cz> - 8.2.2002 17:02:27

Z ruky bych to videl asi takto:

B)
select A.* from table1 A
where A.ID not in (select B.IDT1 from table2 B)
or A.ID in (select B.IDT1 from table2 B where B.IDT3=2)

B)
select A.* from table1 A
where A.ID not in (select B.IDT1 from table2 B)
or A.ID in (select B.IDT1 from table2 B where B.IDT3 in (
select C.ID from table3 where C.Storno='Ano'))

Ale za vysledek nerucim :-)

Martinec


> -----Puvodni zprava-----
> Od: Mephisto [mailto:mephisto(zv)akvila(tec)cz]
>
> Potrebuji udelat select vsech nazvu s Tabulky1 ktere se
> nevyskytuji v Tabuce
> 2 ale zaroven pokud se vyskytuji overit v tabulce 3 jestli neni zaznam
> stornovan. Nevim jestli jsem dobre popsal situaci pokusim se
> to nastinit na
> datech.
>
> Tabulka 1
> ID - Nazev
> 1 - A
> 2 - B
> 3 - C
>
> Tabulka 2
> ID - IDT1 - IDT3
> 1 - 1 - 1
> 2 - 3 - 2
>
> Tabuklka 3
> ID - Storno
> 1 - Ne
> 2 - Ano
>
> SELECT = B,C protoze
> A se nezobrazi protoze se vyskytuje v tabulce 2 a neni stornovan v t3
> B protoze se nevyskytuje v t2
> C se zobrazi je sice uvedeno v t2 ale v t3 je stornovano
> takze ho je treva zahrnout do vysledku


LED na keyb

[*] David Kraina <DKx(zv)Seznam(tec)cz> - 8.2.2002 17:15:30

Nevite nekdo, jak programove nastavovat NumLock+CapsLock+ScrolLock, ale pod
Win XP ? Standardni prikazy...

procedure TMyForm.Button1Click(Sender: TObject);
Var
KeyState : TKeyboardState;
begin
GetKeyboardState(KeyState);
if (KeyState[VK_NUMLOCK] = 0) then
KeyState[VK_NUMLOCK] := 1
else
KeyState[VK_NUMLOCK] := 0;
SetKeyboardState(KeyState);
end;

...nejedou. Diky za kazdou radu.

David Kraina, DKx
vedouc� n.v.t. MX-3
http://MX-3.w3.to
Support.MX-3(zv)Seznam(tec)cz


Jak sestavit SQL dotaz

[*] Mephisto <mephisto(zv)akvila(tec)cz> - 8.2.2002 17:24:21

To nevim nejsem zadnej DB expert a podedil jsem ji po svem predchudci.

POZNAMKA: neni mi jasne na co se vaze sloupec ID tabulky3 na Tabulku1 (viz
priklad) nebo na Tabulku2 ?

Pavel

Open/Close CD

[*] David Kraina <DKx(zv)Seznam(tec)cz> - 8.2.2002 17:34:28

Jelikoz jsem provadel preinstalaci souboru, a samozdrejme bez zalohy, tak mi
prosim poslete jeste jednou ten kod na otevreni a zavreni CD mechaniky dle
pismene. Moc diky.
DKx.

FLASHFILER - AddIndex ----- sorry

[*] bleak <bleak(zv)atlas(tec)cz> - 8.2.2002 17:38:51

tak jsem zkusil pouzit proceduru AddExpFilter na tabulku FlashFileru.
Bohuzel to pouzit nejde. Procedura AddExpFilter pouziva funkci DbiAddIndex,
ktera je v unitu BDE. DbiAddIndex vyzaduje parametr tabulky dbhandle, ktery
u tabulky FlashFileru chybi.
Takze ano, indexy se pridavaji stejne jako v BDE, pokud pridavate bezny
index. Pokud chcete index s podminkou, tak to nelze...

Proto znovu prosim nekoho z ucastniku konference o maly priklad, jak pridat
index s podminkou tabulce FlashFileru tj. ekvivalent tohoto:
AddExpFilter(Table,'ID', 'ID', 'KOD=''1''');

bleak

> Indexy se ve FlashFileru pridavaji stejne jako v BDE. Zmena struktury se
> provadi zrovna tak stejne jako v BDE. V koupene verzi FlashFileru jsou
> kompletni zdrojaky take ke FlashFiler Exploreru a tam se to da vsechno
> vycist, jak to dela. Je to jednoduche. Jinak FlashFiler podporuje i tzv.
> UserIndexy v uzivatelske DLL, kde pouzije primo uzivatelske funkce pro
> trideni.
>
> S pozdravem
> Petr Zahradnik, pocitacovy expert

HEX-->String

[*] Michal <delphi-konference(zv)bcpraha(tec)com> - 8.2.2002 17:53:34

V delphi 5 jsou ukryty fce HexToBin a BinToHex. Tyto fce prevadi hex
string na pole bytu a zpet.

Michal

> Ahoj
> mam asi taku amatersku otazku
> ale ako prevediem hexadecimalny retazec
> na normalny string. resp na nieco citatelne?
>
> Napr: 424547494E3A5643414C454E4441520D0A56455253494F4E3A312E300D0A4245
> taketo nieco na
> citatelnu verziu.
> Vdaka s pozdravom
> Peter Surovy
>

Viac SQL prikazov naraz (ADOCommand.Execute)

[*] Jurica Marek <Marek.Jurica(zv)technodat(tec)cz> - 8.2.2002 18:15:32

> From: Ondrej Krsko [mailto:krsko(zv)gjh.sk]
> no, skoda, ale nefunguje...
> nebezi dokonca ani:
>
> insert Tabulka (Sloupec1, Sloupec2) select Hodnota1, Hodnota11
> (Syntakticka chyba v INSERT INTO prikaze, General SQL Error)
>
> takze Access asi taketo nieco nepozna...

Ale pozna, jen to chce napsat tam i to INTO ;)
tzn.
insert INTO Tabulka (Sloupec1, Sloupec2) select Hodnota1, Hodnota11

Marek Jurica
Pozn.
Odzkouseno na Access2000, ale nevidim duvod, proc by to neslo i na starsim.

Pad na SIGSEGV - problem nalezen

[*] David Janko <djanko(zv)infoware(tec)cz> - 8.2.2002 18:17:23

Takze po naprosto neuspesnem krokovani (ze ktereho sem na nic moc rozumneho
neprisel - radeji uz debuggeru v D nebudu tak moc verit) sem metodou
pokus/omyl dosel k tomu, ze kdyz radek:

fieldName := String(ComboFields.Items.Objects[ComboFields.ItemIndex]);
// zjisteni jmena vybraneho sloupce v ComboBoxu

zaremuju a nahradim (pokusne) radkem:
fieldName := 'UnitDesc'; // natvrdo pro test

tak se program/pamet prestane sypat a chodi to.

A protoze se to nesype vzdy, tak evidentne volani toho sameho kodu v D
nedela vzdy to same :(((. Setkal se s tim uz nekdo ? Lze nejak ten to
vytazeni hodnoty z ComboBoxu obejit nebo v nem mam chybu (nasel jsem tuto
metodu zde v konferenci) ? (Potrebuju do combo ulozit ceske nazvy sloupcu
asociovane se skutecnymi Name).

Dekuji.

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

Interbase - problem na W2000 SP2

[*] Lud�k ZITA <konference(zv)sales(tec)cz> - 8.2.2002 18:26:11


----- Original Message -----
From: "Slavomir Skopalik" <skopalik(zv)hlubocky.del(tec)cz>
>.... Pro spravny beh
> klienta jsou treba dve veci: gds32.dll (ke svym aplikacim dodavam vlasni a
prejmenovane)
> a zapsat do services toto:
> gds_db 3050/tcp # InterBase Server
>

Ahoj.
Muzu se zeptat, proc a co upravujes v gds32.dll ?

Ludek


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


Pad na SIGSEGV - problem nalezen

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 8.2.2002 18:59:22

From: "David Janko" <djanko(zv)infoware(tec)cz>
> Takze po naprosto neuspesnem krokovani (ze ktereho sem na nic moc rozumneho
> neprisel - radeji uz debuggeru v D nebudu tak moc verit) sem metodou
> pokus/omyl dosel k tomu, ze kdyz radek:
>
> fieldName := String(ComboFields.Items.Objects[ComboFields.ItemIndex]);
> // zjisteni jmena vybraneho sloupce v ComboBoxu
>
> zaremuju a nahradim (pokusne) radkem:
> fieldName := 'UnitDesc'; // natvrdo pro test
>
> tak se program/pamet prestane sypat a chodi to.

Ahoj,

jiste, protoze nemuzes takto pracovat se stringem. Skutecnost ze to 'funguje'
s pouzitim konstanty je pouze vedlejsi efekt implementace stringu, viz nize.

To co delas je totiz klasicky pripad odkazovani se na jiz dealokovanou pamet.
String je pouze *ukazatel* na pamet kterou takto spravuje prekladac, lze to
zjednodusene popsat asi takto:

procedure Something;
var
S: string;
begin
S := <text> // provede se alokace pameti a do ni se vlozi dany text
ComboFields.Items.AddObject(.., Pointer(S)) // ulozis pointer na tuto pamet
// zde prekladac vlozi kod pro uvolneni pameti alokove pro S jelikoz uz neni
// potreba, je mimo viditelnost
end;

Ukazatel ktery si takto ulozil to TStrings.Objects je tedy uz neplatny.

Moznym resenim je budto pouziti jednoducheho objektu ktery bude mit jednu
string property nebo ulozeni retezce jako null terminated stringu do predem
alokovane pameti. V obou dvou pripadech pak nesmis zapomenout na uvolneni
objektu (nebo pameti). Priklad reseni s null terminated stringem je tady:
http://delphi(tec)cz/soubor.asp?rok=1999&mesic=feb&den=07&soubor=dlfaaaar.htm

Petr Vones


Jak uzamknout klavesnici + povolit HotKey

[*] Milan ��ek - 8.2.2002 20:04:10

ahoj,
potreboval bych uzamknout vsechny klavesy krome urcite kombinace, napr.
CTRL+ALT+F11. V archivu jsem nasel

winexec('rundll32 keyboard,disable',sw_normal);
winexec('rundll32 mouse,disable',sw_normal);

To se mi ale vubec nelipi, navic to zakaze uplne vsechno a bude to funkcni
asi pouze na Win9x (potrebuji NT a 2k). Nejlepsi by byla primo nejaka API.
Nevite nekdo o necem takovem? Diky

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


LED na keyb

[*] Milan ��ek - 8.2.2002 20:14:00

> Nevite nekdo, jak programove nastavovat
> NumLock+CapsLock+ScrolLock, ale pod
> Win XP ? Standardni prikazy...

ahoj,

procedure SetXXXLockKeyState(KeyCode: Byte; State: Boolean);
const ValidKeyCodes = [VK_NUMLOCK,VK_CAPITAL,VK_SCROLL];
var KeyState: TKeyboardState; ScanCode: DWORD;
begin
if not KeyCode in ValidKeyCodes then Exit;
GetKeyboardState(KeyState);
if Boolean(KeyState[KeyCode]) xor State then
begin
if (Win32Platform = VER_PLATFORM_WIN32_WINDOWS) and (KeyCode =
VK_NUMLOCK) then
begin
KeyState[KeyCode]:=Byte(State);
SetKeyboardState(KeyState);
end else
begin
ScanCode:=MapVirtualKey(KeyCode,0);
keybd_event(KeyCode,ScanCode,KEYEVENTF_EXTENDEDKEY,0);
keybd_event(KeyCode,ScanCode,KEYEVENTF_EXTENDEDKEY or
KEYEVENTF_KEYUP,0);
end;
end;
end;

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


Detekce debuggeru

[*] Milan ��ek - 8.2.2002 20:16:48

ahoj,
jeste bych se rad dovedel par detailu. Predpokladam, ze se da debugger
pripojit jiz k bezicimu programu, takze pouha detekce pri startu asi nebude
to prave. Jak se divate na reseni spoustet tu testovaci proceduru ve
zvlastnim threadu nebo timeru. Co je lepsi, nebo spise co da vice prace
pripadnemu utocnikovi. Da se samostatne vlakno z debuggeru jentak odstrelit?
Pak bych mohl udelat nejakou vzajemnou kontrolu, kdy by se treba hlidal beh
dvou vlaken navzajem.

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


LED na keyb

[*] Erik Salaj <winsoft(zv)stonline.sk> - 8.2.2002 21:32:08

> Nevite nekdo, jak programove nastavovat NumLock+CapsLock+ScrolLock, ale
pod
> Win XP ? Standardni prikazy...

pozri KeyLed komponent na http://www.cybermagic.co.nz/winsoft

Erik


TEdit - pouze tolik pismen, kolik se vejde

[*] Kan�r - 8.2.2002 22:00:28

[P��loha v souboru: V�t Jur�sek.vcf]
Potrebuju nejak udelat takovou atypickou vlastnost komponenty TEdit -
potrebuju, aby dovolila napsat pouze tolik znaku, kolik se vejde do jejiho
viditelneho policka - tj. aby neslo psat "za roh". Jsem si vedomy, ze to
bude pro kazdy text jiny pocet pismen (proporcionalni pismo) a ze to bude
zavisle na nastavenem fontu.
Vi nekdo jak na to?
Diky
VJ


FLASHFILER - AddIndex ----- sorry

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 8.2.2002 23:43:04

Puvodni zprava, kterou napsal bleak dne 8 Feb 2002:

> Proto znovu prosim nekoho z ucastniku konference o maly priklad, jak
> pridat index s podminkou tabulce FlashFileru tj. ekvivalent tohoto:
> AddExpFilter(Table,'ID', 'ID', 'KOD=''1''');

Index s podminkou FlashFiler nezna. Musis pouzit normalni index nebo
uzivatelsky index a k tomu prislusny filtr nebo range, pripadne rovnou
SQL dotaz.

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
============================================================

Identifikace message v case

[*] Milan ��ek - 8.2.2002 23:43:13

Ahoj,
narazil jsem na pro mne nevysvetlitelny problem. Muzete mi to prosim nekdo
objasnit? Diky.

const SigleInstanceUniqueMsg = 'MyUniqueMessage1';
var SigleInstanceUniqueID: DWORD;

procedure API_switch(var Message: TMessage);
begin
if Message.Msg=SigleInstanceUniqueID then ShowMessage('HWND_BROADCAST');
// -- funguje OK.

case Message.Msg of
SigleInstanceUniqueID: ShowMessage('HWND_BROADCAST'); //-- Toto
nefunguje.
end;
end;

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


Identifikace message v case

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 9.2.2002 00:26:21

From: "Milan ��ek" <cizek.milan(zv)seznam(tec)cz>
> var SigleInstanceUniqueID: DWORD;
>
> case Message.Msg of
> SigleInstanceUniqueID: ShowMessage('HWND_BROADCAST'); //-- Toto

Ahoj,

v case muzes pouzit pouze konstanty, ne promenne.

Petr Vones


Je nainstalovany IB/FB ?

[*] miromr <miromr(zv)hotmail(tec)com> - 9.2.2002 00:52:12

Zdravim vsetkych,
ako spolahlivo programovo zistim, ci v PC je nainstalovana Interbase, alebo
Firebird, pripadne aj cislo verzie?

Diky
Miro


WAV

[*] Kan�r - 9.2.2002 01:57:52

Jak nejlepe prehrat zvuk WAV z disku a nepouzit k tomu TMediaPlayer?
Pritom je podminka, ze potrebuju zjistit, kdy dany zvuk dohraje.

Mel jsem to udelane s mediaplayerem, casovac testuje, jestli je jeste
mpplaying. problem je v tom, ze po chvili pouzivani s tim, ze obcas se dany
zvuk prehraje, obcas se programove prerusi prehravani komponenta mediaplayer
zacne "zlobit".

wavy jde tusim prehravat i pres nejake MS API funkce. muze mi prosim nekdo
poslat (kousek zdrojaku nebo tip kde najit), kde by bylo prehrani zvuku,
moznost ho zastavit a test na to, zda se jeste prehrava (playback je
aktivni)?

Diky moc
VJ


Crypto API

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 9.2.2002 03:19:53

From: "Sula Milos" <milos.sula(zv)oku-su(tec)cz>
> ahoj nevite nekdo proc mi vraci funkce CryptExportKey v bufferu prazdno ?
> Pouzivam JEDI unitu wcrypt2.pas

Ahoj,

stahni si jeste CryptoAPI1.zip, tam najdes i par prikladu.

Petr Vones


WAV

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 9.2.2002 03:29:41

From: "Kan�r" <delphi(zv)obecpohori(tec)cz>
> Jak nejlepe prehrat zvuk WAV z disku a nepouzit k tomu TMediaPlayer?
> Pritom je podminka, ze potrebuju zjistit, kdy dany zvuk dohraje.
>
> Mel jsem to udelane s mediaplayerem, casovac testuje, jestli je jeste
> mpplaying. problem je v tom, ze po chvili pouzivani s tim, ze obcas se dany

Ahoj,

nez pouzivat casovac by slo asi vyuzit TMediaPlayer.OnNotify, vice viz help

Petr Vones


TEdit - pouze tolik pismen, kolik se vejde

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 9.2.2002 04:08:33

From: "Kan�r" <delphi(zv)obecpohori(tec)cz>
> Potrebuju nejak udelat takovou atypickou vlastnost komponenty TEdit -
> potrebuju, aby dovolila napsat pouze tolik znaku, kolik se vejde do jejiho
> viditelneho policka - tj. aby neslo psat "za roh". Jsem si vedomy, ze to
> bude pro kazdy text jiny pocet pismen (proporcionalni pismo) a ze to bude
> zavisle na nastavenem fontu.

Ahoj,

zjednodusene treba takhle. Jeste je treba doplnit kontrolu pri vkladani ze
schranky:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
EditText: string;
MaxWidth: Integer;
TempCanvas: TControlCanvas;
begin
if Key >= #32 then
begin
TempCanvas := TControlCanvas.Create;
try
TempCanvas.Control := TEdit(Sender);
EditText := TEdit(Sender).Text + Key;
MaxWidth := TEdit(Sender).ClientWidth - GetSystemMetrics(SM_CXBORDER);
TempCanvas.Font := TEdit(Sender).Font;
if TempCanvas.TextWidth(EditText) > MaxWidth then
Key := #0;
finally
TempCanvas.Free;
end;
end;
end;

Petr Vones


TEdit - pouze tolik pismen, kolik se vejde

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 9.2.2002 04:13:33

From: "Petr Vones" <pvones(zv)mbox.vol(tec)cz>
> MaxWidth := TEdit(Sender).ClientWidth - GetSystemMetrics(SM_CXBORDER);

Tady by melo byt vlastne:

MaxWidth := TEdit(Sender).ClientWidth - GetSystemMetrics(SM_CXBORDER) * 2;

Petr Vones


Skrolujici texty

[*] Martin Burle <mburle2(zv)volny(tec)cz> - 9.2.2002 12:42:16

Ahoj,
zkousim takovou "blbost" - ve vyloze prodejny by mel byt monitor, na kterem
pojedou porad dokola vybrane polozky, ktere jsou skladem s cenami. V postate
takove titulky.
Napadlo me, ze vytvorim stringlist, podle kazde polozky pak staticText a ty
pak jeden za druhym vyjedou ze spodniho okraje okna /bez frame, maximized/ a
zmizi zase za hornim. Prvni pokus mi funguje v podstate tak, jak ma, ale jen
na mem pocitadle /Athlon800/. Predpokladal jsem, ze do vylohy dame nejakou
starou 486 - na te je to ale straaasne pomale. Asi je potreba k tomu
pristoupit nejak jinak - prosim tedy zkusenejsi o radu.
Diky, Martin

Zdrojak:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
procedure Go;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
stop: boolean;

implementation

{$R *.dfm}

procedure TForm1.Go;
var sText: TStaticText;
f,ff,fff : integer;
list: TStringList;
begin

list:=TStringList.create;
list.LoadFromFile('List.txt');

//opakuj do AltF4
while true do begin

for f:=0 to List.Count-1 do
begin

//vytvor staticText
sText:=TStaticText.Create(Form1);
With sText do
begin
parent:=Form1;
font.Name:='Arial CE';
font.Size:=20;
//barva pozdeji podle druhu zbozi
font.Color:=clAqua;
caption:=List.Strings[f];
//pod spodnim okrajem formu
Top:=Form1.Height+30;
Left:=(Form1.Width-Width) div 2;
tag:=99;
visible:=true;
Application.ProcessMessages;
end;

//posun vsechny texty nahoru o 30bodu
For fff:=1 to 30 do
begin
ff:=0;
repeat
if stop then exit;
If Components[ff].Tag=99 then
begin
sText:=TStaticText(Components[ff]);
sText.Top:=stext.Top-1;
//uvolni odskrolovany text
If sText.Top<=-30 then
sText.Free
else Inc(ff);
end
else Inc(ff);
until ff>=Form1.ComponentCount-1;
application.ProcessMessages;
end
end;

end;

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
stop:=true;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
Form1.WindowState:=wsMaximized;
stop:=false;
Go;
end;

end.

jedna instance

[*] Roland Turcan <rolo(zv)sedas.sk> - 9.2.2002 13:35:52

skus http://delphi-jedi.org a kniznicu JCL

R.

----- Original Message -----
From: "Zden�k �t�p�nek" <zstepanek(zv)atlas(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, February 04, 2002 8:49 PM
Subject: jedna instance


> Zdravim
>
> Omlouvam se za dosti casty dotaz, ale nemam to nikde ulozeno. Potrebuji
kod,
> ktery zajisti pouze jednu instanci me apliakce. Nerad bych pouzil
> komponentu, radsi bych kod, ktery vlozim do programu.
>
> Diky
> Zdenek
>

IB & SWEEP & Linux

[*] Roland Turcan <rolo(zv)sedas.sk> - 9.2.2002 13:42:08

Spusti si CMD alebo COMMAND aby si mal prikazovu riadku a pozri ci tam
nebola hlasena nejaka chyba.

Roland.

----- Original Message -----
From: "Radek KALA" <Kala(zv)Atlas(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Wednesday, February 06, 2002 8:19 AM
Subject: IB & SWEEP & Linux


> Ahoj,
> prosim poradte mam databazi, kde jsme odstranili asi 1/3 dat a
> chtel jsem udelat sweep, ze abyy se to uklidilo. napsal jsem
> gfix jmenodatabase -sweep a ono to bezelo tak 2 sekundy a
> skoncilo. Soubor database se nezmensil, asi to nejak bezi na
> pozadi, ale jak ? kdyz napisu top, nebo ps -A tak tam nic
> podezrelyho neni.
> Muzete mi prosim nekdo vysvetlit co zse vlastne ted deje ?
>
> Dekuji ?
>
> S pozdravem Radek KALA
> BetaControl, s.r.o.
> Cerneho 58/60, 635 00
> tlf. : + 420 5 4622 3491
> fax : + 420 5 4622 3470
> GSM : + 420 603 85 75 15
>

Viac SQL prikazov naraz (ADOCommand.Execute)

[*] Ondrej Kr�ko <krsko(zv)gjh.sk> - 9.2.2002 13:56:58


> >
> > insert Tabulka (Sloupec1, Sloupec2) select Hodnota1, Hodnota11
> > (Syntakticka chyba v INSERT INTO prikaze, General SQL Error)
>

> Ale pozna, jen to chce napsat tam i to INTO ;)

INSERT [INTO] cielova_tabulka [(stlpec1,[stlpec2]...)] VALUES
(hodnota1[,hodnota2...])
teda INTO nie je povinne. (aj ked v Accesse mozno ano, nemozem to teraz
vyskusatc -ja ho tam vzdy davam).

tak ci tak, aj ked tam INTO dam alebo nedam, tak
insert INTO Tabulka (Sloupec1, Sloupec2)
select Hodnota1, Hodnota11
union select Hodnota1, Hodnota11
NEFUNGUJE

> tzn.
> insert INTO Tabulka (Sloupec1, Sloupec2) select Hodnota1, Hodnota11

Panel

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 9.2.2002 14:51:13

Jestlize umistim na komponentu Panel komponentu Edit, tak v okamziku zapisu
do Editu mi zmizi kurzor mysi a objevi se znovu az v okamziku, kdyz musi
pohnu.

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.323 / Virov� b�ze: 180 - datum vyd�n�: 8.2.2002


Ako na COM port ?

[*] Milos Veselovsky <milos(zv)seko.sk> - 9.2.2002 15:05:35

Zdravim,

pouzivam komponentu TCommPort na zistovanie stavu modemu.
Potrebujem detekovat prichadzajuci hovor. Vsetko funguje OK,
iba jeden problem, ze ten port je tym padom stale otvoreny,
a ine programy ho uz nemozu pouzivat. Cize ak chcem pripojit
internet, musim ukoncit monitorovanie a potom to uz ide.

Lenze ja by som to potreboval inak. Aby ten port nebol stale
blokovany tym monitorovacim softom. Poradte prosim, ako na to.

Vopred vdaka.

Milos Veselovsky.

Delphi a hry

[*] Martin Kasman <martinkasman(zv)pobox.sk> - 9.2.2002 15:32:14

Nemam konkretnu otazku, iba som zvedavy: je Delphi dobry programovaci jazyk
pre hry? Ako na to, ked chcem aby mi hra bezala na celej obrazovke. Robi sa
to klasicky cez form? Objekty sa mozu vkladat do Image alebo je ich lepsie
pixel po pixle vykreslit? A co 3D grafika? Su na to nejake komponenty?

Vdaka za kazdu radu.

ADMIN: Subjekty

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 9.2.2002 16:25:04

Pratele,

zkuste se vice zamyslet nad subjektem, nez poslete zpravu do konference.
Subjekty jako "Panel", "WAV", "Params", "Ako na COM port" jsou uplne na
nic. Ze subjektu musi byt na prvni pohled jasne, co je uvnitr.

Dekuji a jsem 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
============================================================

Uzivatelska komponenta a TCustomControl

[*] <mkotaska(zv)atlas(tec)cz> - 9.2.2002 17:35:31

Ahoj.
Vytvoril jsem si vlastni komponentu, odvozenou z TCustomControl, a v jejim
konstruktoru dynamicky generuji komponenty jine (TPanel). Vse funguje temer
tak, jak bych si predstavoval, krome jedne "zvlastnosti". Pokud pri navrhu
formulare vlozim na formular tuto komponentu a do ni jeste vlozim napr.
Button, je vse v poradku. Po spusteni programu je videt moje komponenta, ale
uz nejsou videk komponenty, ktere jsem na tuto moji komponentu vlozil pri
navrhu.
Pokud by nekdo vedel, jak na to, prosim odpovezte.

Dekuju.

jak napsat komponentu do MTS

[*] Petr Matejovsky <pemasoft(zv)atlas(tec)cz> - 9.2.2002 18:39:03

Zdravim

Poradi nekdo jak napsat COM+ do MTS serveru v Delphi 5 prof. ? Ve Visual
Basicu
zvolim "ActiveX DLL" napisu nejake ty Public Function, vyslednou knihovnu
zaregistruji na komponentnim serveru, pak vyuzivam ty procedury VB z ASP
stranek ...
Jak to mam udelat v Delphi ??? Snad to pujde nejak jednoduse
vysvetlit.
Prechazim z Basicu na Delphi .... (MS VC++ je slozite a VB nema optimalni
kod)

Jsem zvedav o kolik ten kod bude rychlejsi ......

Petr

Vysunuti CD

[*] Ing. Lud�k Florian <Ludek.Florian(zv)bluerose(tec)cz> - 9.2.2002 19:00:40


----- Original Message -----
From: Ing. Lud�k Florian
To: delphi-l(zv)clexpert(tec)cz
Sent: Tuesday, January 15, 2002 9:59 AM
Subject: Vysunuti CD



Cauec,

uz jsem to kdysi posilal, tak znovu...// *************** OpenCD *************************
//
// Otev�e dv��ka CD mechaniky
//
// Vstupn� hodnoty: Drive - p�smeno jednotky CD mechaniky
//
// V�stupn� hodnota: TRUE p�i �sp�n�m vysunut� CD mechaniky
//
function OpenCD(Drive: char): boolean;
var Res: MCIError;
OpenParm: TMCI_Open_Parms;
Flags: DWORD;
S: string;
DeviceID: word;
begin
Result := False;
S := Drive + ':';

Flags := mci_Open_Type or mci_Open_Element;
with OpenParm do begin
dwCallback := 0;
lpstrDeviceType := 'CDAudio';
lpstrElementName := PChar(S);
end;

Res := mciSendCommand(0, mci_Open, Flags, Longint((zv)OpenParm));
if Res <> 0 then
Exit;

DeviceID := OpenParm.wDeviceID;
try
Res := mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
if Res = 0 then
Exit;

Result := True;
finally
mciSendCommand(DeviceID, mci_Close, Flags, Longint((zv)OpenParm));
end;
end;
// ******************* CloseCD *************************
//
// Zav�e dv��ka CD mechaniky
//
// Vstupn� hodnoty: Drive - p�smeno jednotky CD mechaniky
//
// V�stupn� hodnota: TRUE p�i �sp�n�m zasunut� CD mechaniky
//
function CloseCD(Drive: char): boolean;
var Res: MCIError;
OpenParm: TMCI_Open_Parms;
Flags: DWORD;
S: string;
DeviceID: word;
begin
Result := False;
S := Drive + ':';

Flags := mci_Open_Type or mci_Open_Element;
with OpenParm do begin
dwCallback := 0;
lpstrDeviceType := 'CDAudio';
lpstrElementName := PChar(S);
end;

Res := mciSendCommand(0, mci_Open, Flags, Longint((zv)OpenParm));
if Res <> 0 then
Exit;

DeviceID := OpenParm.wDeviceID;
try
Res := mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_CLOSED, 0);
if Res = 0 then
Exit;

Result := True;
finally
mciSendCommand(DeviceID, mci_Close, Flags, Longint((zv)OpenParm));
end;
end;

Bye Ludan


----- Original Message -----
From: David Kraina <DKx(zv)Seznam(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, January 14, 2002 9:20 PM
Subject: Vysunuti CD


> Znam nekolik zpusobu jak vysunout CD, ale pri vice mechanikach vysouva
pouze
> CD s nizsim pismenem. Nevite nekdo nahodou jak vysunout CD dle pismene
> mechaniky (mam kombinaci DVD-ROM (F) + CD-RW (E) ) ? Predem diky.
>
> *********************************************************
> David Kraina, DKx
> -----------------------------
> vedouc� nez�visl�ho v�vojov�ho t�mu MX-3
> *********************************************************

jedna instance

[*] Zden�k �t�p�nek�����^��ޏ����� - 9.2.2002 20:38:23

Zdravim

Je mi vicemene jedno, jestli pouziju externi unitu (jcl) nebo komponentu.
Porad je to spousta zbytecneho kodu, ktery nepotrebuji. Vyborne funguje
tohle (z prvni odpovedi):

program pokec;

uses
Forms,
Windows, //add single
Unit1 in 'Unit1.pas' {Form1};

{$R *.RES}

var //add single
hMutex: HWND; //add single

begin
hMutex:= CreateMutex(nil, false, 'Test jednoho spu�t�n�'); //add single
if GetLastError = ERROR_ALREADY_EXISTS then Exit; //add single
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.

5 radku a je hotovo. Takze diky za odpoved.
Zdenek

----- Original Message -----

> > Omlouvam se za dosti casty dotaz, ale nemam to nikde ulozeno. Potrebuji
kod,
> > ktery zajisti pouze jednu instanci me apliakce. Nerad bych pouzil
> > komponentu, radsi bych kod, ktery vlozim do programu.
>
> Ahoj,
>
> Treba JCL http://delphi-jedi.org/Jedi:CODELIBJCL


jak napsat komponentu do MTS

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 9.2.2002 22:37:41

From: "Petr Matejovsky" <pemasoft(zv)atlas(tec)cz>
> Poradi nekdo jak napsat COM+ do MTS serveru v Delphi 5 prof. ? Ve Visual

Ahoj,

V tomto a dalsim cisle http://www.thedelphimagazine.com/conts/conts45.php o
tom byl nejaky clanek. Zdrojove kody si muzes volne stahnout:
http://www.thedelphimagazine.com/disks.php

Petr Vones

Kurzor mysi

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 10.2.2002 00:13:34

Puvodni zprava, kterou napsal Viktor Marek dne 10 Feb 2002:

> Na Formu mam Edit a v okamziku kdy do Editu zapisuji zmizi kurzor mysi.
> Objevi se jestlize pohnu mysi, nebo stisknu leve ci prave tlacitko.
>
> Muze mi nekdo rici proc k tomu dochazi a jak tomu zbranit.

To mas nastaveny tak ovladac mysi, aby ti tohle delal. Takze se podivej
na jeji nastaveni.

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
============================================================

Borland a .NET

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 10.2.2002 03:13:47

Borland Will Push .NET Out Of Windows:
http://www.sdtimes.com/news/047/story1.htm

Petr Vones


Kurzor mysi

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 10.2.2002 10:54:55


> Na Formu mam Edit a v okamziku kdy do Editu zapisuji zmizi kurzor mysi.
> Objevi se jestlize pohnu mysi, nebo stisknu leve ci prave tlacitko.
>
> Muze mi nekdo rici proc k tomu dochazi a jak tomu zbranit.

>To mas nastaveny tak ovladac mysi, aby ti tohle delal. Takze se podivej
>na jeji nastaveni.

Nevim co myslis nastavenim "ovladace mysi"
V driveru WIN2000 jsem nic nenasel.

Pomohlo ale toto drevni reseni.

procedure TForm1.Edit1Change(Sender: TObject);
begin
Edit1.cursor:=crDefault;
Edit1.cursor:=crHourGlass;
Edit1.cursor:=crDefault;
BitBtn .......
.
.
.
end;

Pricemz jsem musel do teto procedury zahrnout vsechny vizualni konponenty. I
kdyz jsem vsechny komponenty polozil na panel tak se kurzor ztracel na
tlacitkach (Edit treba chodil)

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.323 / Virov� b�ze: 180 - datum vyd�n�: 8.2.2002


Kurzor mysi

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 10.2.2002 11:04:16

Puvodni zprava, kterou napsal Viktor Marek dne 10 Feb 2002:

> > Na Formu mam Edit a v okamziku kdy do Editu zapisuji zmizi kurzor mysi.
> > Objevi se jestlize pohnu mysi, nebo stisknu leve ci prave tlacitko.
> >
> > Muze mi nekdo rici proc k tomu dochazi a jak tomu zbranit.
>
> >To mas nastaveny tak ovladac mysi, aby ti tohle delal. Takze se podivej
> >na jeji nastaveni.
>
> Nevim co myslis nastavenim "ovladace mysi"
> V driveru WIN2000 jsem nic nenasel.

Myslim nastaveni mysi: Hide pointer while typing.

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
============================================================

Nekompatibilita typoveho souboru z Pascalu a Delph

[*] Zden�k Sv�en - 10.2.2002 11:32:54

Ahoj,

mam nasledujici record:

TUcet = record
ID_Uctu:Word;
Datum_Zrizeni:string[10];
Cas_Zrizeni:string[5];
Datum_Posledniho_Zapisu:string[10];
Cas_Posledniho_Zapisu:string[5];
ID_Klienta:Word;
Nazev:string[30];
Cena_Celkem:Real48;
end;

Tato struktura by mela podle mych predpokladu zabirat 75B.
Zabira vsak 80B.

Bylo by mi to jedno, ale soubor s touto strukturou vyrabi program v Pascalu,
kde to opravdu zabira 75B. Tudiz prestoze je TUcet deklarovan v Pascalu i
Delphi uplne stejne, zabira to nestejne.


A CO JE NEJPODIVNEJSI (alespon pro me).

Kdyz zmenim Nazev na Nazev:string[29], stale to zabira 80B. Pro string[28],
string[27], string[26] STALE 80B!!!!
Az pro string[25] to klesne na 76B.

JSEM ABSOLUTNE MIMO A NECHAPU CO SE DEJE?

Vi nekdo o co jde? Pevne doufam, ze je chyba na moji strane a ze jsem neco
proste zvoral. A take doufam, ze nejaky borec me to vysvetli.

Predem Diky

Zdenek
D5 Ent,W98


Nekompatibilita typoveho souboru z Pascalu a Delph

[*] Martin Pe�ava - 10.2.2002 11:55:52

Je to tim, ze Delphi zarovnava na 4 bajty a jestli chces opravdu tu
strukturu mit 75bajtu velkou tak musis pouzit neco, co nevim co je,
ale proste to jde. Chytrejsi z tyhle diskuze jiste poradi a nebo zkus
konzultaci s helpem.

--

> Ahoj,

> mam nasledujici record:

> TUcet = record
> ID_Uctu:Word;
> Datum_Zrizeni:string[10];
> Cas_Zrizeni:string[5];
> Datum_Posledniho_Zapisu:string[10];
> Cas_Posledniho_Zapisu:string[5];
> ID_Klienta:Word;
> Nazev:string[30];
> Cena_Celkem:Real48;
> end;

> Tato struktura by mela podle mych predpokladu zabirat 75B.
> Zabira vsak 80B.

> Bylo by mi to jedno, ale soubor s touto strukturou vyrabi program v Pascalu,
> kde to opravdu zabira 75B. Tudiz prestoze je TUcet deklarovan v Pascalu i
> Delphi uplne stejne, zabira to nestejne.> A CO JE NEJPODIVNEJSI (alespon pro me).

> Kdyz zmenim Nazev na Nazev:string[29], stale to zabira 80B. Pro string[28],
> string[27], string[26] STALE 80B!!!!
> Az pro string[25] to klesne na 76B.

> JSEM ABSOLUTNE MIMO A NECHAPU CO SE DEJE?

> Vi nekdo o co jde? Pevne doufam, ze je chyba na moji strane a ze jsem neco
> proste zvoral. A take doufam, ze nejaky borec me to vysvetli.

> Predem Diky

> Zdenek
> D5 Ent,W98



--
Best regards,
Martin mailto:jimx(zv)volny(tec)cz


Nekompatibilita typoveho souboru z Pascalu a Delph

[*] Rainbow Dark <rainbof(zv)seznam(tec)cz> - 10.2.2002 12:02:24

Je to tak, napadlo me jedno reseni neni sice uplne nejefektivnejsi ale
jakousi kompatibilitu
to zachovava staci kdyz budes zapisovat a cist buffer a nejakou procedurkou
to budes
prehazovat do/z zivych dat.

TUcet = Object
buff:Array[1..75] of char;

ID_Uctu:Word;
Datum_Zrizeni:string[10];
Cas_Zrizeni:string[5];
Datum_Posledniho_Zapisu:string[10];
Cas_Posledniho_Zapisu:string[5];
ID_Klienta:Word;
Nazev:string[30];
Cena_Celkem:Real48;
procedure RefreshData;
procedure RefreshBuff;
end;

----- Original Message -----
From: "Zden�k Sv�en" <dkonf(zv)seznam(tec)cz>
To: "Delphi konference" <delphi-l(zv)clexpert(tec)cz>
Sent: Sunday, February 10, 2002 11:32 AM
Subject: Nekompatibilita typoveho souboru z Pascalu a Delphi - vi nekdo o co
jde?> Ahoj,
>
> mam nasledujici record:
>
> TUcet = record
> ID_Uctu:Word;
> Datum_Zrizeni:string[10];
> Cas_Zrizeni:string[5];
> Datum_Posledniho_Zapisu:string[10];
> Cas_Posledniho_Zapisu:string[5];
> ID_Klienta:Word;
> Nazev:string[30];
> Cena_Celkem:Real48;
> end;
>
> Tato struktura by mela podle mych predpokladu zabirat 75B.
> Zabira vsak 80B.
>
> Bylo by mi to jedno, ale soubor s touto strukturou vyrabi program v
Pascalu,
> kde to opravdu zabira 75B. Tudiz prestoze je TUcet deklarovan v Pascalu i
> Delphi uplne stejne, zabira to nestejne.
>
> A CO JE NEJPODIVNEJSI (alespon pro me).
>
> Kdyz zmenim Nazev na Nazev:string[29], stale to zabira 80B. Pro
string[28],
> string[27], string[26] STALE 80B!!!!
> Az pro string[25] to klesne na 76B.
>
> JSEM ABSOLUTNE MIMO A NECHAPU CO SE DEJE?
>
> Vi nekdo o co jde? Pevne doufam, ze je chyba na moji strane a ze jsem neco
> proste zvoral. A take doufam, ze nejaky borec me to vysvetli.
>
> Predem Diky
>
> Zdenek
> D5 Ent,W98
>
>


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


Kurzor mysi

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 10.2.2002 12:07:53


> Puvodni zprava, kterou napsal Viktor Marek dne 10 Feb 2002:
>
> > > Na Formu mam Edit a v okamziku kdy do Editu zapisuji zmizi kurzor
mysi.
> > > Objevi se jestlize pohnu mysi, nebo stisknu leve ci prave tlacitko.
> > >
> > > Muze mi nekdo rici proc k tomu dochazi a jak tomu zbranit.
> >
> > >To mas nastaveny tak ovladac mysi, aby ti tohle delal. Takze se podivej
> > >na jeji nastaveni.
> >
> > Nevim co myslis nastavenim "ovladace mysi"
> > V driveru WIN2000 jsem nic nenasel.
>
> Myslim nastaveni mysi: Hide pointer while typing.

Ani toto nastaveni nepomaha. Vypada to na specificky problem WIN2000 versus
Microsoft IntelliMouse Opical.
I kdybych tuto chybu odstranil u sebe nemam zaruku, ze na jinem PC to
neudela to same. Argumenty "Mas blbe nastavenou mys, To dela ten druhy
proram co mas v pocitaci ............" jsou mi cizi. (To nebylo na Tebe
Admine ale obecne)

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.323 / Virov� b�ze: 180 - datum vyd�n�: 8.2.2002


Kurzor mysi

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 10.2.2002 12:22:02

Puvodni zprava, kterou napsal Viktor Marek dne 10 Feb 2002:

> > Myslim nastaveni mysi: Hide pointer while typing.
>
> Ani toto nastaveni nepomaha. Vypada to na specificky problem WIN2000
> versus Microsoft IntelliMouse Opical. I kdybych tuto chybu odstranil u
> sebe nemam zaruku, ze na jinem PC to neudela to same. Argumenty "Mas blbe
> nastavenou mys, To dela ten druhy proram co mas v pocitaci ............"
> jsou mi cizi. (To nebylo na Tebe Admine ale obecne)

Zadny druhy program to nedela, to dela ovladac od mysi. Zkus si
aktualizovat ovladac, nekde bude problem. Ja mam Windows 2000 a Microsoft
IntelliMouse Explorer, tuto volbu mam vypnutou a nikdy jsem nemel
problem, ze by se takto aktivovala...

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
============================================================

Nekompatibilita typoveho souboru z Pascalu a Delph

[*] Zdenek Janish <medusa(zv)brajan(tec)cz> - 10.2.2002 13:01:41

Co takhle:

TUcet = packed record

> ID_Uctu:Word;
> Datum_Zrizeni:string[10];
> Cas_Zrizeni:string[5];
> Datum_Posledniho_Zapisu:string[10];
> Cas_Posledniho_Zapisu:string[5];
> ID_Klienta:Word;
> Nazev:string[30];
> Cena_Celkem:Real48;
> end;
>

Zdenek

Jak na Oracle z Delphi

[*] Lud�k P�ral - 10.2.2002 14:02:13

I kdyz si DirectOracleAccess take objednavam (jsou fakt dobre, rychle a
uzivatelsky prijemne), zkousel jsem i OCI (nevim jestli je mam z TORRY)
ja osobne jsem pro pripojeni k Oracle databazi pouzival komponenty
DirectOracle.

Chci Te ale trochu upozornit. Oracle je jedna z nejkomplikovanejsich
databazi. Pokud chces data cist, doporucuji Ti alespon prostudovat SELECT,
pokud zapisovat, tak se s SQL seznamit. Pokud napr. napises "DELETE from
TABLE", nesmaze se jedna veta, ale cela databaze. Po commitu to uz odnikud
nedostanes. Tez prace s transakcemi je dobre aspon trochu znat. Rozhodne byt
Tebou bych vse nastavoval ReadOnly. Jinak ja pro male veci pripojim Oraclke
Accessem, sestavim dotaz a pak jej kopiruji do Delphi. Pozor ale na to, ze
Access nepouziva standartni syntaxi.

Ludek Paral


FireBird - komponenty?

[*] Ludek Paral <ludek.paral(zv)telecom(tec)cz> - 10.2.2002 14:02:14

Zatim funguje i IBExpress (i kdyz oficielne negarantuje funkcnost)

Ludek Paral


Jak na Oracle z Delphi

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 10.2.2002 14:11:45

Puvodni zprava, kterou napsal Lud�k P�ral dne 10 Feb 2002:

> pokud zapisovat, tak se s SQL seznamit. Pokud napr. napises "DELETE from
> TABLE", nesmaze se jedna veta, ale cela databaze. Po commitu to uz odnikud

??? DELETE FROM TABLE by na kazdem SQL Serveru mel mazat vsechny zaznamy
z tabulky TABLE. Tedy nikoliv jednu vetu a nikoliv celou databazi.

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
============================================================

Nekompatibilita typoveho souboru z Pascalu a Delph

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 10.2.2002 15:05:14

From: "Zden�k Sv�en" <dkonf(zv)seznam(tec)cz>
> mam nasledujici record:
>
> TUcet = record
> Tato struktura by mela podle mych predpokladu zabirat 75B.
> Zabira vsak 80B.

Ahoj,

pokud chces takto ukladat datove struktury tak je musis vzdy deklarovat jako
packed aby jsi zabranil implicitnimu zarovnavani. Kompilator zarovnava az na
hranici 8 bytu, od Delphi 6 lze toto nastavit na 1, 2, 4 nebo 8.

Petr Vones


Pad na SIGSEGV - problem nalezen

[*] David Janko <djanko(zv)infoware(tec)cz> - 10.2.2002 16:16:55


----- Original Message -----
From: "Petr Vones" <pvones(zv)mbox.vol(tec)cz>
To: "Konference Delphi" <delphi-l(zv)clexpert(tec)cz>
Sent: Friday, February 08, 2002 6:59 PM
Subject: Re: Pad na SIGSEGV - problem nalezen


> jiste, protoze nemuzes takto pracovat se stringem. Skutecnost ze to
'funguje'
> s pouzitim konstanty je pouze vedlejsi efekt implementace stringu, viz
nize.
>
> To co delas je totiz klasicky pripad odkazovani se na jiz dealokovanou
pamet.
> String je pouze *ukazatel* na pamet kterou takto spravuje prekladac, lze
to
> zjednodusene popsat asi takto:
>
> procedure Something;
> var
> S: string;
> begin
> S := <text> // provede se alokace pameti a do ni se vlozi dany text
> ComboFields.Items.AddObject(.., Pointer(S)) // ulozis pointer na tuto
pamet
> // zde prekladac vlozi kod pro uvolneni pameti alokove pro S jelikoz uz
neni
> // potreba, je mimo viditelnost
> end;
>
> Ukazatel ktery si takto ulozil to TStrings.Objects je tedy uz neplatny.

Aha - uz to chapu a dle toho example sem to vyresil.
Asi mam trochu problem s tim preorientovat sve chapani spravy pameti z C
nebo PHP na Pascal ;-). No casem se to snad podda ...

Diky moc vsem za pomoc.

David Janko.

Kurzor mysi

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 10.2.2002 16:33:16

> > > Myslim nastaveni mysi: Hide pointer while typing.
> >
> > Ani toto nastaveni nepomaha. Vypada to na specificky problem WIN2000
> > versus Microsoft IntelliMouse Opical. I kdybych tuto chybu odstranil u
> > sebe nemam zaruku, ze na jinem PC to neudela to same. Argumenty "Mas
blbe
> > nastavenou mys, To dela ten druhy proram co mas v pocitaci ............"
> > jsou mi cizi. (To nebylo na Tebe Admine ale obecne)
>
> Zadny druhy program to nedela, to dela ovladac od mysi. Zkus si
> aktualizovat ovladac, nekde bude problem. Ja mam Windows 2000 a Microsoft
> IntelliMouse Explorer, tuto volbu mam vypnutou a nikdy jsem nemel
> problem, ze by se takto aktivovala...

Stahl jsem posledni ovladac mysi verze 4.0.0.657 z 22.08.2001 a nic se
nezmenilo.
Overil jsem si chovani programu na ruznych PC
- WIN95 Microsoft mouse wheel OK
- Win98 Microsoft mouse wheel OK
- Win2000 Microsoft mouse wheel OK
- Win2000 Microsoft IntelliMouse Opical 1x OK 3x stejna chyba

Asi nema cenu se dale v tom stourat. Jsou veci mezi nebem a zemi
........................................................

Diky za rady

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.323 / Virov� b�ze: 180 - datum vyd�n�: 8.2.2002


Outlock Expres a export zprav

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 10.2.2002 16:42:06

Muze nekdo poradit jak hromadne vyexportovat z Otlock Expresu (IE6) dosle
maily do jednoho souboru ve formatu *.txt
pripadne neni nekde k dispozici nejaka ta utilitka?

Diky za rady

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.323 / Virov� b�ze: 180 - datum vyd�n�: 8.2.2002


DirectoryListBox

[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 10.2.2002 16:46:22

Poradi nekdo jak v DirectoryListBoxu otevrit zobrazenou slozku tim, ze na ni
postavim kurzor mysi?

Diky za rady

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.323 / Virov� b�ze: 180 - datum vyd�n�: 8.2.2002


Outlock Expres a export zprav

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 10.2.2002 18:26:35

From: "Viktor Marek" <viktor(zv)mbox.vol(tec)cz>
> Muze nekdo poradit jak hromadne vyexportovat z Otlock Expresu (IE6) dosle
> maily do jednoho souboru ve formatu *.txt
> pripadne neni nekde k dispozici nejaka ta utilitka?

Ahoj,

pokud mas vsechny zpravy pouze v hlavnim Inbox adresari (ne v podadresarich)
tak to lze pomoci Simple MAPI. Priklad je v JCL - ReadMailExample.dpr
http://delphi-jedi.org/Jedi:CODELIBJCL

Petr Vones


Delphi a hry

[*] Pesek Michal <Michal.Pesek(zv)MNUL.CZ> - 10.2.2002 18:40:10

Hi,

existuji tzv DelphiX, coz jsou komponenty do delphi pres ktere ovladas
DirectX.

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


.. -----Original Message-----
.. From: Martin Kasman [mailto:martinkasman(zv)pobox.sk]
.. Subject: Delphi a hry
..
.. Su na to nejake komponenty?

Delphi a hry

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 10.2.2002 18:49:37

From: "Martin Kasman" <martinkasman(zv)pobox.sk>
> Nemam konkretnu otazku, iba som zvedavy: je Delphi dobry programovaci jazyk
> pre hry? Ako na to, ked chcem aby mi hra bezala na celej obrazovke. Robi sa

Ahoj,

dobra otazka. Object Pascal jako takovy rozhodne ano. Co se tyce Delphi jako
produktu tak tam uz je to horsi, protoze Borland zcela ignoruje skutecnost, ze
Delphi by bylo dobre i pro psani her. Nastesti se naslo par lidi, kteri za ta
leta pochopili, ze Borland svuj postoj nezmeni a snazili se udelat neco sami.
Problem tkvi v tom, ze pro vyvoj her je nezbytnou soucasti DirectX a k tomu
potrebujes do Delphi prislusne konverze C hlavicek do Object Pascalu. Prave o
to se postaral project JEDI, vice (konverze, priklady) najdes na JEDI Graphix:
http://delphi-jedi.org/DelphiGraphics/oldindex.htm

Petr Vones


literatura o InterBase6

[*] Tomas Vida <vida(zv)uniware(tec)cz> - 10.2.2002 18:54:36

Ahoj,
nevite o nejake literature pro Interbase6? Shanim neco jako Tipy a Triky
pro IB apod. Ibdoc samozrejme mam.

Diky za pomoc
Tomas


kontrola, zda mi v adresari nepribyl novy soubor

[*] Tomas Vida <vida(zv)uniware(tec)cz> - 10.2.2002 19:37:02

Ahoj,
potreboval bych pomoct se %subj.
Mam ftp server. Ten je namapovany jako disk F na pocitaci. Chci si
napsat aplikaci, ktera mi bude v urcitem casovem intervalu kontrolovat
obsah tohoto pripojeneho disku, vcetne podadresaru, a v pripade, ze
dojde ke zmene struktury (bude tam novy soubor), da mi to vedet - treba
mail, ktery bude obsahovat seznam novych souboru.
Muzete mi prosim nekdo poradit, kde mam zacit? Predevsim nevim, jak
nacitat tu strukturu a do ceho....

Dekuji za pomoc
Tomas V.

Ako na COM port ?

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 10.2.2002 19:40:53

From: "Milos Veselovsky" <milos(zv)seko.sk>
> pouzivam komponentu TCommPort na zistovanie stavu modemu.
> Potrebujem detekovat prichadzajuci hovor. Vsetko funguje OK,
> iba jeden problem, ze ten port je tym padom stale otvoreny,
> a ine programy ho uz nemozu pouzivat. Cize ak chcem pripojit
> internet, musim ukoncit monitorovanie a potom to uz ide.

Ahoj,

misto primeho pristupu na COM port by jsi mel pouzit RAS, otevrit tak dane
zarizeni a monitorovat prichozi hovor. Priklad na to bohuzel nemam.

Petr Vones


Odchytavani windows messages

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 10.2.2002 19:42:50

From: "Filip Kinsky" <xkinf01(zv)vse(tec)cz>
> Potreboval bych odchytit minimalizaci a restore okna. zatim to mam
> nejak takhle:
>
> procedure wmsyscommand(var xMessage: TWMSyscommand); message WM_SYSCOMMAND;
> .....
> procedure TForm1.wmsyscommand(var xMessage: TWMSyscommand);
> begin
> if xmessage.cmdType=SC_RESTORE then begin
> application.restore;
> showmessage('res');
> end;
> if xMessage.cmdType=SC_MINIMIZE then begin
> showmessage('min');
> application.minimize;
> end;
> end;
>
> timhle zpusobem se ale prerusi predavani zprav dal objektum, takze
> nefunguje ani pohyb okna mysi, zmena velikosti atd....

Za prve bych doporucil pouzit pro tuto konstrukci case a ne haldu if..then. V
handleru zpravy musis volat inherited pokud chces aby se provedla implicitni
obsluha.

Petr Vones

D4+WinXP

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 10.2.2002 19:57:04

From: "Martin Schayna" <mschayna(zv)aktis(tec)cz>
> Thunkovani se pouziva pro volani funkci z 16bitovych DLL, samozrejme pokud
> bys neco takoveho pouzival asi bys o tom vedel. Jednou z takovych veci je
> napr. programove zjistovani volnych resourcu (ma smysl pouze u Win9x),
> nedelas to ve svem programu?

Ahoj,

odhadoval bych to na totez. Pokud tam mas takovy kod, tak pouzij toto reseni:
http://codecentral.borland.com/codecentral/ccweb.exe/listing?id=15313

Petr Vones


Pocitadlo

[*] <context.katalog(zv)centrum(tec)cz> - 10.2.2002 20:13:32

Dobry den,

jsem naprosty zacatecnik a potreboval bych poradit,
jak vytvorit na formulari pocitadlo, ktere by zobrazovalo
ciselnou hodnotu.

Delam testovaci program, a na zacatku by tam byla zobrazena nula,
a podle toho jak by uzivatel odpovidal na otazky, na pocitadle
by se cislo zvysovalo nebo snizovalo o 1.

Existuje nejaka komponenta vhodna pro tento ucel? Zkousel
jsem vlastnost caption komponenty label, ale zde jsem
narazil na to, ze se jedna o typ string a chci-li pricitat
hodnotu, musim mit integer. Proto hledam neco co pravuje s cislem
ve tvaru integer. Matne tusim, ze by to slo mozna resit
pretypovanim, ale s tim nemam zadne zkusenosi.

Diky za trpelivost.

Ales Vojta,
sberatel
context.katalog(zv)centrum(tec)cz
===== www.centrum(tec)cz doporu�uje =====
Centrum pro milovn�ky pen�z http://finance.centrum(tec)cz

Pocitadlo

[*] Pavel ZIDEK <delphi(zv)kopr(tec)cz> - 10.2.2002 20:24:24

Zdravim,
do deklarace udelas nejakou promennou typu integer
var
Pocitadlo: integer;

Nekde Pocitadlo vynulujes, asi pri nejake inicializaci. Nekde nejakym
zpusobem budes pricitat Inc(Pocitadlo) nebo odecitat Dec(Pocitadlo). a pak
zobrazis
Label1.Caption(IntToStr(Pocitadlo));

Jestli je to malo, tam muzes zarovnat ciselnou hodnotu z leva nulama, napr
na 6 mist:
Label1.Caption( Format('%6s', [FormatFloat('00000#', Pocitadlo)]));

P.S. uvazuj a nedavej vsude komponenty. Casem na to prijdes co, kdy a jak
udelat. Skoda ze jsi nebyl v Laznich Belohrade, kde Cisar pekne nastinil jak
se ma programovat - takova etika programovani.

----- Pavel ZIDEK -----
http://www.kopr(tec)cz/delphi, delphi(zv)kopr(tec)cz

> jak vytvorit na formulari pocitadlo, ktere by zobrazovalo
> ciselnou hodnotu.
>
> Delam testovaci program, a na zacatku by tam byla zobrazena nula,
> a podle toho jak by uzivatel odpovidal na otazky, na pocitadle
> by se cislo zvysovalo nebo snizovalo o 1.
>
> Existuje nejaka komponenta vhodna pro tento ucel? Zkousel
> jsem vlastnost caption komponenty label, ale zde jsem

Pocitadlo

[*] Martin �ajbik <cajbik(zv)sct.sk> - 10.2.2002 20:32:17

Ved je to uplne jednoduche, mozes budto pouzit pomocnu premennu,
inkrementovat ju a aktualny stav zapisovat do Label-u cez
pocitadlo:= pocitadlo+1;
Label.Caption:= IntToStr(pocitadlo);

alebo to robit priamo na tom Label-i cez
Label.Caption:= IntToStr(StrToInt(Label.Caption)+1);

MarCaNT (marcant(zv)sct.sk)> Dobry den,
>
> jsem naprosty zacatecnik a potreboval bych poradit,
> jak vytvorit na formulari pocitadlo, ktere by zobrazovalo
> ciselnou hodnotu.
>
> Delam testovaci program, a na zacatku by tam byla zobrazena nula,
> a podle toho jak by uzivatel odpovidal na otazky, na pocitadle
> by se cislo zvysovalo nebo snizovalo o 1.
>
> Existuje nejaka komponenta vhodna pro tento ucel? Zkousel
> jsem vlastnost caption komponenty label, ale zde jsem
> narazil na to, ze se jedna o typ string a chci-li pricitat
> hodnotu, musim mit integer. Proto hledam neco co pravuje s cislem
> ve tvaru integer. Matne tusim, ze by to slo mozna resit
> pretypovanim, ale s tim nemam zadne zkusenosi.
>
> Diky za trpelivost.
>
> Ales Vojta,

Jak na Oracle z Delphi

[*] Lud�k P�ral - 10.2.2002 21:16:04

??? DELETE FROM TABLE by na kazdem SQL Serveru mel mazat vsechny zaznamy
z tabulky TABLE. Tedy nikoliv jednu vetu a nikoliv celou databazi.

Sorry, nepouzivam spravne nazvoslovi, myslel jsem na vsechny polozky
tabulky. Tak jako tak prichazi v danem pripade uzivatel o data.

Ludek Paral


literatura o InterBase6

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 10.2.2002 21:41:14

Haj hou!

On 10 Feb 2002, at 18:54, Tomas Vida wrote:

> nevite o nejake literature pro Interbase6? Shanim neco jako Tipy a Triky
> pro IB apod. Ibdoc samozrejme mam.

Pouze anglicky. Podivej se na www.ibphoenix(tec)cz nebo .com

S pozdravem

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


Jak na Oracle z Delphi

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 10.2.2002 21:59:56

Puvodni zprava, kterou napsal Lud�k P�ral dne 10 Feb 2002:

> ??? DELETE FROM TABLE by na kazdem SQL Serveru mel mazat vsechny zaznamy z
> tabulky TABLE. Tedy nikoliv jednu vetu a nikoliv celou databazi.
>
> Sorry, nepouzivam spravne nazvoslovi, myslel jsem na vsechny polozky
> tabulky. Tak jako tak prichazi v danem pripade uzivatel o data.

Jasne, ale to je v poradku, protoze neni dana zadna podminka, tj. SQL
prikaz plati pro vsechny zaznamy v tabulce.

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
============================================================

Params

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 11.2.2002 07:02:22

> zkus:
> IBSQL2.Params.AssignValues(IBSQL1.Params);
>

Bohuzel, Params u IBSQL jsou jineho typu nez u IBQuery,
uvedenou metodu vubec nemaji implementovanou.

Tak jeste jednou.

Mam IBSQL s SQL dotazem s parametry a potrebuji nyni vykonani
tehoz prikazu provest v jinem IBSQL. Dokazu prenest SQL dotaz,
ale ne uz parametry. Zatim zkusim zjistit, zda nejde problem resit
uplne jinak, ale pokud byste nekdo vedel... diky

David Lebeda


Crypto API

[*] Sula Milos <milos.sula(zv)oku-su(tec)cz> - 11.2.2002 07:43:34

Dik, dival jsem se na to, stahl jsem si i popis crypto api od MS a precetl jsi ho a uz mi to funguje,
bohuzel mi jde o pochopeni jak funguje crypto api ne jen o to ze to funguje. Neni mi jasna jedna vec, kdyz provedu nasledujici funkci :
//pripoj se na defaultni container pokud existuje
if not CryptAcquireContext((zv)hProv, nil, nil, PROV_RSA_FULL, 0) then
//pokud neexistuje vytvor ho
if (not CryptAcquireContext((zv)hProv, nil, nil, PROV_RSA_FULL, CRYPT_NEWKEYSET))then exit;
//vygeneruje nahodny klic pro symetricky algoritmus RC4
if (not CryptGenKey(hProv,CALG_RC4,CRYPT_EXPORTABLE,(zv)hKey))then exit;

CryptGetUserKey(hProv, AT_KEYEXCHANGE, (zv)hXchgKey);
.
.
.

a tady nechapu, kdy dojde k vygenerovani privatniho/verejneho klice ? dojde k tomu soucasne s generovanim session klice pro symetricky algoritmus ve funkci CryptGenKey ? a funkce CryptGetUserKey mi pak jen vrati verejny klic ktery se v predchozi funkci vygeneroval a na pevno ulozil s privatnim klicem do containeru (pri pristim volani se jiz negeneruje privatni a soukromy klic)?

predem dik
Milos
-----Original Message-----
From: Petr Vones [mailto:pvones(zv)mbox.vol(tec)cz]
Sent: Saturday, February 09, 2002 3:20 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: Crypto API


From: "Sula Milos" <milos.sula(zv)oku-su(tec)cz>
> ahoj nevite nekdo proc mi vraci funkce CryptExportKey v bufferu prazdno ?
> Pouzivam JEDI unitu wcrypt2.pas

Ahoj,

stahni si jeste CryptoAPI1.zip, tam najdes i par prikladu.

Petr Vones

IB & SWEEP & Linux

[*] Radek KALA <Kala(zv)Atlas(tec)cz> - 11.2.2002 07:57:50

Zrejme jsem to dost nezuraznil ten gfix jsem poustel na linuxu, kde
bezi ta databaze.
Nikdo jiny nereagoval tak prosim aby jste se znovu zamysleli.

Diky

> Spusti si CMD alebo COMMAND aby si mal prikazovu riadku a pozri ci tam
> nebola hlasena nejaka chyba.
>
> Roland.
>
> ----- Original Message -----
> From: "Radek KALA" <Kala(zv)Atlas(tec)cz>
> To: <delphi-l(zv)clexpert(tec)cz>
> Sent: Wednesday, February 06, 2002 8:19 AM
> Subject: IB & SWEEP & Linux
>
>
> > Ahoj,
> > prosim poradte mam databazi, kde jsme odstranili asi 1/3 dat a
> > chtel jsem udelat sweep, ze abyy se to uklidilo. napsal jsem
> > gfix jmenodatabase -sweep a ono to bezelo tak 2 sekundy a
> > skoncilo. Soubor database se nezmensil, asi to nejak bezi na
> > pozadi, ale jak ? kdyz napisu top, nebo ps -A tak tam nic
> > podezrelyho neni.
> > Muzete mi prosim nekdo vysvetlit co zse vlastne ted deje ?
> >
> > Dekuji ?
> >
> > S pozdravem Radek KALA
> > BetaControl, s.r.o.
> > Cerneho 58/60, 635 00
> > tlf. : + 420 5 4622 3491
> > fax : + 420 5 4622 3470
> > GSM : + 420 603 85 75 15
> >
>
S pozdravem Radek KALA
BetaControl, s.r.o.
Cerneho 58/60, 635 00
tlf. : + 420 5 4622 3491
fax : + 420 5 4622 3470
GSM : + 420 603 85 75 15


Jak na Oracle z Delphi

[*] Zbysek Hlinka <hlinka(zv)hlinka(tec)cz> - 11.2.2002 08:21:02

On 10 Feb 2002 at 21:16, Lud�k P�ral wrote:

> ??? DELETE FROM TABLE by na kazdem SQL Serveru mel mazat vsechny
> zaznamy z tabulky TABLE. Tedy nikoliv jednu vetu a nikoliv celou
> databazi.
>
> Sorry, nepouzivam spravne nazvoslovi, myslel jsem na vsechny polozky
> tabulky. Tak jako tak prichazi v danem pripade uzivatel o data.

Zde plati osvedcene pravidlo: selzou-li vsechny pokusy, je na case
precist si navod. Prikaz funguje naprosto spravne podle navrhu jazyka
SQL.

S pozdravem

Zbysek Hlinka

Phone: 0603 551 282


Transparent pozadi u popisky CheckBoxu

[*] Obermaier Petr Ing. <Obermaier(zv)mail.sdas(tec)cz> - 11.2.2002 08:31:18

Zdravim,

zajimalo by me, zda-li se da nejak nastavit u popisky CheckBoxu pozadi na
Transparent (jako napr. u TEdit).

Dekuji
Ober


IB & SWEEP & Linux

[*] Pavel Bares <bares(zv)atoll(tec)cz> - 11.2.2002 08:40:31

No ja jsem to kdysi zkousel na win a jedin� operace pri ktere se soubor
zmensi je BACKUP/RESTORE.
Sweep trva vetsinou pomerne kratce, takze je mozne ze se ti provedl.

Pavel Bares


----- Original Message -----
From: "Radek KALA" <Kala(zv)Atlas(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, February 11, 2002 7:57 AM
Subject: Re: IB & SWEEP & Linux


> Zrejme jsem to dost nezuraznil ten gfix jsem poustel na linuxu, kde
> bezi ta databaze.
> Nikdo jiny nereagoval tak prosim aby jste se znovu zamysleli.
>
> Diky
>
> > Spusti si CMD alebo COMMAND aby si mal prikazovu riadku a pozri ci tam
> > nebola hlasena nejaka chyba.
> >
> > Roland.
> >
> > ----- Original Message -----
> > From: "Radek KALA" <Kala(zv)Atlas(tec)cz>
> > To: <delphi-l(zv)clexpert(tec)cz>
> > Sent: Wednesday, February 06, 2002 8:19 AM
> > Subject: IB & SWEEP & Linux
> >
> >
> > > Ahoj,
> > > prosim poradte mam databazi, kde jsme odstranili asi 1/3 dat a
> > > chtel jsem udelat sweep, ze abyy se to uklidilo. napsal jsem
> > > gfix jmenodatabase -sweep a ono to bezelo tak 2 sekundy a
> > > skoncilo. Soubor database se nezmensil, asi to nejak bezi na
> > > pozadi, ale jak ? kdyz napisu top, nebo ps -A tak tam nic
> > > podezrelyho neni.
> > > Muzete mi prosim nekdo vysvetlit co zse vlastne ted deje ?
> > >
> > > Dekuji ?
> > >
> > > S pozdravem Radek KALA
> > > BetaControl, s.r.o.
> > > Cerneho 58/60, 635 00
> > > tlf. : + 420 5 4622 3491
> > > fax : + 420 5 4622 3470
> > > GSM : + 420 603 85 75 15
> > >
> >
>
>
> S pozdravem Radek KALA
> BetaControl, s.r.o.
> Cerneho 58/60, 635 00
> tlf. : + 420 5 4622 3491
> fax : + 420 5 4622 3470
> GSM : + 420 603 85 75 15
>

Vlastni komponenta

[*] Jan Fiala [work] <delphi(zv)kvasar(tec)cz> - 11.2.2002 08:47:59

Ahojte,
potreboval bych poradit ohledne odchytavani klavesy ENTER ve vlastni
komponente derivovane z TCustomControl. Jedna se o obdobu TMemo a potrebuji
na stisk VK_RETURN udelat novy radek. Mam to osetrene na udalosti
OnKeyPress, ale nevim jak ukoncit zpracovani stiskle klavesy. Pokud mam na
formu jeste tlacitko s resultem mrOk nebo Action s horkou klavesou, tak to
zpracuje i potvrzeni formulare. Neda se to nejak potlacit?

Diky
Jan Fiala
fiala(zv)kvasar(tec)cz
http://www.kvasar(tec)cz
tel.:067/7212800
mob.:0608724278


Vektorova grafika, DWG, CAD

[*] Miroslav Prokel <miroslav.prokel(zv)rtscs(tec)cz> - 11.2.2002 09:05:03

Dobry den,

shanim nejakou vizualni komponentu pro prohl�zeni souboru typu DXF a DWG s
vektorovou grafikou. Pro me potreby staci neco jednoducheho, ale melo by to
byt free :(( Nevedel by nekdo o necem? Predem diky.

Miroslav Prokel
miroslav.prokel(zv)rtscs(tec)cz

W2k+SP1 & D5Ent
---
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


Jak sestavit SQL dotaz

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 11.2.2002 09:09:44

ahoj,

jeste moje verze, ale asi se budu opakovat:

select
*
from
Tabulka1 T1
left join Tabulka2 T2 on T2.IDTabulka1 = T1.ID
left join Tabulka3 T3 on T3.ID = T2.IDTabulka3
where
T2.ID is null OR
T3.Storno = 'Ano'

mel by vybrat vsecky z Tabulka1, kde neni zaznam
v Tabulka2, nebo pokud tam je, pak Tabulka3 musi
mit v polozce Storno hodnotu "Ano".

dekuji PeC(zv)

TThreadFunc a metoda objektu

[*] Info About <dinfo(zv)post.sk> - 11.2.2002 09:14:51

Pri vytvarani threadu pomocou funkcie BeginThread je
jeden z jej parametrov ThreadFunc typu TThreadFunc, je
to smernik na adresu rutiny threadu.

Ako mu mam vsak priradit metodu FindStockLoop objektu TStock?

unit Stocks;

interface

uses Classes,Dialogs,Messages,Windows,SysUtils;

type

TStock = Class

private
Done: boolean;
ThreadHandle : THandle;
ThreadF : TThreadFunc;
ThreadID:Cardinal;
function FindStockLoop( data : Pointer) : Integer;
public
constructor Create; virtual;
destructor Free; virtual;
function StartMonitoring: boolean;
function StopMonitoring: boolean;

end;

var CriticalSection : TRTLCriticalSection; //Critical section protects the filelist


implementation


function TStock.FindStockLoop( data : Pointer) : Integer;
var Succeed: Boolean;
s: string;
begin
result := 0;
while Not Done do begin
// spracovanie
end;
result := 0;
end;

constructor TStock.Create;
begin
InitializeCriticalSection(CriticalSection);
done := true;
// co priradit TreadF?

end;

destructor TStock.Free;
begin
DeleteCriticalSection(CriticalSection);
end;
function TStock.StartMonitoring: boolean;
begin
Done := false;
ThreadHandle := BeginThread(nil,
0,
(zv)ThreadF,
nil,
0,
ThreadID);
end;

function TStock.StopMonitoring: boolean;
begin
Done := true;
CloseHandle(ThreadHandle);
end;

end.

--
Najcerstvejsie spravy zo SME e-mailom - http://www.sme.sk/emailom/

ClientDataSet, Locate pres string polozku - Client

[*] Ladislav Nagy <delphi-konference(zv)bcpraha(tec)com> - 11.2.2002 09:38:57

Pomuze nepredavat hodnotu pres .AsString, ale pres .Value.
Vymazani lze pres .Clear.

S pozdravem, Lada

From: "Michal Sefcik" <sefcik(zv)benefitcz(tec)cz>
> PS: Mezitim jsem narazil na dalsi problem ve vztahu ClientDataSet a ADO
> DataSet - predavani NULL hodnoty parametru typu String je prakticky
> nemozne. Snazim se to obchazet, nicmene jsou to velice otravne chyby.

free ReportSmith

[*] cYd <cYd(zv)seznam(tec)cz> - 11.2.2002 09:46:33

Hezky den,
muzete mi doporucit nejake dobre free "udelatko" podobne ReportSmith?

Delphi 3 C/S; W2000;

Diky
cYd


Pripsani stringu pred a za kazdy radek Memo

[*] jtomecek <jtomecek(zv)dezadata(tec)cz> - 11.2.2002 09:55:07

Prosim o radu,
mam zobrazene radky v Memo a chci v cyklu pred a za kazdy radek pripsat
urcity (jediny).. string. Jak na to?
Diky...

Vlastni komponenta

[*] Jiri Kratochvil <jiri.kratochvil(zv)webzin(tec)cz> - 11.2.2002 10:09:55

> potreboval bych poradit ohledne odchytavani klavesy ENTER ve vlastni
> komponente derivovane z TCustomControl. Jedna se o obdobu TMemo a
potrebuji
> na stisk VK_RETURN udelat novy radek. Mam to osetrene na udalosti
> OnKeyPress, ale nevim jak ukoncit zpracovani stiskle klavesy. Pokud mam na
> formu jeste tlacitko s resultem mrOk nebo Action s horkou klavesou, tak to
> zpracuje i potvrzeni formulare. Neda se to nejak potlacit?
Me vetsinou postacilo nastaveni promenne Key := #0;

JK


Ovladani sluzby

[*] voltrr1.epr(zv)mail.cez(tec)cz - 11.2.2002 10:12:56



> Potrebuji nejak online ovladat a monitorovat sluzbu, kterou jsem udelal.
Spustit,zastavit a
> pozastavit bych ji umel. Potrebuji vsak i menit parametry a zjistovat
jeji stav pokud bezi -
> proste potrebuji udelat front-end sluzby. Nevim vsak jak na to.

Zdar,

je na to api a je podporovano pouze na NT class systemech. Pokud ti to
staci tak

Preklad API najdes u JEDI , popis v Platform SDK u MS. V akci to vypada cca
takto :

var sv,Sc:tHandle;

begin
Sc:=OpenSCManager(PChar(Server),nil,SC_MANAGER_ALL_ACCESS);
Sv:=OpenService(sc,Pchar(service),SERVICE_ALL_ACCESS);
StartService(sv,0,nil);
CloseServiceHandle(sv);
CloseServiceHandle(sc);
end;

Pro zjisteni stavu je pak funkce ENUMServiceStatus a misto StartService se
da pouzit
ControlService ktera umi stop,pause,continue proste vsecko

Zdravim,
Radek Voltr

IB & SWEEP & Linux

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 11.2.2002 10:16:56

> Zrejme jsem to dost nezuraznil ten gfix jsem poustel na linuxu, kde
> bezi ta databaze. Nikdo jiny nereagoval tak prosim aby jste se znovu
> zamysleli.

Jak to, ze nikdo jiny nereagoval? Na to tady byla uspokojiva
odpoved - sweep ti soubor nezmensi, jen smaze stare verze
recordu. Zmenseni souboru bude chtit backup a restore.

David Lebeda


Params

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 11.2.2002 10:19:14

> > IBSQL2.Params.AssignValues(IBSQL1.Params);

> Bohuzel, Params u IBSQL jsou jineho typu nez u IBQuery,
> uvedenou metodu vubec nemaji implementovanou.

potom bych to videl na konstrukci podobnou teto:

Procedure CopyParamValues (q1, q2: TIBSQL);
var
i, j: Integer;
begin
j:=q1.Params.Count-1;
for i:=0 to j do
q2.Params[i].Value:=q1.Params[i].Value;
end;

predpoklada se, ze SQL uz jsou predany a jmena parametru nacteny.
myslim, ze pokud by tam ty parametry nebyly po prirazeni SQL,
tak musis dat nejdriv prepare.

dekuji PeC(zv)

Pripsani stringu pred a za kazdy radek Memo

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 11.2.2002 10:32:15

For i to Memo.Lines.count - 1
Memo.Lines.Strings[i] := StringPred + Memo.Lines.Strings[i] + StringZa

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

11.2.2002 jtomecek:
> Prosim o radu,
> mam zobrazene radky v Memo a chci v cyklu pred a za kazdy radek pripsat
> urcity (jediny).. string. Jak na to?
> Diky...

SINEA - Tisk pole typu boolean

[*] Roland Turcan <rolo(zv)sedas.sk> - 11.2.2002 11:28:17

Pozri si v Sinee funkciu IIF(podminka, ak ano vrat, ak nie vrat);

roland.


----- Original Message -----
From: "Bednar��k Dalibor" <dalibor(zv)torola(tec)cz>
Sent: Thursday, February 07, 2002 11:38 AM


> Ahoj,
> jak docilim toho, aby se mi v sestave misto hodnot TRUE, FALSE tiskly
> hodnoty ANO, NE, pripadne neco jineho.

DirectoryListBox

[*] JIM Design <jim.design(zv)iol(tec)cz> - 11.2.2002 11:33:59

Ahoj,

na to bude nejlepsi udelat si vlastni OpenDialog jako klasicky form na ktery
hodis komponentu, ktera ma view jako pruzkumnik z windows. najdes ji na
http://www.gexperts.com/GXExplorer/ a je open source.

M.Jirman

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

Poradi nekdo jak v DirectoryListBoxu otevrit zobrazenou slozku tim, ze na ni
postavim kurzor mysi?

Pomaly pristup na databazi MS Access v Delphi 5

[*] JIM Design <jim.design(zv)iol(tec)cz> - 11.2.2002 11:34:00

ahoj,

muzes si stahnout Zbyskovy OLEDB komponenty na myslim, ze
http://delphree.clexpert.com
nebo si najit nejake FreeADO komponenty nebo si nejake koupit.

M.Jirman

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Jind�ich Nikodem
Sent: Tuesday, February 05, 2002 5:59 PM

Mam Delphi 5 Prof. a tam OLE DB ani ADO nemam - nebo o tom ani nevim?

Jindrich
Nikodem

OT: pozor na zdrojaky

[*] iturcan(zv)gamo.sk - 11.2.2002 11:37:23


citajte, je to sice OT ale stoji za pozornost

http://www.zive(tec)cz/H/Uzivatel/AR.asp?PG=1&ARI=103841&CAI=2105



sorry za OT

Ivan Turcan


TThreadFunc a metoda objektu

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 11.2.2002 11:39:23

----- Original Message -----
From: "Info About" <dinfo(zv)post.sk>> Pri vytvarani threadu pomocou funkcie BeginThread je
> jeden z jej parametrov ThreadFunc typu TThreadFunc, je
> to smernik na adresu rutiny threadu.
>
> Ako mu mam vsak priradit metodu FindStockLoop objektu TStock?

Proc nepouzivas pro thready vlastni potomky objektu TThread?

Martin Schayna


Scitani rozdilu mezi datumy...

[*] Vlada Ponechal <vlada_ponechal(zv)post(tec)cz> - 11.2.2002 11:53:52

Ahoj vsichni,

Nevim si rady, prosim kdyz tak me nakopnete.
Scitam rozdily mezi datumy a pouzivam k tomu TTime, TDate a TDatetime.

Delam to nejak takhle:

procedure XYZ
var
time1, time2, time_result : TTime;
Date1, Date2 : TDate;
dt1, dt2 : TDateTime;
Date_result, i : Integer;
begin
time_result := strtotime('0:00:00');
date_result := 0;

query.first;

for i := 1 to query.recordcount do
begin
dt1 := query.fieldbyname('start_time').value;
dt2 := query.fieldbyname('stop_time').value; //Definuje TDATETime

time1 := query.fieldbyname('start_time').value;
time2 : query.fieldbyname('stop_time').value; //Definuji Time pouze

date1 := query.fieldbyname('start_time').value;
date2 : query.fieldbyname('stop_time').value; //Definuji Date pouze

time_result := time_result + (dt2-dt1); //Soucet casu (time)
date_result := date_result + (trunc(date2)-trunc(date1)); //Soucet dni

if time1 > time2 then
begin
if date1 < date2 then
date_result:=date_result-1; //pokud cas z time1 nepresahl 24hodin k time2 od dni(date) odectu 1 den
end;
end;

Query.next;
end;

end;

A mam problem. V zasade by mi to i fungovalo, ale pokud soucet time_result je vetsi nez 24:00:00, nevim jak
to odchytit, abych udelal date_result := date_result +1;

Nebo pokud si myslite, ze to delam zbytecne slozite, poradte, jak to udelat jednoduseji... Nez jsem se do
TDateTime pustil, koukal jsem na konferenci, ale nenasel jsem nic co by mi pomohlo.

Diky,

Vlada

P.S.: Jo mam D6 prof.

Skrolujici texty

[*] Milan Tome� <milan.tomes(zv)haida(tec)cz> - 11.2.2002 12:25:42

> pojedou porad dokola vybrane polozky, ktere jsou skladem s
> cenami. V postate
> takove titulky.

Tohle jsem taky resil - mam to vyresene pres multimedia timer - jestli chces
tak ti muzu poslat komponentu a kousek zdrojaku jak to pouzivam.

S pozdravem

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

Jak na Oracle z Delphi

[*] Ben, Martin (CAP, GCF) <Martin.Ben(zv)gecapital(tec)com> - 11.2.2002 12:45:15

To je nesmysl ! Co delam na Oraclu, tak DELETE FROM TABLE <tablename> vzdy
smazal obsah tabulky, ale tabulka zustala. Tabulku smazes prikazem DROP
TABLE <tablename>.

Jiz jsem to v tomto tematu psal - je potreba se s SQL seznamit. Obecne na
jakemkoliv SQL serveru (MSSQL, Oracle, Informix, IB/FB ...) se pracuje
hlavne a predevsim pomoci jazyka SQL. Bez nej to proste nejde.

Martin Ben


> -----Puvodni zprava-----
> Od: Lud�k P�ral [mailto:ludek.paral(zv)telecom(tec)cz]
>
> pokud zapisovat, tak se s SQL seznamit. Pokud napr. napises
> "DELETE from
> TABLE", nesmaze se jedna veta, ale cela databaze. Po commitu
> to uz odnikud


Minimalizace okna kontra aplikace

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 11.2.2002 12:56:29

Ahoj,

narazil jsem na problem s minimalizaci. Mejme aplikaci s nejakym
hlavnim formem, necht je implementovano povoleni provozu pouze
jedne instance takto:

procedure TF_MainForm.CreateParams(var Params:
TCreateParams);
begin
inherited CreateParams(Params);
Params.WinClassName := 'MujPodpis';
end;

V .dpr souboru je toto:

var
h: HWND;

begin
h := FindWindow('MujPodpis', nil);
if h <> 0 then
begin
ShowWindow(h, SW_SHOWNORMAL);
SetForegroundWindow(h);
exit;
end;
//tady je klasicke Application.Initialize; atd.
end;


Krome toho obsluhuji Application.OnMinimize a OnRestore takto:

procedure TF_MainForm.FormCreate(Sender: TObject);
begin
Application.OnMinimize := MinimizeApp;
Application.OnRestore := RestoreApp;
end;


procedure TF_MainForm.MinimizeApp(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_MINIMIZE);
end;

procedure TF_MainForm.RestoreApp(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_SHOWNORMAL);
end;

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

Tohle funguje dobre az na jednu vec. Aplikaci spustim A
MINIMALIZUJI. Pote zkusim spustit druhou instanci. FindWindow v
dpr souboru najde handle hlavniho okna aplikace a necha ho
zobrazit. PRI TOM SE NEPROVEDE Application.OnRestore.
Aplikace je tak ve zvlastnim stavu, laicky se mi to jevi, ze
restorovane bylo jen okno, ale aplikace samotna zustala
minimalizovana (coz neni opticky nijak videt) - vysledkem je, ze
prestane fungovat tlacitko minimalizace.
Ptam se tedy - cim nahradit aktivovani okna v dpr. projektu,
aby to fungovalo?

Dik.

David Lebeda


TThreadFunc a metoda objektu

[*] Info About <dinfo(zv)post.sk> - 11.2.2002 13:00:53

>> Pri vytvarani threadu pomocou funkcie BeginThread je
>> jeden z jej parametrov ThreadFunc typu TThreadFunc, je
>> to smernik na adresu rutiny threadu.
>>
>> Ako mu mam vsak priradit metodu FindStockLoop objektu TStock?

>Proc nepouzivas pro thready vlastni potomky objektu TThread?

Dobre pomocou potomkov TThread by to bolo riesitelne, napriek tomu
vie niekto odpovedat na povodny dotaz?

--
Najcerstvejsie spravy zo SME e-mailom - http://www.sme.sk/emailom/

OT: pozor na zdrojaky

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 11.2.2002 13:02:46

A co ma byt, kdyz se mi na vlastnim pocitaci spusti program (treba
notepad) ?
Jiny clovek mi do meho pocitace neuvidi, uvidi pouze SVUJ spusteny
notepad.
Jinak IE uz hooodne dlouho nepouzivam

Jinak, zatim neumi predat programu parametry, takze Format C: zatim
nehrozi

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

11.2.2002 iturcan(zv)gamo.sk:

> citajte, je to sice OT ale stoji za pozornost

> http://www.zive(tec)cz/H/Uzivatel/AR.asp?PG=1&ARI=103841&CAI=2105
> sorry za OT

> Ivan Turcan

Scitani rozdilu mezi datumy...

[*] Martin �ajbik <cajbik(zv)sct.sk> - 11.2.2002 13:14:18

A co takto

procedure XYZ
var
time_result: TTime;
date_result: TDate;
datetime, dt1, dt2: TDateTime;
i : Integer;
begin
datetime:= 0.0;

query.first;

while not query.Eof do
begin
dt1 := query.fieldbyname('start_time').value;
dt2 := query.fieldbyname('stop_time').value;

datetime:= datetime+dt2-dt1;
time_result := Frac(datetime);
date_result:= Int(datetime);
query.next;
end;
end;

Este par poznamok:
- medzi typmi TDate, TTime a TDateTime nie je ziaden rozdiel a vsetky su
definovane ako Double.
- dataset (napr. query) sa obvykle prechadza cez cyklus while not
dataset.Eof.
- predpokladam, ze procedura nie je kompletna a v ramci cyklu budes
potrebovat pracovat s time_result a date_result, inak staci ich vypocet
hodit za cyklus a nevypocitavat ich v kazdom kroku

MarCaNT (marcant(zv)sct.sk)

> Ahoj vsichni,
>
> Nevim si rady, prosim kdyz tak me nakopnete.
> Scitam rozdily mezi datumy a pouzivam k tomu TTime, TDate a TDatetime.
>
> Delam to nejak takhle:
>
> procedure XYZ
> var
> time1, time2, time_result : TTime;
> Date1, Date2 : TDate;
> dt1, dt2 : TDateTime;
> Date_result, i : Integer;
> begin
> time_result := strtotime('0:00:00');
> date_result := 0;
>
> query.first;
>
> for i := 1 to query.recordcount do
> begin
> dt1 := query.fieldbyname('start_time').value;
> dt2 := query.fieldbyname('stop_time').value; file://Definuje
TDATETime
>
> time1 := query.fieldbyname('start_time').value;
> time2 : query.fieldbyname('stop_time').value; file://Definuji Time
pouze
>
> date1 := query.fieldbyname('start_time').value;
> date2 : query.fieldbyname('stop_time').value; file://Definuji Date
pouze
>
> time_result := time_result + (dt2-dt1); file://Soucet casu (time)
> date_result := date_result + (trunc(date2)-trunc(date1));
file://Soucet dni
>
> if time1 > time2 then
> begin
> if date1 < date2 then
> date_result:=date_result-1; file://pokud cas z time1 nepresahl
24hodin k time2 od dni(date) odectu 1 den
> end;
> end;
>
> Query.next;
> end;
>
> end;
>
> A mam problem. V zasade by mi to i fungovalo, ale pokud soucet time_result
je vetsi nez 24:00:00, nevim jak
> to odchytit, abych udelal date_result := date_result +1;
>
> Nebo pokud si myslite, ze to delam zbytecne slozite, poradte, jak to
udelat jednoduseji... Nez jsem se do
> TDateTime pustil, koukal jsem na konferenci, ale nenasel jsem nic co by mi
pomohlo.
>
> Diky,
>
> Vlada
>
> P.S.: Jo mam D6 prof.
>
>

Vektorova grafika, DWG, CAD

[*] Radek Cervinka <radek.cervinka(zv)centrum(tec)cz> - 11.2.2002 13:16:44

Mam komponenty a stahnul jsem je z torry.net. Umi to zobrazit DXF. Pokud bys
je tam nenasel
tak ti je mohu poslat. Navic jsem tam opravil ze v urcitych pripadech na
Windows 9x padly
(chyba v GDI windows u Moveto nebo Lineto na velkych cislech) a ted uz
neeeeee.

Radek


>Dobry den,
>
>shanim nejakou vizualni komponentu pro prohl�zeni souboru typu DXF a DWG s
>vektorovou grafikou. Pro me potreby staci neco jednoducheho, ale melo by to
>byt free :(( Nevedel by nekdo o necem? Predem diky.
>
>Miroslav Prokel
>miroslav.prokel(zv)rtscs(tec)cz
>
>W2k+SP1 & D5Ent

Jak programove uzavrit preview QuickReportu

[*] Lstiburek Pavel <Lstiburek(zv)ceb(tec)cz> - 11.2.2002 13:44:18

Pokud dojde k chybe v prubehu "tisku" reportu zustane otevrene okno dialogu
preview, ktere bych potreboval zavrit. Pokud uzavru a uvolnim vlastni report
je po rucnim ukonceni dialogu ohlasena (pomerne pochopitelne) chyba.
Jak na to ?

D�ky Pavel


TThreadFunc a metoda objektu

[*] Ondrej Kelle <O.Kelle(zv)digitalpublishing.de> - 11.2.2002 13:49:45

> Dobre pomocou potomkov TThread by to bolo riesitelne, napriek tomu
> vie niekto odpovedat na povodny dotaz?

Dalo by sa to riesit tak, ze by si napisal proceduru (nie metodu), ktorej
ale posles ako parameter Self -
tym padom ta procedura moze pracovat s danou instanciou. Takto to robi aj
TThread.

HTH
TOndrej


plocha u win98 a win2k

[*] JIM Design <jim.design(zv)iol(tec)cz> - 11.2.2002 14:03:04

Ahoj,

potreboval bych vedet jak zjistit adresar, kde je umistena plocha a to
hlavne jak ve win98 tak i ve win2k

Predem Diky

M.Jirman


plocha u win98 a win2k

[*] Tom Lebr <tom.lebr(zv)volny(tec)cz> - 11.2.2002 14:23:57

na to je API funkce SHGetPathFromIDList, priklad pouziti treba zde
http://kanadepro.com/delphistuff/sampcode.mv?listTipsScreen+5

TL

----- Original Message -----
From: "JIM Design" <jim.design(zv)iol(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, February 11, 2002 2:03 PM
Subject: plocha u win98 a win2k


> Ahoj,
>
> potreboval bych vedet jak zjistit adresar, kde je umistena plocha a to
> hlavne jak ve win98 tak i ve win2k
>
> Predem Diky
>
> M.Jirman
>
>

Minimalizace okna kontra aplikace

[*] Karel Horky <horky.karel(zv)quick(tec)cz> - 11.2.2002 14:23:57

Lebeda David, <mailto:david.lebeda(zv)comarr(tec)cz> napsal:
> Tohle funguje dobre az na jednu vec. Aplikaci spustim A
> MINIMALIZUJI. Pote zkusim spustit druhou instanci. FindWindow v
> dpr souboru najde handle hlavniho okna aplikace a necha ho
> zobrazit. PRI TOM SE NEPROVEDE Application.OnRestore.

Nedavno jsem to psal do odpovedi na dotaz se subj. Jedna instance,
prohledej nedavne zpravy, reseni je vice.
Pokud nadale pouzijes reseni s FindWindow, tak prostuduj nasledujici:

Toto je vlozeno primo do projektu:

Uses Forms, Windows, Classes, Messages ,
...
...
{$R *.RES}
var
hwnd : THandle;
begin
hwnd := FindWindow('TFrmKJ1',nil);
if (hwnd = 0) or
(FindWindow('Tappbuilder',nil) > 0) then
begin
Application.Initialize;
Application.Title := 'Aplikace';
Application.CreateForm(TFrmKJ1, FrmKJ1);
Application.Run;
end
else
begin
SendMessage(hwnd,WM_USER,0,0);
ShowWindow(hwnd,SW_RESTORE);
SetForeGroundWindow(hwnd);
end;
end.

Do hlavniho programu doplnit registraci message:

Unit FrmKJ;
interface
uses Windows, Messages,Classes;

type
...
...
public
procedure WM_RESTOREAPP(var MSG: TMessage); message WM_USER;
end;

implementation
...
...
procedure TFrmKJ1.WM_RESTOREAPP(var MSG: TMessage);
begin
Application.Restore;
end;
...
...

Toto je fungujici, overeno i pri minimalizaci.
------
S pozdravem Karel Horky
horky.karel(zv)quick(tec)cz
W2K/SP1, D5Ent/UP1


Problemy s (Rx)Richeditem

[*] Jan Zeleny <zeleny.jan(zv)seznam(tec)cz> - 11.2.2002 14:23:34

Zdravim priznivce konference!
rad bych se podelil o svuj problem s touto komponentou.

Pisu aplikaci, kde uzivatel vyuziva richedit s funkcemi podobnym
wordpadu. Uzivatel napise text, na ktery ja pri ulozeni potrebuji
prevest filtr(do mnou ustanoveneho formatu-vytvorit neco
primitivnejsiho nez HTML).

1) Do ted jsem to delal, tak, ze jsem projizdel richedit kurzorem a
zjistoval nastaveni. Ale vyskytl se problem s automatickym
odradkovanim(Wordwrap=true). Kurzor se jinak posouva, podle toho
jestli je na konci radku tvrde #13#10 ci dlouhy radek, ktery richedit
rozdeli automaticky. Nejsem schopen rozeznat z property line, jestli
je radek rozdelen tvrde nebo ne.

2) Mam problem s vkladanim symbolu do richeditu s TTF
pisma(nestandarni z windows) se znaky >128. Pouzivam funkci EM_XX na
vkladani.Misto pozadovaneho znaku vsak vidim obdelniky ci jine znaky
z tehoz pisma.
Zajimave je, ze pokud obdelnik zkopiruji do schranky, vlozim treba do
Editu, znovu zkopiruji a vratim do richeditu, vidim mnou pozadovany
znak. Podle Lines pak obdelnik i znak maji ruzne cislo.
Jakoby pismo pri vkladani z funkce prevadel pres Arial. Cim to muze
byt ?

Proto mam nasledujici otazky
1) Lze nejak jinak prevest text do meho formatu - jinak nez
posouvanim kurzoru ci napsani sve vlastni tridy TConversion a tak
konvertovat RTF format z TMemorystream (pro me velmi neprakticke) ?
2) Delam nekde chybu pri vkladani znaku ? Zkousel jsem opravdu
vsechno mozne.


Snad jsem vas prilis neunavil dlouhym ctenim a vysvetlil jsem to
srozumitelne. Mozna jiz nekdo ma podobne zkusenosti. Prosim o
jakekoliv navrhy.
Predem diky!

J.Z.

______________________________________________________________________
Cesky film Zatraceni v kinech od 7. unora 2002 - vice na www.zatraceni(tec)cz
hraji: Jan Plouhar, Jan Revai, Dana Vavrova, Isabela Bencova, rezie Dan Svatek


plocha u win98 a win2k

[*] Jan Zeleny <zeleny.jan(zv)seznam(tec)cz> - 11.2.2002 14:41:29

Najdes to v registru- myslim ze to je v Shellfolders - snad tady
:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\Shell
Folders
Jinak bych zkusil najit klic manualne pomoci regeditu s aktualni
cestou k plose a pak ten klic pouzit.Nasel jsem to takhle a funguje
mi to na vsech wokenich systemech.

J.Z.
--------------------------
zdar a silu najdes v syru!
--------------------------

Dne 11.��nor�2002, <delphi-l(zv)clexpert(tec)cz> napsal:

> Ahoj,
>
> potreboval bych vedet jak zjistit adresar, kde je umistena plocha a to
> hlavne jak ve win98 tak i ve win2k
>
> Predem Diky
>
> M.Jirman
>
>

______________________________________________________________________
WWW stranky zdarma na http://www.sweb(tec)cz


plocha u win98 a win2k

[*] Jan Zeleny <zeleny.jan(zv)seznam(tec)cz> - 11.2.2002 14:45:44

Nasel jsem to presne-je to v current userovi(coz me prve netrklo):
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders
klic "Desktop", jsou tam i jine. Podivej se, treba se ti budou hodit.

J.Z.

Dne 11.��nor�2002, <delphi-l(zv)clexpert(tec)cz> napsal:

> Ahoj,
>
> potreboval bych vedet jak zjistit adresar, kde je umistena plocha a to
> hlavne jak ve win98 tak i ve win2k
>
> Predem Diky
>
> M.Jirman
>
>

______________________________________________________________________
"Vyhodna nabidka se neodmita ..." Oskarovi sluzby firmam.
http://ad2.seznam(tec)cz/redir.cgi?instance=20991%26url=http://www.oskarmobil(tec)cz/cz/business/b_index.html


TEdit - pouze tolik pismen, kolik se vejde

[*] Roland Turcan <rolo(zv)sedas.sk> - 11.2.2002 14:59:48


----- Original Message -----
From: "Kan�r" <delphi(zv)obecpohori(tec)cz>
Sent: Friday, February 08, 2002 10:00 PM


> Potrebuju nejak udelat takovou atypickou vlastnost komponenty TEdit -
> potrebuju, aby dovolila napsat pouze tolik znaku, kolik se vejde do jejiho
> viditelneho policka - tj. aby neslo psat "za roh". Jsem si vedomy, ze to
> bude pro kazdy text jiny pocet pismen (proporcionalni pismo) a ze to bude
> zavisle na nastavenem fontu.
> Vi nekdo jak na to?
> Diky
> VJ

Ja som si to ulahcil, ze pouzivam LEN Courier 10 a potom ide vysledok
Width:=9+(MaxLength*8) pre EditBox
Width:=9+16+(MaxLength*8) pre Combobox.

A mam po problemoch.

Roland.

Nelze tisknout z preview QReportu na W2000 prof.

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 11.2.2002 14:59:20

Roman dne 7 Feb 2002 v 21:28:

> Jestli pouzivas PreviewModal, tak zkus Preview.
> Me to s PreviewModal na W2k taky nefungovalo...

> >Pokud program spou�t�m na Win95 je v�e OK, kdy� tento exe spou�t�m na
> Win2000 prof.CZ jsou v preview >Qreportu ikony print a printer setup
> enabled=False !!! > >Nev�te n�kdo kde m��e b�t probl�m ?

Chyba byla zrejme zpusobena tim, ze pri PreviewModal nedoslo k vyvolani udalosti, ktera symbolizovala ukonceni pripravy
sestavy. Delal jsem si vlastni preview formular a zapasil jsem s tim samym - muj kod nedostal informaci o tom, ze priprava
je dokoncena. Nemaje od QuickReportu zdrojaky, resil jsem to tenkrat provizorne pres casovac a nejak jinak (ach, ta
skleroza) jsem zjistoval, zda jeste probiha priprava.

Nicmene pro Delphi 6 se na strankach Qusoftu pozdeji dala stahnout oprava QuickReportu, ktera mela tohle spravene. Pro jine
verze Delphi nevim.

Karel Rys

plocha u win98 a win2k

[*] Tomas Vladik <tom.vladik(zv)swadvice(tec)cz> - 11.2.2002 15:08:30

> Ahoj,
>
> potreboval bych vedet jak zjistit adresar, kde je umistena plocha a to
> hlavne jak ve win98 tak i ve win2k
>

V JCL je v unitu JclSysInfo funkce
function GetDesktopFolder: string;


T.

MDI a balicky

[*] Vobornik Petr <vobornik(zv)apel(tec)cz> - 11.2.2002 15:26:15

Dobry den,
mam MDI aplikaci s nekolika okny. Chtel bych tuto aplikaci prevest na
modulovou tak, ze jednotliva okna budu mit v dynamicky nahravanych balicich.
Chci se zeptat zda lze v D3 prelozit hlavni MDI okno spolu s VCL balicky a
svoje balicky ktere maji prilinkovane VCL dinamicky nahravat ? Nebo musi byt
hlavni MDI aplikace bez slinkovan�ch balicku. Vim, ze se jedna o duplicitu,
ale to mi zas tak nevadi. Nechci distribuovat velke VCL spolu s aplikaci
ktera je podstatne mensi, ale potrebuji modularitu programu. Pokud to takto
nejde, nevite nekdo jak to co nejjednoduseji vyresit ?

Predem dekuji
Petr Vobornik

Licence DAO pro KaDAO?

[*] bleak <bleak(zv)atlas(tec)cz> - 11.2.2002 15:37:56

zdravim,
mate nekdo zkusenost s komponentou KaDAO? Nedovoli mi umistit na formular
komponentu KaDAODatabase a pritom hlasi: Tento pocitac nema licenci pro
pouzivani DAO! Licence musi byt zapsana v Registry! a odkaz na stranku
Microsoftu, kde je informace, jak licenci do registru zapsat.
Zajima mne, zda se za pouziti licence pro DAO musi platit. Dale, zda tato
licence musi byt na pocitaci, na kterem pobezi aplikace s pouzitim KaDAO. A
pokud je pouziti licence DAO bezplatne, kde mohu najit instalaci knihoven
DAO? Ja se na serveru Microsoftu, vzdy beznadejne zamotam, proto se ptam
tady....
bleak

plocha u win98 a win2k

[*] Roland Turcan <rolo(zv)sedas.sk> - 11.2.2002 15:40:52

A co tak
function OpenSpecialFolder(FolderID: Integer; Parent: HWND = 0): Boolean;

z JCL ?
Roland.


From: "Jan Zeleny" <zeleny.jan(zv)seznam(tec)cz>
Sent: Monday, February 11, 2002 2:41 PM


> Najdes to v registru- myslim ze to je v Shellfolders - snad tady
>
:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\Shell
> Folders
> Jinak bych zkusil najit klic manualne pomoci regeditu s aktualni
> cestou k plose a pak ten klic pouzit.Nasel jsem to takhle a funguje
> mi to na vsech wokenich systemech.> > Ahoj,
> >
> > potreboval bych vedet jak zjistit adresar, kde je umistena plocha a to
> > hlavne jak ve win98 tak i ve win2k
> >
> > M.Jirman

Balicky: debugovani, duplicita unit

[*] Pavel Va�ek <delphi(zv)wige-mic(tec)cz> - 11.2.2002 15:57:25

Ahoj vsichni,

uz jsem se na tema balicky a debugovani, jednou ptal, ale protoze mi
neprisla
(pokud si dobre vzpominam) zadna odpoved. Ptam se znova, pricemz apeluji
hlavne na zastance balicku :).

DEBUGOVANI

1. Mam aplikaci, ktera vyuziva run-time balicky a potrbuji debugovat
aplikaci a
balicky vcetne debugovani do VCL.

2. Aplikace nahrava nektere balicky dynamicky pomoci funkce LoadPackage,
debugovani techto balicku nekdy jde, ale je to velice nahodne, napr. pul
dne
pracujete a debagovat muzete a najednou to nejde, nekdy staci prohodit
balicky
v project groupe, nekdy nepomuze nic.

DUPLICITA UNIT
1. Je mozne docilit nejakym zpusobem toho, aby se nejaka unita v balicku
vyhnula
kontrole na duplicitu. Potreboval bych unitu, ktera by byla obdobou
header filu
z C, je pravda, ze muzu udelat jeden spolecny balicek, ktery budou
ostatni
vyuzivat, ale jsou s tim problemy spojene s nutnou distribuci vyvojarum
a
instalaci tohoto balicku.

Myslim si ze na podobne problemy musi narazit kazdy, kdo dela rozsahlejsi
aplikaci
s run-time balicky. Mohli by proto zkusenejsi programatori poradit?

Predem vsem dekuji.

Pavel Vasek

Windows 2000, D5 Enterprise

MDI a balicky

[*] Pavel Va�ek <delphi(zv)wige-mic(tec)cz> - 11.2.2002 16:04:53


----- Original Message -----
From: "Vobornik Petr" <vobornik(zv)apel(tec)cz>

> ale to mi zas tak nevadi. Nechci distribuovat velke VCL spolu s aplikaci
> ktera je podstatne mensi, ale potrebuji modularitu programu. Pokud to
takto
> nejde, nevite nekdo jak to co nejjednoduseji vyresit ?

Bohuzel distibuci VCL se asi nevyhnes, protoze jinak by byl rozdil mezi VCL
balicku
a VCL aplikace, oba by pouzivali svoji kopii a jak uz se tady jednou psalo
TComponent v balicku <> TComponent v aplikaci, takze bys nemohl skoro nic
z toho co urcite budes potrebovat.
Takze ti nezbyva nic jineho nez aplikaci buildnout s run-time balicky.

Pavel Vasek

Balicky: debugovani, duplicita unit

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

From: "Pavel Va�ek" <delphi(zv)wige-mic(tec)cz>
> DEBUGOVANI
> 2. Aplikace nahrava nektere balicky dynamicky pomoci funkce LoadPackage,
> debugovani techto balicku nekdy jde, ale je to velice nahodne, napr. pul
> dne pracujete a debagovat muzete a najednou to nejde, nekdy staci prohodit
> balicky v project groupe, nekdy nepomuze nic.

Podivej se jestli nemas v Project Options nekde pouzite relativni cesty. Pokud
si vzpominam tak tohle byla nejaka chyba v debuggeru v Delphi 5. V pripade ze
balicek nejde ladit se podivej do Debug Windows | Modules jestli jej debugger
opravdu nasel.

> DUPLICITA UNIT
> 1. Je mozne docilit nejakym zpusobem toho, aby se nejaka unita v balicku
> vyhnula kontrole na duplicitu. Potreboval bych unitu, ktera by byla obdobou
> header filu z C, je pravda, ze muzu udelat jeden spolecny balicek, ktery
> budou ostatni vyuzivat, ale jsou s tim problemy spojene s nutnou distribuci
> vyvojarum a instalaci tohoto balicku.

Pouziti spolecneho balicku je asi nejsnazsi. Nicmene lze pouzit direktivu
{$DENYPACKAGEUNIT ON}

Petr Vones


MDIChildForm -> restore, maximize

[*] Blazek Jaroslav <Jaroslav.Blazek(zv)access-it(tec)cz> - 11.2.2002 18:59:25

Ahoj,
1. jakym zpusobem mam udelat restore, maximize MDIChild Formu je-li minimalizovane?

V adresari Delphi je sice ukazkova MDI aplikace, ale absolutne jsem nepochopil jakym zpusobem toho, co potrebuji, docili.

2. Dale bych se chtel zeptat, jakym zpusobem neco vykreslit na MDIForm, tak, aby to neprekryvalo MDIChildForm.

Diky

S pozdravem

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


Delphi a hry

[*] Kan�r - 11.2.2002 19:07:17

Dalsi alternativou jsou komponenty DelphiX, ktere jsou rovnez dost pouzivane
pro vyvoj her v Direct X.
Maji stranku tusim: http://www.ingjapan.ne.jp/hori/
VJ



----- Original Message -----
From: "Petr Vones" <pvones(zv)mbox.vol(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Sunday, February 10, 2002 6:49 PM
Subject: Re: Delphi a hry


> From: "Martin Kasman" <martinkasman(zv)pobox.sk>
> > Nemam konkretnu otazku, iba som zvedavy: je Delphi dobry programovaci
jazyk
> > pre hry? Ako na to, ked chcem aby mi hra bezala na celej obrazovke. Robi
sa
>
> Ahoj,
>
> dobra otazka. Object Pascal jako takovy rozhodne ano. Co se tyce Delphi
jako
> produktu tak tam uz je to horsi, protoze Borland zcela ignoruje
skutecnost, ze
> Delphi by bylo dobre i pro psani her. Nastesti se naslo par lidi, kteri za
ta
> leta pochopili, ze Borland svuj postoj nezmeni a snazili se udelat neco
sami.
> Problem tkvi v tom, ze pro vyvoj her je nezbytnou soucasti DirectX a k
tomu
> potrebujes do Delphi prislusne konverze C hlavicek do Object Pascalu.
Prave o
> to se postaral project JEDI, vice (konverze, priklady) najdes na JEDI
Graphix:
> http://delphi-jedi.org/DelphiGraphics/oldindex.htm
>
> Petr Vones
>
>

Aplikace pro IIS - radoby proxyserver

[*] Milan Schembera <milan(zv)missoftware(tec)cz> - 11.2.2002 19:31:42

Zdravim,

potreboval bych si udelat pro IIS nejaky plug-in (ISAPI ?) tak, aby veskere
requesty jdouci od klienta smeroval na lokalni IP adresu treba na port 8080,
odkud by response posilal zase zpatky na toho klienta - jde mi o to, ze mam
nejakou wap-aplikaci, ktera bezi treba na portu 8080 a zaroven mam IIS,
ktery bezi na portu 80 a problem je v tom, ze operator ma wap-gateway pouze
pro port 80 (nefunguje vychytavka typu http://jmenoserveru:8080/) ...

Vubec netusim, kde a jak zacit a zda-li je toto "zkousnutelne" nejak rychle,
aniz bych se moc nenaprogramoval.

Diky za rady.

S pozdravem a pranim hezkeho dne

Milan Schembera
MISSOFTWARE Lanskroun
software, obchod, servis
tel. 0 776 677 776
0 608 9 44444
tel. 0467 521 555
0467 520 141
http://www.missoftware(tec)cz
mailto:info(zv)missoftware(tec)cz

***************************
http://www.auto-pujcovny(tec)cz
http://www.koncese.com
http://www.mismarket(tec)cz
http://www.mismarket.com

Delphi a hry

[*] 3dimenzion <3dimension(zv)seznam(tec)cz> - 11.2.2002 19:42:12

Rozodne hry jdou a celkem dobre. Doporucuji OpenGL je lepsi nez DirectX (ve
3D).


----- Original Message -----
From: "Martin Kasman" <martinkasman(zv)pobox.sk>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Saturday, February 09, 2002 3:32 PM
Subject: Delphi a hry


> Nemam konkretnu otazku, iba som zvedavy: je Delphi dobry programovaci
jazyk
> pre hry? Ako na to, ked chcem aby mi hra bezala na celej obrazovke. Robi
sa
> to klasicky cez form? Objekty sa mozu vkladat do Image alebo je ich lepsie
> pixel po pixle vykreslit? A co 3D grafika? Su na to nejake komponenty?
>
> Vdaka za kazdu radu.
>
>

Licence DAO pro KaDAO?

[*] Lud�k ZITA <konference(zv)sales(tec)cz> - 11.2.2002 19:51:55


----- Original Message -----
From: "bleak" <bleak(zv)atlas(tec)cz>

> zdravim,
> mate nekdo zkusenost s komponentou KaDAO? Nedovoli mi umistit na formular
> komponentu KaDAODatabase a pritom hlasi: Tento pocitac nema licenci pro
> pouzivani DAO! Licence musi byt zapsana v Registry! a odkaz na stranku
> Microsoftu, kde je informace, jak licenci do registru zapsat.
> Zajima mne, zda se za pouziti licence pro DAO musi platit. Dale, zda tato
> licence musi byt na pocitaci, na kterem pobezi aplikace s pouzitim KaDAO.
A
> pokud je pouziti licence DAO bezplatne, kde mohu najit instalaci knihoven
> DAO? Ja se na serveru Microsoftu, vzdy beznadejne zamotam, proto se ptam
> tady....
> bleak
>

Ahoj.
Kdyz jsem se timhle problemem zabyval, tak jsem zjistil, ze :
1) Kdokoliv si muze podporu pro DAO stahnout od MS a pouzivat.
2) Kdokoliv muze dane funkce pouzivat a vokat ze seveho SW , pokud dany
produkt nebude konkurovat MS Accesu, MS Wordu a MS Excelu.
3) Pokud budu chtit tyto (DAO) knihovny sirit musim k tomu mit licenci na
urovni Office professional nebo VB studia.

Vyslo mi z toho tedy tohle :
- Klidne si muzu knihovnu stahnout (v pripade W2000 to ani neni potreba).
- Klidne muzu napsat a prodavat SW pouzivajici tyto funkce pokud neporusim
smysl bodu 2.
- Nemuzu ale spolu se svym SW sirit instalacky DAO, ALE jelikoz je to myslim
soucasti instalace IE od verze 5 vyse, muzu pridat instalaci IE, pripadne
rict zakaznikovi, ze musi mit nainstalovanu podporu DAO, kterou si muze
stahnout od MS tam a tam. (bohuzel adresy ktere jsem si nasel cca pred rokem
a pul uz nefunguji)

Ja jsem s poslednim bodem nemel problem, protoze jediny muj komercni produkt
pouzivajici KADAO mel pozadavek pouze W2000 a tam neni potreba vubec nic
doinstalovavat.

Ber to jako ze je to MUJ nazor a ja se podle nej ridim a vzhledem k dzungli
licencnich smluv, ktere jsem k tomu ci tomu a kde cetl se mohu mylit.
Takze az Te zavrou za priratstvi, tak ne ze mi to budes vycitat:)

Ludek


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


Tisk pod WinXP bez cestiny

[*] Sebesta Jan <delcomseb(zv)volny(tec)cz> - 11.2.2002 20:45:01

Zrdavim,

setkal jsem se pro me s velikou zahadou:

mam program v D5E a pouzivam tisk pres TQuickReport .
Tisku napr. pres TQRLabel a v nem text s cestinou.

- pokud tisku na sitovou tiskarnu z Win95 nebo Win98 tak je vse OK.
- pokud ale tisku z WinXP tak se "podela" cestina !!! Preview je ale OK.

Jedna se o tiskarnu Ricoh Aficio AP 1400 Laser a je pripojena k PC s WinXP.

Nevite nekdo kde hledat chybu?
V Delphi (QR), proc ale z Win98 je vse OK?
V nasteveni tiskarny (mam nejnovejsi ovladac)?
Ve TTF fontech? Font Arial je na vsech PC a v TQRLabel je nastaven na
'Stredoevropsky'.

Dekuji za cokoli, jiz zoufam. Jan Sebesta


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