Archív konference Delphi
Zpět na výběr roku archívu nebo přejít na fulltextové vyhledávání v konferenci.
FB domain
[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 16.5.2008 11:18:05
Cituji Michal Simsaj <delphinpp(zv)atlas(tec)cz>:
> mam tu taku diskusiu s kolegmi o ne/vyhodach FB. Bavili sme sa o
> datovych typoch a ja som spomenul, ze pod FB sa odporuca pouzivat
> domain-y a nie nativne datove typy. Ich reakcia bola, ze DB server,
> ktory si nerozumie s nativnymi datovymi typmi a k tomu este potrebuje
> "watchdog-a" v podobe FBGuardiana stoji za prd.
Ahoj,
FBGuardiana neni treba pouzivat - pokud vim, da se restart pripadne
spadnuvsiho FB serveru nastavit i ve vlastnostech te sluzby. FB
Guardian bych videl spis jako uzitecnou pomucku ve Win 95, 98 apod.
Nativni datove typy se samozrejme mohou pouzit. Pro me je hlavni
vyhoda v tom, ze kdyz si jednou vymyslim, ze mnozstvi zbozi dMnozstvi
je napr. numeric(14,4), tak je potom pro me pohodlnejsi takove policko
vytvaret, protoze nemusim nosit v hlave, na kolik mist jsem se kdysi
davno rozhodl mnozstvi sledovat.
Karel Rys
FB domain
[*] Michal Simsaj <delphinpp(zv)atlas(tec)cz> - 16.5.2008 10:28:02
Zdar vsetkym,
mam tu taku diskusiu s kolegmi o ne/vyhodach FB. Bavili sme sa o
datovych typoch a ja som spomenul, ze pod FB sa odporuca pouzivat
domain-y a nie nativne datove typy. Ich reakcia bola, ze DB server,
ktory si nerozumie s nativnymi datovymi typmi a k tomu este potrebuje
"watchdog-a" v podobe FBGuardiana stoji za prd.
Viem, ze ako hlavna vyhoda pouzitia domain sa prezentuje moznost, ze pri
poziadavke zmeny datoveho typu staci zmenit len domain a nemusi sa to
robit na kazdom fielde samostatne.
Viete mi pls poradit pripadne dalsie vyhody pouzitia domain na FB, resp.
rozdiely napr. v porovnani s "user defined datatypes" na MSSQL ? Funguju
na MSSQL uzivatelske typy podobnym sposobom ?
Ako to je pri vyhodnocovani dotazov na FB, ked nepouzivam domain-y. Je
plan menej optimalizovany ?, je vyhodnotenie dotazu dlhsie ? Ak ano,
preco ? Nie je pristup k fieldom v systemovych RDB strukturach indexovany ?
dik,
Miso
Vista 64bit
[*] delphi(zv)mjsoft(tec)cz - 15.5.2008 17:38:38
Zdravim,
mam dotaz ohledne chodu programu na operacnim systemu Vista 64bit. Bohuzel
nemam kde to zkusit. Program je v Delphi5 (expressgrid, FIBPlus) + Firebird
1.5 embed. Mate s tim nekdo zkusenosti? Bude to fungovat? Predpokladam, ze
tam Win32 aplikace funguji.
3102 (20080515)
__________
Verze exe file
[*] Jan Stefec <stefec(zv)algo-hk(tec)cz> - 19.5.2008 08:43:11
Preji pekny den,
poradi nekdo, jak muzu za behu aplikace zjistit, jaka verze aplikace
byla nastavena v Project / Options / Version Info pred jeji kompilaci?
Dekuji Honza
Verze exe file
[*] Zdenek Kalhous <kalhous(zv)eu(tec)cz> - 19.5.2008 08:57:21
From: Jan Stefec
poradi nekdo, jak muzu za behu aplikace zjistit, jaka verze aplikace
byla nastavena v Project / Options / Version Info pred jeji kompilaci?
Tohle mi v konferenci nekdo kdysi poradil na stejny dotaz a funguje to k vseobecne spokojenosti:
function TFTWAApl.GetVerApp(const FileName: string) : string;
var
dwHandle :THandle;
dwSize :DWORD;
lpData,lpData2:Pointer;
uiSize :UINT;
begin
Result:='';
dwHandle:=0;
dwSize:= GetFileVersionInfoSize(PChar(FileName), dwSize);
if dwSize<>0 then
begin
GetMem(lpData, dwSize);
if GetFileVersionInfo(PChar(FileName),dwHandle, dwSize, lpData) then
begin
try
uiSize:=SizeOf(TVSFixedFileInfo);
VerQueryValue(lpData,'\', lpData2,uiSize);
with PVSFixedFileInfo(lpData2)^ do
Result:= Format('%d.%d.%d.%d', [
HiWord(dwProductVersionMS),
LoWord(dwProductVersionMS),
HiWord(dwProductVersionLS),
LoWord(dwProductVersionLS)]);
except end;
end;
FreeMem(lpData, dwSize);
end;
end;
Z.Kalhous
Vista 64bit
[*] Jan Stefec <stefec(zv)algo-hk(tec)cz> - 19.5.2008 09:27:27
Mel jsem problem s pristupem k FB databazi umistene v Program Files.
Kdyz jsem ji premistil do mnou vytvoreneho adresare, aplikace zacala
pracovat bez problemu. Stejne jsem musel vyresit i prime zapisy na disk
- vystupy dat do TXT souboru, take do meho adresare.
Honza
delphi(zv)mjsoft(tec)cz wrote:
>Zdravim,
>
> mam dotaz ohledne chodu programu na operacnim systemu Vista 64bit. Bohuzel
>nemam kde to zkusit. Program je v Delphi5 (expressgrid, FIBPlus) + Firebird
>1.5 embed. Mate s tim nekdo zkusenosti? Bude to fungovat? Predpokladam, ze
>tam Win32 aplikace funguji.
>
>
>
>
> 3102 (20080515)
>__________
>
>
>
>
>
>
>
>
Verze exe file
[*] Petr BRABEC <delphi(zv)elra(tec)cz> - 19.5.2008 09:37:28
Function ZjistiVerzi : String;
var
InfoSize : DWord;
Info : Pointer;
ValueSize : DWord;
Value : PVSFixedFileInfo;
Dummy : DWord;
I1, I2 : Word;
I3, I4 : Word;
Begin
InfoSize := GetFileVersionInfoSize(PChar(ParamStr(0)), Dummy);
If InfoSize = 0 then
Begin
Dummy := GetLastError;
I1 := 0; I2 := 0;
I3 := 0; I4 := 0;
Exit;
End;
GetMem(Info, InfoSize);
GetFileVersionInfo(PChar(ParamStr(0)), 0, InfoSize, Info);
VerQueryValue(Info,'\', Pointer(Value), ValueSize);
With Value^ do
Begin
I1 := dwFileVersionMS shr 16;
I2 := dwFileVersionMS and $FFFF;
I3 := dwFileVersionLS shr 16;
I4 := dwFileVersionLS and $FFFF;
Result := IntToStr(I1) + '.' + IntToStr(I2) + '.' + IntToStr(I3) +
'.' + IntToStr(I4);
End;
FreeMem(Info, InfoSize);
End;
Petr (D7)
-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Jan Stefec
Sent: Monday, May 19, 2008 8:43 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Verze exe file
Preji pekny den,
poradi nekdo, jak muzu za behu aplikace zjistit, jaka verze aplikace
byla nastavena v Project / Options / Version Info pred jeji kompilaci?
Dekuji Honza
Vista 64bit
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 19.5.2008 09:37:28
Coz je ovsem zname jiz od Windows XP. Podivejte se na opravneni pro
adresar C:\Program Files - zjistite, ze i ve Windows XP ma opravneni k
zapisu jen Administrator. Bohuzel vzhledem k tomu, ze vetsina lidi se ve
Windows XP prihlasuje pod administratorskym uctem, tak se vse tvarilo
"normalne", nicmene Windows Vista k tomuto pristupuji jinak a pak se
neni cemu divit, kdyz na tuto chybu programatora doplati uzivatel.
Milan Tomes
Jan Stefec napsal(a):
> Mel jsem problem s pristupem k FB databazi umistene v Program Files.
> Kdyz jsem ji premistil do mnou vytvoreneho adresare, aplikace zacala
> pracovat bez problemu. Stejne jsem musel vyresit i prime zapisy na disk
> - vystupy dat do TXT souboru, take do meho adresare.
> Honza
>
> delphi(zv)mjsoft(tec)cz wrote:
>
>
>> mam dotaz ohledne chodu programu na operacnim systemu Vista 64bit. Bohuzel
>> nemam kde to zkusit. Program je v Delphi5 (expressgrid, FIBPlus) + Firebird
>> 1.5 embed. Mate s tim nekdo zkusenosti? Bude to fungovat? Predpokladam, ze
>> tam Win32 aplikace funguji.
>>
bad parameters on attach or create database CHARAC
[*] info(zv)drnholec(tec)cz <info(zv)drnholec(tec)cz> - 19.5.2008 11:39:40
Ahoj
Pouzivam embedded verzi FB 2.1 , Na vsech pocitacich aplikace funguje
korektne a bez problemu pouze na na jednom notebooku mi nahlasi vyse
uvedenou hlasku. Aplikace se neinstaluje jen se kopiruje identicka
struktura souboru.
(Stejna aplikace s verzi FB 1.55 tam jela bez problemu.)
Na prvni pohled to vypada jako kdyby hledal prislusne knihovny jinde nez
v podadresari Intl\
Ma nekdo radu co s tim , nebo co by to mohlo byt ?
Delphi 2007
IBX knihovny
delphi a wmi
[*] miroslav.barica(zv)matador.sk - 19.5.2008 13:39:48
Dobry den,
Potreboval by som nejaky nastrel ako na wmi a delphi. Potrebujem
vzdialene ziskavat informacie o staniciach a priznam sa, zatial som to v
spojeni s delphi nerobil. Ak by ma niekto vedel nasmerovat (free
komponenta, priklad, navod, zakladne principy) bol by som mu velmi
povdacny.
Dakujem za pripadne "nastrely"
M.
Delphi 2007 a 64-bit Vista
[*] Novy Lubos <lnovy(zv)unileasing(tec)cz> - 19.5.2008 15:25:56
Zdravim,
chystam se koupit novy PC, jelikoz nektere odezvy Delphi 2007 jsou na mem soucasnem hrozne
(hlavne cekani na napovedu v kodu po tecce, nebo otevirani nekterych formularu)
tak chci pamet 4 GB a zvazuji rovnou koupit 64-bit Vista Ultimate.
Budou na tom normalne fungovat Delphi 2007 Profesional for win32? Mate s tim nekdo zkusenost?
Nebo bych musel koupit jinou verzi Delphi?
Diky,
Lubos Novy
Web Deploy
[*] Ludan <konference(zv)sales(tec)cz> - 19.5.2008 20:58:22
Zdravim,
Prevadel jsem nejaky projekt (activeX Form) z D5 na D7 a trochu jiny framework(Drive RX dnes JCL) . Od zacatku jsem to kvuliva ladeni mel rozdelene na dva projekty - jeden normalni na ladeni a druhy ktery generoval Active X knihovnu. Tak jsem vse prevedl predele a prekodoval a upravil v tom "normalnim" projektu a kdyz jsem oteverel ten "active x" a chtel nastavit Web Deployment Option a dat nasledne Web Deploy, tak jsem zjistil, ze tyhle dve volby mam v menu najednou neaktivni jako u normalniho projektu. Pritom kdyz udelam novy projekt Active X Form tak je to vse OK a Web Deploy funguje. Zkousel jsem carova s *.dof *.cfg ale na nic jsem neprisel.
Vite nekdo jak na to ?
Predem diky.
Ludek
Delphi 2007 a 64-bit Vista
[*] Radek Voltr <voltr(zv)eleasoftware(tec)com> - 20.5.2008 11:58:42
Zdar
>tak chci pamet 4 GB a zvazuji rovnou koupit 64-bit Vista Ultimate.
>Budou na tom normalne fungovat Delphi 2007 Profesional for win32? Mate s
tim nekdo zkusenost?
Neni s tim zadny problem, normalne to jede. Pouzivam 64-bit Businessy
Cau
Radek
Cteni obrazku (OCR)
[*] Venca Ask Zaruba <zaruba(zv)elastoform(tec)cz> - 20.5.2008 15:26:59
HI *,
Mam pred sebou ukol:
Vycist z obrazku zaskrtle volby - podobne jako tiket sazky + carovy kod.
Pokousim se neco vygooglovat, ale nevim jak a od ceho zacit.
Dik za kazde postrceni, zatim se pokousim rozlozit obr do site a vycist
pocet barevnych bodu.
Diky Vasek 8^)
D7Pro XP
database CHARACTER SET WIN1250 is not defined
[*] Heinisch Jiri <info(zv)drnholec(tec)cz> - 22.5.2008 09:56:16
Ahoj
Protoze problem se zacina rozrustat na vice pocitacu obracim se o pomoc
znovu
****
bad parameters on attach or create database CHARACTER SET WIN1250 is
not defined
****
Podobny (stejny ?) problem jsem nasel na tomto odkazu
http://www.nabble.com/CORE-1524---bad-parameter-:-CHARACTER-SET-EUCJ_0208-is-not-defined-td13345148.html
Pokud mate nekdo jakykoliv napad tak ho privitam jinak se zrejme budu
uset vratit na FB 1,5
Pouzivam embedded verzi FB 2.1
Delphi 2007
IBX knihovny
(Stejna aplikace s verzi FB 1.55 jede bez problemu.)
Jura
database CHARACTER SET WIN1250 is not defined
[*] Heinisch Jiri <info(zv)drnholec(tec)cz> - 22.5.2008 10:20:18
Ano vse je tak jak ma byt
jak jsem psal , problem se tyka jen nekterych instalaci windows
a podle povidani na tom odkazu by to mohl byt problem systemovych knihoven.
http://www.nabble.com/CORE-1524---bad-parameter-:-CHARACTER-SET-EUCJ_0208-is-not-defined-td13345148.html
Velky problem je i ten ze na PC ke kterym mam pristup se mi tato zavada
neprojevuje a ja tak nemohu laborovat...
Zavada se projevuje itam kde je instalovan WIN XP SP2.
Tomas Krejzek napsal(a):
> No napada me jestli jsi nezapomnel v adresari INTL dll-ka z verze 1.5, mozna je 2.1 neumi
> pouzit. Jinymi slovy, mas vsechny adresare (udf, intl, lib) z verze 2.1 ??
>
>
database CHARACTER SET WIN1250 is not defined
[*] Tomas Krejzek <tomas.krejzek(zv)email(tec)cz> - 22.5.2008 10:12:18
No napada me jestli jsi nezapomnel v adresari INTL dll-ka z verze 1.5, mozna je 2.1 neumi
pouzit. Jinymi slovy, mas vsechny adresare (udf, intl, lib) z verze 2.1 ??
Tom
Heinisch Jiri napsal(a):
> Ahoj
>
> Protoze problem se zacina rozrustat na vice pocitacu obracim se o pomoc
> znovu
> ****
> bad parameters on attach or create database CHARACTER SET WIN1250 is
> not defined
> ****
>
> Podobny (stejny ?) problem jsem nasel na tomto odkazu
> http://www.nabble.com/CORE-1524---bad-parameter-:-CHARACTER-SET-EUCJ_0208-is-not-defined-td13345148.html
>
>
> Pokud mate nekdo jakykoliv napad tak ho privitam jinak se zrejme budu
> uset vratit na FB 1,5
>
>
> Pouzivam embedded verzi FB 2.1
> Delphi 2007
> IBX knihovny
>
> (Stejna aplikace s verzi FB 1.55 jede bez problemu.)
>
>
> Jura
>
>
>
>
> ======================================================================
KP-SYS mail server
http://www.kpsys(tec)cz
+420 466 655 055
======================================================================
database CHARACTER SET WIN1250 is not defined
[*] Pavel Fiser <fiserpavel(zv)gmail(tec)com> - 22.5.2008 11:58:25
Nevim jestli Ti pomuzu, jenom ma zkusenost...ovsem je to SS, ne embedd.
My jsme ted delali prechod u zakaznika taky z FB1.5->2.1 a na serveru
stejny problem - ani nesel udelat restore - se stejnou hlaskou.
Nakonec jsem prisel na to, ze tam opravdu asi nekde hnily nejake
knihovny z 1.5 a nas instalator to neprepsal, po nainstalovani z
originalniho instalatoru FB 2.1 to zaclo fungovat.
Kazdopadne ani fbclientdll, ani intl\*.* spatne nebyly.
> > No napada me jestli jsi nezapomnel v adresari INTL dll-ka z verze 1.5, mozna je 2.1 neumi
> > pouzit. Jinymi slovy, mas vsechny adresare (udf, intl, lib) z verze 2.1 ??
Pozice radku v DBGrid, D7
[*] Zdenek Kalhous <kalhous(zv)eu(tec)cz> - 22.5.2008 12:12:27
Da se prosim nejak zjisit
a) Kolik radku je viditelnych na DBGridu.
b) Kolikatym radkem je radek aktualni.
Dik.
Z.Kalhous
Pozice radku v DBGrid, D7
[*] Ludek Finstrle <ludek.finstrle(zv)pzkagis(tec)cz> - 22.5.2008 13:48:34
Thu, May 22, 2008 at 12:12:27PM +0200, Zdenek Kalhous napsal(a):
> Da se prosim nejak zjisit
> a) Kolik radku je viditelnych na DBGridu.
> b) Kolikatym radkem je radek aktualni.
Ahoj,
da se. Ale aby me zase vsichni neokrikli, ze odpovidam jen na otazku.
Chtel jsem ti napsat, at pohledas, ale google byl tak laskav, ze mi
to hodil jako prvni odkaz:
http://delphil2.szm.sk/prispevky/TopRow%20a%20DBGrid%20094717.htm
Resil jsem tenkrat, jak se po refreshi vratit do stejne pozice jako
pred nim. Myslel jsem, ze je tam primo i pocet viditelnych, ale treba
te to aspon nakopne.
Luf
database CHARACTER SET WIN1250 is not defined
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 22.5.2008 15:40:42
Ahoj,
Heinisch Jiri napsal(a):
> Ano vse je tak jak ma byt
> jak jsem psal , problem se tyka jen nekterych instalaci windows
> a podle povidani na tom odkazu by to mohl byt problem systemovych knihoven.
no a instalaci MSVC behovych knihoven, jak se na tom odkazu pise, jsi
zkousel?
Peca
Pozice radku v DBGrid, D7
[*] Zdenek Kalhous <kalhous(zv)eu(tec)cz> - 23.5.2008 07:45:53
>From: Ludek Finstrle
>Reseni se mi zda kupodivu trivialni (volano z metody DBGridu):
> // toto umisiti FCurrentRecord TDataSetu na aktivni radek
> DataSource.DataSet.UpdateCursorPos;
> // Zde se nastavi kolikaty odshora chci mit aktivni radek cislovano je to od 0 (0 => 1. radek pod title, ...)
> DataLink.ActiveRecord := AKolikatyOdShora;
> // A Resync provede tu spravnou vec
> DataSource.DataSet.Resync([]);
>Resil jsem tenkrat, jak se po refreshi vratit do stejne pozice jako pred nim. Myslel jsem, ze je tam primo i pocet viditelnych, ale treba
>te to aspon nakopne.
Presne toto bych potreboval ale D7 se se mnou na DBGridu odmita bavit o nejakem "DataLink.ActiveRecord". V helpu jsem nasel jen protected property TCustomDBGrid:
Applications should not need to use the DataLink property. It is exposed as a protected property so that component writers can use descendants of TGridDataLink to respond to additional data events.
DataLink helps TCustomDBGrid to
Resolve the field bindings specified by Columns with the fields in the dataset.
Respond to changes in the values of fields.
Respond to changes in record currency.
Respond to changes in the editing state of the dataset.
Keep track of unposted edits and discard or post them as appropriate.
A nevim co s tim :-(
Z.Kalhous
Pozice radku v DBGrid, D7
[*] Ludek Finstrle <ludek.finstrle(zv)pzkagis(tec)cz> - 23.5.2008 08:35:57
Ahoj
Fri, May 23, 2008 at 07:45:53AM +0200, Zdenek Kalhous napsal(a):
> >From: Ludek Finstrle
> >Reseni se mi zda kupodivu trivialni (volano z metody DBGridu):
Tusim, ze zde masa napsano to reseni (v zavorce).
> > // toto umisiti FCurrentRecord TDataSetu na aktivni radek
> > DataSource.DataSet.UpdateCursorPos;
> > // Zde se nastavi kolikaty odshora chci mit aktivni radek cislovano je to od 0 (0 => 1. radek pod title, ...)
> > DataLink.ActiveRecord := AKolikatyOdShora;
> > // A Resync provede tu spravnou vec
> > DataSource.DataSet.Resync([]);
> >Resil jsem tenkrat, jak se po refreshi vratit do stejne pozice jako
> >pred nim. Myslel jsem, ze je tam primo i pocet viditelnych, ale treba
> >te to aspon nakopne.
>
> Presne toto bych potreboval ale D7 se se mnou na DBGridu odmita bavit
> o nejakem "DataLink.ActiveRecord". V helpu jsem nasel jen protected
Protoze zaklady objektove orientovaneho programovani? Protected je
pristupne jen z dane tridy a jejich nasledniku, takze si nadefinovat
Nejaky THackedDBGrid = obejct (TDBGrid) a v nem si to uz zbastlit.
> property TCustomDBGrid:
> Applications should not need to use the DataLink property. It is exposed
> as a protected property so that component writers can use descendants
> of TGridDataLink to respond to additional data events.
Je tam jen should, ja bych se toho nebal, kdyz se jen cte ...
Jinak ja to pouzivam v D5, takze nevylucuji ze se neco mezitim zmenilo.
Luf
Pozice radku v DBGrid, D7
[*] Tomas Krejzek <tomas.krejzek(zv)email(tec)cz> - 23.5.2008 08:49:58
Ja nevim, takhle s tim nepracuju (jedu pres Next() na pozici dle primarniho klice).
Jen pokud provadis aktivni operace, tak puvodni radek uz nemusi byt na stejne pozici od
shora jako puvodne byl.
Tom
>> // Zde se nastavi kolikaty odshora chci mit aktivni radek cislovano je to od 0 (0 => 1. radek pod title, ...)
>> DataLink.ActiveRecord := AKolikatyOdShora;
>> // A Resync provede tu spravnou vec
>> DataSource.DataSet.Resync([]);======================================================================
KP-SYS mail server
http://www.kpsys(tec)cz
+420 466 655 055
======================================================================
Pozice radku v DBGrid, D7
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 23.5.2008 09:12:00
> Presne toto bych potreboval ale D7 se se mnou na DBGridu odmita bavit o
> nejakem "DataLink.ActiveRecord".
V programu v obsluze OnDrawColumnCell pouzivam k detekci aktivniho radku
toto:
if THDBGrid(Sender).DataLink.ActiveRecord = THDBGrid(Sender).Row - 1 then
Na zacatku unity v sekci Type je treba pripsat:
THDBGrid = class(TDBGrid)
end;
Predpokladam, ze z DataLinku pujde vycist i dalsi pozadovane vlastnosti.
Pocet viditelnych radku bude mozna nejaka protected property ci metoda v
DBGridu, ktera se v programu zpristupni prave vyse uvedenym trikem s
pretypovanim - lze pak pouzivat protected zalezitosti.
David Lebeda
Vytvoreni RunTime QRLabel
[*] Petr Mathon <dveste zar(zv)quick(tec)cz> - 25.5.2008 21:50:34
Zdravim
Mam problem, potrebuji runtime vytvorit TQRLabel ale nezobrazi se, kde je chyba?
pfl:=TQRLabel.Create(self);
with pfl do begin
parent:=QRBand;
AutoSize:=false;
font.Assign(f);
font.Style:=font.Style+[fsbold];
Top:=0;
Left:=pos_prn;
Width:=wdt;
end;
Takle vytvorim runtime TQRDBText a v pohode. Nebo jak funguje QRCreateList? - jak pridat. Petr Mathon
Import z Excelu - c#
[*] Dalibor <dalibor(zv)torola(tec)cz> - 26.5.2008 07:49:38
Ahoj, potrebuji do sve aplikace naimportovat data z excelu.
Data importuju pomoci kodu viz nize. Problem je, ze predem neznam nazvy
Listu, takze nemuzu pouzit
SELECT * FROM [Sheet1$]. Da se nejak k jednotlivym listum pristupovat pomoci
indexu, nebo jinak?
Dekuji.
private DataTable getDataFromXLS(string strFilePath)
{
try
{
string strConnectionString =string.Empty;
strConnectionString = (zv)"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="+strFilePath+(zv)";Extended Properties=""Excel
8.0;HDR=Yes;IMEX=1""" ;
OleDbConnection cnCSV =new OleDbConnection (strConnectionString);
cnCSV.Open();
OleDbCommand cmdSelect = new OleDbCommand ((zv)"SELECT * FROM [Sheet1$]",
cnCSV);
OleDbDataAdapter daCSV = new OleDbDataAdapter();
daCSV.SelectCommand = cmdSelect;
DataTable dtCSV = new DataTable ();
daCSV.Fill(dtCSV);
cnCSV.Close();
daCSV = null;
return dtCSV;
}
catch(Exception ex)
{
return null;
}
finally
{
}
}
64 bit DLL
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 26.5.2008 13:08:07
Exituje nejaka moznost v Delphi nebo BC++ vytvorit 64 bitove DLL?
Potreboval bych ho na Windows serveru x64 volat z 64 bitoveho procesu.
Jde to vybec nejak vyresit? Vim ze exituje moznost vytvorit 64 bit DLL a
z neho volat pres DCOM 32 bitove DLL. Ale jak a v cem to prilis netusim.
Predpokladam ze Microsoft Visual C ma asi 64 bitovy compilator.
Ma nekdo nejakou zkusenost?
Diky. ZVo.
64 bit DLL
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 26.5.2008 13:24:10
Puvodni zprava ze dne 26.5.2008 od Josef Zvonicek:
> Exituje nejaka moznost v Delphi nebo BC++ vytvorit 64 bitove DLL?
Co tohle?
http://www.freepascal.org
Petr Zahradnik, pocitacovy expert
==========================================================
Petr Zahradnik, Computer Laboratory
web: http://www.clexpert(tec)cz, e-mail: clexpert(zv)clexpert(tec)cz
==========================================================
64 bit DLL
[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 26.5.2008 13:20:09
On Monday, May 26, 2008 1:08 PM ,
Josef Zvonicek <prosoft(zv)prosoft(tec)cz> wrote:
> Exituje nejaka moznost v Delphi nebo BC++ vytvorit 64 bitove DLL?
> Potreboval bych ho na Windows serveru x64 volat z 64 bitoveho
> procesu.
> Jde to vybec nejak vyresit? Vim ze exituje moznost vytvorit 64 bit
> DLL a z neho volat pres DCOM 32 bitove DLL. Ale jak a v cem to
> prilis
> netusim. Predpokladam ze Microsoft Visual C ma asi 64 bitovy
> compilator.
pokud v pascalu tak zrejme FreePascal
D. Toman
64 bit DLL
[*] Venca Zaruba <zaruba(zv)elastoform(tec)cz> - 26.5.2008 14:02:13
Exituje nejaka moznost v Delphi nebo BC++ vytvorit 64 bitove DLL?
Potreboval bych ho na Windows serveru x64 volat z 64 bitoveho procesu.
Lazarus...
Udalost na seriovom porte
[*] Stanislav ADAMCIK <konferencia(zv)stadas.sk> - 27.5.2008 08:17:46
Zdravim,
existuje vo WIN nejaka udalost, ktora by mi dala vediet, ze na seriovy
port prisli nejake data ?
Zatial to nacitavam cez Timer.
Stano
Udalost na seriovom porte
[*] Vaclav Sazima <vaclav.sazima(zv)utilia(tec)cz> - 27.5.2008 11:22:08
Ahoj,
existuje: WaitCommEvent
a funguje nejen na prichozi data. Pro pouziti doporucuji prostudovat
zdrojovy kod nejake komponenty pro obsluhu serioveho portu.
Pouziti neni uplne trivialni.
Vaclav Sazima
Stanislav ADAMCIK napsal(a):
> existuje vo WIN nejaka udalost, ktora by mi dala vediet, ze na seriovy
> port prisli nejake data ?
Udalost na seriovom porte
[*] delphin(zv)post(tec)cz - 27.5.2008 11:16:07
> existuje vo WIN nejaka udalost, ktora by mi dala vediet, ze na seriovy
> port prisli nejake data ?
> Zatial to nacitavam cez Timer.
Zde je to i s prikladem:
http://msdn.microsoft.com/en-us/library/aa363424(VS.85).aspx
> ------------ Puvodni zprava ------------
> Od: Stanislav ADAMCIK <konferencia(zv)stadas.sk>
> Predmet: Udalost na seriovom porte
> Datum: 27.5.2008 08:19:02
> ----------------------------------------
> Zdravim,
>
> existuje vo WIN nejaka udalost, ktora by mi dala vediet, ze na seriovy
> port prisli nejake data ?
> Zatial to nacitavam cez Timer.
>
> Stano
>
>
>
>
>
UTF8 -> Win1250
[*] Jaromir Cermak <cermak(zv)procom(tec)cz> - 27.5.2008 14:52:29
Ahoj vsichni
Pouzivam nasledujici kod ke konverzi souboru z KODOVANI utf-8 do win1250:
lfsZdroj:=TFileStream.Create(FNazZdroje,fmOpenRead);
lfsZdroj.Position:=0;
lssPom:=TStringStream.Create('');
lssPom.CopyFrom(lfsZdroj,lfsZdroj.Size);
lssPom.Position:=0;
lwaZdroj:=lssPom.ReadString(lssPom.Size);
lwsCil:=UTF8ToWideString(lwaZdroj);
AssignFile(ltfCil,FNazCile);
{$I-}Rewrite(ltfCil);
Write(ltfCil,lwsCil);
{$I+}
IOResult;
kde UTF8ToWideString je prislusna funkce z JCL. Konverze probehne v poradku, az na to, ze mi nekdy da na zacatek znak '?' navic. Prosim, poradte kde delam chybu?
Dekuji
Jaromir Cermak
Skupina do Start menu
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 30.5.2008 14:32:12
Ahoj,
resim takovy problem. Mam svuj instalacni program, ktery ma za ukol do
menu Start - Programy pridat novou skupinu a v ni i podskupinu. Ve skupine
i podskupine pak jednotlivi zastupci. Na vytvoreni jsem nasel tento
postup: (schematicky)
if SUCCEEDED(SHGetSpecialFolderLocation(0, CSIDL_PROGRAMS, pidl)) then
begin
hPath := StrAlloc(MAX_PATH);
SHGetPathFromIDList(pIdl, hPath);
SkupAdr := IncludeTrailingBackslash(hPath) + 'Skupina';
StrDispose(hPath);
PodskupAdr := IncludeTrailingBackslash(SkupAdr) + 'Podskup';
if not DirectoryExists(SkupAdr) and not CreateDir(SkupAdr) then
begin
ShowMessage(''Nejde to');
exit;
end;
if not DirectoryExists(PodskupAdr) and not CreateDir(PodskupAdr) then
begin
ShowMessage(''Nejde to');
exit;
end;
end
else
begin
ShowMessage('SHGetSpecialFolderLocation failed...');
exit;
end;
Tim se zalozi prislusne skupiny a do nich pak mohu umistit zastupce.
Tohle, zda se, funguje. I na Vistach.
Problem je, kdyz chci provest odinstalaci a toto mam po sobe zrusit.
Postup je podobny - pomoci SHGetSpecialFolderLocation zjistim, kde je ta
hlavni skupina. Tu pak necham smazat pomoci:
ZeroMemory((zv)fo, sizeof(fo));
fo.Wnd := Handle;
fo.wFunc := FO_DELETE;
fo.pFrom := PChar(SkupAdr + '\*.*'#0#0);
fo.fFlags := FOF_NOCONFIRMATION or FOF_SILENT;
if SHFileOperation(fo) = 0 then
begin
if RemoveDir(SkupAdr) then
LabelOdinst.Caption := 'OK'
else
LabelOdinst.Caption := 'Chyba';
end
else
LabelOdinst.Caption := 'Chyba';
Na XP to funguje dobre. Na Vistach to probehne bez chyby, ale skupina ve
Start menu zustane netknuta.
Jak to tedy delat lepe? Program (instalacni i odinstalacni] si na zacatku
zobrazi dialog pro prepnuti do spravcovskeho rezimu, podobne jako Setup,
takze tady by problem byt nemel...
Diky.
David Lebeda
TListView - ItemHeight
[*] Vaclav Sazima <vaclav.sazima(zv)utilia(tec)cz> - 02.6.2008 15:10:15
Ahoj,
nevite, prosim, nekdo, jak u TListView nastavit vysku radek? TListView
pouzivam v rezimu OwnerData a OwnerDraw. a ViewStyle vsReport.
Potrebuji nastavit vetsi velikost pisma, ale property Font.Height zmeni
pouze velikost pisma ale nikoli radek, ty se prekryvaji.
Dik
Vaclav Sazima
TListView - ItemHeight
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 02.6.2008 15:44:19
> nevite, prosim, nekdo, jak u TListView nastavit vysku radek? TListView
> pouzivam v rezimu OwnerData a OwnerDraw. a ViewStyle vsReport. Potrebuji
> nastavit vetsi velikost pisma, ale property Font.Height zmeni pouze
> velikost pisma ale nikoli radek, ty se prekryvaji.
Nasel jsem ve zdrojaku tohle, coz pomohlo. Mozna mas jine nastaveni
ListView a pomuze neco jineho, podobneho...
lv.OwnerDraw := True;
try
//zde zmena vlastnosti fontu
finally
lv.OwnerDraw := False;
end;
David Lebeda
Firebird UDF vracejici timestamp
[*] j.binder(zv)albacon(tec)cz - 02.6.2008 17:08:25
Ahoj,
mam napsane nejake udf vracejici timestamp. UDf mi chodi v obou dale uvedenych variantach, ale nejsem si stropro jist, zda je predavani typu timestamp v obou pripadech opravdu spravne.
Pokud s tim mate nekdo zkusenosti, prosim o potvrzeni, zda je volani OK.
Funkce ma vstupni parametr timestamp, s nim neco provedu a vracim pozmeneny timestamp
Podle me je bez problemu spravne tato varianta:
declare external function ADDDATETIME timestamp returns timestamp free_it
entry point 'AddDateTime' module_name 'xxx.dll';
function AddDateTime(IBTS: PISC_TIMESTAMP): PISC_TIMESTAMP; cdecl; export;
begin
Result := ib_util_malloc(SizeOf(TISC_TIMESTAMP));
Result.timestamp_date := ...;
Result.timestamp_time := ...;
end;
Podle me by ale mela byt spravne a asi lepsi tato varianta, ale nejsem si s tim uplne jist
declare external function ADDDATETIME timestamp returns timestamp
entry point 'AddDateTime' module_name 'xxx.dll';
function AddDateTime(IBTS: PISC_TIMESTAMP): PISC_TIMESTAMP; cdecl; export;
begin
IBTS.timestamp_date := ...;
IBTS.timestamp_time := ...;
Result := IBTS;
end;
Prekvapilo me, ze bez problemu prosly i chyby, kdy free_it bylo ponechano v deklaraci UDF i ve druhe variante
a prvni varianta zase prosla i bez prvniho radku, tj. bez volani ib_itil_malloc. Ze oboji neskoncilo vyjimkou je pro me trochu zahada.
Zato spolehlive borilo Firebird 2.1, kdyz misto ib_util_malloc tam prezivala ze starych casu procedura malloc z msvcrt Podle me to melo uz vadit FB1.5, ale upozornila me na to az verze 2.
Zdravi Jiri Binder
UTF8 -> Win1250
[*] lelicek(zv)volny(tec)cz - 04.6.2008 09:07:47
Od: "Jaromir Cermak" <cermak(zv)procom(tec)cz>Komu: delphi-l(zv)clexpert(tec)cz
Predmet: UTF8 -> Win1250
> Pouzivam nasledujici kod ke konverzi souboru z KODOVANI
> utf-8 do win1250:
> kde UTF8ToWideString je prislusna funkce z JCL. Konverze
> probehne v poradku, az na to, ze mi nekdy da na zacatek
> znak '?' navic. Prosim, poradte kde delam chybu?
Ahoj
myslim si,ze soubory s UTF8 zacinaji znakem "?".
Pavel
Zjisteni existence override funkce na potomkovi, D
[*] Zdenek Kalhous <kalhous(zv)eu(tec)cz> - 04.6.2008 12:08:06
Mam formular "predka" na kterem je virtual procedura, rekneme Proc1, kterou potomek muze ale nemusi override predefinovat. Ted chci na predkovi vytvorit proceduru, ktera by potrebovala zjistit, jestli na potomkovi je nebo neni Proc1 predefinovana. Jak na to? Dik.
Z.Kalhous
Zjisteni existence override funkce na potomkovi, D
[*] Jan Sebelik <honza(zv)haes(tec)cz> - 04.6.2008 16:56:31
> Mam formular "predka" na kterem je virtual procedura, rekneme
> Proc1, kterou potomek muze ale nemusi override predefinovat. Ted
> chci na predkovi vytvorit proceduru, ktera by potrebovala
> zjistit, jestli na potomkovi je nebo neni Proc1 predefinovana.
> Jak na to? Dik.
> Z.Kalhous
No, asi by to slo:
TPredek = class
function MamOverride: Boolean; virtual;
procedure MojeProcedura; virtual;
procedure NejakaProcedura;
end;
TPotomek = class
function MamOverride: Boolean; override;
procedure MojeProcedura; override;
end;
function TPotomek.MamOverride: Boolean;
begin
Result := true;
end;
procedure TPredek.NekakaProcedura;
begin
if MamOverride then
...
else
...
end;
Kdyz bude TPotomek volat proceduru NejakaProcedura, dostane MamOverride = true.
Ale stejne se mi to zda nejaky divny ...
Z pohledu objektoveho mysleni, kdy postupujeme od obecneho ke konkretnimu, at si kdo chce prepisuje co chce. Z pohledu TPredek me to vubec nemusi zajimat.
Obavam se, ze duvod k tomuto dotazu nekudy kulha. Anebo se mylim?
Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
====================================
Zjisteni existence override funkce na potomkovi, D
[*] Petr Vones <conference(zv)petrvones(tec)net> - 04.6.2008 17:54:36
From: "Zdenek Kalhous" <kalhous(zv)eu(tec)cz>
> Mam formular "predka" na kterem je virtual procedura, rekneme Proc1,
> kterou
> potomek muze ale nemusi override predefinovat. Ted chci na predkovi
> vytvorit proceduru, ktera by potrebovala zjistit, jestli na potomkovi je
> nebo neni Proc1 predefinovana. Jak na to? Dik.
Nijak. Od toho je prave dedicnost, aby si potomek dane tridy zmenil co uzna
za vhodne. Pokud nekdo pouziva "obecnejsi" typ predka musi mu to byt zcela
lhostejne.
Pokud chces resit zdali objekt podporuje urcitou funkcionalitu bez ohledu na
dedicnost, tak k tomu se velmi dobre hodi interface.
Petr Vones
Zjisteni existence override funkce na potomkovi, D
[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 04.6.2008 17:08:33
Souhlasim, potomek ma funkcnost rozsirovat a predkovi by melo byt
naprosto jedno, co se v potomkovi deje.
Kdyz nejaka metoda v potomkovi naprosto nevyhovuje, tak ji prepisu bez
pouziti inherited, takze se puvodni metoda vubec nespusti.
Zkus napsat, co te k tomu pozadavku vede.
Ladislav Stary
> Ale stejne se mi to zda nejaky divny ...
> Z pohledu objektoveho mysleni, kdy postupujeme od obecneho ke konkretnimu, at si kdo chce prepisuje co chce. Z pohledu TPredek me to vubec nemusi zajimat.
> Obavam se, ze duvod k tomuto dotazu nekudy kulha. Anebo se mylim?
>
> Honza
>
Zjisteni existence override funkce na potomkovi, D
[*] delphin(zv)post(tec)cz - 04.6.2008 19:22:44
> Mam formular "predka" na kterem je virtual procedura, rekneme Proc1, kterou
> potomek muze ale nemusi override predefinovat. Ted chci na predkovi vytvorit
> proceduru, ktera by potrebovala zjistit, jestli na potomkovi je nebo neni Proc1
> predefinovana. Jak na to? Dik.
Domnivam se, ze by to jit melo porovnanim adresy metody ve VMT aktualni tridy a tridy predka. Toho reseni je vsak hloupe a takhle se to nedela. Nic Vam nebrani to udelat spravne, napriklad si nadefinovat pomocnou metodu
function IsOverrided:boolean; virtual;
s tim, ze puvodni trida vraci false a nova trida vraci true.
OT: Kupim delphi
[*] Hlas <hlas(zv)inmail.sk> - 04.6.2008 22:17:05
Ospravedlnujem sa za OT.
Kupim delphi (vratane licencie), najlepsie D7
Ak by ste o niekom vedeli, ponuku prosim na hlas(zv)inmail.sk
Dakujem
UTF8 -> Win1250
[*] Petr Daricek <petr.daricek(zv)seznam(tec)cz> - 05.6.2008 07:23:49
Znaky, ktere se davaji na zacetek najdes na http://en.wikipedia.org/wiki/Byte-order_mark . Pokud tam vidis otaznik, muze to byt tim ze ti to editor neinterpretuje spravne(umi jen ansi).
Petr
>> Pouzivam nasledujici kod ke konverzi souboru z KODOVANI
>> utf-8 do win1250:
>> kde UTF8ToWideString je prislusna funkce z JCL. Konverze
>> probehne v poradku, az na to, ze mi nekdy da na zacatek
>> znak '?' navic. Prosim, poradte kde delam chybu?
>Ahoj
>
>myslim si,ze soubory s UTF8 zacinaji znakem "?".
>
>Pavel
IBX Firebird2
[*] Robert Fujak <robof(zv)inmail.sk> - 05.6.2008 08:45:55
Zdravim,
Od FB2 je sriktne aliasovanie v SQL, tzn neda sa pouzit napr. podmienka
tablename.id = 1 v takomto query:
Select a.id, a.name from tablename a;
Viete ako mozem zistit alias 'a' za pouzitia IBX? Ten ma vlastnost 'Origin'
napriklad 'tablename'.'id'
Dik Robo.
pocitani s realnymi c isly
[*] klvan(zv)centrum(tec)cz - 05.6.2008 09:25:59
Ahoj,
napsal jsem si funkci na matematicke zaokrouhlovani (5 se vzdy zaokr. nahoru), ale nepracuje to
podle mych predstav. Pokud zavolam ZaokrMatem(12, -1) tak mam na
druhem radku hodnotu 119 namisto 120. Vim, ze problem vezi ve vnitrni
interpretaci realnych cisel v pocitaci, ale potreboval bych vedet, jak
to bezpecne vyresit, aby mi to fungovalo, jak ma. Zkousel jsem namisto Double pouzit Extended.
Stejne mi to pri nekterych cislech nefungovalo.
Takto mi to nefunguje:
function TForm1.ZaokrMatemat(const LI_Hodnota: Double; const
LI_PocDesMist: TRoundToRange): Double;
var lext : Double;
lPocDesMist : Double;
lPomInt : Int64;
begin
lPocDesMist := IntPower(10, LI_PocDesMist);
lPomInt := Trunc(LI_Hodnota * lPocDesMist); // tady je li_hodnota 12 a lpocdesmist 0,1, tak to vraci 119 a ja chci 120
lext := LI_Hodnota * lPocDesMist;
if Frac(lext) >= 0.5 then
lPomInt:= lPomInt + 1;
result := lPomInt / lPocDesMist;
end
Diky
Milos
pocitani s realnymi c isly
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 05.6.2008 09:46:03
S timhle jsem se setkal taky a jine reseni, nez udelat jinou funkci, kdy
je vstupni parametr typu napr. Currency jsem opravdu nenasel. Vzdy jsem
nasel nejake cislo, ktere bylo zaokrouhleno spatne.
V tuto chvili mam funkce 2:
function Round(const AValue: Extended; const ADigit: TRoundToRange;
ARoundType: TRoundingType): Extended;
function RoundCurrency(const AValue: Currency; const ADigit:
TRoundToCurrRange; ARoundType: TRoundingType): Currency;
kde:
TRoundingType = (rtArithmeticSymmetric, rtArithmeticAsymmetric,
rtStatistical, rtUpperCeiling, rtUpperAwayFromZero, rtLowerFloor,
rtLowerTowardZero);
//rtArithmeticSymmetric: Zaokrouhleni kladnych cisel normalne, zaporna
cisla na vyssi absolutni hodnotu (-6.5 = -7)
//rtArithmeticAsymmetric: Zaokrouhleni kladnych cisel normalne, zaporna
cisla na matematicky vyssi (-6.5 = -6)
//rtStatistical: Zaokrouhleni cisla 5 vzdy na sude cislo (6.5 = 6, 7.5 =
8, -6.5 = -6, -7.5 = -8)
//rtUpperCeiling: Zaokrouhleni vzdy nahoru; zaporna cisla blize k nule
(-6.5 = -6)
//rtUpperAwayFromZero: Zaokrouhleni vzdy nahoru; zaporna cisla na vyssi
absolutni hodnotu (-6.5 = -7)
//rtLowerFloor: Zaokrouhleni vzdy dolu; zaporna cisla dale od nuly (-6.5
= -7)
//rtLowerTowardZero: Zaokrouhleni vzdy dolu; zaporna cisla na nizsi
absolutni hodnotu (-6.5 = -6)
TRoundToCurrRange = -4..14;
Tech zpusobu zaokrouhlovani je ponekud vice :)
S pozdravem
Milan Tomes
klvan(zv)centrum(tec)cz napsal(a):
> napsal jsem si funkci na matematicke zaokrouhlovani (5 se vzdy zaokr. nahoru), ale nepracuje to
> podle mych predstav. Pokud zavolam ZaokrMatem(12, -1) tak mam na
> druhem radku hodnotu 119 namisto 120. Vim, ze problem vezi ve vnitrni
> interpretaci realnych cisel v pocitaci, ale potreboval bych vedet, jak
> to bezpecne vyresit, aby mi to fungovalo, jak ma. Zkousel jsem namisto Double pouzit Extended.
> Stejne mi to pri nekterych cislech nefungovalo.
>
pocitani s realnymi c isly
[*] delphin(zv)post(tec)cz - 05.6.2008 11:04:14
> napsal jsem si funkci na matematicke zaokrouhlovani (5 se vzdy zaokr.. nahoru),
To je lez, ktera se tahne uz od zakladni skoly. Matematicky spravne zaokrouhlovani je zaokrouhlovani k nejblizsimu cislu, pri stejne vzdalenosti, coz je prave ta 5-ka, k sudemu cislu. Pokud se 5-ka bude zaokrouhlovat pokazde nahoru, tak to ma vazny dopad mimo jine na vysledky statistickych funkci. Bohuzel inteligence zakonodarcu na to nestacila a tak se v programech musi zaokrouhlovat pokazde jinak.
> ale nepracuje to
> podle mych predstav. Pokud zavolam ZaokrMatem(12, -1) tak mam na
> druhem radku hodnotu 119 namisto 120. Vim, ze problem vezi ve vnitrni
> interpretaci realnych cisel v pocitaci, ale potreboval bych vedet, jak
> to bezpecne vyresit, aby mi to fungovalo, jak ma. Zkousel jsem namisto Double
> pouzit Extended.
> Stejne mi to pri nekterych cislech nefungovalo.
Zaokrouhlovani dela primo FPU, staci rict, jak to chci, treba nejak takhle:
RoundEx(cislo, 0.01, remNearest);
TRoundExMode=(remNearest=0,remDown=1,remUp=2,remTowardZero=3);
function RoundEx(const Value:Extended;const Threshold:Extended;const RoundExMode:TRoundExMode=remNearest):Extended;
var CW:word;
NewCW:Word;
asm
FNSTCW WORD PTR [CW]
movzx ecx,WORD PTR [CW]
and ecx,not $C00
or ecx,$300
and eax,$3
shl eax,10
or ecx,eax
mov WORD PTR [NewCW],cx
FLDCW WORD PTR [NewCW]
FLD TBYTE PTR [Threshold]
FLD TBYTE PTR [Value]
FDIV ST(0),ST(1)
FRNDINT
FMULP ST(1),ST(0)
FLDCW WORD PTR [CW]
end;
pojmenovani sitoveho pripojeni
[*] Petr Vetesnik <vetesnik(zv)gmail(tec)com> - 05.6.2008 11:26:16
Zdravim vsechny vyvojare,
Potreboval poradit jak do aplikace ziskat pojmenovani sitoveho pripojeni.
Pomoci GetAdaptersInfo ziskam informace o sitovce (jmeno, IP apod.), ale
pojmenovani sitoveho pripojeni se mi nedari
S pozdravem Petr Vetesnik
pocitani s realnymi c isly
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 05.6.2008 11:22:15
delphin(zv)post(tec)cz napsal(a):
>> napsal jsem si funkci na matematicke zaokrouhlovani (5 se vzdy zaokr.. nahoru),
>>
>
> To je lez, ktera se tahne uz od zakladni skoly. Matematicky spravne zaokrouhlovani je zaokrouhlovani k nejblizsimu cislu, pri stejne vzdalenosti, coz je prave ta 5-ka, k sudemu cislu. Pokud se 5-ka bude zaokrouhlovat pokazde nahoru, tak to ma vazny dopad mimo jine na vysledky statistickych funkci. Bohuzel inteligence zakonodarcu na to nestacila a tak se v programech musi zaokrouhlovat pokazde jinak.
>
No napsat "to je lez" je ponekud silne - neexistuje jen jediny zpusob
zaokrouhlovani. To co Milos popisoval je zname pod nazvem matematicke
zaokrouhlovani a to co popisujes ty je znamo pod nazvem statisticke
zaokrouhlovani. Pravdu v tomto pripade mate oba. Timhle problemem jsem
se zabyval pomerne dlouho a nasel jsem toto:
http://www.diycalculator.com/popup-m-round.shtml
http://www.latiumsoftware.com/en/delphi/00033.php
Mimochodem je pro zajimavost - zalezi jen na uhlu pohledu - jde nulou
delit ??? Spousta lidi rekne, ze ne, ale existuje i oduvodneny nazor, ze
lze a vysledkem je nekonecno :) Vemte si napriklad zdroj, ktery je
schopen dodavat nekonecny proud a ma nulovy vnitni odpor a takovy zdroj
zkratujte dratem s nulovym odporem - jaky je proud protekajici timto
obvodem? Nekonecny :)
Ale to je jen pro zajimavost a cista teorie - zdroj s nulovym vnitrnim
odporem neexistuje :)
S pozdravem
Milan Tomes
pocitani s realnymi c isly
[*] klvan(zv)centrum(tec)cz - 05.6.2008 11:44:18
Zaokrouhlovani k sudemu cislu je jedna z metod, jak vyresit prave
zaokrouhlovani petky. Mas pravdu, ze pri jejim pouziti vznika mensi
prumerna chyba.
Druha casto pouzivana metoda je prave ta, kterou potrebuji (pet vzdy
nahoru) a pomoci parametru funkce Round, nebo RoundTo nebo
SimplyRoundTo nejsem schopen ji dosahnout.
Mne spise zajimalo, jestli je moznost pracovat s realnym cislem 12,0
jako 12,0 a ne jako 11,9999... a mit moznost zavolat funkci Trunc, aby
mi vratila 12 a ne 11.
Milos
>> ?napsal jsem si funkci na matematicke zaokrouhlovani (5 se vzdy zaokr.. nahoru),
>
>To je lez, ktera se tahne uz od zakladni skoly. Matematicky spravne zaokrouhlovani je zaokrouhlovani k nejblizsimu cislu, pri stejne vzdalenosti, coz je prave ta 5-ka, k sudemu cislu. Pokud se 5-ka bude zaokrouhlovat pokazde nahoru, tak to ma vazny dopad mimo jine na vysledky statistickych funkci. Bohuzel inteligence zakonodarcu na to nestacila a tak se v programech musi zaokrouhlovat pokazde jinak.
>
>> ale nepracuje to
>> ?podle mych predstav. Pokud zavolam ZaokrMatem(12, -1) tak mam na
>> ?druhem radku hodnotu 119 namisto 120. Vim, ze problem vezi ve vnitrni
>> ?interpretaci realnych cisel v pocitaci, ale potreboval bych vedet, jak
>> ?to bezpecne vyresit, aby mi to fungovalo, jak ma. Zkousel jsem namisto Double
>> pouzit Extended.
>> Stejne mi to pri nekterych cislech nefungovalo.
>
>Zaokrouhlovani dela primo FPU, staci rict, jak to chci, treba nejak takhle:
>
>RoundEx(cislo, 0.01, remNearest);
>
>TRoundExMode=(remNearest=0,remDown=1,remUp=2,remTowardZero=3);
>
>function RoundEx(const Value:Extended;const Threshold:Extended;const RoundExMode:TRoundExMode=remNearest):Extended;
>var CW:word;
> ? ?NewCW:Word;
>asm
> FNSTCW WORD PTR [CW]
> movzx ecx,WORD PTR [CW]
> and ecx,not $C00
> or ecx,$300
> and eax,$3
> shl eax,10
> or ecx,eax
> mov WORD PTR [NewCW],cx
> FLDCW WORD PTR [NewCW]
>
> FLD TBYTE PTR [Threshold]
> FLD TBYTE PTR [Value]
> FDIV ST(0),ST(1)
> FRNDINT
> FMULP ST(1),ST(0)
>
> FLDCW WORD PTR [CW]
>end;
>
>
>
>
pocitani s realnymi c isly
[*] Jiri Semler <semler(zv)kapsw(tec)cz> - 05.6.2008 11:36:17
Zkus tohle.
Delal jsem to na zaokrouhlovani na nasobek cisla. Kdyz mel byt vysledek
deliteny treba 20, nebo 50(presnost vazeni vahy 10 tun +- 25kg) .
Funguje to i na nasobky mensi nez 1 napr. 0,5 (zaokrouhleni castky na 50
hal.)
function Zaokrouhli(Cislo:Extended;Nasobek:Extended):Extended;
var PomNum:Extended;
Function Sign(Cislo:extended):integer;
begin
if cislo<0 then
Result:=-1
else
Result:=1;
end;
begin
if Nasobek<>0 then
begin
PomNum:=Trunc(Abs(Cislo/Nasobek)+0.5)*(Sign(Cislo)*Nasobek);
end
else
PomNum:=Round(Cislo);
Result:=PomNum;
end;
klvan(zv)centrum(tec)cz wrote:
> Ahoj,
> napsal jsem si funkci na matematicke zaokrouhlovani (5 se vzdy zaokr. nahoru), ale nepracuje to
pocitani s realnymi c isly
[*] Daniel Rott <roxton(zv)seznam(tec)cz> - 05.6.2008 11:56:19
From: delphi-l-owner(zv)clexpert(tec)cz
> Mne spise zajimalo, jestli je moznost pracovat s realnym
> cislem 12,0 jako 12,0 a ne jako 11,9999... a mit moznost
> zavolat funkci Trunc, aby mi vratila 12 a ne 11.
nevim co pocitas, ale obcas je jednodussi to spocitat v integer
podobne jako to dela typ currency tedy fixed-point ...
nebo existuji knihovny, co provadeji vypocty ve znacich
s neomezenou presnosti (bez zaokrouhlovani) ...
Daniel
pocitani s realnymi c isly
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 05.6.2008 11:48:18
klvan(zv)centrum(tec)cz napsal(a):
> Mne spise zajimalo, jestli je moznost pracovat s realnym cislem 12,0
> jako 12,0 a ne jako 11,9999... a mit moznost zavolat funkci Trunc, aby
> mi vratila 12 a ne 11.
>
>
>
Zkousel jsem kde co, ale jedina rozumna moznost byla vytvoreni dalsi
funkce, ktera ma vstupni parametr napr. typu currency (obecne nejaky
integer typ)
S pozdravem
Milan Tomes
for .. in .. do
[*] Dusan Nagy <dnagy(zv)inomacomp.sk> - 05.6.2008 12:02:20
Nevie niekto ako predne funguje konstrukcia v D2005 for .. in ..do
var
hLine : TSIPX_Line;
Line : TsxLine;
begin
Result:=nil;
if sipxLineFindByURI(FInstance, PChar(AURI), hLine)=SIPX_RESULT_SUCCESS then
begin
for Line in Lines do
begin
if Line.Line=hLine then
begin
Result:=Line;
break;
end;
end;
end;
end;
pocitani s realnymi c isly
[*] Petr Fejfar <petr.fejfar(zv)seznam(tec)cz> - 05.6.2008 12:12:21
Dne Thu, 05 Jun 2008 11:22:15 +0200 Milan Tomes <delphi(zv)haida(tec)cz>
napsal/-a:
> No napsat "to je lez" je ponekud silne - neexistuje jen jediny zpusob
> zaokrouhlovani.
Jasne. Kdyz nam vnucuje statisticke zaokrouhlovani, tak by stalo za to
zminit jeste stochasticke zaokrouhlovani slouzici k temuz...
> Mimochodem je pro zajimavost - zalezi jen na uhlu pohledu - jde nulou
A kdyz zminujes to nulu, tak meteorologove ucelove zaokrouhluji male
zaporne teploty na "minus nulu" :-)
pf
pocitani s realnymi c isly
[*] Radek Cervinka <radek.cervinka(zv)technodat(tec)cz> - 05.6.2008 12:08:21
klvan(zv)centrum(tec)cz napsal(a):
..
>
> Mne spise zajimalo, jestli je moznost pracovat s realnym cislem 12,0
> jako 12,0 a ne jako 11,9999... a mit moznost zavolat funkci Trunc, aby
> mi vratila 12 a ne 11.
>
no a nestaci vzdycky pricist neco jako 0.000001 a teprve vysledek zaokrouhlit
(ten pocet desetinnych mist zavisi na pozadovane presnosti)
R.
pocitani s realnymi c isly
[*] delphin(zv)post(tec)cz - 05.6.2008 12:28:22
> Druha casto pouzivana metoda je prave ta, kterou potrebuji (pet vzdy
> nahoru) a pomoci parametru funkce Round, nebo RoundTo nebo
> SimplyRoundTo nejsem schopen ji dosahnout.
Zkus to takhle:
RoundEx(cislo, 0.01, remUp);
pocitani s realnymi c isly
[*] klvan(zv)centrum(tec)cz - 05.6.2008 13:06:26
RoundEx v turbo delphi nemam, ale pomoci SetRoundMode jsem vyzkousel vsechny moznosti bez uspechu.
Nejlepsi reseni bude asi pouzit typ Currency, sice to nebude univerzalni funkce, ale pro zaokrouhlovani na tri desetinna mista by mohla stacit.
Pricitani neceho jako 0,000001 me taky napadlo, jen se mi to reseni moc nelibilo, protoze nevim jestli to je 11,9999999 nebo 11,99999998.
Bez problemu by mohlo byt i to pocitani ve znacich.
Diky
Milos
______________________________________________________________
> Od: delphin(zv)post(tec)cz
> Komu: delphi-l(zv)clexpert(tec)cz
> Datum: 05.06.2008 12:29
> Predmet: Re: pocitani s realnymi c isly
>
>> Druha casto pouzivana metoda je prave ta, kterou potrebuji (pet vzdy
>> nahoru) a pomoci parametru funkce Round, nebo RoundTo nebo
>> SimplyRoundTo nejsem schopen ji dosahnout.
>
>Zkus to takhle:
>
>RoundEx(cislo, 0.01, remUp);
>
>
>
pocitani s realnymi c isly
[*] delphin(zv)post(tec)cz - 05.6.2008 13:14:27
> RoundEx v turbo delphi nemam, ale pomoci SetRoundMode jsem vyzkousel vsechny
> moznosti bez uspechu.
Asi se ztraceji prispevky
RoundEx(cislo, 0.01, remUp);
TRoundExMode=(remNearest=0,remDown=1,remUp=2,remTowardZero=3);
function RoundEx(const Value:Extended;const Threshold:Extended;const RoundExMode:TRoundExMode=remNearest):Extended;
var CW:word;
NewCW:Word;
asm
FNSTCW WORD PTR [CW]
movzx ecx,WORD PTR [CW]
and ecx,not $C00
or ecx,$300
and eax,$3
shl eax,10
or ecx,eax
mov WORD PTR [NewCW],cx
FLDCW WORD PTR [NewCW]
FLD TBYTE PTR [Threshold]
FLD TBYTE PTR [Value]
FDIV ST(0),ST(1)
FRNDINT
FMULP ST(1),ST(0)
FLDCW WORD PTR [CW]
end;
pocitani s realnymi c isly
[*] klvan(zv)centrum(tec)cz - 05.6.2008 16:58:47
Promin, s tou funkci mi nesecvaklo.
Zkusil jsem ji, ale nevim jestli funguje spravne. At nastavim jakykoli RoundExMode, tak se to chova stejne. Nevim presne jak to funguje, do assembleru skoro vubec nevidim, ale myslim, ze se tento parametr vubec ve funkci neuplatni. Nebo jo?
Milos
>
>RoundEx(cislo, 0.01, remUp);
>
>
>
>TRoundExMode=(remNearest=0,remDown=1,remUp=2,remTowardZero=3);
>
>function RoundEx(const Value:Extended;const Threshold:Extended;const RoundExMode:TRoundExMode=remNearest):Extended;
>var CW:word;
> ? ?NewCW:Word;
>asm
> FNSTCW WORD PTR [CW]
> movzx ecx,WORD PTR [CW]
> and ecx,not $C00
> or ecx,$300
> and eax,$3
> shl eax,10
> or ecx,eax
> mov WORD PTR [NewCW],cx
> FLDCW WORD PTR [NewCW]
>
> FLD TBYTE PTR [Threshold]
> FLD TBYTE PTR [Value]
> FDIV ST(0),ST(1)
> FRNDINT
> FMULP ST(1),ST(0)
>
> FLDCW WORD PTR [CW]
>end;
>
>
>
pocitani s realnymi c isly
[*] delphin(zv)post(tec)cz - 05.6.2008 18:18:53
> Zkusil jsem ji, ale nevim jestli funguje spravne. At nastavim jakykoli
> RoundExMode, tak se to chova stejne. Nevim presne jak to funguje, do assembleru
Je nutno nastavit 2. parametr, to je presnost k zaoukrouhleni, napriklad
1 - Na cele cisla
50/100 = 0.5 - Na padesatniky
1/100 = 0.01 - Na halere
1/3 - Na tretiny
var a,b,c,d,e,f:Extended;
begin
a:=RoundEx(0.25,0.5,remNearest);
b:=RoundEx(0.25,0.5,remUp);
c:=RoundEx(0.25,0.5,remDown);
d:=RoundEx(0.75,0.5,remNearest);
e:=RoundEx(0.75,0.5,remUp);
f:=RoundEx(0.75,0.5,remDown);
> skoro vubec nevidim, ale myslim, ze se tento parametr vubec ve funkci neuplatni.
> Nebo jo?
Dle selskeho rozumu tam neni napsany a tedy se neuplatni, ovsem v praxi to funguje, viz priklad.
for .. in .. do
[*] Michal S. <micsdelphi(zv)centrum(tec)cz> - 05.6.2008 20:19:02
Do promenne Line vklada postupne jednotlive hodnoty z Lines, v podsate
je to jako kdybys to napsal takto:
var
hLine : TSIPX_Line;
Line : TsxLine;
I:Integer;
begin
Result:=nil;
if sipxLineFindByURI(FInstance, PChar(AURI), hLine)=SIPX_RESULT_SUCCESS then
begin
for I:=0 to Length(Lines)-1 do
begin
Line:=Lines[I];
if Line.Line=hLine then
begin
Result:=Line;
break;
end;
end;
end;
end;
Dusan Nagy napsal(a):
> Nevie niekto ako predne funguje konstrukcia v D2005 for .. in ..do
>
>
IBX Firebird2
[*] Martin Burle <mburle2(zv)volny(tec)cz> - 05.6.2008 22:13:12
> Viete ako mozem zistit alias 'a' za pouzitia IBX? Ten ma vlastnost
> 'Origin' napriklad 'tablename'.'id'
Pokud se nepletu tak alias je nutno vyparsovat z SQL.
Martin
pocitani s realnymi c isly
[*] klvan(zv)centrum(tec)cz - 06.6.2008 15:19:05
jo to vypada, ze funguje jak ma, je ale zajimave ze pokud se namisto SimpleRoundTo(cislo * 100, 0)/100 zavola SimpleRoundTo(cislo, -2), tak to vraci jiny vysledek (spatny).
>nepamatam si presne ale pouzival som daco na tento sposob..
>
>var v : variant;
> ? ?cislo : real;
>begin
> ?cislo := 12.125;
>
> ?v := SimpleRoundTo(cislo * 100, 0)/100;
>
> ?ShowMessage(VarToStr(v));
>end
>
>nepamatam si ale myslim ze som s tym nemal problemy...
>
>kcc> Pouzivam ?
>
>kcc> ??? Edit1.Text := FloatToStr(RoundEx(12.125, 0.01, remUp));
>
>kcc> a proste 12,13 z toho nedostanu, at pouziju jakykoli
>kcc> parametr. Zkousel jsem nastavit i predtim nastavit SetRoundMode a
>kcc> take nic.
>
>kcc> Tobe to na 12,13 zaokrouhli?
>
>>>> Zkusil jsem ji, ale nevim jestli funguje spravne. At nastavim jakykoli
> >>> RoundExMode, tak se to chova stejne. Nevim presne jak to funguje, do assembleru
> >>
> >>Je nutno nastavit 2. parametr, to je presnost k zaoukrouhleni, napriklad
> >>1 - Na cele cisla
> >>50/100 = 0.5 - Na padesatniky
> >>1/100 = ?0.01 - Na halere
> >>1/3 - Na tretiny
> >>
> >>var a,b,c,d,e,f:Extended;
> >>begin
> >> a:=RoundEx(0.25,0.5,remNearest);
> >> b:=RoundEx(0.25,0.5,remUp);
> >> c:=RoundEx(0.25,0.5,remDown);
> >> d:=RoundEx(0.75,0.5,remNearest);
> >> e:=RoundEx(0.75,0.5,remUp);
> >> f:=RoundEx(0.75,0.5,remDown);
> >>
> >>> skoro vubec nevidim, ale myslim, ze se tento parametr vubec ve funkci neuplatni.
> >>> Nebo jo?
> >>
> >>Dle selskeho rozumu tam neni napsany a tedy se neuplatni, ovsem
> >>v praxi to funguje, viz priklad.
> >>
> >>
> >>
>
>
>
>
>
pocitani s realnymi c isly
[*] klvan(zv)centrum(tec)cz - 06.6.2008 12:54:52
Pouzivam ?
??? Edit1.Text := FloatToStr(RoundEx(12.125, 0.01, remUp));
a proste 12,13 z toho nedostanu, at pouziju jakykoli parametr. Zkousel jsem nastavit i predtim nastavit SetRoundMode a take nic.
Tobe to na 12,13 zaokrouhli?
>> Zkusil jsem ji, ale nevim jestli funguje spravne. At nastavim jakykoli
>> RoundExMode, tak se to chova stejne. Nevim presne jak to funguje, do assembleru
>
>Je nutno nastavit 2. parametr, to je presnost k zaoukrouhleni, napriklad
>1 - Na cele cisla
>50/100 = 0.5 - Na padesatniky
>1/100 = ?0.01 - Na halere
>1/3 - Na tretiny
>
>var a,b,c,d,e,f:Extended;
>begin
> a:=RoundEx(0.25,0.5,remNearest);
> b:=RoundEx(0.25,0.5,remUp);
> c:=RoundEx(0.25,0.5,remDown);
> d:=RoundEx(0.75,0.5,remNearest);
> e:=RoundEx(0.75,0.5,remUp);
> f:=RoundEx(0.75,0.5,remDown);
>
>> skoro vubec nevidim, ale myslim, ze se tento parametr vubec ve funkci neuplatni.
>> Nebo jo?
>
>Dle selskeho rozumu tam neni napsany a tedy se neuplatni, ovsem v praxi to funguje, viz priklad.
>
>
>
pocitani s realnymi c isly
[*] Bruenor <hornacek(zv)nrsys.sk> - 06.6.2008 13:24:54
nepamatam si presne ale pouzival som daco na tento sposob..
var v : variant;
cislo : real;
begin
cislo := 12.125;
v := SimpleRoundTo(cislo * 100, 0)/100;
ShowMessage(VarToStr(v));
end
nepamatam si ale myslim ze som s tym nemal problemy...
kcc> Pouzivam ?
kcc> ??? Edit1.Text := FloatToStr(RoundEx(12.125, 0.01, remUp));
kcc> a proste 12,13 z toho nedostanu, at pouziju jakykoli
kcc> parametr. Zkousel jsem nastavit i predtim nastavit SetRoundMode a
kcc> take nic.
kcc> Tobe to na 12,13 zaokrouhli?
>>> Zkusil jsem ji, ale nevim jestli funguje spravne. At nastavim jakykoli
>>> RoundExMode, tak se to chova stejne. Nevim presne jak to funguje, do assembleru
>>
>>Je nutno nastavit 2. parametr, to je presnost k zaoukrouhleni, napriklad
>>1 - Na cele cisla
>>50/100 = 0.5 - Na padesatniky
>>1/100 = ?0.01 - Na halere
>>1/3 - Na tretiny
>>
>>var a,b,c,d,e,f:Extended;
>>begin
>> a:=RoundEx(0.25,0.5,remNearest);
>> b:=RoundEx(0.25,0.5,remUp);
>> c:=RoundEx(0.25,0.5,remDown);
>> d:=RoundEx(0.75,0.5,remNearest);
>> e:=RoundEx(0.75,0.5,remUp);
>> f:=RoundEx(0.75,0.5,remDown);
>>
>>> skoro vubec nevidim, ale myslim, ze se tento parametr vubec ve funkci neuplatni.
>>> Nebo jo?
>>
>>Dle selskeho rozumu tam neni napsany a tedy se neuplatni, ovsem
>>v praxi to funguje, viz priklad.
>>
>>
>>
pocitani s realnymi c isly
[*] delphin(zv)post(tec)cz - 06.6.2008 13:16:53
> ??? Edit1.Text := FloatToStr(RoundEx(12.125, 0.01, remUp));
>
> a proste 12,13 z toho nedostanu, at pouziju jakykoli parametr. Zkousel jsem
> nastavit i predtim nastavit SetRoundMode a take nic.
>
> Tobe to na 12,13 zaokrouhli?
Ano, ja mam 12,13, dukaz v priloze. Protoze je to podezrele, vyrobil jsem testovaci aplikaci, je ke stazeni zde:
http://rapidshare.com/files/120481199/RoundEx.rar.html
Zakazani, povoleni zarizeni v C#
[*] Dalibor <dalibor(zv)torola(tec)cz> - 09.6.2008 11:18:27
Ahoj, potreboval bych po probuzeni PC, zakazat a povolit urcite zarizeni. Konkretne SkySat 2 kartu.
Nevite nekdo jak to udelat v C#?
(Je to z duvodu, ze mi tato karta po probuzeni nenabehne korektne, takze pomuze bud restart pc, nebo zakazani, povoleni zarizeni)
Diky za tip.
Dalibor
Zakazani, povoleni zarizeni v C#
[*] Petr Vones <conference(zv)petrvones(tec)net> - 09.6.2008 11:28:28
From: "Dalibor" <dalibor(zv)torola(tec)cz>
> Ahoj, potreboval bych po probuzeni PC, zakazat a povolit urcite zarizeni.
> Konkretne SkySat 2 kartu.
> Nevite nekdo jak to udelat v C#?
Pomoci WMI. Google urcite nejaky priklad najde.
Petr Vones
Zakazani, povoleni zarizeni v C#
[*] Dalibor <dalibor(zv)torola(tec)cz> - 09.6.2008 11:52:29
Uz jsem neco nasel a dokonce to funguje
http://69.10.233.10/KB/cs/HardwareHelper.aspx
>> Ahoj, potreboval bych po probuzeni PC, zakazat a povolit urcite zarizeni.
>> Konkretne SkySat 2 kartu.
>> Nevite nekdo jak to udelat v C#?
>
> Pomoci WMI. Google urcite nejaky priklad najde.
>
> Petr Vones
Zalozeni uzivatele
[*] Jan Stefec <stefec(zv)algo-hk(tec)cz> - 09.6.2008 13:48:38
Preji pekny den,
potreboval bych na FB 2.0 z programu napsaneho v Delphi zalozit noveho
usera a u SYSDBA zmenit heslo. Poradi nekdo, jak na to?
Diky Honza
Zalozeni uzivatele
[*] Jan Sebelik <honza(zv)haes(tec)cz> - 09.6.2008 14:14:40
> potreboval bych na FB 2.0 z programu napsaneho v Delphi zalozit noveho
> usera a u SYSDBA zmenit heslo. Poradi nekdo, jak na to?
> Diky Honza
Ja jsem to kdysi delat takto IBSecurityService - viz nize
Je to ale jenom upraveny fragment, snad jsem tam nenadel boty.
Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
====================================
procedure CreateNewUser;
var
secIB : TIBSecurityService;
begin
secIB:=TIBSecurityService.Create(nil);
with secIB do
try
Protocol:=???;
ServerName := ???;
LoginPrompt := False;
Params.Values['user_name'] := 'SYSDBA';
Params.Values[''password'] := SYSDBAPassw;
Active := True;
try
UserName := ???;
Password := ???;
DisplayUser(UserName);
if UserInfoCount=-1 then
AddUser
else
ModifyUser;
finally
Active := False;
end;
finally
Free;
end;
end;
Zalozeni uzivatele
[*] Marek Dostal <konf(zv)agnis(tec)cz> - 09.6.2008 14:00:39
> potreboval bych na FB 2.0 z programu napsaneho v Delphi zalozit noveho
> usera a u SYSDBA zmenit heslo. Poradi nekdo, jak na to?
Delame to pomoci TIBSecurityService, metoda AddUser.
Marek Dostal
D7Prof, WinXP, FireBird 1.5, 2.0
Zalozeni uzivatele
[*] Jan Stefec <stefec(zv)algo-hk(tec)cz> - 11.6.2008 11:56:35
Jan Sebelik napsal(a):
> Ja jsem to kdysi delat takto IBSecurityService - viz nize
> Je to ale jenom upraveny fragment, snad jsem tam nenadel boty.
>
> Honza
>
>
Funguje to, diky!!!
Jen podminku je potreba zmenit na:
if UserInfoCount = 0 then...
Honza
ftp prenosy
[*] Jaroslav Stepanek <stepanek(zv)metest(tec)cz> - 11.6.2008 12:46:39
Pro Ftp prenosy s zakaznickou aplikaci pouzivam standartni funkci windows
pro zjisteni handle
FftpHandle := InternetConnect(FINet, PChar(FServer), 0, PChar(FUserID),
PChar(FPassWord), Internet_Service_Ftp, 0, FContext);
Obcas se to na teto funkci sekne, nemuzeme najit zpusob jak pro pripojeni
nastavit timeout.
Nevite co s timeoutem, nebo jiny zpusob navazani spojeni??
Diky, jarda
Error in module XXX: Call to Application.CreateFor
[*] Petr Fejfar <petr.fejfar(zv)seznam(tec)cz> - 13.6.2008 10:34:22
Ahoj,
Jakmile v D6,7 pridam do .DPR prirazeni:
Application.Title := Variable;
tak pri znovuotevreni projektu, pri pokusu
otevrit nejakou unit z uses klauzule a pri
podobnych operacich v IDE, to hodi chybu
viz %subject% (prekladac funguje spravne).
Zda se, ze umisteni tohoto prikazu muze byt
libovolne, tedy i za CreateForm, na ktere
si stezuje, stejne jako prirazovany symbol...
Jen prirazeni konstanty:
Application.Title := 'neco';
tomu nevadi. Nepada nekoho, co s tim?
(teda krome upgradu Delphi).
Thx, pf
FB 2 a phantom connection
[*] Martin Burle <mburle2(zv)volny(tec)cz> - 13.6.2008 11:14:25
Ahoj vsem,
Pokud spadl/byl ustrizen klient pripojeny k FB 1.5, bylo spojeni ukonceno
prakticky okamzite, klient zmizel ze seznamu uzivatelu. FB 2 ma toto zda se
jinak reseno, a mrtvy klient vcetne pripadne transakce zustava viset nekolik
hodin. Zda se, ze je treba prekonfigurovat parametry TCP/IP v OS.
Jaka jsou doporuceni, zkusenosti, co s tim?
Martin
OT: C++Builder 2007 bude 14 dni levnejsi
[*] rkubat(zv)email(tec)cz - 13.6.2008 15:44:46
Dobry den vsem.
Toto forum je sice urceno uzivatelum Delphi, ale snad neuskodi informace, ze dnes byla vyhlasena kratkodoba sleva 20% na vsechny produkty rady C++Builder 2007, plne verze i upgrade, edice Professional i Enterprise. Jedina podminka: podani objednavky v dobe od 13.6. do 27.6.2008.
Vice informaci viz webshop CodeGear: http://shop.codegear(tec)cz
Snad nekomu z vas prijde tato informace vhod - a ostatnim se omlouvam za OT.
Zdravi, -- Richard Kubat
MySQL Update poctu
[*] Petr Mathon <dveste zar(zv)quick(tec)cz> - 18.6.2008 13:28:36
Zdravim,
MySQL
Mam tabulku 'x' a v ni sloupec 'pocet' int
'y' a v ni sloupec 'odpis' int, 'colx' int, 'id_x' ktery odkazuje na klic tabulky x
potrebuji zaktualizovat pocet o odpis kde colx=null
reseni?
update x set pocet=pocet-y.odpis where y.id_x=x.id and y.colx=null
Jde to vubec takhle, kdyz y.colx se netyka primo updatovane tabulky ??
PM
database CHARACTER SET WIN1250 is not defined
[*] Tomas Krejzek <tomas.krejzek(zv)email(tec)cz> - 18.6.2008 22:13:32
Ahoj nevim jestli je to jeste aktualni, ale je to tim, stalo se mi to take,
je to z duvodu toho ze WinXP SPIII preinstaluje MSVC 8 -> MSVC 9, staci si z MS stranek
stahnout 8-micku a vse je ok.
Popsal jsem to na konferenci o FB
http://groups.google.com/group/firebird_cz/browse_thread/thread/8e89d0f39b879921#
ahoj, Tom
petr palicka napsal(a):
> Ahoj,
>
> no a instalaci MSVC behovych knihoven, jak se na tom odkazu pise, jsi
> zkousel?
>
> Peca
>
>
> ======================================================================
KP-SYS mail server
http://www.kpsys(tec)cz
+420 466 655 055
======================================================================
MySQL Update poctu
[*] Cajbik Martin <cajbik(zv)sct.sk> - 18.6.2008 16:35:04
MySQL velmi nepoznam ale takto by som to napisal v MSSQL:
UPDATE X
SET X.Pocet = X.Pocet - Y.Odpis
FROM X
INNER JOIN Y
ON Y.id_x = X.id
WHERE Y.colx IS NULL
Martin CAJBIK
-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Petr Mathon
Sent: Wednesday, June 18, 2008 1:29 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: MySQL Update poctu
Zdravim,
MySQL
Mam tabulku 'x' a v ni sloupec 'pocet' int
'y' a v ni sloupec 'odpis' int, 'colx'
int, 'id_x' ktery odkazuje na klic tabulky x
potrebuji zaktualizovat pocet o odpis kde colx=null
reseni?
update x set pocet=pocet-y.odpis where y.id_x=x.id and y.colx=null
Jde to vubec takhle, kdyz y.colx se netyka primo updatovane tabulky ??
PM
Error in module XXX: Call to Application.CreateFor
[*] Cajbik Martin <cajbik(zv)sct.sk> - 18.6.2008 16:31:04
Zdravim,
moze za to hlupy parser v IDE, pomoze len prehodit ten prikaz niekam
mimo DPR, napriklad do MainForm.FormCreate...
Martin Cajbik
-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Petr Fejfar
Sent: Friday, June 13, 2008 10:34 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Error in module XXX: Call to Application.CreateForm is missing
or incorrect v D6.7
Ahoj,
Jakmile v D6,7 pridam do .DPR prirazeni:
Application.Title := Variable;
tak pri znovuotevreni projektu, pri pokusu otevrit nejakou unit z uses
klauzule a pri podobnych operacich v IDE, to hodi chybu viz %subject%
(prekladac funguje spravne).
Zda se, ze umisteni tohoto prikazu muze byt libovolne, tedy i za
CreateForm, na ktere si stezuje, stejne jako prirazovany symbol...
Jen prirazeni konstanty:
Application.Title := 'neco';
tomu nevadi. Nepada nekoho, co s tim?
(teda krome upgradu Delphi).
Thx, pf
Firebird 1.5 a Win Vista
[*] Jan Sebelik <honza(zv)haes(tec)cz> - 23.6.2008 09:01:22
Dostal jsem od jednoho uzivatele varovne zpravy kolem FB 1.5 a Win Vista.
V podstate stejny problem jako:
http://www.datamix.eu/clanky.php
Lze to nejak resit, anebo je opravdu treba prejit na FB 2.0?
Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
====================================
Firebird 1.5 a Win Vista
[*] dphi_forum(zv)proces.sk - 23.6.2008 09:19:24
no az take ale to nie je, staci control panel applet rucne vymazat
1.5.5 na viste applet uz neinstaluje
rudo
Relase notes 1.5.5 :
Partial fix for Windows Vista platform, whereby the Explorer crashes when
the Firebird 1.5 control panel
applet is installed. This crash does NOT occur with Firebird 2.n, but
backporting the changes did not work.
The installer now disables installation of the 1.5 applet if Vista is
detected as the host operating system.
> Dostal jsem od jednoho uzivatele varovne zpravy kolem FB 1.5 a Win Vista.
> V podstate stejny problem jako:
> http://www.datamix.eu/clanky.php
> Lze to nejak resit, anebo je opravdu treba prejit na FB 2.0?
Firebird 1.5 a Win Vista
[*] Novy Lubos <lnovy(zv)unileasing(tec)cz> - 23.6.2008 09:11:23
Mam pocit, ze kdyz jsem na konci instalace zvolil, aby se neistaloval odkaz do ovladacich panelu: "Install Control Panel Applet?"
Tak verze FB 1.5.4 na Vistach fungovala normalne...
Lubos Novy
-----Original Message-----
>Dostal jsem od jednoho uzivatele varovne zpravy kolem FB 1.5 a Win Vista.
>V podstate stejny problem jako:
>http://www.datamix.eu/clanky.php
>Lze to nejak resit, anebo je opravdu treba prejit na FB 2.0?
Firebird 1.5 a Win Vista
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 23.6.2008 09:19:24
Ahoj,
to je "znamy" problem. Staci nainstalovat FB 1.5 _bez_ ovladaciho
panelu. Pak je to OK.
Peca (Petr Palicka)
Firebird 1.5 a Win Vista
[*] BS Roman Borkovec <roman(zv)borkovec(tec)com> - 23.6.2008 09:19:24
Firebird2Control cpl shazuje pruzkumnika v ovladacich panelech,
staci ho vymazat.
Roman
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Ing. Jiri SOKOL <js-delphi(zv)seznam(tec)cz> - 23.6.2008 14:31:54
> > function Test(var vstupneVystupni: ShortString): ShortString;
> >
> function Test(Vstup: PChar; DelkaVstupu: integer; Vystup: PChar;
> DelkaVystupu: integer): integer;
>
> Vyhodou je, ze volajici se sam postara o alokovani i dealokovani
> prislusnych bufferu, funkce je jen plni. Vracena hodnota muze obsahovat
> nejaky kod chyby apod.
>
> David Lebeda
Stanoveni poctu znaku pro PChar je nezbytne? Potom nemam sanci pouzit funcki, ktera vraci "ShortString" - viz muj priklad?
Co pouzit predpoklad, ze nikdy nebude predavany retezec znaku vetsi nez 255 (+1 kde je delka) - je to spatna myslenka? Tzn - alokovat pamet na 256znaku a vyuzit jen kolik bude potreba...
neporadili byste mi kod do C++, abych si to mohl vyzkouset? Dostal jsem toto, ale zatim mi to nefunguje...
typedef short int (__stdcall *CLD_Test)(char *CldData, short int PortNumber);
int main(int argc, char* argv[]) {
char Buff[256];
memset(Buff, 0, sizeof(Buff));
short int Status;
HMODULE hModuleCLD = LoadLibrary("TestKnihovny.dll");
CLD_TEST Test = (CLD_READ_TM)GetProcAddress(hModuleCLD, "Test");
while(1) {
Status = Test(Buff, 4);
if(Status != 0 || *Buff != '\0')
break;
}
return 0;
}
Diky vsem za vas cas
Jirka
Knihovna dll - datovy typ ShortString - jak pouzit
[*] delphin(zv)post(tec)cz - 23.6.2008 14:19:53
> Ahoj vsem!
> Prosim o radu. Mam hotovou knihovnu vtvorenou v Delphi6. Zatim pracuje
> spolehlive :) pouzivam ji opet v aplikacich vytvorenych v Delphi.
> Ted bylo potreba ji pustit dal, aby ji mohl pouzit i nekdo jiny... Ten pouziva
> C++ (z prostredi VS2003)...
> Problem je v tom, ze mam deklarovanou funkci, ktera pouziva String - ano -
> debaty o pascalovskem a Delphi stringu jsem snad cetl a snad jsem jim i
> rozumnel... pouzil jsem typ ShortString...
>
> Dale pouzivam volani stdcall, ale i tak mi ten clovicek rika, ze tohle neni
> spravne deklarovano, ze tohle on nemuze pouzit, protoze v C++ se pouzivaji pouze
> pointery a tak si s mym stringem proste neporadi...
Pan programator v C++ tomu asi moc nerozumi, samozrejme ze by to slo, ale musim uznat, ze ShortString je nestandardni a doporucuju pouzivat standardni PChar.
> function Test(var vstupneVystupni: ShortString): ShortString;
Udelejte to standardne takhle:
function MojeFunkce(InputString:PChar;var OutputBuffer;OutputBufferSize:Longword):Longword; stdcall;
unsigned long MojeFunkce(char * InputString, void * OutputBuffer, unsigned long OutputBufferSize);
Funguje to tak, ze od C++ dostanete pointer na vstupni string a buffer, kam mate nakopirovat vysledek. Navratovy string vcetne koncove nuly musite nakopirovat do OutputBuffer, funkce vrati v Result pocet znaku, ktere jste nakopiroval BEZ navratove nuly a samozrejme musite kontrolovat preteceni bufferu.
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 23.6.2008 13:59:51
On Monday, June 23, 2008 1:45 PM ,
Jan Sebelik <honza(zv)haes(tec)cz> wrote:
>> function Test(var vstupneVystupni: ShortString): ShortString;
>
> Nejlepe asi PChar, rekl bych.
> Od Delphi 2 (32 bit) je konverze string a PChar trivialni.
ale to se tyka jen dlouhe verze stringu, ne? ShortString nema v sobe
automaticky zahrnutu ukoncovaci 00h
D. Toman
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 23.6.2008 14:13:52
> Mate nekdo s timto zkusenosti? Muzete mi poradit bud univerzalni kod a nebo
> kousek kodu v C++, ktery si tu mou funkci z knihovny prilinkuje a dokaze
> pouzit?
>
> funkce muze byt nejaka obecna - napr:
>
> function Test(var vstupneVystupni: ShortString): ShortString;
>
Shortstring obsahuje v prvnim bajtu delku. Cecko pouziva retezce zakoncene
nulou.
Pouzil bych toto:
function Test(Vstup: PChar; DelkaVstupu: integer; Vystup: PChar;
DelkaVystupu: integer): integer;
Vyhodou je, ze volajici se sam postara o alokovani i dealokovani
prislusnych bufferu, funkce je jen plni. Vracena hodnota muze obsahovat
nejaky kod chyby apod.
David Lebeda
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 23.6.2008 13:59:50
DD,
On Monday, June 23, 2008 1:37 PM ,
Ing. Jiri SOKOL <js-delphi(zv)seznam(tec)cz> wrote:
> Ahoj vsem!
> Prosim o radu. Mam hotovou knihovnu vtvorenou v Delphi6. Zatim
> pracuje spolehlive :) pouzivam ji opet v aplikacich vytvorenych v
> Delphi.
> Ted bylo potreba ji pustit dal, aby ji mohl pouzit i nekdo jiny...
> Ten pouziva C++ (z prostredi VS2003)...
> Problem je v tom, ze mam deklarovanou funkci, ktera pouziva String -
> ano - debaty o pascalovskem a Delphi stringu jsem snad cetl a snad
> jsem jim i rozumnel... pouzil jsem typ ShortString...
>
> Dale pouzivam volani stdcall, ale i tak mi ten clovicek rika, ze
> tohle neni spravne deklarovano, ze tohle on nemuze pouzit, protoze v
> C++ se pouzivaji pouze pointery a tak si s mym stringem proste
> neporadi...
>
> Mate nekdo s timto zkusenosti? Muzete mi poradit bud univerzalni kod
> a nebo kousek kodu v C++, ktery si tu mou funkci z knihovny
> prilinkuje a dokaze pouzit?
>
pokud bude chtit tak si s tim poradi - jen s tim bude mit trosku vic
prace (natypovat a naalokovat strukturu pro ShortString). Muze si nad
funkcemi toho DLLka napsat nejaky wrapper, ktery provede prislusnou
konverzi z Z-terminated stringa na pascalsky ShortString.
Lepsi by bylo samozrejme do toho DLLka sahnout a napsat to tak aby s
tim CCkar nemel problemy.
D. Toman
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Jan Sebelik <honza(zv)haes(tec)cz> - 23.6.2008 13:45:49
> function Test(var vstupneVystupni: ShortString): ShortString;
Nejlepe asi PChar, rekl bych.
Od Delphi 2 (32 bit) je konverze string a PChar trivialni.
Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
====================================
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Ing. Jiri SOKOL <js-delphi(zv)seznam(tec)cz> - 23.6.2008 13:37:48
Ahoj vsem!
Prosim o radu. Mam hotovou knihovnu vtvorenou v Delphi6. Zatim pracuje spolehlive :) pouzivam ji opet v aplikacich vytvorenych v Delphi.
Ted bylo potreba ji pustit dal, aby ji mohl pouzit i nekdo jiny... Ten pouziva C++ (z prostredi VS2003)...
Problem je v tom, ze mam deklarovanou funkci, ktera pouziva String - ano - debaty o pascalovskem a Delphi stringu jsem snad cetl a snad jsem jim i rozumnel... pouzil jsem typ ShortString...
Dale pouzivam volani stdcall, ale i tak mi ten clovicek rika, ze tohle neni spravne deklarovano, ze tohle on nemuze pouzit, protoze v C++ se pouzivaji pouze pointery a tak si s mym stringem proste neporadi...
Mate nekdo s timto zkusenosti? Muzete mi poradit bud univerzalni kod a nebo kousek kodu v C++, ktery si tu mou funkci z knihovny prilinkuje a dokaze pouzit?
funkce muze byt nejaka obecna - napr:
function Test(var vstupneVystupni: ShortString): ShortString;
Diky za jakekoli rady...
Jirka
--------------------------------------------------------------
Ing. Jiri Sokol, jiri.sokol(zv)seznam(tec)cz, 724 144 097
D6Prof+SP3; WinXP+SP3; Firebird 1.5.4
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Jan Sebelik <honza(zv)haes(tec)cz> - 23.6.2008 14:43:55
> function Test(Vstup: PChar; DelkaVstupu: integer; Vystup: PChar;
> DelkaVystupu: integer): integer;
> Vyhodou je, ze volajici se sam postara o alokovani i dealokovani
> prislusnych bufferu, funkce je jen plni. Vracena hodnota muze obsahovat
> nejaky kod chyby apod.
> David Lebeda
Tak, tak, tak, ...
Hned, jak jsem svoji strucnou odpoved "PChar" odeslal, uvedomil jsem si, ze v puvodnim navrhu byla funkce. To by znamenalo, ze buffer pro Result musi alokovat DLL. A to by nebylo dobre. David ma uplnou pravdu.
Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
====================================
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Dalibor Toman <dtoman(zv)fortech(tec)cz> - 23.6.2008 14:45:55
On Monday, June 23, 2008 2:31 PM ,
Ing. Jiri SOKOL <js-delphi(zv)seznam(tec)cz> wrote:
>>> function Test(var vstupneVystupni: ShortString): ShortString;
>>>
>> function Test(Vstup: PChar; DelkaVstupu: integer; Vystup: PChar;
>> DelkaVystupu: integer): integer;
>>
>> Vyhodou je, ze volajici se sam postara o alokovani i dealokovani
>> prislusnych bufferu, funkce je jen plni. Vracena hodnota muze
>> obsahovat nejaky kod chyby apod.
>>
>> David Lebeda
>
> Stanoveni poctu znaku pro PChar je nezbytne? Potom nemam sanci
> pouzit
> funcki, ktera vraci "ShortString" - viz muj priklad?
> Co pouzit predpoklad, ze nikdy nebude predavany retezec znaku vetsi
> nez 255 (+1 kde je delka) - je to spatna myslenka? Tzn - alokovat
> pamet na 256znaku a vyuzit jen kolik bude potreba...
Ccko neumim tak, abych ho mohl (chtel) psat z hlavy ale volat funkci k
tera vraci pascalsky ShortString z C neni zas tak velky problem. Staci
natypovat strukturu
delka:byte
data:pole 256 bytu (255 pascal data + rezerva na koncovou nulu)
1) naplnit ve strukture data kopii z nejakeho *char z ccka, nastavit
delku podle delkyretezce.
2) zavolat pascal funkci
3) zapsat na konec vraceneho retezce na pozici delka znak 0 a
nastavit cckovsky char pointer promenne ukazujici na zacatek pole
dat...
pokud nejsou velke naroky na rychlost pak je to akceptovatelne, ma-li
to byt rychlejsi je potreba eliminovat kopirovani bufferu (cili s tou
strukturou pro pascal stringo pocitat uz hloubeji v Cckovem programu
apod).
D. Toman
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Pavel Gazda <pavel gazda(zv)datasw(tec)cz> - 23.6.2008 14:45:56
Ahoj
predchozim odpovedim vetsinou nerozumim, tak zkusim svuj nazor
Ing. Jiri SOKOL napsal(a):
>>> function Test(var vstupneVystupni: ShortString): ShortString;
>>>
>>> Jirka
>>>
>>>
1) muzes pridat do DLL funkci, kde ShortString nahradis typem PChar a
uvnitr provedes prevody
function Test2( vstupneVystupni: Pchar): Pchar;
2) Programator v C by si mohl zadefinovat pole znaku ( array[0..255] of
char ) tak, ze
na pozici 0 je delka retezce znaku
od pozice 1 je retezec znaku
a funkci test volat s odkazem na toto pole
Teda jestli se nepletu.
Pavel
placeny amater
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 23.6.2008 14:45:56
> > > function Test(var vstupneVystupni: ShortString): ShortString;
> > >
> > function Test(Vstup: PChar; DelkaVstupu: integer; Vystup: PChar;
> > DelkaVystupu: integer): integer;
> >
> > Vyhodou je, ze volajici se sam postara o alokovani i dealokovani
> > prislusnych bufferu, funkce je jen plni. Vracena hodnota muze obsahovat
> > nejaky kod chyby apod.
> >
> > David Lebeda
>
> Stanoveni poctu znaku pro PChar je nezbytne? Potom nemam sanci pouzit
> funcki, ktera vraci "ShortString" - viz muj priklad?
1. Uvadeni poctu znaku - jde to i bez toho. zalezi na vyuziti. Pokud
pujde o vstupni retezec zakonceny nulou, neni to zrejme treba. Pokud ma
jit o obecny buffer na data, tj. data mohou obsahovat i znak nula, je
treba stanovit delku, aby funkce vedela, kde vstup konci.
2. Vystupni retezec. Problem je v tom, ze nekdo ho musi naalokovat a
dealokovat. U shortstringu ted nevim, kdy vracena hodnota z funkce v dll
zanikne, kdy dojde k jejimu uvolneni. Reseni s PCharem znamena, ze te
funkci rikas - na odpoved jsem ti vyhradil dvoukilovy buffer. Kdyby to
bylo malo, vrat chybu. Ja buffer naalokuji a po zpracovani odpovedi zase
uvolnim. Delka tam je vicemene pro jistotu, aby se dalo vyhnout preteceni
bufferu, kdyby se funkce moc rozpovidala.
David Lebeda
Knihovna dll - datovy typ ShortString - jak pouzit
[*] Jan Sebelik <honza(zv)haes(tec)cz> - 23.6.2008 14:47:56
> > Nejlepe asi PChar, rekl bych.
> ale to se tyka jen dlouhe verze stringu, ne? ShortString nema v sobe
> automaticky zahrnutu ukoncovaci 00h
> D. Toman
Samozrejme.
Ale z puvodniho dotazu jsem pochopil, ze ShortString byl zvolen jenom proto, ze parametry typu string v DLL by vyzadovaly pouziti ShareMem resp. borlndmm.dll.
Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
====================================
Knihovna dll 2.
[*] Ing. Jiri Sokol <js-delphi(zv)seznam(tec)cz> - 24.6.2008 09:18:05
Ahoj vsem...
Tak jsem to nezvladl :( mam nekolik problemu, ktery mi hlava nebere... Prosim o pomoc...
"*.dpr" knihovny obsahuje deklaraci funkce:
Function ReadA(var buffA: PChar; const buffASize, devID: smallInt): SmallInt; StdCall; Export;
begin
result := ReadAA(buffA, buffASize, devID);
end;
Exports
ReadA;
begin
end.
pak mam dalsi unitu, kde je funkce ReadAA:
Function ReadAA(var buffAA: PChar; const buffAASize, devID: smallInt): SmallInt;
begin
buffAA := StrPCopy(buffAA, 'jakykoli text...'); //<--- tady to padne na chybu "Access violation at address ... in module ... Write of address 00000000" - takze spatna sprava pameti... ale co s tim...
end;
knihovnu si pripojim v testovaci aplikaci:
Type
TKnihovna = class
ReadA : Function(var buffA: PChar; const buffASize, devID: smallInt): SmallInt; StdCall;
end;
var
Knihovna : TKnihovna;
LibHWND := LoadLibrary(KnihovnaFName); // (PChar(Name))
Knihovna.ReadA := GetProcAddress(LibHWND, 'ReadA');
pak mam:
var
buffA : PChar;
tmpStr : ShortString;
GetMem(buffA, 255 + 1); // tady jsem si myslel, ze si alokuju misto v pameti pro 255 znaku, ale kdyz udelam SizeOf(buffA) - je vysledek 4byte-y - nechapu :((((
FillChar(buffA, SizeOf(buffA), 0);
try
repeat
check := Knihovna.ReadA(buffA, SizeOf(buffA), 1);
tmpStr := string(buffA);
until (check<>0)or(tmpStr<>'');
finally
FreeMem(buffA);
end;
takze problemy vidim 2:
1) jakto, ze kdyz alokuje pamet pro 256byte-u, je velikost buffA jen 4byte-y?
2) nedari se mi predat pointer do knihovny tak, abych mohl do alokovane pameti zapsat hodnoty...
Diky moc vsem!
Jirka
Knihovna dll 2.
[*] Ing. Jiri SOKOL <js-delphi(zv)seznam(tec)cz> - 24.6.2008 09:16:04
Ahoj vsem...
Tak jsem to nezvladl :( mam nekolik problemu, ktery mi hlava nebere... Prosim o pomoc...
"*.dpr" knihovny obsahuje deklaraci funkce:
Function ReadA(var buffA: PChar; const buffASize, devID: smallInt): SmallInt; StdCall; Export;
begin
result := ReadAA(buffA, buffASize, devID);
end;
Exports
ReadA;
begin
end.
pak mam dalsi unitu, kde je funkce ReadAA:
Function ReadAA(var buffAA: PChar; const buffAASize, devID: smallInt): SmallInt;
begin
buffAA := StrPCopy(buffAA, 'jakykoli text...'); //<--- tady to padne na chybu "Access violation at address ... in module ... Write of address 00000000" - takze spatna sprava pameti... ale co s tim...
end;
knihovnu si pripojim v testovaci aplikaci:
Type
TKnihovna = class
ReadA : Function(var buffA: PChar; const buffASize, devID: smallInt): SmallInt; StdCall;
end;
var
Knihovna : TKnihovna;
LibHWND := LoadLibrary(KnihovnaFName); // (PChar(Name))
Knihovna.ReadA := GetProcAddress(LibHWND, 'ReadA');
pak mam:
var
buffA : PChar;
tmpStr : ShortString;
GetMem(buffA, 255 + 1); // tady jsem si myslel, ze si alokuju misto v pameti pro 255 znaku, ale kdyz udelam SizeOf(buffA) - je vysledek 4byte-y - nechapu :((((
FillChar(buffA, SizeOf(buffA), 0);
try
repeat
check := Knihovna.ReadA(buffA, SizeOf(buffA), 1);
tmpStr := string(buffA);
until (check<>0)or(tmpStr<>'');
finally
FreeMem(buffA);
end;
takze problemy vidim 2:
1) jakto, ze kdyz alokuje pamet pro 256byte-u, je velikost buffA jen 4byte-y?
2) nedari se mi predat pointer do knihovny tak, abych mohl do alokovane pameti zapsat hodnoty...
Diky moc vsem!
Jirka
--------------------------------------------------------------
Ing. Jiri Sokol, jiri.sokol(zv)seznam(tec)cz, 724 144 097
D6Prof+SP3; WinXP+SP3; Firebird 1.5.4
Znak prumeru v labelu
[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 24.6.2008 09:32:06
Jak zapsat do labelu text "prumerny vek" jestlize "prumerny" ma byt zapsano
znakem (ALT + 198) Form ma nastaveno pismo Tahoma.
Diky za radu
Viktor Marek
Delphi Prof. 5
Knihovna dll 2.
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 24.6.2008 09:48:07
> "*.dpr" knihovny obsahuje deklaraci funkce:
> Function ReadA(var buffA: PChar; const buffASize, devID: smallInt):
U buffA odebrat var - na pointer samotny nikdo uvnitr fce nesaha a nemeni
ho, tudiz je zbytecne predavat odkazem.
> knihovnu si pripojim v testovaci aplikaci:
> Type
> TKnihovna = class
> ReadA : Function(var buffA: PChar; const buffASize, devID: smallInt):
> SmallInt; StdCall;
> end;
Odebrat var - viz vyse.
> var
> buffA : PChar;
> tmpStr : ShortString;
>
> GetMem(buffA, 255 + 1); // tady jsem si myslel, ze si alokuju misto v
> pameti pro 255 znaku, ale kdyz udelam SizeOf(buffA) - je vysledek 4byte-y
> - nechapu :((((
buffA je jen pointer, proto ma velikost 4 bajty. SIzeof tu zrejme nepujde
pouzit, delku bloku bych dal nekam do konstanty ci promenne tu pouzival.
Fce ReadA pouziva zatim opravdu jen prvni parametr? Da se overit, ze DLL
vidi ve vstupnich promennych stejne hodnoty, co tam byly predany?
David Lebeda
Znak prumeru v labelu
[*] Milan Dvorak <dvorak(zv)gymzn(tec)cz> - 24.6.2008 10:16:09
dokopat to tam pres clipboard nejde?
>>> viktor(zv)mbox.vol(tec)cz 24.6.2008 9:32 >>>
Jak zapsat do labelu text "prumerny vek" jestlize "prumerny" ma byt zapsano
znakem (ALT + 198) Form ma nastaveno pismo Tahoma.
Knihovna dll 2.
[*] Ing. Jiri Sokol <js-delphi(zv)seznam(tec)cz> - 24.6.2008 10:24:10
>> "*.dpr" knihovny obsahuje deklaraci funkce:
>> Function ReadA(var buffA: PChar; const buffASize, devID: smallInt):
>
> U buffA odebrat var - na pointer samotny nikdo uvnitr fce nesaha a nemeni
> ho, tudiz je zbytecne predavat odkazem.
mam zkusenost, ze pointer se dobre predava jako "const" - ale kdyz mi to
nefungovalo, zkusil jsem ten "var" :(
>> var
>> buffA : PChar;
>> GetMem(buffA, 255 + 1); // tady jsem si myslel, ze si alokuju misto v
>> pameti pro 255 znaku, ale kdyz udelam SizeOf(buffA) - je vysledek
>> 4byte-y
>> - nechapu :((((
>
> buffA je jen pointer, proto ma velikost 4 bajty. SIzeof tu zrejme nepujde
> pouzit, delku bloku bych dal nekam do konstanty ci promenne tu pouzival.
> Fce ReadA pouziva zatim opravdu jen prvni parametr? Da se overit, ze DLL
> vidi ve vstupnich promennych stejne hodnoty, co tam byly predany?
>
> David Lebeda
AHA! jo, to zni logicky... ale mam dalsi problem...
Kdyz jsem dal:
buffASize := 255 + 1;
GetMem(buffA, buffASize);
FillChar(buffA, buffASize, 0);
tak mi zacala padat aplikace - zrejme mi to prepsalo pamet nekde jinde...
kdyz jsem FillChar zmenil na ty 4 byty, bylo to zase ok... ale ten fill bude
asi prvni problem...
ja jim zrejme prepisu tu adresu na ten pointer...
takze neumim spravne pracovat s tim buffA jako s pointerem... :(
do te DLL si posilam velikost te alokovane pameti - vyzkousel jsem si tu
promennou menit a hodnota byla predana spravne - jak zjistit spravne predany
pointer - netusim :(
diky za pomoc
Jirka
Znak prumeru v labelu
[*] Viktor Marek <viktor(zv)mbox.vol(tec)cz> - 24.6.2008 11:16:15
Bohuzel se mi to nepovedlo. Po ALT + 198 se zobrazi "A"
> dokopat to tam pres clipboard nejde?
>
>>>> viktor(zv)mbox.vol(tec)cz 24.6.2008 9:32 >>>
> Jak zapsat do labelu text "prumerny vek" jestlize "prumerny" ma byt
> zapsano znakem (ALT + 198) Form ma nastaveno pismo Tahoma.
Znak prumeru v labelu
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 24.6.2008 11:54:18
> Bohuzel se mi to nepovedlo. Po ALT + 198 se zobrazi "A"
> >
> >>>> viktor(zv)mbox.vol(tec)cz 24.6.2008 9:32 >>>
> > Jak zapsat do labelu text "prumerny vek" jestlize "prumerny" ma byt
> > zapsano znakem (ALT + 198) Form ma nastaveno pismo Tahoma.
Na ruzne paznaky pouzivam kopirovani z aplikace Mapa znaku
David Lebeda�
Znak prumeru v labelu
[*] delphin(zv)post(tec)cz - 24.6.2008 12:30:20
> Jak zapsat do labelu text "prumerny vek" jestlize "prumerny" ma byt zapsano
> znakem (ALT + 198) Form ma nastaveno pismo Tahoma.
Tak to asi nepujde. V normalni ne-unicode komponente zobrazite cca 255 znaku a muzete se na ne podivat tak, ze spustite charmap a zapnete znakova sada treba Windows: Stredni Evropa.
Pokud to nechcete predelavat do Unicode komponent, proste v labelu vynechejte misto a pres label dejte druhy label a zapnete vhodne kodovani a v nem jenom ten jeden znak, je to hloupe, ale funkcni.
Delphi 5 a Vista
[*] Dulgerov Ivan <idulgerov(zv)stonline.sk> - 24.6.2008 13:36:26
Zdravim.Musim koli jednej starsej aplikacii rozchodit Delphi 5 na Viste Bussiness.Ninstaloval som to vcelku? bez problemov, bohuzial? pri pokuse o spustenie Delphi? vzdy vyvola? vynimku? pri nacitani VCL50.bpl.Spustaciemu suboru som uz pridelil vsetky dostupne prava, bohuzial bez vysledku.Neviete niekto, co s tym.S pozdravom ico
Knihovna dll 2.
[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 24.6.2008 12:44:21
> AHA! jo, to zni logicky... ale mam dalsi problem...
> Kdyz jsem dal:
> buffASize := 255 + 1;
> GetMem(buffA, buffASize);
> FillChar(buffA, buffASize, 0);
> tak mi zacala padat aplikace - zrejme mi to prepsalo pamet nekde jinde...
Dle helpu Fillchar NEMA jako prvni parametr pointer. Melo by pomoci
FillChar(buffA^, buffASize, 0);
tj. pridat strisku.
David Lebeda
Problem s instalaci Delphi5 prof. na Windows Vista
[*] Martin Pavera <martin.pavera(zv)gmail(tec)com> - 24.6.2008 12:42:21
Dobry den,
snazim se nainstalovat Delphi 5 prof. na Windows Vista Business.
Pri prvnim pokusu o instalaci jsem v pohode prosel instalator a zvolil
jsem "Instalovat".
(Nechal jsem nastavene vychozi cesty, typ instalace "typical",
neinstaloval sem "interbase client".)
Chvili instalacni program kopiroval soubory a pote se objevila chybova
hlaska:
nadpis: "Error copying Files"
text "Setup has detected a -113 error while attemping to copy files.
This indicates that setup could not find a file in the "Runimage"
directory. If you have copied
the "install" directory to a new location you will also need to copy the
"runimage".
...
Component: Program Files\Debug Library files
File: \Runimage\Delphi50\lib\Debug\d a za pismenem "d" nasleduje spousta
divnych znaku
Error -113
A instalace skoncila.
Pokusil jsem se instalaci odinstalovat v Ovladacich panelech - Odebrat
programy, ale nezdarilo se.
Tak jsem vytvorene adresare a registry (prazne klice a klic pro
odinstalaci) smazal rucne.
Pote jsem zkusil instalovat znovu. Proklikal jsem se volbami
instalacniho programu, klikl na tlacitko
"Instalovat" a oper.system instalacni program (InstallShield) ukocil.
Prosim o radu, jak z teto situace ven.
Dekuji
Martin Pavera
Delphi 5 a Vista
[*] Vaclav Krmela <krmela(zv)ustinadorlici(tec)cz> - 24.6.2008 20:40:58
From: "Dulgerov Ivan" <idulgerov(zv)stonline.sk>
> Musim koli jednej starsej aplikacii rozchodit Delphi 5 na Viste Bussiness.
Pomoci nize uvedenych informaci se mi podarilo rozchodit Delphi. Jestli
pujde i Delphi 5, to nedokazu odhadnout.
http://www.drbob42.com/examine/examin84.htm
http://support.codegear.com/cs/article/36201
Vaclav Krmela
Scanner a TWAIN bez dialogu
[*] LeoL? Urban <leos.urban(zv)qds(tec)cz> - 24.6.2008 18:04:47
Ahoj,
mam prosbu: hledame skener pro pracovni skupiny s moznosti davkoveho
zpracovani, ktery bude umet skenovat aniz by zobrazoval uzivatelske
dialogy. Jinymi slovy - vse si musi ridit aplikace - ta pripadne zobrazi
sve dialogy, uzna-li za vhodne.
Problem je, ze prodejce tuto vec vetsinou nevi (nebo si neni jisty) a
dodavatele ruznych Twain interfacu poskytnou radu, ze "je treba
vyzkouset". To se snadno rekne, ale u skeneru za desitky tisic hur
zrealizuje.
Mate nekdo nejakou zkusenost?
Dekuji,
Leos Urban
CaseStudioi2 -> Toad Data Modeller 3, IBExpert, ne
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 25.6.2008 07:49:51
Ahoj,
premyslime, jestli ma smysl prejit z CS2 na TDM3. Plus spatrujeme v
novem prostredi (SDI) a ukladani modelu do XML (lepsi podpora prace s
CVS a slucovani zmen z vetvi projektu). Ovsem podle webu zrejme
vypustili podporu Firebirda, coz je pro nas naprosto klicova zalezitost.
Chtel jsem se septat, jestli jste nekdo toto dilema jiz resil, zda-li
TDM3 lze navrhovat modely a generovat skripty i pro FB 2.1, vcetne jeho
specifik.
Eventuelne by me zajimalo, jaky nastroj jste volili, s ohledem na
praci s verzovacimi systemi a slucovanim verzi. Samozrejme potesi i
generovani rozdilovych skriptu, integrace SQL konzole a pod. Premyslim i
o IBExportevi ci podobnem nastroji, kde je doplneny DB modelar. Tohle
ale asi na soukromy email, to uz je asi dost OT.
Peca aka Petr Palicka
formatovany text s obrazky (RTF?) WISIWIG editor a
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 25.6.2008 07:55:52
Ahoj,
resime jiz delsi dobu problem s editaci textu. Jiz pred delsi dobou
jsme dospeli k TRichView, ktere jsme prozatim neimplementovali (nebyl
cas, nemame prozkoumany tisk). Prozatim pouzivame RTF editor ve stylu
prilozeneho prikladu k delphi (uroven slabsi nez WordPad). Tiskneme
skrze Sineu. Ovsem problem je, ze editor uzivatelum nepostacuje
(nejcasteji chybi zarovnani do bloku a obrazky).
Potreboval bych doporucit dobre reseni jak editoru, tak tisku. Z
naseho hlediska tedy bud snadna implementace skrze kreslici plochu,
kterou nabizi Sinea (prvek ala TPaintBox), eventuelne zvazujeme nakup
FastReportu, takze pokud by bylo snadne (malo programovani) reseni ve
spojeni s FR, tak neni problem.
Nejsem si jisty, jestli tento "pruzkum" nemam chtit take na soukromy
email, asi radeji jo :-)
Peca aka Petr Palicka
formatovany text s obrazky (RTF?) WISIWIG editor a
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 25.6.2008 08:09:55
Jeste doplneni nastroje Delphi 6 pro
Peca
formatovany text s obrazky (RTF?) WISIWIG editor a
[*] Vaclav Krmela <krmela(zv)ustinadorlici(tec)cz> - 25.6.2008 08:48:26
From: "petr palicka" <palicka.petr(zv)seznam(tec)cz>
>
> Potreboval bych doporucit dobre reseni jak editoru, tak tisku. Z
> naseho hlediska tedy bud snadna implementace skrze kreslici plochu,
> kterou nabizi Sinea (prvek ala TPaintBox),
Rich editor vcetne obrazku a tabulek, tisknutelny pres kreslici plochu Sinea
(s promennou vyskou), lze udelat pomoci TEditControl a jejich TER32.DLL
knihovny:
http://subsystems.com/tewf.htm
Vaclav Krmela
formatovany text s obrazky (RTF?) WISIWIG editor a
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 25.6.2008 08:58:27
Jeste pro upresneni,
Vaclav Krmela napsal(a):
> Rich editor vcetne obrazku a tabulek, tisknutelny pres kreslici plochu Sinea
> (s promennou vyskou), lze udelat pomoci TEditControl a jejich TER32.DLL
> knihovny: http://subsystems.com/tewf.htm
> Vaclav Krmela
funguje u toho i vicestrankovy tisk? Tedy prvni stranka ma hlavicku
(v Sinee), takze na prvni strance je kreslici plocha o neco nizsi, nez
na dalsich strankach. Predpokladam, ze nucene odstrankovani (zalomeni
stranky) nelze (to se da prezit).
Peca
formatovany text s obrazky (RTF?) WISIWIG editor a
[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 25.6.2008 09:08:27
Omlouvam se za tolik prispevku, nejak nejsem schopen se vymacknout
najednou :-)
Vaclav Krmela napsal(a):
> Rich editor vcetne obrazku a tabulek, tisknutelny pres kreslici plochu Sinea
> ...
Predpokladam, ze to plati asi pro jakoukoliv komponent, ktera se umi
vykreslovat do zadaneho platna, v tomto pripade do Kreslici plochy Sinea?
Peca
formatovany text s obrazky (RTF?) WISIWIG editor a
[*] Vaclav Krmela <krmela(zv)ustinadorlici(tec)cz> - 25.6.2008 11:06:36
From: "petr palicka" <palicka.petr(zv)seznam(tec)cz>
>
> Vaclav Krmela napsal(a):
>> Rich editor vcetne obrazku a tabulek, tisknutelny pres kreslici plochu
>> Sinea
>
> funguje u toho i vicestrankovy tisk? Tedy prvni stranka ma hlavicku
> (v Sinee), takze na prvni strance je kreslici plocha o neco nizsi,
> nez na dalsich strankach.
Ano, i pro vicestrankovy text. Prvek kreslici plocha je volne kombinovatelny
s ostatnimi prvky sestavy
> Predpokladam, ze to plati asi pro jakoukoliv komponent, ktera se umi
> vykreslovat do zadaneho platna, v tomto pripade do Kreslici plochy Sinea?
Komponenta se musi umet vykreslit do zadaneho platna. Navic ale musi umet
rict, ze se do zadaneho prostoru nevesel text cely, ale ze je vyzadovano
pokracovani na dalsi strance a rict, na ktere pozici zkoncil soucasny text.
Pak take musi umet vyktresleni Od pozice dale.
Vaclav Krmela
FR3 riadok na viacero stran
[*] Michal Simsaj <delphinpp(zv)atlas(tec)cz> - 26.6.2008 13:08:41
Zdravim,
Zakaznik ma specialnu poziadavku a nechce si dat poradit. Mam zoznam,
kde je asi 30 hodnot v riadku. Samozrejme nezmestia sa vsetky do jedneho
riadku aj ked tam stranu na lezato. Vedel by som to urobit tak, ze v
hlavicke grupy zobrazim hlavne udaje riadku a potom v MasterData v 2
riadkoch zobrazim vsetky ostatne udaje. Zakaznik to takto nechce, chce,
aby udaje boli len v jednom riadku a nema problem s tym, pokial by sa mu
tych priblizne 30 stlpcov tlacilo na 2 strany (najlepsie hned za sebou),
aby si potom tie vytlacene strany dal vedla seba a videl by vsetky
udaje. Nepozdava sa mu, aby boli najskor vytlacene vsetky strany s
uvodnymi stlpcami a az nasledne vsetky strany s ostatnymi stlpcami.
Nechce :
strana1
zaznam1, stlpce 1-15
zaznam2, stlpce 1-15
.
strana2
zaznamXY, stlpce 1-15
.
.
stranaXYZ
zaznam1, stlpce 16-30
zaznam2, stlpce 16-30
.
stranaXYZ+1
zaznamXY, stlpce 16-30
.
Chce :
strana1
zaznam1, stlpce 1-15
zaznam2, stlpce 1-15
.
strana2
zaznam1, stlpce 16-30
zaznam2, stlpce 16-30
.
strana3
zaznamXY, stlpce 1-15
.
strana4
zaznamXY, stlpce 16-30
.
Problem je, ako na takuto zostavu ? Riesil ste to uz niekto ?
dik,
Miso
FR3 riadok na viacero stran
[*] Petr Gregor <pgregor(zv)orsia(tec)cz> - 26.6.2008 13:36:43
Myslim, zejsem neco podobneho resil
a nakonec jsme se dohodli tak, ze
data vyexportuju do MS-Excel
a tam si to zakaznik naformatoval, jak chtel.
Petr
>>Michal Simsaj [delphinpp(zv)atlas(tec)cz] napsal:
>> Zdravim,
>>Mam zoznam, kde je asi 30 hodnot v riadku.
>>Samozrejme nezmestia sa vsetky do jedneho
>>riadku aj ked tam stranu na lezato.
>>Zakaznik chce, aby udaje boli len v jednom riadku a nema problem s tym,
>>pokial by sa mu tych priblizne 30 stlpcov tlacilo na 2 strany (najlepsie
hned za sebou), >>Problem je, ako na takuto zostavu ? Riesil ste to uz niekto ?
>>dik,
>>Miso
3220 (20080626)
__________
Alter procedure
[*] Jan Stefec <stefec(zv)algo-hk(tec)cz> - 27.6.2008 12:32:19
Funguje DIKY!
Milan Tomes napsal(a):
> Nastav ParamCheck na false.
>
> S pozdravem
>
> Milan Tomes
>
>
>
Fastreport - zjisteni sirky caroveho kodu
[*] Pavel Gazda <pavel gazda(zv)datasw(tec)cz> - 27.6.2008 14:36:30
Zdravim,
tisku pomoci fastreportu carovy kod a potreboval bych zjistit
sirku takto vytvoreneho pole. Pouzivam jeste Fastreport ve verzi 2.53.
Pri tisku i nahledu je kod vytvoren spravne, ale nemohu zjistit
skutecnou sirku.
Diky za rady
Pavel
Carovy kod vytvarim asi takto: Report := TfrReport.Create(nil);
Report.LoadFromFile('Report.frf');
v := Report.FindObject('CarKod');
v.Memo.Clear;
v.Memo.Add('123456789012');
if Report.PrepareReport then
.....
FR3 riadok na viacero stran
[*] Stanislav ADAMCIK <konferencia(zv)stadas.sk> - 27.6.2008 14:16:28
Neviem ake siroke su tie stlpce a co tam davas, ale ak tam idu nejake
trojmiestne cislice, tak by som zmensil pismo na zostave, tak aby to
voslo na jednu stranu.
Robil som tabulku prijmov za rocne obdobie, x-ova os dni v mesiaci,
y-ova os mesiace a tiez mi to nechcelo vojst na A4 Landscape.
Zmensil som pismo a po vytlaci to bolo v pohode citatelne.
Stano
Alter procedure
[*] Milan Tomes <delphi(zv)haida(tec)cz> - 27.6.2008 11:50:16
Nastav ParamCheck na false.
S pozdravem
Milan Tomes
Jan Stefec napsal(a):
> Preju pekny den,
> potrebuji provest nasledujici alter procedure na FB 2.0 z programu v
> Script mi v IBExpertu projde bez chyb, kdyz se ho ale pokousim provest
> pomoci componenty IBSQL z meho programu, nastane chyba:
>
> Dynamic SQL Error
> SQL error code = -104
> Token unknown - line 10, column 8
> ?
>
Alter procedure
[*] Jan Stefec <stefec(zv)algo-hk(tec)cz> - 27.6.2008 11:38:15
Preju pekny den,
potrebuji provest nasledujici alter procedure na FB 2.0 z programu v
Delphi 2006.
ALTER PROCEDURE EXPORT_UE
as
declare variable cz char(14) character set win1250;
begin
update tbl_user set bln_in_ue = 1 where big_current_connection =
current_connection;
delete from tbl_skt_export_ue_tmp;
for select cz
from viw_export_ue
into :cz
do begin
/* do something */
end
end
Script mi v IBExpertu projde bez chyb, kdyz se ho ale pokousim provest
pomoci componenty IBSQL z meho programu, nastane chyba:
Dynamic SQL Error
SQL error code = -104
Token unknown - line 10, column 8
?
Nevite nekdo, co s tim?
Diky Honza
FR3 riadok na viacero stran
[*] Michal Simsaj <delphinpp(zv)atlas(tec)cz> - 27.6.2008 10:56:12
Petr Gregor wrote / napisal(a):
> Myslim, zejsem neco podobneho resil
> a nakonec jsme se dohodli tak, ze data vyexportuju do MS-Excel
>
bohuzial toto zakaznik neakceptuje.. nemate niekto este nejaky napad ?
dik,
M.
Oracle, C#
[*] Dalibor <dalibor(zv)torola(tec)cz> - 27.6.2008 10:26:10
Ahoj, muzete se nekdo podelit o zkusenosti s Oraclem? Klady, zapory, rychlost. Srovnani s MS SQL.
Jak lze do nej pristupovat z C#.
Dekuji za info.
Dalibor
ADMIN: Vypadek listserveru
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 27.6.2008 10:14:09
Ahoj,
vcera po 13. hodine byl presouvan listserver a tim padem doslo k
vypadku. Dnes byl presun dokoncen a jiz by vse melo fungovat. Kdo jste
posilal nejaky prispevek, ktery neprisel, tak si ho prosim poslete
znovu.
Petr Zahradnik, pocitacovy expert
==========================================================
Petr Zahradnik, Computer Laboratory
web: http://www.clexpert(tec)cz, e-mail: clexpert(zv)clexpert(tec)cz
==========================================================
ADMIN: Test
[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 27.6.2008 10:10:08
NEODPOVIDAT - TEST
Petr Zahradnik, pocitacovy expert
==========================================================
Petr Zahradnik, Computer Laboratory
web: http://www.clexpert(tec)cz, e-mail: clexpert(zv)clexpert(tec)cz
==========================================================
zeos a d2007
[*] Vaclav Halik <spravasd(zv)suz.cvut(tec)cz> - 01.7.2008 16:56:25
Zdravim,
jakou chybou, a co nejde ?
Vaclav Halik
PS: Tvuj popis problemu je dost fadni.
delphi(zv)elra(tec)cz napsal(a):
> Dobry den,
> je tu prosim nekdo komu se povedlo nainstalovat ZEOS komponenty do Delphi 2007?
> Pripadne vi nekdo jak na to? Dle velmi strucneho navodu mi to opravdu nejde.
> Vzdy skonci chybou.
>
> Predem dik Petr
zeos a d2007
[*] delphi(zv)elra(tec)cz - 01.7.2008 15:50:19
Dobry den,
je tu prosim nekdo komu se povedlo nainstalovat ZEOS komponenty do Delphi 2007?
Pripadne vi nekdo jak na to? Dle velmi strucneho navodu mi to opravdu nejde.
Vzdy skonci chybou.
Predem dik Petr
C# a vlakna
[*] delphin(zv)post(tec)cz - 01.7.2008 15:30:18
> slysel sem ze thready v C# nejsou skutecna vlakna ale nejaky vynalez
> microsoftu a vsechny vlastne bezi v jednou skutecnem vlaknu (pokud jsem to
> pochopil spravne), ovsem potreboval bych spustit nejake vlakno s prioritou a
> pod uzivatelem nezavislym na hlavnim projektu nevite - nekdo jak na to?
Microsofti vynalez (on to tak ani neni vynalez, existovalo to uz drive, jenom je to ted k dispozici primo v OS) ThreadPool je k dispozici vsem, nejenom C# a urcite je v C# k dispozici i normalni vlakno vytvorene pomoci CreateThread, melo by to byt System.Threading.Thread.
Vlakno je spustene pod uzivatelem, kteremu patri proces. Pokud chcete spoustet vlakno pod jinym uzivatelem, musite si udelat zvlastni proces (doporuceno), nebo se do nabourat do jineho procesu CreateRemoteThread (nedoporuceno).
Fasreport - vynechani prazdnych radku sestavy
[*] Pavel Gazda <pavel gazda(zv)datasw(tec)cz> - 01.7.2008 14:46:13
Jan Naiser napsal(a):
> Mam band a na nem pod sebou, rekneme 4 stringove polozky (fieldy) z jednoho
> radku (zaznamu) tabulky databaze, pres celou sirku bandu. Velikost polozky
> memo (vysku textu), pokud v memu presahne dany text sirku sestavy a vytvori
> se vice radku, dokazu nastavit, ta se dynamicky meni a je to v poradku.
>
> Honza.
>
Podivej se na demo sestavy, tam by sis mohl najit zpusob jak to udelat.
Asi bys to mel delat pres detail, subdetail.
Pavel
C# a vlakna
[*] Ladislav Fitz <ladislav.fitz(zv)kodytek(tec)cz> - 01.7.2008 14:36:11
zdravim
slysel sem ze thready v C# nejsou skutecna vlakna ale nejaky vynalez
microsoftu a vsechny vlastne bezi v jednou skutecnem vlaknu (pokud jsem to
pochopil spravne), ovsem potreboval bych spustit nejake vlakno s prioritou a
pod uzivatelem nezavislym na hlavnim projektu nevite - nekdo jak na to?
predem diky za kazde nakopnuti
Fasreport - vynechani prazdnych radku sestavy
[*] Jan Naiser <tua(zv)wo(tec)cz> - 01.7.2008 13:18:05
> Skutecne ti jde o skryti prazdnych radku sestavy ?
> ( tedy napriklad mas band, na nem mas jedno pole s textem nebo bez textu )
>
> Nebo mas jednoradkovy / viceradkovy text v jednom poli a chces vynechat
> nevyuzite / prazdne radky ?
Mam band a na nem pod sebou, rekneme 4 stringove polozky (fieldy) z jednoho
radku (zaznamu) tabulky databaze, pres celou sirku bandu. Velikost polozky
memo (vysku textu), pokud v memu presahne dany text sirku sestavy a vytvori
se vice radku, dokazu nastavit, ta se dynamicky meni a je to v poradku.
Nastane-li situace, kdy je nektera polozka (field) prazdna, objevi se tento
prazdny radek i na sestave. Ja bych predpokladal, ze se zbyle posunou vyse,
pokud nestanovim jinak, aby nevznikl prazdny radek na sestave. To se
nestane. Pokud si dany radek obarvim, je tam cely, po nastaveni strech mi
zustane barevne pole na zacatku radku, velikosti cca mezery, cili porad tam
neco je a polozky pod nim se neposunou.
Kdyz cele memo v kodu reportu na zaklade podminky skryju, neposunou se zbyle
radky (fieldy) na misto skryteho, takze je tam zase prazdny radek.
Drive jsem pouzival sineu a tam to nebyl problem, proto me to ted celkem
prekvapilo a at delam, co delam, nedari se mi docilit toho, aby, je-li
nektere memo prazdne, aby se mema pod nim vlastne posunula na jeho misto
(nahoru).
Honza.
Fasreport - vynechani prazdnych radku sestavy
[*] Pavel Gazda <pavel gazda(zv)datasw(tec)cz> - 01.7.2008 12:46:03
Ahoj
> Dokazu to udelat tak, ze tech nekolik polozek dam do jednoho mema a
> obslouzim to programove.
>
> begin
> if <frDBDataSet."PODTITUL"> = '' then Podtitul.Text:=
> <frDBDataSet."AUTOR">
> else Podtitul.Text:=
> <frDBDataSet."PODTITUL">+#13#10+<frDBDataSet."AUTOR">;
> end;
Skutecne ti jde o skryti prazdnych radku sestavy ?
( tedy napriklad mas band, na nem mas jedno pole s textem nebo bez textu )
Nebo mas jednoradkovy / viceradkovy text v jednom poli a chces vynechat
nevyuzite / prazdne radky ?
Pavel
Fasreport - vynechani prazdnych radku sestavy
[*] Jan Naiser <tua(zv)wo(tec)cz> - 01.7.2008 10:41:53
>> presel jsem na fastreport a nejak se mi nedari vynechat prazdny radek
>> sestavy.
>>
>
> Na pasu (band) sestavy je napriklad volba tisknout kdyz je detail prazdny.
> To by mohlo pomoct.
Diky, ale ani pokusy s timto nastavenim nepomohly. Zkousel jsem to i pres
detaily, cimz se to zbytecne komplikuje, ale ani toto nezabralo. Nechce se
mi verit, ze by FR neumel vynechat prazdne pole, ktere je pres celou sirku
stranky v jednoduche sestave...
Honza.
Fasreport - vynechani prazdnych radku sestavy
[*] Josef Zvonicek <prosoft(zv)prosoft(tec)cz> - 01.7.2008 12:18:00
> presel jsem na fastreport a nejak se mi nedari vynechat prazdny radek
> sestavy.
Nejednossi zpusob je ulozit sablonu i tiskovy vystup a poslat to na
support s popisem co to nedela.
http://fast-report.com/en/support/
Zvo.
Fasreport - vynechani prazdnych radku sestavy
[*] Jan Naiser <tua(zv)wo(tec)cz> - 01.7.2008 11:43:57
> begin
> if [query."nazev"]='' then
> memo1.visible:=false
> else
> memo1.visible:=true;
>
Ano, i to jsem zkousel, toto skryje memo, ale neposune mema pod nim tak, aby
volne misto zmizelo.
Dokazu to udelat tak, ze tech nekolik polozek dam do jednoho mema a
obslouzim to programove.
begin
if <frDBDataSet."PODTITUL"> = '' then Podtitul.Text:=
<frDBDataSet."AUTOR">
else Podtitul.Text:=
<frDBDataSet."PODTITUL">+#13#10+<frDBDataSet."AUTOR">;
end;
jenze zde zase nedokazu nastavit u jednotlivych radku mema atributy fontu.
Honza.
Fasreport - vynechani prazdnych radku sestavy
[*] Votava <mail(zv)votavasw(tec)com> - 01.7.2008 10:51:54
begin
if [query."nazev"]='' then
memo1.visible:=false
else
memo1.visible:=true;
Votava
Jan Naiser napsal(a):
>>> presel jsem na fastreport a nejak se mi nedari vynechat prazdny radek
>>> sestavy.
>>>
>>>
>> Na pasu (band) sestavy je napriklad volba tisknout kdyz je detail prazdny.
>> To by mohlo pomoct.
>>
>
> Diky, ale ani pokusy s timto nastavenim nepomohly. Zkousel jsem to i pres
> detaily, cimz se to zbytecne komplikuje, ale ani toto nezabralo. Nechce se
> mi verit, ze by FR neumel vynechat prazdne pole, ktere je pres celou sirku
> stranky v jednoduche sestave...
>
> Honza.
>
>
>
hodinky windows
[*] Jaroslav Stepanek <stepanek(zv)metest(tec)cz> - 01.7.2008 08:23:39
Netyka se to primo delphi, ale windows.
Nevite jak menit zobrazeni aktualniho casu dole na liste, tak aby vypis
zobrazoval i vteriny??
Mam aplikaci, ktera diky zpracovani mnozstvi dat bezi dost pomalu, nebo spis
ma pomale reakce.
Kdyz to sleduji pres net, pres vzdalenou zpravu, tak bych potreboval vedet
jestli zpozdeni, ktere je
na moji obrazovce je vzdalenou spravou, nebo je to vlastnost aplikace.
Vteriny by urcite pomohli.
Diky
jarda
Fasreport - vynechani prazdnych radku sestavy
[*] Pavel Gazda <pavel gazda(zv)datasw(tec)cz> - 01.7.2008 07:07:29
Ahoj
Jan Naiser napsal(a):
> Preji pekny den,
>
> presel jsem na fastreport a nejak se mi nedari vynechat prazdny radek
> sestavy.
>
Na pasu (band) sestavy je napriklad volba tisknout kdyz je detail prazdny.
To by mohlo pomoct.
Pavel
Reset USB Keyboard
[*] Venca Ask Zaruba <zaruba(zv)elastoform(tec)cz> - 30.6.2008 18:09:52
Dobry den vam vsem,
Pracuji na app pro technologicke zarizeni, ktere ma vnejsi a vnitrni USB
klavesnici.
Venkovni klavesnice (jen num.) si obcas postavi hlavu a sekne se.
Vypozoroval jsem, ze pomuze odebrat a pridat v zarizeni, ale jak to mam
udelat v app?
Pokusil jsem se na to pouzit TJvHidDeviceController, ale jak jsem nejspis
pochopil, ten je jen na buffrovani.
Moc prosim o radu...
Vasek 8^)
D7pro, XP
Fasreport - vynechani prazdnych radku sestavy
[*] Jan Naiser <tua(zv)wo(tec)cz> - 30.6.2008 17:19:48
Preji pekny den,
presel jsem na fastreport a nejak se mi nedari vynechat prazdny radek
sestavy.
Mam jednoduchy report a pokud tisknu data jednoho zaznamu v radcich pod
sebou a nektera polozka neobsahuje data, potrebuju ji vynechat tak, aby
nevznikl prazdny radek na vysledne sestave. Nejak se mi nedari najit cestu,
jak na to.
Diky za kazdou radu, Honza.