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 - sum(time)

[*] Libor Junek, Medisoft International <libor.junek(zv)medisoft(tec)cz> - 20.5.2005 08:19:12

A co treba extractovat ten cas do vterin (pokud je soucasti toho timestampu
i datum)?
SUM(EXTRACT(SECOND FROM DOBA) + EXTRACT(MINUTE FROM DOBA) * 60 +
EXTRACT(HOUR FROM DOBA) * 3600)
a potom to v pripade potreby poskladat pomoci DIV a MOD?

Libor

----- Original Message -----
From: "Jan Sebelik" <honza(zv)haes(tec)cz>
Sent: Friday, May 20, 2005 6:33 AM


> Je treba secist polozku typu time (resp. timestamp), napr. soucet trvani
> vsech operacich na vyrobku.
>
> select idvyrobek, sum(doba) from operace
> group by idvyrobek


FB - sum(time)

[*] Jan Sebelik <honza(zv)haes(tec)cz> - 20.5.2005 06:33:05

Ucastnici nasich kurzu maji u nas zdarma dozivotni technickou podporu.
Mam tady dneska dotaz, se kterym si (vyjimecne) nevim rady.

Je treba secist polozku typu time (resp. timestamp), napr. soucet trvani vsech operacich na vyrobku.

select idvyrobek, sum(doba) from operace
group by idvyrobek

Vim, slo by to zadavat jako integer nebo float, to je taky odpoved, ale lze nejak scitat time (timestamp)?

Diky

Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
= tel. 493 792 931 (mobil 776 347 735)
====================================

Indy FTP - problem

[*] John Bricklayer <bricklayer(zv)seznam(tec)cz> - 20.5.2005 00:26:39

>Zdravim,
>
>mam nasledujici problem:
>
>Bez problemu se pripojim k FTP serveru. Pokud zavolam metodu List, stahne se
>mi do StringListu ListResult obsah aktualniho adresare, priklad obsahu
>ListResult:
>
>drwxr-xr-x 3 635 636 4096 May 18 13:35 4Jirka
>drwxr-xr-x 3 635 636 4096 May 03 14:55 4mirek
>drwxr-xr-x 3 635 636 4096 Apr 19 11:57 4ottoman
>-rw-r--r-- 1 635 636 4317484 Mar 25 11:04 B0000002.rar
>-rw-r--r-- 1 635 636 562509 Mar 14 14:27 CSSEditor.zip
>drwxr-xr-x 3 635 636 4096 Mar 22 15:42 Cleansing
>
>K jednotlivym polozkam pristupuji pomoci vlastnosti DirectoryListing, kterou
>ma naplnit parser po volani metody List, problem je v tom, ze ji nenaplni a
>DirectoryListing zustane prazdna i kdyz ocividne data ze serveru dosla.
>Prosim mohl by mi nekdo pomoci? Urcite chci zustat u Indy FTP, dekuji.
>
>Pouzivam Win2000(vsechny updaty), D6 Pro, Indy 10.0.76
>
>
>
>__________ NOD32 1.1100 (20050518) Information __________
>
>This message was checked by NOD32 antivirus system.
>http://www.nod32.com
>
>

no nevim ale me toto funguje


***************
ftp.Connect(true);
ftp.ChangeDir(FTP_Adresar);
ftp.List(str,FTP_Adresar);

for a:=0 to ftp.DirectoryListing.Count-1 do begin
s:=ftp.DirectoryListing.Items[a].FileName;
****************

viz napoveda


Gets a list of files and directories on the FTP server.

procedure List(ADest: TStrings; const ASpecifier: string = ''; const ADetails: boolean = true);

Parameters

ADest: TStrings

List for files and directories in the current directory.

const ASpecifier: string = ''

File mask for the listing. Default value is ''.

const ADetails: boolean = true

Include file details. Default value is True.

Description

List is a procedure used to request a list of files or directories in the current directory on the FTP server.

ADest is a TStringList argument used to store the raw text values returned from the FTP server directory listing.

ASpecifier is a String value that contains a mask indicating the files and/or directories to be included in the listing. ASpecifier can contain common wildcard characters like '*' and '?'. Some useful masks include:

*.* - All files in the current directory.
* - All directory entries in the current directory.
*. - All files regardless of extension in the current directory.
A??.txt - All text files that have a 3-character name starting with 'A'.

ADetails is a Boolean value that indicates if the list should contain details about the files and directories that match the mask in ASpecifier. When ADetails is False, only the file or directory name is returned in the ADest string list using the FTP NLST command. When ADetails is True, List can return FTP server-dependent details including the file size, date modified, and file permissions for the Owner, Group, and User using the FTP LIST command.

List will initialize and Clear the DirectoryListing property, and parse the return values in ADest into collection items in the DirectoryListing container. When ADest is empty, parsing of the formatted DirectoyListing is omitted.

List stores the return values form the FTP server in the the ListResult property, and allows use for the List command for either stand-alone use or for preparation of the structured DirectoryListing.

List calls methods in DirectoryListing that detects common data formats returned by FTP servers. Applications can override the default detection and parsing behavior by assigning procedures to the OnCheckListFormat and OnParseCustomListFormat event handlers.

Nova komponenta od TDBEdit s moznosti zmeny barvy

[*] Pavel Beranek <pavel.0(zv)tiscali(tec)cz> - 19.5.2005 23:52:37

Diky, okraj se nyni vykresluje presne, jak potrebuji.
Jen obsah pole se mi zarovnava stale doleva i kdyz mam ve fieldu na
stred.
A jeste se zeptam na drobnost - FNT ve vyrazu "SelectObject(DC, Fnt);"
ma byt presne handle ceho ?

Pavel Beranek


> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Pavol
> Stugel, NETGraphics
> Sent: Thursday, May 19, 2005 8:52 PM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Nova komponenta od TDBEdit s moznosti zmeny barvy okraje
>
>
> Hi,
>
> > Jak mohu v nove komponente prekreslit okraj? Zkusil bych
> to pres Canvas, > ale TDBEdit ho nema.
>
> napriklad (kreslenie ramceku a nastavenie regionu aby
> standartna funkcia nevykreslila tu cast ktoru nechces, ktoru
> kreslis sam):
>
>
> procedure WMPaint(var M: TWMPaint); message WM_Paint;
>
> ...
>
> procedure NovyDBEdit.WMPaint(var M: TWMPaint);
> var
> DC: HDC;
> PS: TPaintStruct;
> FCanvas: TCanvas;
> TempRect: TRect;
>
> begin
> if M.DC = 0 then DC := BeginPaint(Handle, PS) else DC := M.DC;
> SelectObject(DC, Fnt);
> SetBkMode(DC, TRANSPARENT);
>
> FCanvas := TCanvas.Create; //vytvoris vlastny canvas na
> cmaranie do okna ...
> FCanvas.Handle := DC;
>
> FCanvas.Rectangle(ClientRect); //nakresli ramik, predtym
> treba nastavit farby ...
>
> GetWindowRect(Handle, TempRect);
> OffsetRect(TempRect, -TempRect.Left, -TempRect.Top);
> InflateRect(TempRect, -2, -2); // aby neprekreslil tvoj ramcek
> IntersectClipRect(DC, TempRect.Left, TempRect.Top,
> TempRect.Right, TempRect.Bottom);
> try
> PaintWindow(DC);
> finally
> if M.DC = 0 then EndPaint(Handle, PS);
> FCanvas.Free;
> end;
> end;
>
>
> Palo
>
>
>
>
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.322 / Virus Database: 266.11.13 - Release Date: 19. 5. 2005


Delphi 2005 Update 3

[*] Petr Vones <konference(zv)petrvones(tec)net> - 19.5.2005 22:40:32

Abstract: This update takes care of a lot of performance issues
http://bdn.borland.com/article/0,1410,33069,00.html

Petr Vones

Synapse + HttpGetText + cestina

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 19.5.2005 21:50:28

> zkousim si stahnout z internetu stranku pomoci funkce "HttpGetText". Vse
> se stahne OK, akorat nektere stranky nemaji cestinu (jsou bez diakritiky).
> Lze to u Synapse nastavit, aby se to stahovalo i s diakritikou? Kdyz zadam
> stahovanou adresu v exploreru, nebo mozile, tak ve zdrojovem kodu je
> cestina spravne.

Synapse ale do stazeneho obsahu NIJAK nezasahuje, naserviruje ti jej
presne v te podobe, v jake jej server poslal!

Takze pokud je vysledek v jinem kodovani nez ocekavas, bud musis
presvedcit server, aby ti jej poslal v jinem kodovani (treba tim ze mu
vnutis nejakou HTTP hlavicku), nebo se podivej v jaklem kodovani ti ty
data server poslal (pohledem do hlavicek odpovedi) a pak si to prekoduj
do ceho chces.

--
Lukas Gebauer.

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

Nova komponenta od TDBEdit s moznosti zmeny barvy

[*] Pavol Stugel, NETGraphics <palo(zv)netgraphics.sk> - 19.5.2005 20:52:24

Hi,

> Jak mohu v nove komponente prekreslit okraj? Zkusil bych to pres Canvas,
> ale TDBEdit ho nema.

napriklad (kreslenie ramceku a nastavenie regionu aby standartna funkcia
nevykreslila tu cast ktoru nechces, ktoru kreslis sam):


procedure WMPaint(var M: TWMPaint); message WM_Paint;

...

procedure NovyDBEdit.WMPaint(var M: TWMPaint);
var
DC: HDC;
PS: TPaintStruct;
FCanvas: TCanvas;
TempRect: TRect;

begin
if M.DC = 0 then DC := BeginPaint(Handle, PS) else DC := M.DC;
SelectObject(DC, Fnt);
SetBkMode(DC, TRANSPARENT);

FCanvas := TCanvas.Create; //vytvoris vlastny canvas na cmaranie do okna ...
FCanvas.Handle := DC;

FCanvas.Rectangle(ClientRect); //nakresli ramik, predtym treba nastavit farby ...

GetWindowRect(Handle, TempRect);
OffsetRect(TempRect, -TempRect.Left, -TempRect.Top);
InflateRect(TempRect, -2, -2); // aby neprekreslil tvoj ramcek
IntersectClipRect(DC, TempRect.Left, TempRect.Top, TempRect.Right, TempRect.Bottom);
try
PaintWindow(DC);
finally
if M.DC = 0 then EndPaint(Handle, PS);
FCanvas.Free;
end;
end;


Palo


Nova komponenta od TDBEdit s moznosti zmeny barvy

[*] Pavel Beranek <pavel.0(zv)tiscali(tec)cz> - 19.5.2005 20:02:20

Ahoj,
rad bych vytvoril novou komponentu od predka TDBEdit, u ktere bych mohl
menit barvu okraje.
TDBEdit v bsSingle a Ctl3D(False) vzdy vykresli okraj cerne.
Jak mohu v nove komponente prekreslit okraj? Zkusil bych to pres Canvas,
ale TDBEdit ho nema.
Nevim, zda jde pri psani komponenty pocitat s Canvasem rodice (tedy
formulare).
Mozna jdu na to uplne spatne. Date mi nekdo dobrou radu :-)

Dekuji

Pavel Beranek



--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.322 / Virus Database: 266.11.13 - Release Date: 19. 5. 2005


FB a cislo tydne

[*] Jiri Cincura <diskuze(zv)cincura(tec)net> - 19.5.2005 18:56:14

Karel Pecinka wrote (on Thursday, May 19, 2005 6:36 PM):
> Zdar,
>
> jak se da ve FB 1.5 vytahnout cislo tydne z datumu? Potrebuji to k
> vypsani tydennich prodeju.
>
> Diky Karel

See:
http://www.volny(tec)cz/iprenosil/interbase/ip_ib_code_timestamp.htm#_code3_week
ofyear

--
Jiri Cincura
http://www.cincura.net/
http://ID3renamer.cincura.net/
ICQ: 314711544; Yahoo!: x2develop
http://photo.cincura.net/
http://phorum.cincura.net/
http://x2develop.com/

FB a cislo tydne

[*] Karel Pecinka <k.pecinka(zv)seznam(tec)cz> - 19.5.2005 18:36:12

Zdar,

jak se da ve FB 1.5 vytahnout cislo tydne z datumu? Potrebuji to k
vypsani
tydennich prodeju.

Diky Karel


IMAPIFolder.CreateMessage - mail neni videt

[*] Petr Kuklik <petr.kuklik(zv)centrum(tec)cz> - 19.5.2005 17:20:07

Ahoj,
mam problem s viditelnosti mnou vytvoreneho mailu. Vytvorim mail pomoci FldMapi.CreateMessage(IID_IMessage, MAPI_ASSOCIATED, AktMessage), nastavim nektere property (PR_ATTR_HIDDEN, PR_ATTR_HIDDEN, PR_SUBJECT) a zavolam AktMessage.SaveChanges(KEEP_OPEN_READWRITE). Pak uvolnim interface AktMessage := nil;
Kdyz zkouknu obsah adresare totozneho s FldMapi, tak tam mail neni, pokud ale zavolam OpenEntry s EntryID vytvoreneho mailu, pak mi vse projde OK, tudiz predpokladam, ze mail existuje.
Co je potreba nastavit, abych mail videl v adresari, nad kterym ho vytvorim?

Diky Petr


DateTimePicker a ShortTimeFormat

[*] likeapear <likeapear(zv)centrum(tec)cz> - 19.5.2005 16:24:02

Mno podle napovedy jsem si ted vsimnul, ze DateTimePicker.Format ocekava jiny format formatu :) nez v jakem jsou naformatovany promenne jako napr. ShortTimeFormat v SysUtils. Jenze co s tim? Musim si napsat konverzni funkci mezi temito formaty? To bych nerad... Existuje nejaka takova? Doufam!

Chci aby mi DateTimePicker editoval cas v kratkem formatu a pritom byl zavisly na regionalnim nastaveni...

{likeapear}

----- Original Message -----
From: "likeapear" <likeapear(zv)centrum(tec)cz>
Subject: DateTimePicker a ShortTimeFormat


| Kdyz nastavim
|
| DateTimePicker1.dtkTime:=dtkTime;
| DateTimePicker1.Format:=ShortTimeFormat;
|
| Tak DateTimePicker1 dovoli nastavit hodiny od 0 do 12. Je to asi bug v TDateTimePicker, nebo to jde nejak obejit?

Synapse + HttpGetText + cestina

[*] delphi(zv)mjsoft(tec)cz - 19.5.2005 16:20:02

Zdravim,

zkousim si stahnout z internetu stranku pomoci funkce "HttpGetText".
Vse se stahne OK, akorat nektere stranky nemaji cestinu (jsou bez
diakritiky). Lze to u Synapse nastavit, aby se to stahovalo i s
diakritikou? Kdyz zadam stahovanou adresu v exploreru, nebo mozile, tak
ve zdrojovem kodu je cestina spravne.

Diky predem za odpoved.

Karel V.

Jak ma vypadat architektura aplikace, kdyz chci ti

[*] Martin Rocek <rocek(zv)dibaq(tec)cz> - 19.5.2005 15:54:00

Zdravim,

s nadsenim jsem se pustil do delani sestav pres FastReport3.0. Ale postupne
jsem zacal narazet na ruzne problemy. Zejmena mi delaji potize
initialization a finalization klauzule.

Mam aplikaci, ktera je rozdelena do nekolika modulu (co modul to dll
knihovna), kdyz potrebuji tisknout volam TiskovehoManagera, ktery je v
knihovne TiskP.dll, ten rozhoduje pres jaky dalsi tiskovy modul se bude
tisknout (kazdy ma svuj TfrxReport).

MyApp.exe
-----------------------------------
Sklad.dll | Majetek.dll | XXX.dll
-----------------------------------
TiskP.dll
-----------------------------------
Tisk_Sklad.dll | Tisk_Majetk.dll

Kdyz nastartuji nejaky report v Tisk_Sklad.dll vse je OK, jakmile nasledne
nastartuji nejaky report v Tisk_Majetek.dll zacne mi to litat (ze
uzivatelska trida je jiz zaregistovana) prave v initialization castech
FastReportu.

Naposledy:

initialization
RegisterClasses([TfrxDMPPage]); // trida je jiz zareg..
frxObjects.RegisterObject1(TfrxDMPMemoView, nil, '', '', 0, 2);
frxObjects.RegisterObject1(TfrxDMPLineView, nil, '', '', 0, 5);

Proto bych se rad zeptal jestli mate nekdo zkusenosti s tim jaka by mela
bych architektura aplikace, abych mohl tisknout pres FR.
Nebo mam mit jen jeden TfrxReport pro celou aplikaci a nejak ho sdilet pro
jednotlive tiskove moduly?


Diky martinr

DateTimePicker a ShortTimeFormat

[*] likeapear <likeapear(zv)centrum(tec)cz> - 19.5.2005 15:49:59

%SUBJ mi nefunguje spravne

Kdyz nastavim

DateTimePicker1.dtkTime:=dtkTime;
DateTimePicker1.Format:=ShortTimeFormat;

Tak DateTimePicker1 dovoli nastavit hodiny od 0 do 12. Je to asi bug v TDateTimePicker, nebo to jde nejak obejit?

PS: V ShortTimeFormat je "h:mm" (bez uvozovek) a napr. FormatDateTime(ShortTimeFormat,Time) funguje spravne.

Dik

{likeapear}

Jak nastavit ikonu aplikace za behu z bmp

[*] likeapear <likeapear(zv)centrum(tec)cz> - 19.5.2005 14:57:56

Ahoj, nevite nekdo %SUBJ. Umim nacist ikonu z ico (TIcon) a nastavit ho do TApplication.Icon. Ale jak tam dostat TBitmap? Poradi mi nekdo?

Diky

{likeapear}

FileList

[*] Vlastimil Zdenek <vlastimil.zdenek(zv)seznam(tec)cz> - 19.5.2005 14:47:55

Zdravim vsechny,
muzete mi prosim poradit nejaky filelist, ktery by zobrazil souboty i
adresare od urcite urovne?

Dekuji

Vlasta, D5

Bezi Firebird

[*] Milan Tomes <delphi(zv)haida(tec)cz> - 19.5.2005 13:49:51

S pouzitim Synapse:

function ServerRunning(AServerName: string): boolean;
const
IBServerPort = 3050;
var
Sock: TTCPBlockSocket;
begin
Sock := TTCPBlockSocket.Create;
try
Sock.CreateSocket;
Sock.Connect(AServerName, IntToStr(IBServerPort));
Result := Sock.LastError = 0;
Sock.CloseSocket;
finally
freeAndNil(Sock);
end;
end;

S pozdravem

Milan Tomes

> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of Dalibor
> Sent: Thursday, May 19, 2005 12:34 PM
>
> Ahoj, potreboval bych zjistit jestli bezi Firebird server,
> nebo Interbase Server.

Bezi Firebird

[*] Jiri Cincura <diskuze(zv)cincura(tec)net> - 19.5.2005 13:43:50

Dalibor wrote (on Thursday, May 19, 2005 12:34 PM):
> Ahoj, potreboval bych zjistit jestli bezi Firebird server, nebo Interbase
> Server. Muzete mi poradit jak na to?

Co zkusit najit jestli bezi fbguard nebo zkusit jestli nekdo posloucha na
3050 portu.

--
Jiri Cincura
http://www.cincura.net/
http://ID3renamer.cincura.net/
ICQ: 314711544; Yahoo!: x2develop
http://photo.cincura.net/
http://phorum.cincura.net/
http://x2develop.com/

Jak vybrat zvukovou kartu a vstup vicevstupove kat

[*] Zapletal Martin <zapletal(zv)inoma(tec)cz> - 19.5.2005 13:39:50

Jak bych u komponent AudioMixer a AudioRecorder z baliku WaveAudio mohl
vybrat zvukovou kartu (je-li jich vic) a vstup vicevstupove karty pro
nahravani?

Takhle vyberu asi kartu ale jak vybrat vstup. Potrebuji na vicevstupove
karte nahravat z vice vstupu oddelene.

for I := Integer(WAVE_MAPPER) to AudioPlayer1.NumDevs - 1 do
begin
AudioPlayer1.DeviceID := I;
end;

Zapletal Martin

Bezi Firebird

[*] Dalibor <dalibor(zv)torola(tec)cz> - 19.5.2005 12:33:45

Ahoj, potreboval bych zjistit jestli bezi Firebird server, nebo Interbase
Server.
Muzete mi poradit jak na to?

Indy FTP - problem

[*] Pavel Benacek <pavel.benacek(zv)cegedim(tec)com> - 19.5.2005 10:27:36

Zdravim,

mam nasledujici problem:

Bez problemu se pripojim k FTP serveru. Pokud zavolam metodu List, stahne se
mi do StringListu ListResult obsah aktualniho adresare, priklad obsahu
ListResult:

drwxr-xr-x 3 635 636 4096 May 18 13:35 4Jirka
drwxr-xr-x 3 635 636 4096 May 03 14:55 4mirek
drwxr-xr-x 3 635 636 4096 Apr 19 11:57 4ottoman
-rw-r--r-- 1 635 636 4317484 Mar 25 11:04 B0000002.rar
-rw-r--r-- 1 635 636 562509 Mar 14 14:27 CSSEditor.zip
drwxr-xr-x 3 635 636 4096 Mar 22 15:42 Cleansing

K jednotlivym polozkam pristupuji pomoci vlastnosti DirectoryListing, kterou
ma naplnit parser po volani metody List, problem je v tom, ze ji nenaplni a
DirectoryListing zustane prazdna i kdyz ocividne data ze serveru dosla.
Prosim mohl by mi nekdo pomoci? Urcite chci zustat u Indy FTP, dekuji.

Pouzivam Win2000(vsechny updaty), D6 Pro, Indy 10.0.76


Firebird

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 19.5.2005 09:13:31

Haj hou!

Karel Rys wrote:
> Pavel Cisar dne 18 May 2005 v 16:01:
>
>>Neni problem s nejakou UDF? Pripadne nejede to nahodou na Win2000 SP4
>>?
>
> Ehm, co se muze dit na Win2000 se SP4? Zakaznici ho maji na pobockach a nerekl bych, ze jsou
> nejake problemy... Nainstalovany FB 1.5.2.

W2000 SP4 obsahuje bug v TCP/IP stacku ktery zpusobuje kernel memory
leak u nekterych aplikaci (FB je jedna z nich). Po case to koci padem
aplikace nebo i woken. Mel by na to byt uz samostatny patch od MS.

S pozdravem
Pavel Cisar
IBPhoenix

Zneviditelnenie 0. stlpca v TListView

[*] Ing. Slavomir Timko <timko(zv)novisoft.sk> - 19.5.2005 08:33:24

Zdravim

Chcel by som sa spytat, ci neviete, ako zneviditelnit 0. stlpec v TListView.
Jedna z moznosti je nastavit jeho Width = 0, avsak stlpec sa da roztiahnut,
ak nastavim MaxWidth na 0, tak to znamena, ze MaxWidth je neobmedzene.
Neexistuje ani udalost, ktora by zachytavala roztiahnutie stlpca.
Neriesil to uz niekto?

Dakujem
Slavo.

Firebird

[*] Karel Rys <delphi(zv)zas-me(tec)cz> - 19.5.2005 07:33:20

Pavel Cisar dne 18 May 2005 v 16:01:

> Neni problem s nejakou UDF? Pripadne nejede to nahodou na Win2000 SP4
> ?

Ehm, co se muze dit na Win2000 se SP4? Zakaznici ho maji na pobockach a nerekl bych, ze jsou
nejake problemy... Nainstalovany FB 1.5.2.

Diky,

Karel Rys


Firebird

[*] Dalibor <dalibor(zv)torola(tec)cz> - 19.5.2005 07:23:19

COMMIT samozrejme pouzivam. Vse provadim pres vlastni proceduru ExecSQL,
ktera konci Transaction.Commit.
> Ahoj,
>
> Dalibor napsal(a):
> > Stava se mi, ze kdyz si programove vytvorim NOVE tabulky, mezi kterymi v
poslednim kroku chci vytvorit cizi klic, tak se mi zobrazi hlaska " table
XXX in use ".
>
> a davas potom COMMIT? Vytvoreni tabulky a pridani klice je bezna
> operace pri vytvareni databaze.
>
> Peca


Firebird

[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 18.5.2005 17:38:20

Ahoj,

Dalibor napsal(a):
> Stava se mi, ze kdyz si programove vytvorim NOVE tabulky, mezi kterymi v poslednim kroku chci vytvorit cizi klic, tak se mi zobrazi hlaska " table XXX in use ".

a davas potom COMMIT? Vytvoreni tabulky a pridani klice je bezna
operace pri vytvareni databaze.

Peca

Firebird

[*] viktordoubek(zv)volny(tec)cz - 18.5.2005 17:12:18

Kdyz uz jsme u toho, tak bych mel dotaz take trochu souvisejici s
cache. Byl jsem zvykly (IB6.5), ze po provedeni alteru ulozene
procedury se musel provest bud shutdown, nebo alter vsech
procedur/triggeru, ktere ji volaji, jinak se zmena v tech
volajicich neprojevila a stale se volala stara verze. Nyni se mi
zda, ze tento problem uz neni (FB1.5), ale nevim, jestli jsem to
dostatecne otestoval (jen do prvni urovne volani z procedury). Muzu
se spolehnout na to, ze pri alteru procedury se zmeny projevi i ve
vsech volajicich procedurach/triggerech i bez shutdown DB?

Diky. VD

> To je bohuzel problem soucasne implementace metadata cache u
> Super
> Serveru. Vetsina techto pripadu uz byla poresena, ale cizi
> klice jsou
> porad jeste problem. K plne spokojenosti to resi az Vulcan.

Firebird

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 18.5.2005 17:26:19

Haj hou!

viktordoubek(zv)volny(tec)cz wrote:
> Kdyz uz jsme u toho, tak bych mel dotaz take trochu souvisejici s
> cache. Byl jsem zvykly (IB6.5), ze po provedeni alteru ulozene
> procedury se musel provest bud shutdown, nebo alter vsech
> procedur/triggeru, ktere ji volaji, jinak se zmena v tech
> volajicich neprojevila a stale se volala stara verze. Nyni se mi
> zda, ze tento problem uz neni (FB1.5), ale nevim, jestli jsem to
> dostatecne otestoval (jen do prvni urovne volani z procedury). Muzu
> se spolehnout na to, ze pri alteru procedury se zmeny projevi i ve
> vsech volajicich procedurach/triggerech i bez shutdown DB?

Tak zrovna tenhle problem s metadata cache byl vyresen v 1.5 (jak uz
jste si vsiml :-).

S pozdravem
Pavel Cisar
IBPhoenix

Oracle vytazeni obsahu databaze do SQL

[*] Tyslic Jiri <jiri.tyslic(zv)opp.tbggroup(tec)com> - 18.5.2005 17:12:18

> zdravim,
> potreboval bych programek, ktery pres parametry prikazove
> radky umi vytahnout data z odpovidajici tabulky do sql
> (formou insert into ...) pro Oracle. Pomuze nekdo?
>
Pripoj si ORACLE jako LinkedServer a je to... Hledej v BOL k MS SQL.
Jakmile budes mit takto pripojeny Oracle k MS SQL, muzes data vytahovat jak je libo, treba pres radkovy osql...

Jirka


Zpetne volani z dll

[*] Karel Kral <kralkonf(zv)purusmeda(tec)cz> - 18.5.2005 16:31:59

Mapovane soubory se nemusi vubec zapisovat na disk, muzou byt ve
virtualni pameti a pak jsou pokud se nepletu stejne rychle jako pristup
ke stramkovane pameti.

Soucasny zapis a cteni nevyresim, ale tady slo o jednorazove cteni
vysledku.

Vlko II. napsal(a):
> On Tue, 17 May 2005 20:04:19 +0200, Karel Kral <kralkonf(zv)purusmeda(tec)cz>
> wrote:
>
>
>>Jeste me napadlo: casto se tu mluvilo o komunikaci aplikaci pres
>>pametove mapovane soubory. Coz takhle pouzit toto? Urcite by to bylo
>>rychlejsi i elegantnejsi nez komunikovat pres soubory nebo TCP/IP. A
>>mapovani by melo fungovat stejne v .NET i v Delphi.
>
>
> Preco sa vam komunikacia po tcp/ip zda pomalsia ako komunikacia cez
> mapovane subory? Mapovane subory su zapisane na disk, kdezto tcp/ip
> komunikacia bezi priamo cez porty, cize nijake swapovanie na
> disk nemusi byt.
> No ked sme pri elegancii, tak ako pri mapovanych suboroch vyriesite
> sucastny zapis aj citanie, pri dll to samozrejme nemusi nastat, ale co
> v pripade ak delphi app bezi vo viacerych threadoch. pri tcp/ip
> je zarucena aspon fronta:)
>
> Jo a btw: Mapovane subory su robene cez naimportovanie dll, co sa mi ako
> ciste .NETove nezda:)
>
> Ale kazde riesenie ma nieco do seba:
> http://www.codeproject.com/dotnet/globalcache.asp
>
> vlko
>

--
______________________________________________________
Karel Kral, reditel IT / IT manager
PURUS-MEDA, s.r.o., Palackeho 174, 621 00 Brno, CZ
E-Mail: kral(zv)purusmeda(tec)cz
______________________________________________________


Firebird

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 18.5.2005 16:01:57

Haj hou!

Dalibor wrote:
> Prosim o POMOC.
>
> Mam firebird 1.5.2 Win. (i starsi verze 1.5.0)
>
> Stava se mi, ze kdyz si programove vytvorim NOVE tabulky, mezi kterymi v poslednim kroku chci vytvorit cizi klic, tak se mi zobrazi hlaska " table XXX in use ".
> Nevite nekdo PROC, kdyz se jedna o nove tabulky? A vubec uz nerozumim tomu, proc by to melo jit ve vyhradnim rezimu, prece, kdyz budu chtit vytvorit novy cizi klic, tak nebudu obvolavat vsechny lidi, aby si stopli program (pripadne stopl celeho Firebirda), aby se to provedlo. Nebo se mam na cizi klice snad vykaslat?

To je bohuzel problem soucasne implementace metadata cache u Super
Serveru. Vetsina techto pripadu uz byla poresena, ale cizi klice jsou
porad jeste problem. K plne spokojenosti to resi az Vulcan.

> Potom se mi stava, ze Firebird se sam restartne, proste spadne, sice sam zase nabehne, ale diky tomu mi vypadnou programy, ktere jsou na nem povesene.
> (A stava se to i kdyz server a aplikaci bezi na jednom serveru)
> Stava se Vam to taky? Co se s tim da delat?

Neni problem s nejakou UDF? Pripadne nejede to nahodou na Win2000 SP4 ?

S pozdravem
Pavel Cisar
IBPhoenix

FB - synchronizacia dat

[*] Kalhous <kalhous(zv)eu(tec)cz> - 18.5.2005 16:25:59

>> .no a asi poslednou moznostou je napisat si vlastny replikator - asi
>> mesiac.. bude to asi hrozna pakaren a nie som s tym stotozneny, ale
>> vzhladom na nedostatok casu to asi budem musiet urobit tymto sposobom..
>>
> Replikace bude IMHO mnohem pracnejsi nez se domnivas a navic tim do
> systemu
> vneses znacna a neprekrocitelna omezeni.
> Ludek
Souhlasim, psat vlastni replikacni server jako nejjednodusi reseni se mi zda
prilis optimistick, o zaludnosti replikaci jsem k tomuto tematu neco psal na
zacatku. Podivejte se jak funguje komercni replikacni server a co to zhruba
obnasi. Jestli napisete za mesic neco lepsiho pak tedy klobouky dolu.

Firebird

[*] Libor Junek, Medisoft International <libor.junek(zv)medisoft(tec)cz> - 18.5.2005 15:51:55

----- Original Message -----
From: "Dalibor" <dalibor(zv)torola(tec)cz>
Sent: Wednesday, May 18, 2005 3:41 PM


> Stava se mi, ze kdyz si programove vytvorim NOVE tabulky, mezi kterymi v
> poslednim kroku chci vytvorit cizi klic, tak se mi zobrazi hlaska " table
> XXX in use ".

Je potreba aby nikdo nebyl pripojen k DB ..... s tim uz se clovek musi nejak
naucit zit ;-)

> Potom se mi stava, ze Firebird se sam restartne, proste spadne, sice sam
> zase nabehne, ale diky tomu mi vypadnou programy, ktere jsou na nem
> povesene.

Muze se to stavat pri spatne UDF. Co to hlasi ve firebird.log?

> Potrebuji aby mi server jel NONSTOP, je to velmi dulezite.

Obecne neni problem.

Libor


Oracle vytazeni obsahu databaze do SQL

[*] Martin Marek <martin.m.888(zv)seznam(tec)cz> - 18.5.2005 15:43:54

> zdravim,
> potreboval bych programek, ktery pres parametry prikazove
> radky umi vytahnout data z odpovidajici tabulky do sql
> (formou insert into ...) pro Oracle. Pomuze nekdo?

Tutove to jde, zkusil jsem SQL Navigator
a automaticky generovany vysledek je napr.

INSERT INTO emp
(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO)
VALUES
(7369,'SMITH','CLERK',7902,'17.12.80',800,NULL,20)
/

nebo, kdyz jsem zapomnel zadat jmeno tabulky

INSERT INTO table_name
(TABLE_NAME,TABLE_TYPE)
VALUES
('BONUS','TABLE')
/
---
Vygeneroval to SQL Navigator a pouziva se to
k jednorazovemu napr. preneseni dat mezi DB.

Jo, ale kod, ktery to dela, tak ten je bohuzel
skryt v .exe programu SQL Navigatora.
Zrejme to musi cist z Oracle Repository
strukturu tabulek a pak nasledne, kdyz
je to znak, tedy VarChar2, tak to vlozi do uvozovek,
kdyz je to cislo, tedy Number, tak pouze opise,
kdyz je to datum, tedy Date, tak to ulozi
v implicitnim formatu pro datum atd.

Hmm, hotovy to tu nemam, ale zkusil
bych Oracle OTN (Oracle Technology Network),
nevzpomenu si presnou www adresu
a take programovat se mi to ted nechce,
ale musi to jit naprogramovat.

Problem muze byt jen s RAW a LOBy,
ale ja osobne jsem je zatim nikdy pres
Insert nevkladal.

Tak jsem nepomohl, ale alespon nastinil
cestu.

Martin

P.S. Pokud to nebudete pouzivat nejak "masove",
tak to samozrejme nevyvijejte a
doporucuji pro jednorazovku nejaky tools,
ktery to umi.

FB - synchronizacia dat

[*] Ludek <konference(zv)sales(tec)cz> - 18.5.2005 15:55:56


----- Original Message -----
<dalibor.faltynek(zv)orgrez(tec)cz>

> Neco podobneho jsem vymysleli v podniku taky, a nakonec jsem sli cestou
> Terminal Server.
> Funguje to, problem je jenom s tim, ze licence TS jsou napocitane na
> konkretni pocet uzivatelu a kazda neco stoji.
> Jinak dobry.

Ahoj,
Jakou mas zkusenost z ADSL a Terminal serverem ?
Mne to kazdou chvili chcipne a to mam 4M ADSL (agregace teoreticky 1:40 a
jsem na DSLAmu pry jen 4) od Telenoru a na druhe strane je 6M pevna linka.


Ludek

FB - synchronizacia dat

[*] Ludek <konference(zv)sales(tec)cz> - 18.5.2005 15:49:55


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

> .no a asi poslednou moznostou je napisat si vlastny replikator - asi
> mesiac.. bude to asi hrozna pakaren a nie som s tym stotozneny, ale
> vzhladom na nedostatok casu to asi budem musiet urobit tymto sposobom..
>

Ahoj,
Replikace bude IMHO mnohem pracnejsi nez se domnivas a navic tim do systemu
vneses znacna a neprekrocitelna omezeni.
Napriklad - Kontinuita ciselnych rad, Uplnost udaju - nikdy neni jistota, ze
udaje jsou kompletni.
Muj nazor je ten, ze i kdyz to ted nejak udelas do roka se ti vyhrnou
pozadavky ktere budou kolidovat s omezenimi zpusobenymi replikacemi a
prepsani se stejne nevyhnes.

Ludek

Firebird

[*] Dalibor <dalibor(zv)torola(tec)cz> - 18.5.2005 15:41:54

Prosim o POMOC.

Mam firebird 1.5.2 Win. (i starsi verze 1.5.0)

Stava se mi, ze kdyz si programove vytvorim NOVE tabulky, mezi kterymi v poslednim kroku chci vytvorit cizi klic, tak se mi zobrazi hlaska " table XXX in use ".
Nevite nekdo PROC, kdyz se jedna o nove tabulky? A vubec uz nerozumim tomu, proc by to melo jit ve vyhradnim rezimu, prece, kdyz budu chtit vytvorit novy cizi klic, tak nebudu obvolavat vsechny lidi, aby si stopli program (pripadne stopl celeho Firebirda), aby se to provedlo. Nebo se mam na cizi klice snad vykaslat?

Potom se mi stava, ze Firebird se sam restartne, proste spadne, sice sam zase nabehne, ale diky tomu mi vypadnou programy, ktere jsou na nem povesene.
(A stava se to i kdyz server a aplikaci bezi na jednom serveru)
Stava se Vam to taky? Co se s tim da delat?

Potrebuji aby mi server jel NONSTOP, je to velmi dulezite.

Za pripominky dekuji

Dalibor

prevod

[*] Petr Fiser <petr.fiser(zv)3jservis(tec)cz> - 18.5.2005 14:21:47

>
> Zistil som ze StrToFloat nema rad bodku ale treba ju nahradit ciarkou
> a potom prebehne prevod vporiadku.
>

StrToFloat nema definovany desetinny oddelovac. To si musis nastavit
promennou DecimalSeparator, jinak se ti to bude chovat v kazdem prostredi
jinak.

function Prevod(Value: String);
var
Sep: Char;
begin
Sep := DecimalSeparator;
try
DecimalSeparator := '.';
Result := StrToFloat(Value);
finally
DecimalSeparator := Sep;
end;
end;

Petr Fiser.

prevod

[*] Dusan Nagy <dnagy(zv)inomacomp.sk> - 18.5.2005 14:07:46

Dobry den,
18. maja 2005, 13:51:44, napsal jste:

VB> nechapu prilis smysl dotazu ... StrToFloat nebo jak to chces konvertovat ?


VB> Je mozne previest string '+7.84915000E+00'; na ciselnu hodnotu?

Zistil som ze StrToFloat nema rad bodku ale treba ju nahradit ciarkou
a potom prebehne prevod vporiadku.

Dakujem.

prevod

[*] p.sestak(zv)corag.sk - 18.5.2005 14:13:47

Pozri si v HELPe DecimalSeparator a vsetko co k tomu patri.
P.
"Dusan Nagy" <dnagy(zv)inomacomp.sk>
Sent by: delphi-l-owner(zv)clexpert(tec)cz
18.05.2005 14:07
Please respond to
delphi-l(zv)clexpert(tec)cz


To
delphi-l(zv)clexpert(tec)cz
cc

Subject
Re: prevod



Dobry den,
18. maja 2005, 13:51:44, napsal jste:

VB> nechapu prilis smysl dotazu ... StrToFloat nebo jak to chces
konvertovat ?


VB> Je mozne previest string '+7.84915000E+00'; na ciselnu hodnotu?

Zistil som ze StrToFloat nema rad bodku ale treba ju nahradit ciarkou
a potom prebehne prevod vporiadku.

Dakujem.

Oracle vytazeni obsahu databaze do SQL

[*] Pavel Hora <phofficial(zv)centrum(tec)cz> - 18.5.2005 13:59:45

zdravim,
potreboval bych programek, ktery pres parametry prikazove radky umi vytahnout data z odpovidajici tabulky do sql (formou insert into ...) pro Oracle. Pomuze nekdo?

prevod

[*] Vlastimil Burian <vlastax.b(zv)seznam(tec)cz> - 18.5.2005 13:51:44

nechapu prilis smysl dotazu ... StrToFloat nebo jak to chces konvertovat ?


Je mozne previest string '+7.84915000E+00'; na ciselnu hodnotu?

shellexecute a navrat souboru

[*] Dalibor Faltynek <dalibor.faltynek(zv)orgrez(tec)cz> - 18.5.2005 13:11:42


> Sel bych na to trochu jinak:
> 1. zjistit obsah dm2.qKarta.FieldByName('PoslKalList').asString
> 2. kdyz obsah je prazdny, pomoci OpenDialog (zalozka Dialogs) bych nechal
vyhledat prislusny soubor

Diky za odpoved.
Obsah nemusi byt prazdny, treba se pozice souboru zmenila a muze ukazovat
jinam. Ale to jde vyresit pres nejaky fileexist
a kdyz negativ, tak volat OpenDialog.

> 3. po ukonceni OpenDialogu ulozit cestu do databaze
> 4. vyhledanou cestu pouzit jako parametr pro ShellExecute.
>
Udelat to tak samozrejme jde, mne se jenom libila cesta, kde windowsy to
udelaji za me.
Takze nic?

Dalibor Faltynek
Orgrez, a. s.
tel: +420 541 613 312
fax: +420 541 613 299
e-mail: dalibor.faltynek(zv)orgrez(tec)cz


FB - synchronizacia dat

[*] Dalibor Faltynek <dalibor.faltynek(zv)orgrez(tec)cz> - 18.5.2005 13:01:41

Neco podobneho jsem vymysleli v podniku taky, a nakonec jsem sli cestou
Terminal Server.
Funguje to, problem je jenom s tim, ze licence TS jsou napocitane na
konkretni pocet uzivatelu a kazda neco stoji.
Jinak dobry.
Dalik.> FB po lokalnej sieti. Vzhladom na to, ze vtedy to s internetom nebolo
> bohvieke ruzove nebolo mozne robit nejaku optimalizaciu na prevadzku cez
> net. Medzitym firma, kde to bezi vyrastla, ma viacero pobociek a je
> poziadavka, aby s tou aplikaciou mohli pracovat vsetky pobocky. Data
> nemusia byt online, moze tam byt urcite oneskorenie (max. 30-60 min).
> Predpokladal som, ze bude trochu problem s rychlostou odozvy, ale
> skutocnost je taka, ze v priebehu dna, ked by s tym malo pracovat
> viacero userov naraz, sa s tym prakticky neda koli pomalej odozve
> pracovat. Spojenie je DSL (2048/256 resp. 1024/128). Koli bezpecnosti
> prenosu je pouzite ZeBeDee, co by podla mna nemalo mat velky vplyv na
> rychlost.
> Chcem sa preto spytat, akym smerom sa uberat pri pripadnej
> optimalizacii, kde hladat uzke hrdla, na co si davat pozor, pripadne aky
> je vas nazor na vytvorenie akejsi synchronizacnej utility (sluzby),
> ktora by v ramci kazdej pobocky (kde by s datami pracovali po lokalnej
> sieti) synchronizovala (nove, upravene, vymazane) data cez net s
> centralnou DB.

shellexecute a navrat souboru

[*] horky(zv)cominn(tec)cz - 18.5.2005 12:57:35

> From: Dalibor Faltynek [mailto:dalibor.faltynek(zv)orgrez(tec)cz]
> Sent: Wednesday, May 18, 2005 12:04 PM

> Kdyz v databazi prislusny udaj
> (dm2.qKarta.FieldByName('PoslKalList').asString ) o
> kalibracnim listu jeste
> neni naplneny, tak pri kliknuti na stejne tlacitko se mi
> otevre takove to XPokno Pruzkumnika pro vyber souboru.

Sel bych na to trochu jinak:
1. zjistit obsah dm2.qKarta.FieldByName('PoslKalList').asString
2. kdyz obsah je prazdny, pomoci OpenDialog (zalozka Dialogs) bych nechal vyhledat prislusny soubor
3. po ukonceni OpenDialogu ulozit cestu do databaze
4. vyhledanou cestu pouzit jako parametr pro ShellExecute.

--
S pozdravem Karel Horky, D7, FB 1.0.3, IBX 7.08, WXP SP1
[mailto:horky(zv)cominn(tec)cz]

prevod

[*] Dusan Nagy <dnagy(zv)inomacomp.sk> - 18.5.2005 12:39:33

Dobry den,

Je mozne previest string '+7.84915000E+00'; na ciselnu hodnotu?

shellexecute a navrat souboru

[*] Dalibor Faltynek <dalibor.faltynek(zv)orgrez(tec)cz> - 18.5.2005 12:03:31

Ahoj,
Chci si w asociovanem souboru otevrit z programu prislusny kalibracni list
meridla. Delam to takto:
Nekde si definuji adresar:
cestakalib:='d:\KalibracniListy\' + cmbObor.Text;

a na tlacitko pak volam:
ShellExecute(Handle, 'open', PChar('"' + cestakalib + '\' +
dm2.qKarta.FieldByName('PoslKalList').asString + '"'), nil, nil, SW_SHOW);

Vse v poradku, prislusny dokument se mi otevre v asociovanem programu,
bezva.
Jenomze bych to rad jeste rozsiril.
Kdyz v databazi prislusny udaj
(dm2.qKarta.FieldByName('PoslKalList').asString ) o kalibracnim listu jeste
neni naplneny, tak pri kliknuti na stejne tlacitko se mi otevre takove to
XPokno Pruzkumnika pro vyber souboru. Ten vyberu a dokument se otevre. Ja
bych ale chtel zrovna jmeno toho otevreneho souboru strcit po jeho zavreni
do polozky databaze dm2.qKarta.FieldByName('PoslKalList').asString. Kde bych
se mohl to jmeno vybraneho souboru dovedet?

Diky Dalibor.

FB - synchronizacia dat

[*] delphinpp(zv)atlas(tec)cz - 18.5.2005 11:45:30

Ludek wrote:

>Ahoj,
>Nezavidim Ti. Podle men je to na prepsani celeho systemu.
>
>Ad terminal :
>Nemam prilis dobre zkusenosti s ADSL versus terminal, mnohem lepsi (ale o
>hodne drazsi) je to pres ISDN (myslim prime volani). Terminal i pri
>kratkodobem vypadku spojeni chcipne a je nutna navazovat nove spojeni.
>
>Ad aplikace :
>Idealne to ma byt trivrstve klient - appserver- databaze.
>Primy pristup klient-databaze bude v takovemhle prostredi problem.
>POkud se nemylim Firebird uz ma v prikazech neco jako LIMIT u mySQL tedy
>select * from table where podminka limit 1,25 my posle prvnich 25 radku
>dotazu, limit 25,25 dalsich atd..
>
>
.toto bolo ako prve co som sa snazil urobit..kazdy select moze vratit
max. 50 zaznamov - ludia musia filtrovat, ked chcu nieco najst..

>To je asi jediny zpusob jak obejit nutnost trivrstve app : vsude dusledne
>pouzit toto "listovani" po datovych zdrojich.
>No a maximum logiky aplikace dat do ulozenych procedur a pohledu a vice mene
>dosahnout stavu, kdy z klienta nebude zadny primy pristup do tabulky (vzdy
>jen pres SP nebo view).
>Pripadne mne napada prepsat to cele do PHP a jako klienta mit browser.
>
>Ludek
>
>
>
.ano, je mozno to cele odznova napisat, bud to ako web app, s cim ja
nemam skusenosti a pokial by som tie skusenosti nabral, tak ta app by
bola asi za rok... pripadne dat to robit nejakej externej firme, ta ale
nema know-how vnutornych procesov, predpokladam, ze aj po vsetkych
analyzach a samotnom kodovani by to bolo skor ako za rok, ale asi aj
10-nasobne drahsie..
.dalsou moznostou je celu sucasnu app uplne prekopat (takmer odznova
urobit) s tym, aby to bolo zoptimalizovane na internetovu prevadzku -
niekolko mesiacov
.no a asi poslednou moznostou je napisat si vlastny replikator - asi
mesiac.. bude to asi hrozna pakaren a nie som s tym stotozneny, ale
vzhladom na nedostatok casu to asi budem musiet urobit tymto sposobom..

vdaka vsetkym za napady, postrehy a pomoc,

Miso


FB - synchronizacia dat

[*] Ludek <konference(zv)sales(tec)cz> - 18.5.2005 11:17:27

From: <delphinpp(zv)atlas(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
> Peter Ondras wrote:
>
> >Je mozne to cele obist a pouzit Terminal Services. Aplikaciu nebude
> >potrebne ani nijako upravovat a bude fungovat odkialkolvek kde je
> >nainstalovana Vzdialena plocha.
> >
> >
> .hmm to asi nebude mozne, pretoze centralna FB DB bude na linuxovom
> servri u inej spolocnosti, ktora robi hosting..

Ahoj,
Nezavidim Ti. Podle men je to na prepsani celeho systemu.

Ad terminal :
Nemam prilis dobre zkusenosti s ADSL versus terminal, mnohem lepsi (ale o
hodne drazsi) je to pres ISDN (myslim prime volani). Terminal i pri
kratkodobem vypadku spojeni chcipne a je nutna navazovat nove spojeni.

Ad aplikace :
Idealne to ma byt trivrstve klient - appserver- databaze.
Primy pristup klient-databaze bude v takovemhle prostredi problem.
POkud se nemylim Firebird uz ma v prikazech neco jako LIMIT u mySQL tedy
select * from table where podminka limit 1,25 my posle prvnich 25 radku
dotazu, limit 25,25 dalsich atd..
To je asi jediny zpusob jak obejit nutnost trivrstve app : vsude dusledne
pouzit toto "listovani" po datovych zdrojich.
No a maximum logiky aplikace dat do ulozenych procedur a pohledu a vice mene
dosahnout stavu, kdy z klienta nebude zadny primy pristup do tabulky (vzdy
jen pres SP nebo view).
Pripadne mne napada prepsat to cele do PHP a jako klienta mit browser.

Ludek


Zpetne volani z dll

[*] Vlko II. <vlko(zv)zilina(tec)net> - 18.5.2005 08:51:16

On Tue, 17 May 2005 20:04:19 +0200, Karel Kral <kralkonf(zv)purusmeda(tec)cz>
wrote:

> Jeste me napadlo: casto se tu mluvilo o komunikaci aplikaci pres
> pametove mapovane soubory. Coz takhle pouzit toto? Urcite by to bylo
> rychlejsi i elegantnejsi nez komunikovat pres soubory nebo TCP/IP. A
> mapovani by melo fungovat stejne v .NET i v Delphi.

Preco sa vam komunikacia po tcp/ip zda pomalsia ako komunikacia cez
mapovane subory? Mapovane subory su zapisane na disk, kdezto tcp/ip
komunikacia bezi priamo cez porty, cize nijake swapovanie na
disk nemusi byt.
No ked sme pri elegancii, tak ako pri mapovanych suboroch vyriesite
sucastny zapis aj citanie, pri dll to samozrejme nemusi nastat, ale co
v pripade ak delphi app bezi vo viacerych threadoch. pri tcp/ip
je zarucena aspon fronta:)

Jo a btw: Mapovane subory su robene cez naimportovanie dll, co sa mi ako
ciste .NETove nezda:)

Ale kazde riesenie ma nieco do seba:
http://www.codeproject.com/dotnet/globalcache.asp

vlko

--


--------------
mail: vlko(zv)zilina.net
web: http://vlko.zilina.net

FB - synchronizacia dat

[*] Peter Ondras <konfery(zv)pse.sk> - 18.5.2005 11:07:26

Ciste teoreticky by zmena hostingu alebo zriadenie vlastneho serveru
IMHO vysli lacnejsie ako prerobenie uz existujucej aplikacie na
internet. Ine je to samozrejme pre nove aplikacie.

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]
On
>
> Peter Ondras wrote:
>
> >Je mozne to cele obist a pouzit Terminal Services. Aplikaciu nebude
> >potrebne ani nijako upravovat a bude fungovat odkialkolvek kde je
> >nainstalovana Vzdialena plocha.
> >
> >
> .hmm to asi nebude mozne, pretoze centralna FB DB bude na linuxovom
> servri u inej spolocnosti, ktora robi hosting..
>
> M.

FB - synchronizacia dat

[*] delphinpp(zv)atlas(tec)cz - 18.5.2005 09:17:18

Zdravim,
potreboval by som poradit ako riesit jeden problem a nechcem sa zbytocne
pustat zlou cestou, takze ak mate niekto podobne skusenosti, prosim o radu.

A teraz k problemu..Urobil som pred par rokmi aplikaciu, ktora bezi na
FB po lokalnej sieti. Vzhladom na to, ze vtedy to s internetom nebolo
bohvieke ruzove nebolo mozne robit nejaku optimalizaciu na prevadzku cez
net. Medzitym firma, kde to bezi vyrastla, ma viacero pobociek a je
poziadavka, aby s tou aplikaciou mohli pracovat vsetky pobocky. Data
nemusia byt online, moze tam byt urcite oneskorenie (max. 30-60 min).
Predpokladal som, ze bude trochu problem s rychlostou odozvy, ale
skutocnost je taka, ze v priebehu dna, ked by s tym malo pracovat
viacero userov naraz, sa s tym prakticky neda koli pomalej odozve
pracovat. Spojenie je DSL (2048/256 resp. 1024/128). Koli bezpecnosti
prenosu je pouzite ZeBeDee, co by podla mna nemalo mat velky vplyv na
rychlost.
Chcem sa preto spytat, akym smerom sa uberat pri pripadnej
optimalizacii, kde hladat uzke hrdla, na co si davat pozor, pripadne aky
je vas nazor na vytvorenie akejsi synchronizacnej utility (sluzby),
ktora by v ramci kazdej pobocky (kde by s datami pracovali po lokalnej
sieti) synchronizovala (nove, upravene, vymazane) data cez net s
centralnou DB.

Dik,
Miso

FB 1.5, WXP, D5

Zpetne volani z dll

[*] Vlko II. <vlko(zv)zilina(tec)net> - 18.5.2005 08:39:14

On Tue, 17 May 2005 16:04:02 +0200, <milan.tomes(zv)radom-cz(tec)cz> wrote:

> Tak nevim, ale tohle se mi zda dost brutalni reseni :-)
> Paradoxni je, ze prave kvuli internetu (webova sluzba se SSL) delam to
> dll v .NET. asi jsi prokouknul me zamery:)
> Je fakt, ze bych mohl napsat .NET aplikaci a ne se snazit pripojit to
> dll, kdyz mi to nejde, nicmene urcite to musi bezet na stejnem stroji.
>
> Jak bych udelal to posilani zprav pres tcp/ip, muzes to trochu rozvest a
> nasmerovat me?

mne sa to naopak viac pozdava ako to vase "brutalne" riesenie:)
Namiesto pouzivania .Net dll vo win32 aplikacii. By boli dve aplikacie,
ktore by na lokalnom porte (nie je potrebne otvarat firewall, ak to bezi na
rovnakom pocitaci) pocuvali a posielali medzi sebou spravy (kazda aplikacia
musi mat samozrejme osobitny port, pretoze nie je mozne aby pocuvali 2
aplikacie
na jednom porte sucastne). Potom si uz medzi sebou mozu aplikacie veselo
posielat co len chcu. Ja odporucam format xml, lebo je lahko spracovatelny
a hlavne prehladny.

uvediem radsej nejaky jednoduchy priklad:
app1(Delphi aplikacia) pracuje na porte 8090
app2(Net aplikacia) pracuje na porte 8091
app1 chce aby app2 urobila nejaky vypocet a vratila nejake data:
app1 teda posle
<zrataj>
<x>1</x>
<y>2</y>
</zrataj>
app2 to prijme a podla toho co prislo vie ze ma zratat premenne x a y
urobi to a posle app1 takyto xml:
<vysledok_zrataj>
<msg>Cisla vyhovuju podmienke</msg>
<vysledok>3</vysledok>
</vysledok_zrataj>
a app1 vie, ze ma vypisat vysledok a aj pomocnu spravu.

Toto riesenie je podla mna jednoduche na naprogramovanie (hlavne .NET)
a aj jednoduche na pouzivanie nehovoriac a buducich vyhodach ako je
rozdelenie zataze, teda aplikacie mozu bezat a rozdielnych pocitacoch.
Jednoduche rozsirovanie funkcnosti.

Jo tak ma napada, ze by bolo dobre pozriet si popis SOAP 1.2, ale to
je v podstate to iste, len dana xml sprava je vlastne niecim ako
rozhranim k objektu v app.

To ja len, ze takto nejak by som to robil ja:)

vlko

--


--------------
mail: vlko(zv)zilina.net
web: http://vlko.zilina.net

FB - synchronizacia dat

[*] delphinpp(zv)atlas(tec)cz - 18.5.2005 10:53:25

Peter Ondras wrote:

>Je mozne to cele obist a pouzit Terminal Services. Aplikaciu nebude
>potrebne ani nijako upravovat a bude fungovat odkialkolvek kde je
>nainstalovana Vzdialena plocha.
>
>
.hmm to asi nebude mozne, pretoze centralna FB DB bude na linuxovom
servri u inej spolocnosti, ktora robi hosting..

M.

FB - synchronizacia dat

[*] Peter Ondras <konfery(zv)pse.sk> - 18.5.2005 10:35:24

Je mozne to cele obist a pouzit Terminal Services. Aplikaciu nebude
potrebne ani nijako upravovat a bude fungovat odkialkolvek kde je
nainstalovana Vzdialena plocha.

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]
On
> net. Medzitym firma, kde to bezi vyrastla, ma viacero pobociek a je
> poziadavka, aby s tou aplikaciou mohli pracovat vsetky pobocky. Data


FB - synchronizacia dat

[*] Pavel Malinsky <malinsky(zv)pmcom(tec)cz> - 18.5.2005 10:27:23

> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz
> [mailto:delphi-l-owner(zv)clexpert(tec)cz] On Behalf Of delphinpp(zv)atlas(tec)cz
> Sent: Wednesday, May 18, 2005 9:17 AM

Ahoj,

> Zdravim,
> potreboval by som poradit ako riesit jeden problem a nechcem
> sa zbytocne
> pustat zlou cestou, takze ak mate niekto podobne skusenosti,
> prosim o radu.

mozna se to nekomu nebude libit, ale praktikujeme i to, ze se
vzdaleni klienti pripojuji primo k serveru pres terminal a pracuji primo
na vzdalenem stroji.

S pozdravem a dikem
=====================================
> Pavel Malinsky; malinsky(zv)pmcom(tec)cz <
=====================================
> GSM: 602 652 203 | ICQ: 322015967 <
=====================================

FB - synchronizacia dat

[*] Kalhous <kalhous(zv)eu(tec)cz> - 18.5.2005 10:05:21

> potreboval by som poradit ako riesit jeden problem a nechcem sa zbytocne
> pustat zlou cestou, takze ak mate niekto podobne skusenosti, prosim o
> radu.
...
> Chcem sa preto spytat, akym smerom sa uberat pri pripadnej
> optimalizacii, kde hladat uzke hrdla, na co si davat pozor, pripadne aky
> je vas nazor na vytvorenie akejsi synchronizacnej utility (sluzby),
> ktora by v ramci kazdej pobocky (kde by s datami pracovali po lokalnej
> sieti) synchronizovala (nove, upravene, vymazane) data cez net s
> centralnou DB.
Tak to je opravdu stepne tema ale spise na dva semestry nez na mail. Takze
zkusim radu system Cimrman - kudy cesta nevede. Pokud nekdo poradi replikace
coz je v podstate urceno take k tomu cemu rikas synchronizace tak tudy NE.
Totiz (i kdyz se mnou spousta lidi nebude souhlasit) kdyz ma replikace pro
tento ucel fungovat, je potreba to mit na zreteli uz od zacatku navrhu,
treba identifikatory typu GUID, nad kazdym triggerem a constraintem strasne
dlouho premyslet usw. A jelikoz zde se jedna o databazi navrhovanou pred x
lety tak to urcite nebude ono.

Firebird a localhost

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 18.5.2005 10:03:21

Haj hou!

Jirka wrote:
> Ahoj,
> chtel bych se zeptat proc firebird nekdy vyzaduje pred cestu
> dat localhost a nekdy tam byt nemusi.
>
> Pripadne jak co nastavit aby ji nevyzadoval.

Jaka verze a varianta Firebirdu? Pripojeni pres localhost znamena sitove
pripojeni pres mistni smycku, bez localhost prime pripojeni (v ramci
procesu aplikace nebo pres sdilenou pamet, zlezi na variante FB).
Nektere varianty FB z technickych duvodu lokalni pripojeni nepodporuji,
napr. Classic pro Windows.

S pozdravem
Pavel Cisar
IBPhoenix

Zpetne volani z dll

[*] Jan Sebelik <honza(zv)haes(tec)cz> - 18.5.2005 08:19:11

> >no len ma tak napada uplne najjednoduchsie posialat si tuto spravu cez
> >tcp/ip

> Tak nevim, ale tohle se mi zda dost brutalni reseni :-)

Tak jsem o tom s V.Bodeckem vecer mluvil, ale opravdu to stylem "udelej A, B, C" vysvetlit nepujde.
Vlada delal obousmerne priklady na callback COM - .NET, ale nekdy loni na podzim a s sebou v Belohrade to nema (skoli FB).

Vsechno je popsano v
Adam Nathan: .NET and COM: The Complete Interoperability Guide
to je jedina informace, kterou mohu v tomto okamziku nabidnout

(nase kurzy jsou tady mimo jine od toho, abyste ty tisice stranek nemuseli kupovat a prokousavat se jimi)
(adresa na Vladu je v kopii, dneska kurz konci a on se vraci domu, tam by to mohl najit)

Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
= tel. 493 792 931 (mobil 776 347 735)
====================================

Ukonceni threadu

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 18.5.2005 08:05:08

> Pri uvolneni threadu (at uz natvrdo destroy nebo pomoci
> terminate pri nastavenem freeonterminate) bych
> potreboval vedet jak zajistim, aby promenna co ukazuje
> na instanci nabyla nil? Tedy skutecne az po destroy.

IMHO to obecne nelze, thread nemuze sam od sebe vedet,
kam vsude sis odkaz na nej ulozil. Pokud jde o jednu znamou
promennou, nebude nejsnazsi ji v OnDestroy nastavovat na nil?

David Lebeda

Firebird a localhost

[*] Jirka <jw-delphi(zv)seznam(tec)cz> - 18.5.2005 07:57:07

Ahoj,
chtel bych se zeptat proc firebird nekdy vyzaduje pred cestu
dat localhost a nekdy tam byt nemusi.

Pripadne jak co nastavit aby ji nevyzadoval.

Predem diky za rady
Jirka

Ukonceni threadu

[*] Jiri Bouchala <bouchala(zv)starmon(tec)cz> - 17.5.2005 19:10:15

Pri uvolneni threadu (at uz natvrdo destroy nebo pomoci terminate pri nastavenem freeonterminate) bych potreboval vedet jak zajistim, aby promenna co ukazuje na instanci nabyla nil? Tedy skutecne az po destroy.
Diky

Zpetne volani z dll

[*] Karel Kral <kralkonf(zv)purusmeda(tec)cz> - 17.5.2005 20:04:19

Jeste me napadlo: casto se tu mluvilo o komunikaci aplikaci pres
pametove mapovane soubory. Coz takhle pouzit toto? Urcite by to bylo
rychlejsi i elegantnejsi nez komunikovat pres soubory nebo TCP/IP. A
mapovani by melo fungovat stejne v .NET i v Delphi.

Takze (pouze teoretizuju, prakticky jsem to nedelal): V Delphi cekat na
nejaky priznak (mutex?), ktery si pri dokonceni ulohy nastavim v .NET a
pri jeho signalizaci nacist zpet data z pametove mapovaneho souboru?
>
> Tak nevim, ale tohle se mi zda dost brutalni reseni :-)
> Paradoxni je, ze prave kvuli internetu (webova sluzba se SSL) delam to
> dll v .NET. asi jsi prokouknul me zamery:)
> Je fakt, ze bych mohl napsat .NET aplikaci a ne se snazit pripojit to
> dll, kdyz mi to nejde, nicmene urcite to musi bezet na stejnem stroji.
>
> Jak bych udelal to posilani zprav pres tcp/ip, muzes to trochu rozvest a
> nasmerovat me?
>
>
>
>
>
>
>
>
>

--
______________________________________________________
Karel Kral, reditel IT / IT manager
PURUS-MEDA, s.r.o., Palackeho 174, 621 00 Brno, CZ
E-Mail: kral(zv)purusmeda(tec)cz
______________________________________________________


Zpetne volani z dll

[*] milan.tomes(zv)radom-cz(tec)cz - 17.5.2005 16:04:02

Vlko II. napsal(a):

>On Tue, 17 May 2005 14:15:55 +0200, <milan.tomes(zv)radom-cz(tec)cz> wrote:
>
>
>
>>v dll je asynchronne provedena metoda webove sluzby a ja potrebuji
>>predat zpravu o vysledku do aplikace v DELPHI.
>>CallBack je tedy smerovany z .NET (dll) do DELPHI (aplikace).
>>Chapu, ze tohle neni na odpoved typu misto "jablko" tam napis "hruska",
>>ale uvital bych alespon nasmerovani do urcite oblasti, urcitou kapitolu
>>helpu, zpusob jakym to lze provest, abych si to pokud mozno nastudoval,
>>nebo ztratil mnoho casu a nakonec prijel na skoleni.
>>
>>Diky za pomoc pri zneuziti. tedy vyuziti ;-)
>>
>>
>
>no len ma tak napada uplne najjednoduchsie posialat si tuto spravu cez
>tcp/ip
>v nejakom rozumnom formate (XML). Mozno nie velmi vykonne, ale z casoveho
>hladiska
>je tu moznost aby bezali obe aplikacie na roznych strojoch. Jo a
>samozrejme, by
>tu uz nebola dll ale priamo .NET aplikacia, alebo service.
>
>vlko
>
>
>
Tak nevim, ale tohle se mi zda dost brutalni reseni :-)
Paradoxni je, ze prave kvuli internetu (webova sluzba se SSL) delam to
dll v .NET. asi jsi prokouknul me zamery:)
Je fakt, ze bych mohl napsat .NET aplikaci a ne se snazit pripojit to
dll, kdyz mi to nejde, nicmene urcite to musi bezet na stejnem stroji.

Jak bych udelal to posilani zprav pres tcp/ip, muzes to trochu rozvest a
nasmerovat me?

Zpetne volani z dll

[*] Vlko II. <vlko(zv)zilina(tec)net> - 17.5.2005 15:36:00

On Tue, 17 May 2005 14:15:55 +0200, <milan.tomes(zv)radom-cz(tec)cz> wrote:

> v dll je asynchronne provedena metoda webove sluzby a ja potrebuji
> predat zpravu o vysledku do aplikace v DELPHI.
> CallBack je tedy smerovany z .NET (dll) do DELPHI (aplikace).
> Chapu, ze tohle neni na odpoved typu misto "jablko" tam napis "hruska",
> ale uvital bych alespon nasmerovani do urcite oblasti, urcitou kapitolu
> helpu, zpusob jakym to lze provest, abych si to pokud mozno nastudoval,
> nebo ztratil mnoho casu a nakonec prijel na skoleni.
>
> Diky za pomoc pri zneuziti. tedy vyuziti ;-)

no len ma tak napada uplne najjednoduchsie posialat si tuto spravu cez
tcp/ip
v nejakom rozumnom formate (XML). Mozno nie velmi vykonne, ale z casoveho
hladiska
je tu moznost aby bezali obe aplikacie na roznych strojoch. Jo a
samozrejme, by
tu uz nebola dll ale priamo .NET aplikacia, alebo service.

vlko

--


--------------
mail: vlko(zv)zilina.net
web: http://vlko.zilina.net

Zpetne volani z dll

[*] milan.tomes(zv)radom-cz(tec)cz - 17.5.2005 14:15:55


Jan Sebelik napsal(a):

>>1)
>>Chtel bych se zeptat, jak se k teto problematice postavil
>>p.Bodecek, je to skutecne mozne?
>>Mam trochu podezreni, ze opacna cesta mozna neni, nebot dll,
>>ktere prilinkuji k projektu DELPHI, sice preda sve metody do teto
>>aplikace, nicmene pochybuji, ze muzu predat naopak metody z
>>aplikace DELPHI do toho dll.
>>
>>
>
>Zprava od V.Bodecka
>Z popisu neni jasne, zda je callback smerovany z W32 do .NET nebo naopak.
>Nicmene potencialne je mozne oboji. Z pohledu .NET se pak skutecne jedna o
>delegata.
>Reseni nejde popsat na 2 radky, ale temer jiste to pujde zrealizovat. Hrozi
>ovsem problemy tykajici se multithreadingu a p. Je to pomerne komplexni
>tema.
>
>Podotykam, ze V.Bodecek je prave v Belohrade (skoli), takze ho muzeme trochu "zneuzit".
>
>
>
v dll je asynchronne provedena metoda webove sluzby a ja potrebuji
predat zpravu o vysledku do aplikace v DELPHI.
CallBack je tedy smerovany z .NET (dll) do DELPHI (aplikace).
Chapu, ze tohle neni na odpoved typu misto "jablko" tam napis "hruska",
ale uvital bych alespon nasmerovani do urcite oblasti, urcitou kapitolu
helpu, zpusob jakym to lze provest, abych si to pokud mozno nastudoval,
nebo ztratil mnoho casu a nakonec prijel na skoleni.

Diky za pomoc pri zneuziti. tedy vyuziti ;-)

Zpetne volani z dll

[*] Jan Sebelik <honza(zv)haes(tec)cz> - 17.5.2005 13:07:50

> 1)
> Chtel bych se zeptat, jak se k teto problematice postavil
> p.Bodecek, je to skutecne mozne?
> Mam trochu podezreni, ze opacna cesta mozna neni, nebot dll,
> ktere prilinkuji k projektu DELPHI, sice preda sve metody do teto
> aplikace, nicmene pochybuji, ze muzu predat naopak metody z
> aplikace DELPHI do toho dll.

Zprava od V.Bodecka
Z popisu neni jasne, zda je callback smerovany z W32 do .NET nebo naopak.
Nicmene potencialne je mozne oboji. Z pohledu .NET se pak skutecne jedna o
delegata.
Reseni nejde popsat na 2 radky, ale temer jiste to pujde zrealizovat. Hrozi
ovsem problemy tykajici se multithreadingu a p. Je to pomerne komplexni
tema.

Podotykam, ze V.Bodecek je prave v Belohrade (skoli), takze ho muzeme trochu "zneuzit".

Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
= tel. 493 792 931 (mobil 776 347 735)
====================================

OT/nabidka prace - programator Delphi

[*] Lucie Svadlenkova <lucie(zv)timemaker.org> - 17.5.2005 11:07:36

jsme prazska sw firma a hledame programatory se znalosti Delphi
zabyvame se vyvojem na zakazku, ale v soucasne dobe pripravujeme take
vlastni krabicovy produkt - firemni komunikacni system
vyvoj je v Delphi, pod MySQL
pozadujeme dobrou znalost delphi a aj na dobre urovni
pro blizsi informace mne kontaktujte na lucie(zv)timemaker.org


Zpetne volani z dll

[*] milan.tomes(zv)radom-cz(tec)cz - 17.5.2005 10:57:35



Jan Sebelik napsal(a):

>tomes(zv)radom-cz(tec)cz
>
>Tohle jsem jiz udelal.
>dll napsanou v .NET jsem pomoci regasm konvertoval do *.tlb a importoval
>do DELPHI.
>Kdybych pouzival nejake trivialnejsi funkce pracujici se stringy ci
>integery, tak by to slo.
>Ale ja nevim, jak udelat ten CallBack.
>V .NET (se kterym zacinam, takze dost tapu) se na to pouzivaji delegate,
>Jak pouzit ten callback?
>Nebo jsem zcela vedle a mam to udelat jinak?
>________________
>Honza:
>Ted budu mozna tapat ja.
>Jak jste si povsimli, na skoleni .NET mame jine zkusene lidi, ja taky zatim jenom zacinam.
>
>Ale:
>Zabalime-li .NET objekt do "jakehosi COM obalu", lze ho volat z Delphi.
>To Milan Tomes umi.
>
>Opacne, z .NET lze volat Win32 COM objekty.
>Pokusil bych se tedy jit asi touto cestou:
>
>Napisu v Delphi COM objekt a jeho interface predam do .NET.
>Ten interface by mel reprezentovat pozadovany callback
>
>viz kurz V.Bodecka "Modularizace a prechod z Win32 do .NET"
>http://www.haes(tec)cz/osnovy.asp?r=osnovy&kod=CNET
>Tam je callbach primo jednim z bodu osnovy.
>(posilam mu to radsi v kopii, kdybych placal nejaky nesmysly)
>
>
1)
Chtel bych se zeptat, jak se k teto problematice postavil p.Bodecek, je to skutecne mozne?
Mam trochu podezreni, ze opacna cesta mozna neni, nebot dll, ktere prilinkuji k projektu DELPHI, sice preda sve metody do teto aplikace, nicmene pochybuji, ze muzu predat naopak metody z aplikace DELPHI do toho dll.

2)
no trochu to sem nepatri, ale lze predat metodu(proceduru funkci) jako parametr jine metody v .NET?
napr
private void RegisterMethod(??? metoda)
?
Jak predat proceduru z DELPHI do .NET ?

Rychlejsi tisk pod windows

[*] Sula Milos <milos.sula(zv)musumperk(tec)cz> - 17.5.2005 10:27:32

Takze ne 600DPI ale dokonce 1200DPI mi to tiskne z delphi, coz je pri
obrazku A4 ve 150DPI mrhani pameti a casem, kdyz si uvedomim, ze by to
mohlo zabirat 8x mene pameti a 8x by to bylo rychlejsi, kdyby slo DPI
tiskarny snizit programove na 150 nebo aspon 300..... Ale jak na to jsem
jeste neprisel.


Milos

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Sula Milos
Sent: Monday, May 16, 2005 5:23 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Rychlejsi tisk pod windows


Nevite nekdo jak urychlit tisk z Delphi ? Tisknu pres StretchBlt na HP
LJ1200 (600DPI) obrazek velikosti A4 cca pres 2minuty (velikost ve
fronte cca 750KB). Obrazek je v rozliseni 150DPI, ale musim to
stretchovat na 600DPI kvuli zachovani puvodni velikosti. Da se treba
nejak nastavit mensi rozliseni canvasu tiskarny ?


Milos

cannot focus a disabled or invisible window

[*] votavaSW <mail(zv)votavasw(tec)com> - 17.5.2005 09:25:28

dekuji za rady, chyba byla v jeste nezobrazenem formu, takze hlidam jeho
zobrazeni, activeControl:=edit7 (bez setFocus) funguje,
s pozdravem Votava

Lebeda David napsal(a):
>>procedure TfrmZbozi.RadioButton3Click(Sender: TObject);
>>begin
>> radioButton3.Checked:=not radioButton4.Checked;
>>
>> if radioButton3.checked then
>> edit1.setFocus
>> else
>> edit7.setFocus;
>>end;
>>
>>ve formu v onCreate volam radioButton3.Checked:=true;
>>pokud se focus nastavi na edit17, nastane vyjimka, pokud se focus dle
>>podminky nastavi na edit1, je vse v poradku,
>>prehodim-li oba edity, vyjimka nastane vzdy az za else, nevite cim to je?
>
>
>
> Koukam, ze uz se k tomuto tematu rozbehla jina diskuse, me jeste
> napadaji dalsi moznosti. Treba ze v OnEnter editu, na ktery chces dat
> focus nebo na OnExit momentalne aktivniho prvku je kod, ktery zpusobi
> uvedene chovani.
>
> Ale otazka k vyzkouseni - co se stane, kdyz misto SetFocus pouzies
> ActiveControl := Edit7.SetFocus?
>
> David Lebeda
>
>
>
> .
>

Rozliseni TImage

[*] little_bobes(zv)centrum(tec)cz - 17.5.2005 08:51:20

Ahoj,
primo z TImage to nezjistis (mozna na to nejake techniky jsou, ale ty
neznam), ale zjistis to z vlastniho JPEG souboru..
Ja na to pouzivam zhruba tuto funkci, kterou jsem kdesi nasel:

procedure Extract_DPI(Soubor: String; var xResolution, yResolution:
Single);
const cJPEG_Ident = 'JFIF';
type TJPEGHeader = record
SOI : word;
APP0: word;
Delka: word;
JFIF: array[0..3] of char;
VERSION: word;
UNITS: byte;
XDENSITY,
YDENSITY: word;
XTHUMBNAIL,
YTHUMBNAIL: BYTE;
end;
var
JPEG_buffer: TJPEGHeader;
FileStream : TFileStream;
begin
xResolution := 1;
yResolution := 1;

// v pripade JPEG
FileStream := TFileStream.Create(Soubor, fmOpenRead OR
fmShareDenyNone);
try
FileStream.Read(JPEG_Buffer, SizeOf(TJPEGHeader));
if JPEG_Buffer.JFIF = cJPEG_Ident then
begin
case JPEG_Buffer.UNITS of
0:
begin

end;
1:
begin
// DPI - bodu na palec
xResolution := Swap(JPEG_Buffer.XDENSITY);
yResolution := Swap(JPEG_Buffer.YDENSITY);
end;
2:
begin
// bodu na centimetr
xResolution := Swap(JPEG_Buffer.XDENSITY);
yResolution := Swap(JPEG_Buffer.YDENSITY);
// vydelenim hodnotou 2.54 dostanes DPI
xResolution := xResolution div 2.54;
yResolution := yResolution div 2.54;
end;
end;
end
finally
FileStream.Free
end;
end;

S pozdravem
Bob (D4 c/s, FB1.5)> Ahoj,
> da se nejak zhistit rozliseni v DPI obrazku nacteneho pomoci
> Image1.Picture.LoadFromFile(soubor); Jedna se o JPG soubor.
>
> dekuji
> Milos
>

cannot focus a disabled or invisible window

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

> procedure TfrmZbozi.RadioButton3Click(Sender: TObject);
> begin
> radioButton3.Checked:=not radioButton4.Checked;
>
> if radioButton3.checked then
> edit1.setFocus
> else
> edit7.setFocus;
> end;
>
> ve formu v onCreate volam radioButton3.Checked:=true;
> pokud se focus nastavi na edit17, nastane vyjimka, pokud se focus dle
> podminky nastavi na edit1, je vse v poradku,
> prehodim-li oba edity, vyjimka nastane vzdy az za else, nevite cim to je?


Koukam, ze uz se k tomuto tematu rozbehla jina diskuse, me jeste
napadaji dalsi moznosti. Treba ze v OnEnter editu, na ktery chces dat
focus nebo na OnExit momentalne aktivniho prvku je kod, ktery zpusobi
uvedene chovani.

Ale otazka k vyzkouseni - co se stane, kdyz misto SetFocus pouzies
ActiveControl := Edit7.SetFocus?

David Lebeda

cannot focus a disabled or invisible window

[*] John Bricklayer <bricklayer(zv)seznam(tec)cz> - 16.5.2005 23:50:43

>>Nebudes mat vystarane.
>Visible nie je jedina vlastnost ktoru si treba ustrazit.
>To, ci control moze prijat focus ma rozhodnut fcia CanFocus.
>Uz si na detaily nespominam, ale mam skusenost, ze aj ked CanFocus=true
>stale to este neznamena, ze sa pri pokuse o odovzdanie focusu
>zbavis tvojho problemu.
>
>peter
Myslim ze problem ma v tom, ze se znazi o focus na componentu aniz by toho byl pri vytvareni form nebo componenta schopne.


------------------------------------
Application.Initialize;
Application.CreateForm(TForm, Form);
Application.CreateForm(TForm2, Form2);

pokud provede focus tady a bude to na hlavnim formu tak to bude ok, pokud to bude na formnu, ktery by se mel
teprve "show"nout v hlavni aplikaci tak to bude platny asi jako jeho puvodni problem

Application.Run

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

takze pokud chci focus componenty na formu pri jakoby inicializaci (show) formu tak me napada jen "onshow" formu
protoze pri : 1) onActivate = bude componenta zamerena pri kazde aktivaci okna (napr aktivace jineho okna jine aplikace
a zpetne aktivace kritickeho okna), pokud to neni vyzadovano
2) onCreate = nemuze nic "focus"nout protoze se teprve vse vytvari a neni nic videt, samozrejme nastavovani
promennych jako je Caption jde

-- treba form i form2 budou po spusteni videt a form je hlavni,
si vzpomenu u "form.create" nastavit form2.componenta.caption=xxx tak to samozrejme nepujde ale obracene jo
v


pokud si jsem jisty ze je moje komponenta vzdy viditelna a zapla, tak staci testovat "if form.visible then componenta.setfocus"
pokud ne tak musi testova navic "if form.visible and componenta.enabled and componenta.visible then componenta.setcocus"
Na componentu nejde dat focus
1) pokud jeji form neni viditelny
2) pokud jeji form neni zaply "form.enabled=false"
3) pokud componenta neni viditelna
4) pokud neni componenta zapla viz.form


toto vse zapricini vyse popsany problem


cannot focus a disabled or invisible window

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 16.5.2005 23:06:39

>>dobry den,
>>mam tuto proceduru:
>>procedure TfrmZbozi.RadioButton3Click(Sender: TObject);
>>begin
>> radioButton3.Checked:=not radioButton4.Checked;
>>
>> if radioButton3.checked then
>>edit1.setFocus
>> else
>> edit7.setFocus;
>>end;
>>
>>ve formu v onCreate volam radioButton3.Checked:=true;
>>pokud se focus nastavi na edit17, nastane vyjimka, pokud se focus dle
>>podminky nastavi na edit1, je vse v poradku,
>>prehodim-li oba edity, vyjimka nastane vzdy az za else, nevite cim to je?
>>
>>
>>
> Pokud to pise, ze nemuze zamerit neviditelne nebo disablovane okno, tak asi
> v tu chvili maji oba Edity uvedeny problem. Dej si u obou test if
> Editx.visible then Editx.SetFocus a mas vystarano.
>
>
>
Nebudes mat vystarane.
Visible nie je jedina vlastnost ktoru si treba ustrazit.
To, ci control moze prijat focus ma rozhodnut fcia CanFocus.
Uz si na detaily nespominam, ale mam skusenost, ze aj ked CanFocus=true
stale to este neznamena, ze sa pri pokuse o odovzdanie focusu
zbavis tvojho problemu.

peter

cannot focus a disabled or invisible window

[*] John Bricklayer <bricklayer(zv)seznam(tec)cz> - 16.5.2005 20:49:06

>dobry den,
>mam tuto proceduru:
>procedure TfrmZbozi.RadioButton3Click(Sender: TObject);
>begin
> radioButton3.Checked:=not radioButton4.Checked;
>
> if radioButton3.checked then
> edit1.setFocus
> else
> edit7.setFocus;
>end;

Nemuzes nastavit focus, kdyz jeste neni zviditelnen Form s radiobutonem.
Takze ji nejspis budes muset zavol v onshow, protoze jinak bys musel na
zacatek dodat podminku

if not self.visible then exit

ale to by se po zviditelneni formu nastavil focus na componentu s taborder=0

a matne si vzpominam ze jsem takovy potreby jsem volal v hlavnim kodu aplikace
po vytvoreni vsech formu a pred application.run

cannot focus a disabled or invisible window

[*] Vlastik Bartos <bartos(zv)spsmvbr(tec)cz> - 16.5.2005 20:31:00

Pokud to pise, ze nemuze zamerit neviditelne nebo disablovane okno, tak asi
v tu chvili maji oba Edity uvedeny problem. Dej si u obou test if
Editx.visible then Editx.SetFocus a mas vystarano.

Vlastik


----- Original Message -----
From: "votavaSW" <mail(zv)votavasw.com>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Monday, May 16, 2005 7:48 PM
Subject: cannot focus a disabled or invisible window


> dobry den,
> mam tuto proceduru:
> procedure TfrmZbozi.RadioButton3Click(Sender: TObject);
> begin
> radioButton3.Checked:=not radioButton4.Checked;
>
> if radioButton3.checked then
> edit1.setFocus
> else
> edit7.setFocus;
> end;
>
> ve formu v onCreate volam radioButton3.Checked:=true;
> pokud se focus nastavi na edit17, nastane vyjimka, pokud se focus dle
> podminky nastavi na edit1, je vse v poradku,
> prehodim-li oba edity, vyjimka nastane vzdy az za else, nevite cim to je?
> S pozdravem Votava D5Pro, w2k
>
>
>

JCL Debug

[*] Jiri Cincura <diskuze(zv)cincura(tec)net> - 16.5.2005 20:20:59

Hmm, tak jsem stahl posledni JCL, dal cisty Delphi a porad to ma ten
problem. Asi je to nejak spatne propojeny, ci co. Udelal jsem to rucne - dal
tam ExceptDlg a zkopiroval ExceptDlgMail a je po ptakach (snad to tak ma
byt).

Kdyby nekdo vedel proc to tak je, necht se podeli.

D7, 1.1Upd, JCL 1.95 a JVCL

--
Jiri Cincura
http://www.cincura.net/
http://ID3renamer.cincura.net/
ICQ: 314711544; Yahoo!: x2develop
http://photo.cincura.net/
http://phorum.cincura.net/
http://x2develop.com/

Sestreleni service

[*] Ludek <konference(zv)sales(tec)cz> - 16.5.2005 20:16:58

<igor.kapoun(zv)volny(tec)cz>> Potreboval bych programove sestrelit urcity service (Win XP, Win 2000
> server).
> Znam jmeno EXE souboru, ktery se spousti.
> Muzete mne, prosim, nasmerovat?
>

Ahoj,
Co spustit prikaz NET.......

Nebo :

function StartStopService(const ServiceName: string; const Start: Boolean):
Boolean;

var
Mgr: THandle;
P: PChar;
Svc: THandle;
Status: TServiceStatus;
begin
Result := FALSE;
Mgr := OpenSCManager(nil, nil, SC_MANAGER_CONNECT);
if Mgr = 0 then
Exit; //raise Exception.Create(rsErrorCantLoadServiceManager);
Svc := OpenService(Mgr, PChar(ServiceName), SERVICE_MY_ACCESS);
if Svc = 0 then
Exit; //raise Exception.CreateFmt(rsErrorCantFindService,
[ServiceName]);
QueryServiceStatus(Svc, Status);
if Start then
begin
if Status.dwCurrentState <> SERVICE_RUNNING then
begin
P := nil;
StartService(Svc, 0, P);
Result := TRUE;
end;
end else
begin
if Status.dwCurrentState <> SERVICE_STOPPED then
begin
ControlService(Svc, SERVICE_CONTROL_STOP, Status);
Result := TRUE;
end;
end;
CloseServiceHandle(Svc);
CloseServiceHandle(Mgr);
end;

function StatusService(const ServiceName: string): word;

var
Mgr: THandle;
P: PChar;
Svc: THandle;
Status: TServiceStatus;
begin
Result := MY_ERROR;
Mgr := OpenSCManager(nil, nil, SC_MANAGER_CONNECT);
if Mgr = 0 then
Exit; //raise Exception.Create(rsErrorCantLoadServiceManager);
Svc := OpenService(Mgr, PChar(ServiceName), SERVICE_MY_ACCESS);
if Svc = 0 then
Exit; //raise Exception.CreateFmt(rsErrorCantFindService,
[ServiceName]);
QueryServiceStatus(Svc, Status);
Result := Status.dwCurrentState;
CloseServiceHandle(Svc);
CloseServiceHandle(Mgr);
end;


Ludek

cannot focus a disabled or invisible window

[*] votavaSW <mail(zv)votavasw(tec)com> - 16.5.2005 19:48:56

dobry den,
mam tuto proceduru:
procedure TfrmZbozi.RadioButton3Click(Sender: TObject);
begin
radioButton3.Checked:=not radioButton4.Checked;

if radioButton3.checked then
edit1.setFocus
else
edit7.setFocus;
end;

ve formu v onCreate volam radioButton3.Checked:=true;
pokud se focus nastavi na edit17, nastane vyjimka, pokud se focus dle
podminky nastavi na edit1, je vse v poradku,
prehodim-li oba edity, vyjimka nastane vzdy az za else, nevite cim to je?
S pozdravem Votava D5Pro, w2k

Predavani parametru

[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 16.5.2005 19:28:55

Jiri Cincura napsal(a):

>Ladislav Stary wrote (on Monday, May 16, 2005 6:39 PM):
>
>
>>No nepredavej do procedury TCaption, ale rovnou odkaz na na ten form, tedy
>>
>>procedure Zmen(f : TForm)
>>begin
>> f.Caption := DateTimeToStr(Now);
>>end;
>>
>>Ladislav Stary
>>
>>
>
>No jenze ja tam potrebuju predat obecne cokoli. TButton, TComboBox, ...
>proste cokoli se stringem.
>
>
>
Tak jinak;

procedure Zmen(Obj : TObject);
var
P : PPropInfo;
begin
P := GetPropInfo(Obj,'Caption');
if P <> nil then
SetStrProp(Obj,P,DateTimeToStr(now));
end;

Vyuziva to RTTI informaci. GetPropInfo testuje, jestli object ma
property Caption.
Pokud ano, tak ji pomoci SetStrProp nastavi

Ladislav Stary


Predavani parametru

[*] Jiri Cincura <diskuze(zv)cincura(tec)net> - 16.5.2005 18:58:32

Ladislav Stary wrote (on Monday, May 16, 2005 6:39 PM):
> No nepredavej do procedury TCaption, ale rovnou odkaz na na ten form, tedy
>
> procedure Zmen(f : TForm)
> begin
> f.Caption := DateTimeToStr(Now);
> end;
>
> Ladislav Stary

No jenze ja tam potrebuju predat obecne cokoli. TButton, TComboBox, ...
proste cokoli se stringem.

--
Jiri Cincura
http://www.cincura.net/
http://ID3renamer.cincura.net/
ICQ: 314711544; Yahoo!: x2develop
http://photo.cincura.net/
http://phorum.cincura.net/
http://x2develop.com/

Predavani parametru

[*] Ladislav Stary <stary(zv)ekodat(tec)cz> - 16.5.2005 18:38:30

No nepredavej do procedury TCaption, ale rovnou odkaz na na ten form, tedy

procedure Zmen(f : TForm)
begin
f.Caption := DateTimeToStr(Now);
end;

Ladislav Stary


Jiri Cincura napsal(a):

>Ahoj,
>
>mam problem s predanim parametru do procedury.
>
>Mejme (priklad)
>procedure Zmen(var S: TCaption);
>begin
> S := DateTimeToStr(Now);
>end;
>
>Jak nyni predat do Zmen Form1.Caption? Kdyz dam Zmen(Form1.Caption)
>kompilator mi samozrejme vynada.
>
>Ja to tedy obejit? Vyresit?
>
>
>

Predavani parametru

[*] Jiri Cincura <diskuze(zv)cincura(tec)net> - 16.5.2005 17:45:23

Ahoj,

mam problem s predanim parametru do procedury.

Mejme (priklad)
procedure Zmen(var S: TCaption);
begin
S := DateTimeToStr(Now);
end;

Jak nyni predat do Zmen Form1.Caption? Kdyz dam Zmen(Form1.Caption)
kompilator mi samozrejme vynada.

Ja to tedy obejit? Vyresit?

--
Jiri Cincura
http://www.cincura.net/
http://ID3renamer.cincura.net/
ICQ: 314711544; Yahoo!: x2develop
http://photo.cincura.net/
http://phorum.cincura.net/
http://x2develop.com/

Rychlejsi tisk pod windows

[*] Sula Milos <milos.sula(zv)musumperk(tec)cz> - 16.5.2005 17:23:20

Nevite nekdo jak urychlit tisk z Delphi ? Tisknu pres StretchBlt na HP
LJ1200 (600DPI) obrazek velikosti A4 cca pres 2minuty (velikost ve
fronte cca 750KB). Obrazek je v rozliseni 150DPI, ale musim to
stretchovat na 600DPI kvuli zachovani puvodni velikosti. Da se treba
nejak nastavit mensi rozliseni canvasu tiskarny ?


Milos

IIS a ladeni ISAPI

[*] Martin Nedopil <martin.nedopil(zv)hon(tec)cz> - 16.5.2005 15:13:11

Ahoj,

mam problem s IIS a pristupem do databazi MS SQL.
Udelal jsem si skript, ktery vola databazi a kdyz
jej zavolam dostanu tuto hlasku

"Server does not exist or access denied".

Problem je IMHO v IIS protoze s jinym serverm to
slape v pohode, pres konzoli se k SQL take v
pohode pripojim. Zkousel jsem laborovat s uzivateli,
ale nic. Autentifikace je "SQL Server and Windows",
spojeni je realizovano pres TCP/IP ne named pipes.
Server bezi na jinem stroji.

Na webu jsem hledal, ale nic z toho mi nepomohlo.

Dik

Martin

Rozliseni TImage

[*] Sula Milos <milos.sula(zv)musumperk(tec)cz> - 16.5.2005 13:39:04

Ahoj,
da se nejak zhistit rozliseni v DPI obrazku nacteneho pomoci
Image1.Picture.LoadFromFile(soubor); Jedna se o JPG soubor.

dekuji
Milos

Cteni Excel souboru

[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 16.5.2005 12:45:00

Ahoj,

my pouzivame komercni XLSReadWriteII:

http://www.axolot.com/components/xlsrwii20.htm

Peca

ondestroy mainformu

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 16.5.2005 12:28:58

> > Co se stane, kdyz misto Application.CreateForm pouzijes
> > FForm2 := TForm2.Create(Self);?
> >
> problem sa odstrani, v ondestroy je potom FForm2 este zivy
>

Pri volani Application.CreateForm je ownerem pro Form2 Application,
zatimco v uvedenem pripade je to Form1. Pri ukonceni aplikace se
postupne uvolni vse, ceho je TApplication ownerem a Form2 je uvolnen
drive nez Form1 v ramci uklidu pri likvidaci TApplication objektu (to by
se dalo potvrdit prohlednutim zdrojaku forms.pas, do cehoz s mi
nechce).

David Lebeda

Kylix a Apache

[*] Radek Cervinka <radek.cervinka(zv)technodat(tec)cz> - 16.5.2005 12:24:58

Lukas Gebauer wrote:

>>>proc jsi si vybral CGI kdyz muzes napsat Shared Object primo pro Apache
>>>a co jsem to zkousel tak to fungovalo dobre. A ani nebudes muset nic
>>>menit (Shared Objects je neco jako ISAPI). Kylix pro to ma podporu.
>>
>>Parada, tohle presne odpovida tomu, co jsem chtel slyset. Shared
>>object neni problem.
>>
>>Stavajici aplikace byla psana s podporou Delphi, takze to vypada, ze
>>cesta pres Kylix by mohla byt uspesna, pokud ti tedy dobre rozumim.
>>Clanky na www.root(tec)cz si vyhledam a prectu.
>
>
> no, se Shared-Objects pro Apache mam zkusenosti:
>
> - nikdy jsem nepouzival ten Borlandi framework na webove aplikace.
> Vzdy jsem psal svoji cistou DLL/so a od borlandu jsem pouzival je
> preklad hlavickovych souboru API pro apache (httpd2.pas).

> - Tyto borlandi hlavickove soubory jsou stare! Nevim, jak je na tom
> Kylix, ale treba v Delphi jsou porporovany posledni verze Apache az
> od D2005. Na internetu jsou ale navody, co kde zmenit, abys mohl psat
> pro posledni Apache i ve starsich verzich Delphi. Nejjednodusi bude
> si ten httpd2.pas sehnat z D2005. Ten soubor je spolecny jak pro
> Win32, tak i pro linux.

Pravda, ja jsem to naposledy zkousel proti Apachi 1.3.x a tam to
fungovalo pekne.

Kdyz tak se jeste podivej na www.drbob42.com (jsou tam myslim i ty
navody na zmenu httpd2.pas) a dale projekt CrossKylix,
umozni ti to cross kompilaci, tj. vyvoj v Delphi

no snad jsem ti trochu pomohl.

Radek


ondestroy mainformu

[*] Vaclav Sazima <vaclav.sazima(zv)utilia(tec)cz> - 16.5.2005 11:52:55

Ahoj,
podle me je problem v tom, ze form2 se uvolnuje automaticky, a to pred
form1.ondestroy. Promenna fform2 se ale pochopitelne nenastavi na nil, a
tak se freeandnil pokusi form2 uvolnit a protoze ten uz neexistuje,
nastane havarie. Neuvolnuj tedy fform2 az v ondestroy, ale drive.

Vaclav Sazima



Ing. Jiri Sokol wrote:

Ak si mainform aplikacie vytvori dalsi form (form2),
v ondestroy mainformu nie je mozne form2 uvolnit.

>>uses
>> Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
>>Dialogs, unit2,
>> StdCtrls;
>>
>>type
>> TForm1 = class(TForm)
>> Button1: TButton;
>> procedure FormDestroy(Sender: TObject);
>> procedure Button1Click(Sender: TObject);
>> private
>> { Private declarations }
>> FForm2: TForm2;
>> public
>> { Public declarations }
>> end;
>
>
>>procedure TForm1.FormDestroy(Sender: TObject);
>>begin
>> FreeAndNil(FForm2);
>>end;
>>
>>procedure TForm1.Button1Click(Sender: TObject);
>>begin
>> Application.CreateForm(TForm2, FForm2);
>>end;
>>
>>end.
>
>

Cteni Excel souboru

[*] lgcvirag(zv)iol(tec)cz - 16.5.2005 11:36:54

procedure TForm1.Button1Click(Sender: TObject);
var S : string;
i : integer;
j : integer;
ExcelApp : Variant;

begin

if not OpenDialog1.Execute then exit;
OraADO.Open;
ADOQuery2.ExecSQL;
ExcelApp:=CreateOleObject('Excel.Application');
ExcelApp.DisplayAlerts:=True;
//ExcelApp.Workbooks.Open('D:\<path>\tags_sources_kc_01.xls');
ExcelApp.Workbooks.Open(OpenDialog1.FileName);

i := 1;
j := 2;
s := ExcelApp.Workbooks[1].WorkSheets[1].Cells[j,1];

...
...

Ivan Virag

----- Puvodni zprava -----
Odesilatel: Kalhous <kalhous(zv)eu(tec)cz>
Predmet: Cteni Excel souboru

> Trivialni dotaz: Jak pokud mozno bez BDE, ODBC, OLE, ... cist do
> programu D7 data ze souboru Excel?
>

Kylix a Apache

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 16.5.2005 11:28:53

> > proc jsi si vybral CGI kdyz muzes napsat Shared Object primo pro Apache
> > a co jsem to zkousel tak to fungovalo dobre. A ani nebudes muset nic
> > menit (Shared Objects je neco jako ISAPI). Kylix pro to ma podporu.
>
> Parada, tohle presne odpovida tomu, co jsem chtel slyset. Shared
> object neni problem.
>
> Stavajici aplikace byla psana s podporou Delphi, takze to vypada, ze
> cesta pres Kylix by mohla byt uspesna, pokud ti tedy dobre rozumim.
> Clanky na www.root(tec)cz si vyhledam a prectu.

no, se Shared-Objects pro Apache mam zkusenosti:

- nikdy jsem nepouzival ten Borlandi framework na webove aplikace.
Vzdy jsem psal svoji cistou DLL/so a od borlandu jsem pouzival je
preklad hlavickovych souboru API pro apache (httpd2.pas).

- tyto Borlandi hlavickove soubory nejsou kompletni! Obcas potrebujes
nejakou funkci, ktera tam proste neni, takze si ji musis sam
naimportovat.

- Tyto borlandi hlavickove soubory jsou stare! Nevim, jak je na tom
Kylix, ale treba v Delphi jsou porporovany posledni verze Apache az
od D2005. Na internetu jsou ale navody, co kde zmenit, abys mohl psat
pro posledni Apache i ve starsich verzich Delphi. Nejjednodusi bude
si ten httpd2.pas sehnat z D2005. Ten soubor je spolecny jak pro
Win32, tak i pro linux.

- bacha na to, ze i u tech funkci, ktere jsou v tom souboru
importovany, existuji chyby! Napriklad funkce ap_get_module_config je
prelozena zcela nesmyslne! (je videt, s jakou peclivosti se Borland u
tuto oblast stara...)

- bacha na borlandi memorymanager. nezapomen, ze to DLL je volano
multithreadove, takze musis borlandimu memorymanageru rict, ze je
multithreadovy. Nedavno se to tu resilo. Ja osobne pouzivam svuj
jednoduchy memorymanager, ktery veskere alokace nechava na operacnim
systemu. To ale plati pro Win32, jak je to s memorymanagerem v Kylixu
nevim!

- je dobry napad si stahnout zdrojaky Apache. Jednak podle nich muzes
pridavat importy chybejicich funkci, druhak tam mas zdrojaky mnoha
standardne dodavanych modulu.. je to dobry priklad!
--
Lukas Gebauer.

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

ondestroy mainformu

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 16.5.2005 11:14:51

>>Access violation at adress 00000000. Read of adress 00000000.
>>
>
>
> Ahoj,
>
> to je divne. I kdybys delal FreeAndNil na nilovy pointer, nemelo by se
> nic stat. Kdyz das breakpoint do OnDestroy hlavniho formu, ma
> FForm2 nejakou nenilovou hodnotu, ktera je platna? Tj. da se napr. do
> watch okna zobrazit FForm2.Name, nebo Delphi protestuji?

FForm2 ma nenilovu hodnotu, ale FForm2 uz pravdepodobne uvolneny bol.
Properties sa sledovat este daju
(resp. delphi neprotestuju, zobrazovane properties uz nemaju spravne
hodnoty (napr. fform2.name='') ),
pripadna public metoda formu2 uz konci na access violation.

>
> Pak me napada jeste moznost preklepu (mas private promennou
> FForm2 a globalni promennou Form2), ale to asi neni tento pripad, v
> mailu to bylo spravne.

to naozaj nie je tento pripad

>
> V Delphi mas ten modelovy pripad opravdu prave takovy, jak jsi ho
> uvedl do mailu, nebo je v mailu jen vycuc?

je to uplny vypis zdrojoveho kodu

>
> Tuhle chybu bych si totiz umel nejsnaze predstavit, kdyby se v
> OnDestroy Formu2 delala nejaka operace s nil pointerem.
>
> Co se stane, kdyz misto Application.CreateForm pouzijes
> FForm2 := TForm2.Create(Self);?
>
problem sa odstrani, v ondestroy je potom FForm2 este zivy


peter

Kylix a Apache

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 16.5.2005 11:00:50

> proc jsi si vybral CGI kdyz muzes napsat Shared Object primo pro Apache
> a co jsem to zkousel tak to fungovalo dobre. A ani nebudes muset nic
> menit (Shared Objects je neco jako ISAPI). Kylix pro to ma podporu.

> Nebo jsi si tu cgi a isapi aplikaci resil vlastni cestou a ne pomoci
> podpory v Delphi?
>

Parada, tohle presne odpovida tomu, co jsem chtel slyset. Shared
object neni problem.

Stavajici aplikace byla psana s podporou Delphi, takze to vypada, ze
cesta pres Kylix by mohla byt uspesna, pokud ti tedy dobre rozumim.
Clanky na www.root(tec)cz si vyhledam a prectu.

Diky

David Lebeda

ondestroy mainformu

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

> Access violation at adress 00000000. Read of adress 00000000.
>

Ahoj,

to je divne. I kdybys delal FreeAndNil na nilovy pointer, nemelo by se
nic stat. Kdyz das breakpoint do OnDestroy hlavniho formu, ma
FForm2 nejakou nenilovou hodnotu, ktera je platna? Tj. da se napr. do
watch okna zobrazit FForm2.Name, nebo Delphi protestuji?

Pak me napada jeste moznost preklepu (mas private promennou
FForm2 a globalni promennou Form2), ale to asi neni tento pripad, v
mailu to bylo spravne.

V Delphi mas ten modelovy pripad opravdu prave takovy, jak jsi ho
uvedl do mailu, nebo je v mailu jen vycuc?

Tuhle chybu bych si totiz umel nejsnaze predstavit, kdyby se v
OnDestroy Formu2 delala nejaka operace s nil pointerem.

Co se stane, kdyz misto Application.CreateForm pouzijes
FForm2 := TForm2.Create(Self);?

David Lebeda

Sestreleni service

[*] Igor Kapoun <igor.kapoun(zv)volny(tec)cz> - 16.5.2005 10:44:46

Potreboval bych programove sestrelit urcity service (Win XP, Win 2000
server).
Znam jmeno EXE souboru, ktery se spousti.
Muzete mne, prosim, nasmerovat?

Dekuji

Igor Kapoun

Kylix a Apache

[*] Radek Cervinka <radek.cervinka(zv)technodat(tec)cz> - 16.5.2005 10:42:46

Lebeda David wrote:

> Ahoj,
>
> mame starsi modul pro IIS napsany v Delphi (CGI i ISAPI), ktery
> zajistuje komunikaci s aplikaci pres internet a HTTP protokol. Pouziva
> se na IIS a funguje dobre. Nyni pokukujeme o migraci na Apache na
> linux. Nejjednodussi cestou by mohlo byt prekompilovani toho CGI v
> Kylixu. Chci se zeptat, zda nekdo mate nejakou (jakoukoli) zkusenost s
> psanim obdoby CGI v Kylixu.


proc jsi si vybral CGI kdyz muzes napsat Shared Object primo pro Apache
a co jsem to zkousel tak to fungovalo dobre. A ani nebudes muset nic
menit (Shared Objects je neco jako ISAPI). Kylix pro to ma podporu.
Kdysi davno jsem o tom psal na www.root(tec)cz.

Nebo jsi si tu cgi a isapi aplikaci resil vlastni cestou a ne pomoci
podpory v Delphi?

> Diky za jakekoli zkusenosti.

R.

Kylix a Apache

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 16.5.2005 10:30:45

Ahoj,

mame starsi modul pro IIS napsany v Delphi (CGI i ISAPI), ktery
zajistuje komunikaci s aplikaci pres internet a HTTP protokol. Pouziva
se na IIS a funguje dobre. Nyni pokukujeme o migraci na Apache na
linux. Nejjednodussi cestou by mohlo byt prekompilovani toho CGI v
Kylixu. Chci se zeptat, zda nekdo mate nejakou (jakoukoli) zkusenost s
psanim obdoby CGI v Kylixu.

Prozatim prosim neposilejte rady typu "napis to v necem jinym". Mame
reseni, ktere je funkcni a pokud by prelozenim v Kylixu (spolu s
drobnymi upravami, ktere by si to pripadne vyzadalo) mohlo vzniknout
snadno funkcni reseni spustitelne jako jakesi CGI na linuxu, nevidim
duvod, proc to cele preprogramovavat do jineho jazyka - to je az
nouzova varianta pro pripad, ze by Kylix byl opravdu neschudny.

Diky za jakekoli zkusenosti.

David Lebeda

ondestroy mainformu

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 16.5.2005 10:24:44

>>>>procedure TForm1.FormDestroy(Sender: TObject);
>>>>begin
>>>> FreeAndNil(FForm2);
>>>>end;
>>>>
>>>>procedure TForm1.Button1Click(Sender: TObject);
>>>>begin
>>>> Application.CreateForm(TForm2, FForm2);
>>>>end;
>>>>
>>>>end.
>>>
>
>>Nemam potrebu vyuzivat prave uvedeny kod. Viem si pomoct
>>(Napr. uvolnovanim form2 v onclose mainformu, alebo aj upravou, ktoru
>>ponukas.) upravenim kodu.
>>
>>Iba ma zaujima to, co je pricinou popisovaneho stavu.
>>
>
>
> Ale vzdyt ty jsi zatim zadny popisovany stav neuvedl. Tvrzeni, ze v
> OnDestroy form nelze uvolnit, nic nerika. Co presne vznika za chybu
> nebo problem?

Access violation at adress 00000000. Read of adress 00000000.

>
> Jinak vidim zasadni problem v tom, ze form se vytvori jen nekdy - kdyz
> stisknes button, zatimco o uvolneni se pokousis vzdy, i kdyz form treba
> vubec nevznikl.
>
> Druhy problem vidim v tom, ze kdyz button stisknes vicekrat za sebou,
> vyrobis vice instanci Form2, ke kterym uz nemas pristup - mas pointer
> jen na posledni z nich. Pokud ma byt Form2 zobrazen modalne pri
> stisku buttonu, bude nejcistsi jej tam vytvorit a hned v te same metode
> na konci ve finally casti zase uvolnit. Promenna FForm2 pak muze byt
> jen lokalni v ramci Button1Click, coz povede k lepsi citelnosti kodu a
> vylouci chybne pouziti na jinych mistech.
>
>
> David Lebeda
>
>
>
>
>

Ano, suhlasim.
Nepripojil som dolezitu poznamku:
Kod ukazky je kod, ktory ma viest k problemu
a priklad nema ziadne prakticke vyuzitie.
K navodeniu problemu sa predpoklada nasledovny postup:
1. spustenie aplikacie
2. kliknutie na tlacitko
3. ukoncenie aplkacie


peter

ondestroy mainformu

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 16.5.2005 10:06:43

> >>procedure TForm1.FormDestroy(Sender: TObject);
> >>begin
> >> FreeAndNil(FForm2);
> >>end;
> >>
> >>procedure TForm1.Button1Click(Sender: TObject);
> >>begin
> >> Application.CreateForm(TForm2, FForm2);
> >>end;
> >>
> >>end.
> >

> Nemam potrebu vyuzivat prave uvedeny kod. Viem si pomoct
> (Napr. uvolnovanim form2 v onclose mainformu, alebo aj upravou, ktoru
> ponukas.) upravenim kodu.
>
> Iba ma zaujima to, co je pricinou popisovaneho stavu.
>

Ale vzdyt ty jsi zatim zadny popisovany stav neuvedl. Tvrzeni, ze v
OnDestroy form nelze uvolnit, nic nerika. Co presne vznika za chybu
nebo problem?

Jinak vidim zasadni problem v tom, ze form se vytvori jen nekdy - kdyz
stisknes button, zatimco o uvolneni se pokousis vzdy, i kdyz form treba
vubec nevznikl.

Druhy problem vidim v tom, ze kdyz button stisknes vicekrat za sebou,
vyrobis vice instanci Form2, ke kterym uz nemas pristup - mas pointer
jen na posledni z nich. Pokud ma byt Form2 zobrazen modalne pri
stisku buttonu, bude nejcistsi jej tam vytvorit a hned v te same metode
na konci ve finally casti zase uvolnit. Promenna FForm2 pak muze byt
jen lokalni v ramci Button1Click, coz povede k lepsi citelnosti kodu a
vylouci chybne pouziti na jinych mistech.


David Lebeda

OT: nabidka zamestnani

[*] Ing. Jiri Sokol <js-delphi(zv)email(tec)cz> - 16.5.2005 09:46:35

Ahoj vsem!
Hledame cloveka na pozici vedouciho oddeleni "spisove a archivni sluzby" Ministertstva dopravy (pracoviste Praha1). Mel by na starosti administraci IS workflow spisu a pisemnosti, s tim spojenou spravu MS SQL serveru, spravu e-podatelny, rozvoj techto systemu podle pozadvaku uzivatelu (provadeni analyzy pozadavku uzivatelu a jejich predavani dodavateli), hotline uzivatelum, skoleni uzivatelu, metodicke vedeni podrizenych organizaci v oblasti spisove a archivni sluzby, programovani v VBA for App. (sablony), atd.
Pozadujeme nastup od 01.07.2005, VS vzdelani, komunikativnost, bezproblemovou praci s lidmi, znalost programovani ve VBA, alespon prumernou znalost SQL, analyticke mysleni, spolehlivost. Znalost spisove sluzby ve vetsich organizacich a praxe v provadeni skoleni vyhodou.
Odpovedi, prosim, zasilejte na soukro mail.
Hezky den vsem!
Jirka
--------------------------------------------------
Ing. Jiri Sokol; jiri.sokol(zv)seznam(tec)cz; 972 231 187
D6Prof+SP3; WinXPProf+SP2; FB 1.5.2
programator amater


Cteni Excel souboru

[*] Kalhous <kalhous(zv)eu(tec)cz> - 16.5.2005 09:36:34

Trivialni dotaz: Jak pokud mozno bez BDE, ODBC, OLE, ... cist do programu D7 data ze souboru Excel?

Z.Kalhous
ToWare s.r.o.
tel.: 466 614 024

ondestroy mainformu

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 16.5.2005 09:28:33

>>Od: Peter Svetlik <peternal(zv)seznam(tec)cz>
>>Datum: 16.05.2005 08:26:37
>>
>>unit Unit1;
>
>
>>uses
>> Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
>>Dialogs, unit2,
>> StdCtrls;
>>
>>type
>> TForm1 = class(TForm)
>> Button1: TButton;
>> procedure FormDestroy(Sender: TObject);
>> procedure Button1Click(Sender: TObject);
>> private
>> { Private declarations }
>> FForm2: TForm2;
>> public
>> { Public declarations }
>> end;
>
>
>>procedure TForm1.FormDestroy(Sender: TObject);
>>begin
>> FreeAndNil(FForm2);
>>end;
>>
>>procedure TForm1.Button1Click(Sender: TObject);
>>begin
>> Application.CreateForm(TForm2, FForm2);
>>end;
>>
>>end.
>
>
> Ahoj!
> Tak 1) ja bych neslucoval Ty dva formy k sobe. Skoda, ze jsi nenapsal, co Te k tomu vede. Pokud vyhodis z deklareca ten FForm2 a v casti ButtonClick das jen Application.CreateForm(TForm2, Form2);, melo by to byt OK. Ja osobne bych spis pouzil konstrukci Form2:=TForm2.Create(Form1);.
> 2) do casti FormDestroy bych doplnil podminku, zda existuje form Form2:
> procedure TForm1.FormDestroy(Sender: TObject);
> begin
> if Form2 <> nil then
> FreeAndNil(Form2);
> end;
>
> Pak si opravdu myslim, ze uz v tom nemuze byt zadny problem.
> Hodne zdaru!
> Jirka
> --------------------------------------------------
> Ing. Jiri Sokol; jiri.sokol(zv)seznam(tec)cz; 972 231 187
> D6Prof+SP3; WinXPProf+SP2; FB 1.5.2
> programator amater
>
>
>

Nemam potrebu vyuzivat prave uvedeny kod. Viem si pomoct
(Napr. uvolnovanim form2 v onclose mainformu, alebo aj upravou, ktoru
ponukas.) upravenim kodu.


Iba ma zaujima to, co je pricinou popisovaneho stavu.


peter

ondestroy mainformu

[*] Ing. Jiri Sokol <js-delphi(zv)email(tec)cz> - 16.5.2005 09:14:32

> Od: Peter Svetlik <peternal(zv)seznam(tec)cz>
> Datum: 16.05.2005 08:26:37
>
> unit Unit1;

> uses
> Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
> Dialogs, unit2,
> StdCtrls;
>
> type
> TForm1 = class(TForm)
> Button1: TButton;
> procedure FormDestroy(Sender: TObject);
> procedure Button1Click(Sender: TObject);
> private
> { Private declarations }
> FForm2: TForm2;
> public
> { Public declarations }
> end;

> procedure TForm1.FormDestroy(Sender: TObject);
> begin
> FreeAndNil(FForm2);
> end;
>
> procedure TForm1.Button1Click(Sender: TObject);
> begin
> Application.CreateForm(TForm2, FForm2);
> end;
>
> end.

Ahoj!
Tak 1) ja bych neslucoval Ty dva formy k sobe. Skoda, ze jsi nenapsal, co Te k tomu vede. Pokud vyhodis z deklareca ten FForm2 a v casti ButtonClick das jen Application.CreateForm(TForm2, Form2);, melo by to byt OK. Ja osobne bych spis pouzil konstrukci Form2:=TForm2.Create(Form1);.
2) do casti FormDestroy bych doplnil podminku, zda existuje form Form2:
procedure TForm1.FormDestroy(Sender: TObject);
begin
if Form2 <> nil then
FreeAndNil(Form2);
end;

Pak si opravdu myslim, ze uz v tom nemuze byt zadny problem.
Hodne zdaru!
Jirka
--------------------------------------------------
Ing. Jiri Sokol; jiri.sokol(zv)seznam(tec)cz; 972 231 187
D6Prof+SP3; WinXPProf+SP2; FB 1.5.2
programator amater

ondestroy mainformu

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 16.5.2005 08:24:28

>>Ak si mainform aplikacie vytvori dalsi form (form2),
>>v ondestroy mainformu nie je mozne form2 uvolnit.
>
>
> Ahoj,
>
> nepochybne se jedna o nejakou chybu u Tebe. Ale musis napsat vic,
> napr. co konkretne je za problem, jinak se nic lepsiho nez uvedene
> konstatovani udelat neda.
>
> David Lebeda
>
>
>
Tu je zdrojovy kod:
program Project1;

uses
Forms,
Unit1 in 'Unit1.pas' {Form1};

{$R *.RES}

begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.

unit Unit1;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
procedure FormDestroy(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
FForm2: TForm2;
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormDestroy(Sender: TObject);
begin
FreeAndNil(FForm2);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Application.CreateForm(TForm2, FForm2);
end;

end.
unit Unit2;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm2 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form2: TForm2;

implementation

{$R *.DFM}

{ TForm2 }
end.

ondestroy mainformu

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 16.5.2005 08:00:26

> Ak si mainform aplikacie vytvori dalsi form (form2),
> v ondestroy mainformu nie je mozne form2 uvolnit.

Ahoj,

nepochybne se jedna o nejakou chybu u Tebe. Ale musis napsat vic,
napr. co konkretne je za problem, jinak se nic lepsiho nez uvedene
konstatovani udelat neda.

David Lebeda

Vyhledavani v PDF

[*] Radek Cervinka <radek.cervinka(zv)technodat(tec)cz> - 16.5.2005 07:48:25

Krejza Tomas wrote:
> Zdravim,
> nevite jak prohled PDF dokumenty v Delphi?

Blbe.

> Dik za kazdou radu

2 moznosti:

Mozna to pujde i pres OLE acrerader (nevim)

Jinak se podivej sem (to pouzivam ja):
http://www.glyphandcog.com/textext.html

Kazdopadne ne kazde PDF jde prevest na text, ale pokud to nezvladne
tenhle program, tak reader si podle me zkusenosti taky neskrtne.

> Tomas Krejza

R.

vystupom TRegistry SaveKey je prazdny subor

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 15.5.2005 22:21:44

WRegistry:= TRegistry.Create;
try
WRegistry.RootKey:= HKEY_LOCAL_MACHINE;

if WRegistry.SaveKey(WRegKey, WFileName)
begin
//uspesny export kluca


end;
finally
WRegistry.Free;
end;
Do vetvy "uspesny export kluca" sa mi ani raz nepodarilo dostat.
Kluc WRegKey existuje (WRegistry.KeyExists(WRegKey)= true),
subor WFileName sa vytvori, ale je prazdny.

Stretol sa niekto s podobnym problemom?

Peter Svetlik, D5 Professional, WinXP SP2.

ondestroy mainformu

[*] Vlastik Bartos <bartos(zv)spsmvbr(tec)cz> - 15.5.2005 07:08:40

Nic takoveho se u mne nedeje. Chodi to jako hodinky. Posli nejaky jednoduchy
priklad vcetne vytvoreni formularu.

Vlastik

> Ak si mainform aplikacie vytvori dalsi form (form2),
> v ondestroy mainformu nie je mozne form2 uvolnit.
>
> Vie mi niekto dat odkaz na nejaky zdroj informacii,
> kde je popisane preco sa tak u mainformu aplikacie deje?
>

JCL Debug

[*] Jiri Cincura <diskuze(zv)cincura(tec)net> - 15.5.2005 01:50:19

Ahoj,

mam problem s JCL Debug Extensions. Mam JEDI Code Library v 1.94 a kdyz chci
pridat do aplikace ExceptionDialogMail, tak to zahlasi, ze to menuze najit
predka (ExceptionDialog). Ale kdyz pridam jen ExceptionDialog, tak je vse
OK. Nevi nekdo, kde by mohla byt chyba? Zkousel jsem ruzne prahazovat cesty,
dokonce primo pridat cesty k projektu a nic. Jedine, kdyz dam do projektu
rucne oba.

Diky.

--
Jiri Cincura
http://www.cincura.net/
http://ID3renamer.cincura.net/
ICQ: 314711544; Yahoo!: x2develop
http://photo.cincura.net/
http://phorum.cincura.net/
http://x2develop.com/

ondestroy mainformu

[*] Peter Svetlik <peternal(zv)seznam(tec)cz> - 14.5.2005 22:10:01

Ak si mainform aplikacie vytvori dalsi form (form2),
v ondestroy mainformu nie je mozne form2 uvolnit.

Vie mi niekto dat odkaz na nejaky zdroj informacii,
kde je popisane preco sa tak u mainformu aplikacie deje?


peter svetlik

Zpetne volani z dll

[*] Jan Sebelik <honza(zv)haes(tec)cz> - 14.5.2005 07:06:53

tomes(zv)radom-cz(tec)cz

Tohle jsem jiz udelal.
dll napsanou v .NET jsem pomoci regasm konvertoval do *.tlb a importoval
do DELPHI.
Kdybych pouzival nejake trivialnejsi funkce pracujici se stringy ci
integery, tak by to slo.
Ale ja nevim, jak udelat ten CallBack.
V .NET (se kterym zacinam, takze dost tapu) se na to pouzivaji delegate,
Jak pouzit ten callback?
Nebo jsem zcela vedle a mam to udelat jinak?
________________
Honza:
Ted budu mozna tapat ja.
Jak jste si povsimli, na skoleni .NET mame jine zkusene lidi, ja taky zatim jenom zacinam.

Ale:
Zabalime-li .NET objekt do "jakehosi COM obalu", lze ho volat z Delphi.
To Milan Tomes umi.

Opacne, z .NET lze volat Win32 COM objekty.
Pokusil bych se tedy jit asi touto cestou:

Napisu v Delphi COM objekt a jeho interface predam do .NET.
Ten interface by mel reprezentovat pozadovany callback

viz kurz V.Bodecka "Modularizace a prechod z Win32 do .NET"
http://www.haes(tec)cz/osnovy.asp?r=osnovy&kod=CNET
Tam je callbach primo jednim z bodu osnovy.
(posilam mu to radsi v kopii, kdybych placal nejaky nesmysly)

Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
= tel. 493 792 931 (mobil 776 347 735)
====================================

Zpetne volani z dll

[*] milan.tomes(zv)radom-cz(tec)cz - 13.5.2005 17:09:56



Petr Vones napsal(a):

>From: <milan.tomes(zv)radom-cz(tec)cz>
>
>
>>Kdyby byla dll i aplikace DELPHI, tak bych si to umel udelat, ale
>>protoze je dll psane C# nevim jak predat proceduru, ktera se ma vyvolat.
>>V DELPHI by to bylo pomoci pointeru, ale to v C# neni. Tam se pouziva v
>>tomto pripade delegat. Ja nevim, jak to mam skloubit.
>>Muze mi prosim nekdo poradit?
>>
>>
>
>Vzhledem k tomu ze jediny mozny zpusob komunikace s kodem v .NET assembly z
>Win32 aplikace je pouziti COM interop (pravda, Delphi.NET umoznuje jeste jeden
>zpusob pomoci Unmanaged exports) tak budes muset jit cestou COM callbacks.
>
>http://www.blong.com/Conferences/BorCon2004/Interop2/COMNetInterop.htm#CCW
>http://msdn.microsoft.com/netframework/programming/interop/
>
>Petr Vones
>
>
Tohle jsem jiz udelal.
dll napsanou v .NET jsem pomoci regasm konvertoval do *.tlb a importoval
do DELPHI.
Kdybych pouzival nejake trivialnejsi funkce pracujici se stringy ci
integery, tak by to slo.
Ale ja nevim, jak udelat ten CallBack.
V .NET (se kterym zacinam, takze dost tapu) se na to pouzivaji delegate,
napr:

public void SearchStr(string strParChar, string strParSource, CallBack
ParCB)

kde CallBack je delegat:

public delegate void CallBack();

ale to je v DELPHI nepouzitelny, resp ja nevim, jak v DELPHI predat do
toho tretiho parametru (typu delegat) funkci z aplikace delphi.

Jak pouzit ten callback?
Nebo jsem zcela vedle a mam to udelat jinak?

--
___________________________
Ing. Milan Tomes
Radom s.r.o.
Jiriho Potucka 259
53009 Pardubice
Tel.: +420 466 414 217
E-mail: milan.tomes(zv)radom-cz(tec)cz

Zpetne volani z dll

[*] Petr Vones <konference(zv)petrvones(tec)net> - 13.5.2005 15:53:51

From: <milan.tomes(zv)radom-cz(tec)cz>
> Kdyby byla dll i aplikace DELPHI, tak bych si to umel udelat, ale
> protoze je dll psane C# nevim jak predat proceduru, ktera se ma vyvolat.
> V DELPHI by to bylo pomoci pointeru, ale to v C# neni. Tam se pouziva v
> tomto pripade delegat. Ja nevim, jak to mam skloubit.
> Muze mi prosim nekdo poradit?

Vzhledem k tomu ze jediny mozny zpusob komunikace s kodem v .NET assembly z
Win32 aplikace je pouziti COM interop (pravda, Delphi.NET umoznuje jeste jeden
zpusob pomoci Unmanaged exports) tak budes muset jit cestou COM callbacks.

http://www.blong.com/Conferences/BorCon2004/Interop2/COMNetInterop.htm#CCW
http://msdn.microsoft.com/netframework/programming/interop/

Petr Vones


Zpetne volani z dll

[*] milan.tomes(zv)radom-cz(tec)cz - 13.5.2005 15:03:46

Mam dll napsane v C# a pouzivam jej v aplikaci DELPHI. Jenze provedeni
konkretni funkce volane z dll trva dlouho, necekam na vysledek, metoda
je provedena asynchronne a ja bych proto potreboval po jejim provedeni
zpetne zavolat metodu z DELPHI aplikace, ze funkce z dll byla provedena,
tzv. callback
Kdyby byla dll i aplikace DELPHI, tak bych si to umel udelat, ale
protoze je dll psane C# nevim jak predat proceduru, ktera se ma vyvolat.
V DELPHI by to bylo pomoci pointeru, ale to v C# neni. Tam se pouziva v
tomto pripade delegat. Ja nevim, jak to mam skloubit.
Muze mi prosim nekdo poradit?

--
___________________________
Ing. Milan Tomes
Radom s.r.o.
Jiriho Potucka 259
53009 Pardubice
Tel.: +420 466 414 217
E-mail: milan.tomes(zv)radom-cz(tec)cz

Virtualni porty

[*] Ing. Jiri Kubicek <kubicek(zv)etatherm(tec)cz> - 13.5.2005 15:01:46

Protoze to potrebuji do starsi aplikace, kterou jsem tvoril neznaje tvuj
Synaser a jsem lenosny investovat spoustu casu na prekuchani :-)
>
> Tak proc nepouzivas Synaser? :-)

Virtualni porty

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 13.5.2005 14:47:45

> Zkousim komunikaci pres virtualni seriove porty. Pri pouziti Synaser zcela
> bez problemu, ale pri pouziti komponent z AsyncProf nebo AsyncFree koncim s
> komunikaci u cisla portu 9. Od COM10 vys vraci napr. funkce GetPortState
> (AfPortControls) z AsyncFree informaci, ze port neexistuje.Vypada to na
> trivialni problem s desitk. soustavou (se zadanim cisla portu) ale zatim se
> mi nepodarilo zabu na prameni odstranit. Dik za kazdou radu.

Tak proc nepouzivas Synaser? :-)
--
Lukas Gebauer.

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

Virtualni porty

[*] Ing. Jiri Kubicek <kubicek(zv)etatherm(tec)cz> - 13.5.2005 14:45:44

Funguje \\.\COM10. Diky vam obema, usetrili jste mi spoustu casu.
Jirka

----- Original Message -----
From: "Erik Salaj" <winsoft(zv)netkosice.sk>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Friday, May 13, 2005 2:29 PM
Subject: Re: Virtualni porty


>> of the file; however, the message "INVALID_HANDLE_VALUE" is returned if
>> you
>> use "COM10" or greater.
>>
>> If the name of the port is \\.\COM10, the correct way to specify the
>> serial
>> port in a call to CreateFile() is as follows:
>>
>> CreateFile(
>> "\\\\.\\COM10", // address of name of the communications
>
> inac Microsoft tam ma IMHO chybu a v niektorych funkciach
> nefunguje \\.\COM10 nazov ale iba COM10. Skratka raz tak
> a raz inak.
>
> Erik
>
>

Virtualni porty

[*] Erik Salaj <winsoft(zv)netkosice.sk> - 13.5.2005 14:29:43

> of the file; however, the message "INVALID_HANDLE_VALUE" is returned if
> you
> use "COM10" or greater.
>
> If the name of the port is \\.\COM10, the correct way to specify the
> serial
> port in a call to CreateFile() is as follows:
>
> CreateFile(
> "\\\\.\\COM10", // address of name of the communications

inac Microsoft tam ma IMHO chybu a v niektorych funkciach
nefunguje \\.\COM10 nazov ale iba COM10. Skratka raz tak
a raz inak.

Erik

Virtualni porty

[*] Slavomir Skopalik <skopalik(zv)elektlabs(tec)cz> - 13.5.2005 13:17:37

Z helpu:

The information in this article applies to:

- Microsoft Win32 Software Development Kit (SDK), versions 3.1, 3.5,
3.51, and 4.0

CreateFile() can be used to get a handle to a serial port. The "Win32
Programmer's Reference" entry for "CreateFile()" mentions that the share
mode must be 0, the create parameter must be OPEN_EXISTING, and the
template must be NULL.

CreateFile() is successful when you use "COM1" through "COM9" for the
name

of the file; however, the message "INVALID_HANDLE_VALUE" is returned if
you
use "COM10" or greater.

If the name of the port is \\.\COM10, the correct way to specify the
serial
port in a call to CreateFile() is as follows:

CreateFile(
"\\\\.\\COM10", // address of name of the communications
device
fdwAccess, // access (read-write) mode
0, // share mode
NULL, // address of security descriptor

OPEN_EXISTING, // how to create
0, // file attributes
NULL // handle of file with attributes to copy
);

NOTES: This syntax also works for ports COM1 through COM9. Certain
boards
will let you choose the port names yourself. This syntax works for those
names as well.

Additional reference words: 3.10 3.50 4.00 95
KBCategory: kbprg
KBSubcategory: BseCommapi

Slavek

> Zkousim komunikaci pres virtualni seriove porty. Pri pouziti
> Synaser zcela
> bez problemu, ale pri pouziti komponent z AsyncProf nebo
> AsyncFree koncim s
> komunikaci u cisla portu 9. Od COM10 vys vraci napr. funkce
> GetPortState
> (AfPortControls) z AsyncFree informaci, ze port
> neexistuje.Vypada to na
> trivialni problem s desitk. soustavou (se zadanim cisla
> portu) ale zatim se
> mi nepodarilo zabu na prameni odstranit. Dik za kazdou radu. Jirka

DBGRID

[*] Jiri Virt <virt(zv)volny(tec)cz> - 13.5.2005 12:59:36

a co takhle dat do TDBGridOnKeyDown

case Key of
VK_DELETE: DBGrid.DataSource.DataSset.Delete;

???

Jirka Virt

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
Behalf Of Dalibor Faltynek
Sent: Friday, May 13, 2005 12:54 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: DBGRID

A nemaze na DEL ale na CTRL DEL.
Dalik.

----- Original Message -----
From: "Vaclav Halik" <spravasd(zv)suz.cvut(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Friday, May 13, 2005 12:33 PM
Subject: Re: DBGRID


> Ahoj,
> nevim jestli mi neco neuteklo, ale nedal prene tohle TDBGrid sam od sebe.
>
> Samozrejme nesmi byt ReadOnly, tedy mnel by byt editovatelny.
>
> Vaclav Halik
>
> >existuje obdoba TDBGRID, ale ktera funguje bez navigatoru. Vklada na
> >konec prazdnej radek pro pripadnej dalsi zaznam, dela update pri
> >prechodu na jinej radek a maze se napr. pomoci DEL ? Je to tak napr
> >myslim v Enterprise Manageru k MSSQL pri vyplnovani tabulek. Urychli to
> >o neco zadavani dat, nez porad mackat vlozit a update :)
> >
>
>
>

DBGRID

[*] Dalibor Faltynek <dalibor.faltynek(zv)orgrez(tec)cz> - 13.5.2005 12:53:36

A nemaze na DEL ale na CTRL DEL.
Dalik.

----- Original Message -----
From: "Vaclav Halik" <spravasd(zv)suz.cvut(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Friday, May 13, 2005 12:33 PM
Subject: Re: DBGRID


> Ahoj,
> nevim jestli mi neco neuteklo, ale nedal prene tohle TDBGrid sam od sebe.
>
> Samozrejme nesmi byt ReadOnly, tedy mnel by byt editovatelny.
>
> Vaclav Halik
>
> >existuje obdoba TDBGRID, ale ktera funguje bez navigatoru. Vklada na
> >konec prazdnej radek pro pripadnej dalsi zaznam, dela update pri
> >prechodu na jinej radek a maze se napr. pomoci DEL ? Je to tak napr
> >myslim v Enterprise Manageru k MSSQL pri vyplnovani tabulek. Urychli to
> >o neco zadavani dat, nez porad mackat vlozit a update :)
> >
>
>
>

Virtualni porty

[*] Ing. Jiri Kubicek <kubicek(zv)etatherm(tec)cz> - 13.5.2005 12:47:25

Zkousim komunikaci pres virtualni seriove porty. Pri pouziti Synaser zcela
bez problemu, ale pri pouziti komponent z AsyncProf nebo AsyncFree koncim s
komunikaci u cisla portu 9. Od COM10 vys vraci napr. funkce GetPortState
(AfPortControls) z AsyncFree informaci, ze port neexistuje.Vypada to na
trivialni problem s desitk. soustavou (se zadanim cisla portu) ale zatim se
mi nepodarilo zabu na prameni odstranit. Dik za kazdou radu.
Jirka

DBGRID

[*] Vaclav Halik <spravasd(zv)suz.cvut(tec)cz> - 13.5.2005 12:33:24

Ahoj,
nevim jestli mi neco neuteklo, ale nedal prene tohle TDBGrid sam od sebe.

Samozrejme nesmi byt ReadOnly, tedy mnel by byt editovatelny.

Vaclav Halik

>existuje obdoba TDBGRID, ale ktera funguje bez navigatoru. Vklada na
>konec prazdnej radek pro pripadnej dalsi zaznam, dela update pri
>prechodu na jinej radek a maze se napr. pomoci DEL ? Je to tak napr
>myslim v Enterprise Manageru k MSSQL pri vyplnovani tabulek. Urychli to
>o neco zadavani dat, nez porad mackat vlozit a update :)
>

Service a start

[*] Jonas Marian <jonas(zv)komercpoj(tec)cz> - 13.5.2005 10:59:12

Co takhle NET START nazev sluzby ?

> nechapu jakto, ze se mi nechce spustit service prikazem service.exe /start ??

DBGRID

[*] Sula Milos <milos.sula(zv)musumperk(tec)cz> - 13.5.2005 10:33:10

Ahoj,
existuje obdoba TDBGRID, ale ktera funguje bez navigatoru. Vklada na
konec prazdnej radek pro pripadnej dalsi zaznam, dela update pri
prechodu na jinej radek a maze se napr. pomoci DEL ? Je to tak napr
myslim v Enterprise Manageru k MSSQL pri vyplnovani tabulek. Urychli to
o neco zadavani dat, nez porad mackat vlozit a update :)


Milos

Service a start

[*] Jiri Virt <virt(zv)volny(tec)cz> - 13.5.2005 10:31:09

Ahoj,

nechapu jakto, ze se mi nechce spustit service prikazem service.exe /start
??

service.exe /install jsem provedl a je v seznamu sluzeb ale nemuzu za boha
prinutit start z prikazoveho radku.

vybec to neprobiha pres OnStart nebo OnExecute. Jedine, pokud ji nastartuji
rucne v seznamu sluzeb, vse probiha tak jak ma.

podobne to mam i se service.exe /stop .. taky mi to funguje a projizdi
OnStop jedine pri rucnim ovladani.

neporadite nekdo?

Diky

Jirka Virt


Akce po vsunuti FLASH Disku

[*] Venca Zaruba <zaruba(zv)elastoform(tec)cz> - 13.5.2005 10:11:07

Mam prosbicku,
Potreboval bych nejakou komponentku (nejradeji, ale i jiny postup), ktera by mela reakce na zasunuti a vyjmuti USB Flash disku (ideal i testovala korektnost vyjmuti) a zaroven zakazala Xp prupovidkam v pripade spravneho disku?


Prijemny zbytek dne
Vasek Zaruba
8^)

Vyhledavani v PDF

[*] Krejza Tomas <krejza.t(zv)kr-ustecky(tec)cz> - 13.5.2005 10:11:07

Zdravim,
nevite jak prohled PDF dokumenty v Delphi?

Dik za kazdou radu

Tomas Krejza

MySQL embedded

[*] Jiri Matejka <matejka(zv)stemmark(tec)cz> - 13.5.2005 09:41:05

Zdravim,
nemate nekdo zkusenost s pouzitim MySQL databaze v embedded podobe? Jsou
nejake delphi komponenty, ktere to podporuji?

dik

Jirka Matejka, D6Prof, W2000

TMemo, TRichEdit

[*] Vlastik Bartos <bartos(zv)spsmvbr(tec)cz> - 12.5.2005 17:29:50

Kurzor lze docasne skryt API funkci HideCaret(Memo1.Handle) a obnovit
opacnou funkci ShowCaret(). Mam s tim ale spatne zkusenosti (v helpu pisou,
ze se to pouziva pri prekreslovani, cili na kratkou dobu), protoze pokud
okno prejde do pozadi a pak se znovu zaktivizuje, kurzor tam zase blika. Je
tedy potreba zkusmo doresit problem asi pomoci OnEnter nebo OnActivate a
kurzor vzdycky znovu schovavat.

Vlastik


> nevite jak schovat v komponentach TMemo a TRichEdit kurzor aby se
> nezobrazoval vubec? Chci tyto komponenty pouzit pouze pro zobrazeni
> textu, (Read Only:=true) a blikajici kurzor mne tam dost rusi.

Firebird + Linux - vice procesu

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 12.5.2005 13:57:35

Jirka wrote:
> Pavel Cisar napsal(a):
>>2. Jde o Super Server. Ten ma pouze jeden proces, ale vice threadu.
>>Protoze thready jsou na Linuxu v podstate odlehcene procesy, tak rada
>>nastroju (napr. ps) reportuje vlakna samostatne (a daji se splest s
>>procesy), ktere ovsem sdileji prostor (pozna se z ostatnich vypsanych
>>hodnot). V takovem pripade bych to vubec neresil.
>
> tady posilam vypis procesu. Ta pamet tam naskace klidne i pres 100MB a
> to u vsech stejne. Je to normalni?
>
> PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
> 6622 firebird 9 0 49184 48M 3104 S 1.1 5.4 0:10
> /opt/firebird/bin/fbserver
> 6623 firebird 9 0 49184 48M 3104 S 0.0 5.4 0:00
> /opt/firebird/bin/fbserver
> 7102 firebird 9 0 49184 48M 3104 S 0.0 5.4 0:00
> /opt/firebird/bin/fbserver
[snip]

To je FB SS (Super Server), mimo jine take podle nazvu binarky, a je
to normalni stav, neni treba se plasit. Thready se pro ps tvari jako
procesy.

Martin Schayna

Firebird + Linux - vice procesu

[*] Jirka <jw-delphi(zv)seznam(tec)cz> - 12.5.2005 13:47:34

Ahoj,

Pavel Cisar napsal(a):
> Moznosti je povicero:
>
> 1. Jde o Classic server. Ten samozrejme startuje separatni proces pro
> kazdeho pripojeneho klienta. Ze si klient skousne 100MB bude zpusobeno
> nastavenim db cache v databazi pomoci gfix. Normalne si CS alokuje pouze
> 75 stranek, SS 2000. Nastaveni v db ma ovsem prednost. Pri praci s CS se
> doporucuje nastaveni cache v db odstranit (nastavit na 0 -> server default).
>
> 2. Jde o Super Server. Ten ma pouze jeden proces, ale vice threadu.
> Protoze thready jsou na Linuxu v podstate odlehcene procesy, tak rada
> nastroju (napr. ps) reportuje vlakna samostatne (a daji se splest s
> procesy), ktere ovsem sdileji prostor (pozna se z ostatnich vypsanych
> hodnot). V takovem pripade bych to vubec neresil.

tady posilam vypis procesu. Ta pamet tam naskace klidne i pres 100MB a
to u vsech stejne. Je to normalni?

PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
6622 firebird 9 0 49184 48M 3104 S 1.1 5.4 0:10
/opt/firebird/bin/fbserver
6623 firebird 9 0 49184 48M 3104 S 0.0 5.4 0:00
/opt/firebird/bin/fbserver
7102 firebird 9 0 49184 48M 3104 S 0.0 5.4 0:00
/opt/firebird/bin/fbserver
7103 firebird 9 0 49184 48M 3104 S 0.0 5.4 0:00
/opt/firebird/bin/fbserver
7104 firebird 9 0 49184 48M 3104 S 0.0 5.4 0:00
/opt/firebird/bin/fbserver
7105 firebird 9 0 49184 48M 3104 S 0.0 5.4 0:00
/opt/firebird/bin/fbserver
7404 firebird 17 0 49184 48M 3104 S 9.3 5.4 0:13
/opt/firebird/bin/fbserver
7405 firebird 17 0 49184 48M 3104 S 7.3 5.4 0:13
/opt/firebird/bin/fbserver
27209 firebird 9 0 864 728 692 S 0.0 0.0 0:00
/opt/firebird/bin/fbguard -f

Jirka

MAPI: ziskani EntryID

[*] Petr Kuklik <petr.kuklik(zv)centrum(tec)cz> - 12.5.2005 13:43:33

Ahoj,
jak ziskam EntryID MessageStore z tabulky vsech storu?

Pres IMAPISession.GetMsgStoresTable se dostanu k tabulce vsech storu. Pomoci IMAPITable.QueryRows se dostanu k zaznamum o storech. Mam tedy strukturu TSRow konkretniho storu a v jeho TSRow.LPProps jednotlive property. V nich dokazu najit PR_ENTRYID jehoz typ je PT_BINARY a tak mam EntryID ve strukture TSBinary, Pro pouziti OpenMsgStore ale potrebuju strukturu TEntryID. Jak se to da prevest?

Diky Petr


Jak zjistit, ze aplikace jiz bezi v jinem sezeni?

[*] delphin(zv)post(tec)cz - 12.5.2005 12:57:30

Ahoj,
>
> %SUBJ
>
> Mame aplikaci, ktera se spousti pro prihlaseni uzivatele (zastupce ve
> slozce Po spusteni resp. Startup). Na pocitac se ale obcas nejaky spravce
> prihlasuje vzdalene pomoci terminalovych sluzeb (vznikne nove sezeni) a
> pak dojde opetovnemu spusteni teto aplikace cemuz chci z urcitych duvodu
> zabranit. Pochopitelne muzu premluvit spravce aby se vzdalene hlasil pod
> jinym uzivatelem, ale neni to 100% reseni (navic on je sklerotik).
>
> Nemuzu ani vyhledat aplikaci podle jmena okna, protoze kazda instance je v
> jinem sezeni, takze v jinem desktopu, takze se nedostanu na seznam oken.
> Jedine co me napada, je kontrolovat nejaky soubor, ktery prvni instance
> zalozi a nejak ho pravidelne updatuje a druha instance kontroluje
> existenci a obsah toho souboru. Ale moc se mi to nelibi...
>
> Momentalne aplikaci preklapime do sluzby coz by problem resilo, ale to
> bude nadlouho (je toho nekolik set tisic radku).
>
> Ma nekdo lepsi napad?

Lze vyuzit standardni postup pro detekci predchozi instance, treba s
CreateMutex, akorat je treba specifikovat globalni nazev ve tvaru
'Global\MUJNAZEV', viz "Kernel Object Namespaces".

Jak zjistit, ze aplikace jiz bezi v jinem sezeni?

[*] likeapear <likeapear(zv)centrum(tec)cz> - 12.5.2005 12:47:29

Ahoj,

%SUBJ

Mame aplikaci, ktera se spousti pro prihlaseni uzivatele (zastupce ve slozce Po spusteni resp. Startup). Na pocitac se ale obcas nejaky spravce prihlasuje vzdalene pomoci terminalovych sluzeb (vznikne nove sezeni) a pak dojde opetovnemu spusteni teto aplikace cemuz chci z urcitych duvodu zabranit. Pochopitelne muzu premluvit spravce aby se vzdalene hlasil pod jinym uzivatelem, ale neni to 100% reseni (navic on je sklerotik).

Nemuzu ani vyhledat aplikaci podle jmena okna, protoze kazda instance je v jinem sezeni, takze v jinem desktopu, takze se nedostanu na seznam oken. Jedine co me napada, je kontrolovat nejaky soubor, ktery prvni instance zalozi a nejak ho pravidelne updatuje a druha instance kontroluje existenci a obsah toho souboru. Ale moc se mi to nelibi...

Momentalne aplikaci preklapime do sluzby coz by problem resilo, ale to bude nadlouho (je toho nekolik set tisic radku).

Ma nekdo lepsi napad?

Dekuji

{likeapear}

Rekvalifikace

[*] Jan Sebelik <honza(zv)haes(tec)cz> - 12.5.2005 11:29:23

Pro nektere z vas mozna zajimava informace:

Pokud byste meli zajem o nejake rekvalifikacni skoleni, napr. prechod z Win32 do .NET, pak muzete pozadat urad prace, aby vam cenu tohoto kurzu zcela nebo z casti uhradil.

To za predpokladu, ze takovy kurz ma prislusnou akreditaci Ministerstva skolstvi mladeze a telovychovy,

Jak postupovat, to se dozvite napr. na
http://www.tydenik-sondy(tec)cz/200510/2005101001.htm

Nase kurzy akreditaci MSMT maji :-)

Honza
====================================
= RNDr. Jan Sebelik - HAES
= Skolici a konzultacni stredisko pro vyvoj SW
= www.haes(tec)cz
= Vojtiskova 321
= 507 81 Lazne Belohrad
= tel. 493 792 931 (mobil 776 347 735)
====================================

OT: Nabidka spoluprace

[*] Martin Burle <mburle2(zv)volny(tec)cz> - 12.5.2005 11:01:20

Ahoj,

hledam spolupracovnika pro vyvoj a distribuci sw, naslednou podporu
zakazniku atd. Podminkou K.Vary a okoli. Nejde o zamestnanecky pomer a nejde
"jen" o programovani. V pripadne zajmu piste prosim na soukr. mail.

Martin Burle


Firebird + Linux - vice procesu

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 12.5.2005 10:51:19

Haj hou!

Jirka wrote:
> Ahoj,
> mel bych dotaz jestli je normalni, ze na serveru (Linux) bezi treba i
> deset procesu firebirdu a vsechny zabiraji stejne pameti (100MB)?
>
> Zkousel jsem to u nas a bezi jen jeden proces tak nevim cim by to mohlo byt.

Moznosti je povicero:

1. Jde o Classic server. Ten samozrejme startuje separatni proces pro
kazdeho pripojeneho klienta. Ze si klient skousne 100MB bude zpusobeno
nastavenim db cache v databazi pomoci gfix. Normalne si CS alokuje pouze
75 stranek, SS 2000. Nastaveni v db ma ovsem prednost. Pri praci s CS se
doporucuje nastaveni cache v db odstranit (nastavit na 0 -> server default).

2. Jde o Super Server. Ten ma pouze jeden proces, ale vice threadu.
Protoze thready jsou na Linuxu v podstate odlehcene procesy, tak rada
nastroju (napr. ps) reportuje vlakna samostatne (a daji se splest s
procesy), ktere ovsem sdileji prostor (pozna se z ostatnich vypsanych
hodnot). V takovem pripade bych to vubec neresil.

S pozdravem
Pavel Cisar
IBPhoenix

TMemo, TRichEdit

[*] mydelphi(zv)seznam(tec)cz - 12.5.2005 10:37:13

Dobry den,
nevite jak schovat v komponentach TMemo a TRichEdit kurzor aby se
nezobrazoval vubec? Chci tyto komponenty pouzit pouze pro zobrazeni
textu, (Read Only:=true) a blikajici kurzor mne tam dost rusi.

Diky...
--
S pozdravem,
Michal Adler
email: mydelphi(zv)seznam(tec)cz


Firebird + Linux - vice procesu

[*] Jirka <jw-delphi(zv)seznam(tec)cz> - 12.5.2005 10:15:11

Ahoj,
vypada to ze jim tam bezi CS, ale proc ma kazdej stejne pameti?
Jakmile se zvetsi u jednoho procesu naskoci i u ostatnich.

U nas: Linux, SS

Jirka

petr palicka napsal(a):
>>Ahoj,
>>mel bych dotaz jestli je normalni, ze na serveru (Linux) bezi treba i
>>deset procesu firebirdu a vsechny zabiraji stejne pameti (100MB)?
>
> jestli tam bezi CS (Classic Server), tak vice serveru je asi OK.
> Akorat, ze by si kazdy mel kousnout pamet podle sve potreby.
>
>>Zkousel jsem to u nas a bezi jen jeden proces tak nevim cim by to mohlo byt.
>
> "U nas" znamena co? Windows? CS/SS (Classic Server / Super Server)?

Tvorba aplikace pro WAP v Delphi?

[*] Krakora Martin <krakoram(zv)seznam(tec)cz> - 12.5.2005 09:33:07


Aplikace by mela zpristupnovat informace z prumysloveho procesu
(prostrednictvi rozhrani OPC), popripade umoznit i ovladat proces (ale tomu
se chci vyhnout). Takze by mela obsahovat urcity strom obrazovek (stranek),
na kterych by byly informace o stavu jednotlivych zarizeni.

Pro mne by asi tedy byl lepsi .NET (resp. ASP.NET + C#), protoze uz
jsem si ho trosku otukaval. S PHP nemam vubec zadne zkusenosti i kdyz by asi
nebyl problem s jeho zvladnutim.

Takze jestli to dobre chapu, mohl bych udelat aplikaci a
distribuovat ji pomoci web serveru IIS od MS? Stranky optimalizovat tak aby
byli zobrazitelne i v mobilu nebo muzu vracet primo stranky ve WML?

Projizdel jsem konferu a nasel jsem diskusi, kde se resilo
generovani stranek s hlavickou pro WAP (tedy WML). To by slo pouzit v Delphi
ne?

S pozdravem Krakora M.
> -----Original Message-----
> From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz] On
> Behalf Of Jiri Cincura
> Sent: Thursday, May 12, 2005 8:59 AM
> To: delphi-l(zv)clexpert(tec)cz
> Subject: Re: Tvorba aplikace pro WAP v Delphi?
>
> Nebylo by pro tohle lepsi zvolit nez Delphi napr. PHP, JSP nebo ASP.NET?
> Nevim presne co to ma delat, ale vzhledem k omezenym moznostem mobilu by
> to
> ani v PHP nemusel byt problem. BTW muj telefon sezere i HTML (s jistymi
> omezenimi) tak by se dalo pouzit kdyztak i to.
>
> Hlavne zalezi na tom, co to ma delat.
>
> --
> Jiri Cincura
> http://www.cincura.net/
> http://ID3renamer.cincura.net/
> ICQ: 314711544; Yahoo!: x2develop
> http://photo.cincura.net/
> http://phorum.cincura.net/
> http://x2develop.com/
>

Synapse a SSL

[*] Lukas Gebauer <gebylist(zv)mlp(tec)cz> - 12.5.2005 09:33:08

> Poradte jak aktivovat SSL spojeni pri komunikaci pomoci TCPBlockSocket.
> Idealni by byl priklad jak pro klienta, tak pro server.

SSL je jen nadstavba nad TCP protokolem. Proto musis byt nejdrive schopen
napsat TCP klienta a TCP server. na t v Synapsi najdes dost prikladu.

Jakmile toto umis, pak kdykoliv muzes na strane klienta i serveru
zapnout/vypnout SSL.

Na strane serveru musis rict "tady ted chci prijmout primout pozadavek na
SSL od klienta." To udelas volanim metody SSLAcceptConnection. SSL server
ale musi mit nastaven certifikat a klice! Viz dalsi SSL* property...

Klient klice a certifikat mit nemusi (leda ze by se chtel jimi prokazat,
pokud by to servr explicitne vyzadoval...), a tak staci volat
SSLDoConnect.

V obou pripadech se SSL mod da zrusit volanim SSLDoShutdown. Po volani
tetio metody TCP spojeni vesele pokracuje dal, jen jiz neni kryptovane
pres SSL!

od Synapse 36 (v soucasne dobe jen v Synasnapu) nastaly vyznamne zmeny!
veskera podpora SSL byla repracovana do podoby pluginu. Takze pokud tva
aplikace chce podporovat SSL, musis si nejdrive vybrat pres jakeho SSL
providera to chces realizovat. To udelas tak, ze do tvych uses ve tvem
projektu pridas jednu z nasledujicich unit: ssl_openssl, ssl_cryptlib ci
ssl_streamsec. (pochopitelne kdokoliv muze napsat nejakou dalsi SSL
podporu...)

Pak v TTCPBlockSocket.SSL mas objekt vybraneho pluginu, ktery teprve
obsahuje property na nastavovani klicu a certifikatu, atd. Nicmene vyse
zminene metody na nahazovani a schazovani SSL spojeni jsou zcela stejne!

Od synasnapu 36b2 pribyla navic podpora ad-hoc certifikatu. To znamena,
ze kdyz chces byt SSl server, ale nenastavis zadny certifikat a klice,
Synapse si je sama vyrobi a udela si k nim self-signed certifikat. ;-)
Ale pozor, toto se deje pri prijimani kazdeho noveho spojeni, a to
zdrzuje! proto je toto dobre na odladovani aplikaci, nebo na psani
jednoduchych malo vytizenych serveru, kde ti jde jen kryptvany prenos
dat, ne o prokazovani identity serveru.


--
Lukas Gebauer.

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

Tvorba aplikace pro WAP v Delphi?

[*] Petr Fejfar <development(zv)callnet(tec)cz> - 12.5.2005 09:47:09

Krakora Martin wrote:

> Projizdel jsem konferu a nasel jsem diskusi, kde se resilo
> generovani stranek s hlavickou pro WAP (tedy WML). To by slo pouzit v
> Delphi ne?

Zjednodusene receno: wap server je jako kterykoli jiny
www server, vracejici misto HTML dokumentu WML.

Takze muzes pouzit kombinaci IIS+Delphi,
ale taky cokoli jineho, v cem se ti to bude
delat dobre.


pf


Firebird + Linux - vice procesu

[*] petr palicka <palicka.petr(zv)seznam(tec)cz> - 12.5.2005 09:39:08

Ahoj,

Jirka napsal(a):
> Ahoj,
> mel bych dotaz jestli je normalni, ze na serveru (Linux) bezi treba i
> deset procesu firebirdu a vsechny zabiraji stejne pameti (100MB)?

jestli tam bezi CS (Classic Server), tak vice serveru je asi OK.
Akorat, ze by si kazdy mel kousnout pamet podle sve potreby.

> Zkousel jsem to u nas a bezi jen jeden proces tak nevim cim by to mohlo byt.

"U nas" znamena co? Windows? CS/SS (Classic Server / Super Server)?

> Jirka

Peca

MS SQL a ulozeni record structure

[*] Otisk Rene <otisk(zv)misel(tec)cz> - 12.5.2005 09:03:05

Hi,

Takze vyreseno.
Jo jo, chyba byla klasicky mezi zidli a klavesnici, pri krmeni toho parametru ulozene procedury jsem pretypovaval misto TODBCParam(ParamByName('xxx')).LoadFromStream(MemoryStream) parametr na TBlobField(ParamByName('xxx')).LoadFromStream(MemoryStream)...

Sroub


Ahoj,
a jaky je typ parametru na strane serveru ?
Pavel

> Chtel jsem se zeptat, jak ulozim do parametru
> (TODBCDataset.ParamByName('FieldName').LoadFromStream(?))
> ulozene procedury MS SQL Serveru pole recordu nasledujici
> deklarace?
>
> type
> TMyRec = record
> X1: Integer;
> X2: Integer;
> X3: Integer;
> X3: string[255];
> X4: string[255];
> X5: Integer;
> X6: string[255];
> X7: Integer;
> end;
>
> var
> F: array of TMyRec
>
> Pocet prvku v poli znam tesne pred ulozenim...

Slucovani bunek ve StringGridu

[*] Dalibor Faltynek <dalibor.faltynek(zv)orgrez(tec)cz> - 12.5.2005 09:01:05

Ahoj,
nevite prosim nekdo o nejake free grid komponente, kde by sly jednoduse
sloucit vybrane bunky bud uz pri deklaraci, nebo v oncreate formulare? Nebo
jde neco podobneho treba v TF1Booku nebo StringGridu v D5Pro?
Dekuji za odezvy.
Dalibor Faltynek
Orgrez, a. s.
tel: +420 541 613 312
fax: +420 541 613 299
e-mail: dalibor.faltynek(zv)orgrez(tec)cz


Tvorba aplikace pro WAP v Delphi?

[*] Jiri Cincura <diskuze(zv)cincura(tec)net> - 12.5.2005 08:59:05

Nebylo by pro tohle lepsi zvolit nez Delphi napr. PHP, JSP nebo ASP.NET?
Nevim presne co to ma delat, ale vzhledem k omezenym moznostem mobilu by to
ani v PHP nemusel byt problem. BTW muj telefon sezere i HTML (s jistymi
omezenimi) tak by se dalo pouzit kdyztak i to.

Hlavne zalezi na tom, co to ma delat.

--
Jiri Cincura
http://www.cincura.net/
http://ID3renamer.cincura.net/
ICQ: 314711544; Yahoo!: x2develop
http://photo.cincura.net/
http://phorum.cincura.net/
http://x2develop.com/

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