mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.delphi
Titolo: [OT] Calcoli in euro

Col tempo mi sto rimbambendo: e' plausibile avere in un report 
gli importi in euro con 5 cifre decimali anziche' 2 ?
In particolare mi riferisco ad un importo mensile, di cui va 
calcolato l'equivalente orario.
Sto stampando dei contratti di lavoro col mio programma e
mi hanno chiesto di visualizzare l'importo orario, calcolato
come divisione dell'importo mensile per il numero di ore
lavorate, con 5 cifre decimali, perche' l'importo e' 
un'indennita' con valore molto basso (poche migliaia di lire).
Es.: 2880 lire al mese ha un equivalente orario di 
4 lire all'ora, che diventano 0,002065 euro/ora.
E' legale che io visualizzi sul report 0,00207 ?
O devo visualizzare 0,002 per legge ? Tenendo anche presente
che 0,002 conducono a 2788 lire e non 2880 (!).
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Andrea,

potrebbe essere possibile in quanto esistono delle regole a cui ottemperare
secondo i casi.
Generalmente:
- i valori espressi in euro aventi *autonoma rilevanza* monetaria e
contabile devono essere espressi con un massimo di due decimali
- gli arrotondamenti all'euro devono avvenire al centesimo; gli importi da
contabilizzare o da pagare vanno quindi troncati al terzo decimale con
relativo arrotondamento per eccesso o per difetto
Quando la conversione ha ad oggetto importi *non autonomi* (ad esempio gli
elementi di una fattura, di uno scontrino fiscale, calcoli intermedi ecc..)
i valori ottenuti dalla conversione possono essere trattati in un numero di
decimali a piacere (art. 3 comma 1 D.Lgs. 213/1998)
Quando un importo in lire contenuto in *strumenti giuridici* diversi dalle
norme vigenti non costituisce autonomo importo monetario da contabilizzare o
da pagare ed occorre convertirlo in euro, l'importo convertito, salvo
diverso accordo, va utilizzato con almeno:
a) 5 cifre decimali per gli importi originariamente espressi in unità di
lire
b) 4 cifre decimali per gli importi originariamente espressi in decine di
lire
c) 3 cifre decimali per gli importi originariamente espressi in centinaia di
lire
d) 2 cifre decimali per gli importi originariamente espressi in migliaia di
lire.
La riconversione euro / lire non potrà mai quadrarti per cui ogni
arrotondamento dipende dall'applicabilità delle diverse disposizioni di
legge che, peraltro, hanno espressamente previsto l'impossibilità della
quadratura e la trattano appositamente (non ricordo in quali articoli).
Ciao
Antonio Sanguigni



Dunque, per quello che so: in fattura puoi usare solo e unicamente due
decimali, per quanto concerne il resto sei libero di usarne di più.
Nel mio caso, per esempio (parliamo di telefonia), utilizzo nella
reportistica 4 decimali e poi, nel totale generale, solo due,
specificando che ho arrotondato ** per legge ** .
So di società che utilizzano legalmente 7 decimali per i prezzi
unitari (fermo restando l'arrotondamento finale).
Massimo
-----------
Ore 18.30: premo invio.
Newsgroup: it.comp.lang.delphi
Titolo: Eliminare righe StringList

Ho una TStringList contente le seguenti righe:
 
Riga1 aaaaa
 
Riga2 bbbbb
 
Riga3
 
Riga4
 
Riga5 ccccc
 
Riga6
 
Riga7 ddddd
 
Vorrei cancellare definitivamente in un solo colpo le righe che contengono 
le
 
stringhe vuote(nello esempio Righe 3,4,6)
 
Ho provato e riprovato il codice seguente in ogni variante
 
ma mi dice che non � possibile inserire o cancellare righe.
 
Sulla rete ho trovato altro codice che funziona solo per�
 
cancellando una riga alla volta e non tutte quelle vuote.
 
Grazie per un aiuto
 
Paolo
 
?
 
procedure TForm1.Button1Click(Sender: TObject);
 
var
 
Row: Integer;
 
i: Integer;
 
begin
 
for i := 1 to StringList1.RowCount - 1 do
 
if StringList1.Cells[1,Row] ='' then begin
 
StringList1.Rows[Row].Delete(Row); /// sembra che questa riga di codice non 
basti
 
end;
 
end;
 
 

Ciao,
hai provato a cosï¿œ ?
 
StringList1.Delete(Row);
 
Ciao
 
Juri
 

 basti
 
perchï¿œ al momento di cancellare la riga 3, la vecchia riga 4 diventa 3 e 
non verrï¿œ cancellata anche se vuota.
 
Ciao.

 Ciao.
 

 end;
 
Non mi risulta che TStringList abbia una proprietà Cells o Rows (ma
forse solo perché us(avo) D6).
 
Comunque, come ti hanno già suggerito, è sempre meglio in casi simili
ciclare dall'indice più alto a 0:
for i := Pred(aStringList.count) downto 0 do begin
  if aStringList[i] = '' then
    aStringList.Delete(i);
end;
 
Se invece parli di una TStringGrid credo che la cosa più facile sia
svuotarla e riempirla ex-novo, oppure, se vuoi semplicemente
nascondere le righe vuote, usare RowHeights.
 
Se invece vuoi proprio compattare la griglia, puoi ciclare da 1 a
RowCount-1; se trovi una riga vuota, sposti "in su" le righe della
tabella successive (eventualmente in modo ricorsivo).
Per l'implementazione, vedi l'help di TStrings.Assign
 
Saluti
Paolo Arosio
Newsgroup: it.comp.lang.delphi
Titolo: [OT] Firebird free hosting

Salve,
qualcuno di voi conosce servizi free di hosting per database Firebird ?
Grazie e scusate l'OT.
Riccardo
-- 

 qualcuno di voi conosce servizi free di hosting per database Firebird
Se già non hai visto qua, altro non so
http://www.ibphoenix.com/main.nfs?a=ibphoenix&s=1097557063:36996&page=ibp_hosting
Giulio 

 Riccardo
Andrea

 tuoi CGI e linkarli a quella?
come si comporta la embedded se vi sono richieste di + utenti del sito web?
AS

> Che bisogno c'č di uno specifico servizio di hosting per Firebird

Se le richieste non sono serializzate male, molto male. D'altronde non č 
fatta per quello scopo lě.
--
Alessandrox. 

"GiulioC" <giulio.c...@SPAMunisoft-net.it> ha scritto nel messaggio
news:Q8add.59572$b5.29...@news3.tin.it...

Avevo già visto quel link... ma mi sembra che non si parli di servizi free.
Grazie comunque,
Riccardo
-- 

 tuoi CGI e linkarli a quella?
Hm.. molto interessante... solo che pur essendo un programmatore
non ho la benchè minima esperienza di programmazione di CGI...
Mon saprei da dove cominciare e poi se la mia esigenza fosse
esclusivamente quella di avere un database Firebird disponibile
in rete forse non vorrei mettermi a studiare i CGI.
Comunque, in seguito, farò certamente una ricerca sulla realizzazione
dei CGI, chissà, forse se è una cosa semplice posso farci un pensierino.

 Alessandrox. 
Andrea

 applicazione che fà uso della versione embedded sullo stesso PC?
Ebbene... non si può! ^_^
Cax però mettere una critical section no eh?
Andrea

 applicazione che fà uso della versione embedded sullo stesso PC?
Dalle Release Notes:
    You may run any number of applications with the embedded
    server without any conflicts. Having IB/FB server running
    is not a problem either.
    But you should be aware that you cannot access single
    database from a number of the embedded servers
    simultaneously, because they have SuperServer architecture
    and hence exclusively lock attached databases.
--
Alessandrox. 

 ha scritto nel messaggio 
news:R_bdd.60247$b5.29...@news3.tin.it...

Una critical section non funzionerebbe proprio perchè è embedded.
--
Alessandrox. 

 Riccardo
Andrea

 Date le caratteristiche, penso proprio che li vale.
Ok, grazie

una cgi non è difficie da realizzare.
Nella guida la cosa è spiegata abbastanza bene e poi delphi ha un wizard 
che di prepare un template su cui puoi mettere il codice che ti serve.
AS
Newsgroup: it.comp.lang.delphi
Titolo: operazioni dopo la chiusura

Il mio problema è il seguente: quando clicco su un bottone della mia
applicazione devo fare partire un eseguibile solo dopo aver chiuso il
programma "padre". Il fatto è che quando clicco su questo bottone io invoco
la formclose ma dopo quest'istruzione giustamente non posso fare +
nient'altro.
Cosa mi consigliate?
-- 
Davide
------------------------------------------------------------
Il tempo è la cosa più preziosa che l'uomo possa spendere
------------------------------------------------------------

 nient'altro.
Inserisci il codice nell'evento OnDestroy del tuo form principale. In questo
modo avvii l'eseguibile dopo che il form è scomparso e prima della chiusura
dell'applicazione.

 nient'altro.
Naturalmente se tu hai l'esigenza di avviare l'eseguibile alla effettiva
chiusura del programma padre (e quindi non solo alla scomparsa del form)
dovresti lanciare un terzo programma che aspetta la chiusura del programma
padre e poi ti lancia l'eseguibile oppure se l'eseguibile da lanciare è
fatto da te lo modifichi in modo da aspettare la chiusura del programma
padre prima di compiere qualsiasi operazione.

 programma "padre". 
Crei una piccola utility esterna del tipo:
begin
sleep(1000);
ShellExecute(paramstr(1));
end;
Il proramma padre chiamera l'utility e poi si chiudera'.
Comunque, prova ad esporre il motivo per cui devi fare una cosa del
genere, probabilmente esistono soluzioni alternative piu' performanti.
-- 
I'am what I'am, I do what I can

 genere, probabilmente esistono soluzioni alternative piu' performanti.
certamente. Devo lanciare dal mio porgramma l'utility di backup del database
che utilizzo per salvare leinformazioni dell'utente. L'utility è un .exe a
parte quindi vorrei rendere disponibile dal programma principale la
possibilità di lanciare l'utility di backup. Per fare questo voglio chiudere
il database, e quindi voglio uscire dal programma principale e lanciare
l'utility di backup. L'idea di mettere codice nella Ondestroy del form mi
pare carina. La tua soluzione non l'ho capita fibno in fondo, scusa :)). Me
la potresti spiegare?
Davide

 l'utility di backup.
Non puoi chiudere il database senza chiudere il programma?
Newsgroup: it.comp.lang.delphi
Titolo: ANN: DDObjects 0.9.11

Vienna, 25th of february 2006
I would like to announce the recent release of DDObjects 0.9.11.
DDObjects is a distributed object system for Delphi which originally has 
been developed in november 2003 and extended extensively within the last two 
weeks. A main goal while developing DDObjects has not been only to keep the 
code one has to implement in order to utilize DDObjects as simple as 
possible but also very close to Delphis usual style of event-driven 
programming.
DDObjects supports
  Remote method calls
  Server callbacks
  Asynchronous calls
  Asynchronous callbacks
  Statefull and -less objects
  Object parameters
  and much more...
DDObjects uses plain XML as protocol, contains a broker component, a 
sourcecode generator as well as two new visual controls. DDObjects is 
shareware, supports Delphi 5 to 8 and comes with full sourcecode. Support 
for Delphi 2005 is scheduled to be released within the next days.
Release 0.9.11 is a huge step towards version 1.0, introduces asynchronous 
callbacks and fixes some issues regarding callbacks, sourcecode generation 
as well as a bug introduced in 0.9.10 which did lead to a growing number of 
handles and inadequate memory consumption under certain circumstances.
To download your copy of DDObjects locate your browser to 
http://www.delphi-online.at
Regards
Stefan Meisner
www.delphi-online.at
stefan....@gmx.net
-- 
visit my homepage:
http://www.delphi-online.at
 

 
http://www.delphi-online.at
I would like to add that version 0.9.13 has been released.


Newsgroup: it.comp.lang.delphi
Titolo: TRegistry HELP !!!!

Ciao sono Leo, avrei bisogno un aiuto perchč non so cancellare una chiave
nel registro di windows!!!!
Vorrei che il mio programma eliminasse questa chiave:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices\Pro
va
quali sono le linee di codice da inserire per dichiarare un oggetto
TRegistry  e poi eliminare quella chiave...
GRAZIE MILLE A TUTTI

 va
Ciao,
1) Uses registry
2) dichiari variabile di tipo TRegistry R:TRegistry;
3)
 R := TRegistry.Create;
 R.Rootkey := HKEY_LOCAL_MACHINE;
// Se prova č una chiave (cartella) allora :
 R.DeleteKey
('Software\Microsoft\Windows\CurrentVersion\RunServices\Prova');
// altrimenti, se Prova č un valore in RunServices :
 R.OpenKey ('Software\Microsoft\Windows\CurrentVersion\RunServices',false);
 R.DeleteValue ('Prova');
 R.Free;
Ok, magari ricontrolla il codice e l'help (visto che si tratta di operazioni
col registro non prendere quello che ti dico come oro colato !!)
Ciao,,                Davide DG
Newsgroup: it.comp.lang.delphi
Titolo: Recuperare dati da ListView

Dovrei leggere la caption di un ListItem appartenete ad una applicazione
esterna; ho recuperato l'handle del listview a cui appartiene ma quando
eseguo
     sendmessage(mylisthandle,lvm_getitem,0,l), 
dove l:lv_item
ricevo Access Violation nel modulo 'COMCTL32.DLL'
Provando con un altro msg (LVM_GETITEMCOUNT) tutto funziona
correttamente, nel senso che ottengo il giusto numero di item presenti
nel listview.
Penso di fare un errore nell'impostazione dei vari campi di l prima del
sendmessage, ma onestamente, pur avendo provato di tutto, non cambia
niente.
Qualcuno sa aiutarmi??
Grazie
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ricevo Access Violation nel modulo 'COMCTL32.DLL'
credo che non si tratti di un tuo errore, ma di una certa "suscettibilità"
del componente ListView di Windows a lasciarsi pilotare dall'esterno.
Purtroppo l'unica alternativa valida che sono riuscito a trovare è quella di
iniettare una DLL (vedi Hook) nello spazio di indirizzamento in cui quella
ListView è mappata, potendo così pilotare il componente direttamente
"dall'interno".
HTH
--
- Carlo -
c.b...@libero.it
Newsgroup: it.comp.lang.delphi
Titolo: Progettare un Messenger

Salve
mi piacerebbe creare un messenger per poterlo usare con i miei clienti.
Sapreste darmi delle dritte o di componenti o esempi gią pronti?
In rete trovo solo dei messenger tipo winpopup che non servono allo scopo.
Grazie
-- 
Gilberto Marzuillo
Via Ceccano, 13
81100 Caserta
Italia
Tel. 
+39 0823351859
Fax 
+39 06233239522
Cell. 
+39 3476496431
Cell. 
+39 3287141100
web: 
www.marzuillo.com
e-mail: 
gilb...@marzuillo.com
icq: 35603715

 Sapreste darmi delle dritte o di componenti o esempi già pronti?
Ma perché reinventare la ruota ?
Comunque puoi dare uno sguardo al protocollo ICQ.
p.s.: Gilberto, la firma, sui ng, non dovrebbe superare le 4/5 righe.

 In rete trovo solo dei messenger tipo winpopup che non servono allo scopo.
In linea di principio non e' troppo complicato.
Ti serve, un server che tiene traccia degli utenti connessi e in grado 
di associare username a IP.
Una volta che hai un ip, dato che sarebbe un tuo messenger e non ci sono 
esigenze particolari puoi collegare direttamente client-client.
Il client1 si connette al server che lo registra.
Il client2 si connette al server che lo registra.
Ora sia client1 che client2 conoscono i rispettivi ip (grazie al server) 
e sono in grado di collegarsi tra loro.
Per la parte di comunicazioni tcpip ci sono degli esempi di chat nelle 
indy o anche negli ics di f. piette.
Ciao
Massimiliano

 indy o anche negli ics di f. piette.
Scusa la mia ignoranza, ma dove posso trovarli?
Ti ringrazio per la risposta chiarificativa del metodo da usare.

 Come si fa ad avere un server che tenga traccia?
Sono stato volutamente generico perche' i metodi per ottenere il 
risultato che cerchi sono molti, ognuno poi sceglie quello che 
preferisce in base al suo skill ed ai suoi mezzi.
Tra l'altro questo newsgroup non e' il posto indicato xche' tratta di 
delphi, mentre quella che serve a te e' un analisi del problema per 
capire come affrontarlo e con quali mezzi e non riguarda propriamente 
delphi.
Tagliando corto e cercando di rientrare dall'ot in calcio d'angolo, se 
hai delphi 7 hai anche i componenti indy, mentre gli esempi li puoi 
scaricare da qua:
http://www.nevrona.com/Indy/Indy.html
e se vuoi provare gli ics:
http://www.overbyte.be/frame_index.html
In entrambi dovrebbero esserci degli esempi di chat.
Ciao
massimiliano

 ha scritto nel messaggio
news:bvojop$vd0an$1...@ID-38485.news.uni-berlin.de...


 In rete trovo solo dei messenger tipo winpopup che non servono allo scopo.
Non ne conosco i dettagli, ma il nuovo Msn Messenger dovrebbe fornire delle
interfacce per poterne estendere ed adattare le funzionalitą.
Piuttosto che costruirmi tutto da zero, valuterei di partire da lģ.
Ciao,
Gianluca.

http://www.winpopup.com

Newsgroup: it.comp.lang.delphi
Titolo: Come creare associazione di file in Delphi?

Cercherò di essere più preciso: qualcuno mi potrebbe dare codice sorgente
per creare (in Object Pascal, ovverosia Delphi ^__^) delle associazioni di
file in modo che eseguendo (doppio click) un file con una certa estensione
venga aperto il programma da me creato?
P.S. So come farlo manualmente, ma, naturalmente, distribuendo software, non
si può chiedere di farlo direttamente dalle opzioni di windows a ogni
persona, eh eh eh
Grazie anticipatamente

| Cercherò di essere più preciso: qualcuno mi potrebbe dare codice sorgente
| per creare (in Object Pascal, ovverosia Delphi ^__^) delle associazioni di
| file in modo che eseguendo (doppio click) un file con una certa estensione
| venga aperto il programma da me creato?
potresti scrivere direttamete nel registro (puoi usare TRegistry)
chiave:
HKEY_CLASSES_ROOT\.estensione\shell\open\command
valore:
TUOPROGRAMMA.EXE "%1"
Ciao!
Alan Solo

venga aperto il programma da me creato?
procedure CreaNuovaAssociazione( Ext,
                                 ProgID,
                                 ProgDescr,
                                 ProgPath : string ) ;
var RegistroWin : TRegistry ;
begin
  RegistroWin := TRegistry.Create ;
  try
    RegistroWin.RootKey := HKEY_CLASSES_ROOT ;
    RegistroWin.OpenKey( '.' + Ext, true ) ;
    RegistroWin.WriteString( '', ProgID ) ;
    RegistroWin.CloseKey ;
    RegistroWin.OpenKey( ProgID, true ) ;
    RegistroWin.WriteString( '', ProgDescr ) ;
    RegistroWin.OpenKey( 'shell\open\command', true ) ;
    RegistroWin.WriteString( '', '"'+ProgPath+'" "%1"' ) ;
    RegistroWin.CloseKey ;
    RegistroWin.CloseKey ;
  finally
    RegistroWin.CloseKey ;
    RegistroWin.Free ;
  end ;
end ;
procedure TForm1.Button1Click(Sender: TObject);
begin
  CreaNuovaAssociazione( 'alf',
                         '.ALF files program processor',
                         'Applicazione di prova per file .ALF',
                         'C:\WinNT\System32\Notepad.exe' ) ;
end ;

                                  ProgPath : string ) ;
[SNIP]
Caro abracadabra,
                                il codice da te riportato č stato postato da
Andrea Laforgia su it.comp.lang.delphi il 3/9/2000...
Come per magia (mi vien da dire, visto il tuo nick), il riferimento
all'autore č sparito...
Certo della tua buona fede e per niente convinto del fatto che tu stessi
spacciando per tuo quel codice, mi permetto di ricordarti (e non solo a te)
che č sempre molto gradita l'indicazione dell'autore del codice che si
posta, cosě lo si puň ringraziare/mandare a quel paese nel caso si sia
soddisfatti/si abbiano problemi col codice in questione.
Saluti,
--
Andrea Magni
E-Mail: 
ama...@interac.it

all'autore è sparito...
Hai ragione, mi scuso ma, ehm.., io e Andrea Laforgia siamo amici
intimi ;)
Newsgroup: it.comp.lang.delphi
Titolo: AIUTO: Creare files

Sono un neofita del Delphi 7 e ho bisogno di sapere come fare per creare un
file di testo che contenga ad esempio la scritta 'Hello world'.
Ho cercato sull'Help di Delphi 7 ma non ho capito un granchè
Lorenzo

 file di testo che contenga ad esempio la scritta 'Hello world'.
Var F: Text;
Begin
	Assign(F,'Percorso_del_file');
	Reset(F);
	Writeln(F,'Hello World!');
	Close(F);
End.
Esattamente come in Pascal.
-- 
Nella vita una sola cosa è certa: se la storia ci ha insegnato qualcosa, 
è che si può uccidere chiunque.
(Michael Corleone)


Open Delphi Manual (
http://groups.yahoo.com/group/delphi_open_manual/
)

 ha scritto nel messaggio
news:KJ44b.277818$Ny5.8...@twister2.libero.it...

E per i files ad accesso casuale (quelli con i record, ecc) tipo il sistema
di VB 6????

 ha scritto nel messaggio
news:P454b.277272$lK4.8...@twister1.libero.it...

//Devi creare un record tipo:
type
   Tdati = record
      nome: String[16];
      Cognome: String[20];
      telefono: String[16];
  end;
//assegnare la variabile:
Var
F: file of Tdati;
R: Tdati
//quindi...:
begin
  AssignFile(F,'miofile.rec');
 // qui puoi inserire un controllo del file esistente per inizializzare
 //solo per la prima volta il file
  Rewrite(F);
  R.nome := 'Marco'
  R.Cognome:= Sempronio';
  R.telefono:='0032345670';
  Write(F,R);
  Closefile(F);
end.
ovviamente č solo un esempio..... trovi esempi anche sull'HELP !!
MAX

Esattamente come in Pascal.
A parte il fatto che, se si tratta di *creare*, bisogna usare
"Rewrite" e non "Reset", scritto cosě non va bene.  Le vecchie
funzioni Assign e Close sono state ribattezzate in AssignFile e
CloseFile e Text in TextFile, quindi il codice diventa:
var
  F: TextFile;
begin
  AssignFile(F, 'pippo.txt');
  Rewrite(F);
  WriteLn(F, 'Hello world');
  CloseFile(F);
end.

di VB 6????
Puoi usare File, anziché TextFile, se vuoi seguire l'esempio derivato
dal TP, oppure utilizzare gli stream.

Grazie a tutti quelli che mi hanno aiutato. Alla prossima discussione.
Newsgroup: it.comp.lang.delphi
Titolo: Visualizzazione Hint

Ciao,
ho un problema con gli hint.
Ho messo su una form una toolbar che viene caricata a runtime con dei dati
presi da un file. Per ogni bottone aggiunto alla toolbar è associata una
descrizione che visualizzo tramite la proprietà hint del ToolButton.
Gli Hint vengono visualizzati per un certo numero di secondi (è un
impostazione del sistema operativo?!?!?) e poi vengono nascosti. Dato che le
informazioni che devo visualizzare sono molteplici , mi chiedevo se era
possibile fare come in alcuni programmi, cioè forzare la visualizzazione
dell'hint per tutto il tempo in cui il puntatore è posizionato sopra e
nascondere il messaggio quando esce dalla zona.
Grazie.
Zano.


Open Delphi Manual (
http://groups.yahoo.com/group/delphi_open_manual/
)

nelle prop di tapplication dovresti trovare qualcosa.
Bye
A
--
Per rispondere non usare il reply ma scrivere al seguente indirizzo:
alsalvati(at)
supereva.it

 Ciao!
Grazie mille.
Ma volevo chiederti ancora una cosa: non sono riuscito a capire cosa
rappresenta la proprietà HintShortPause.

 rappresenta la proprietą HintShortPause.
Non l'ho mai utilizzato nella pratica, quindi ti cito semplicemente ciņ
che riporta la Guida in linea a riguardo:
"Specifies the time period to wait before bringing up a hint if another
hint has already been shown."
Suppongo che serva per definire quanto tempo intercorre nella
visualizzazione di un hint e il successivo quando ci si sposta con il
mouse da un controllo avente un hint ad un altro analogo.

Newsgroup: it.comp.lang.delphi
Titolo: Mail con lettere accentate ?

Ho scoperto di avere il seguente problema: con un componente per
ricevere le mail ho visto che non riesco a leggere il corpo messaggio
se contiene lettere accentate, pensavo solo di dover cambiare il
charset ma continua a non funzionare, cosa devo fare?
Gianluca

Jack ha scritto:

Segnalaci almeno di quale componente si tratta. In questo modo, se 
qualcun altro ha fatto uso del medesimo componente e ha riscontrato 
problemi, sarà in grado di fornirti eventualmente suggerimenti e 
indicazioni.
Ciao! :-)
-- 
Marco «Alka» Breveglieri
(marco [@] abls [.] it )
  ABLS Team S.n.c. - Software & Web
  42019 Scandiano (Reggio Emilia)
 
http://www.abls.it

Newsgroup: it.comp.lang.delphi
Titolo: Compilandoo sparisce la FORM

Ciao ragazzi,
 quando compilo sparisce la FORM e vedo solo la unit con il codice.
 A cosa è dovuto ?
 Panico Totale ....
--- posted by geoForum on 
http://www.delphiedintorni.it

poi compare dopo 10 secondi da sola !!!!


scusate, ho risolto avevo sbagliato un caricamento di un file..


Newsgroup: it.comp.lang.delphi
Titolo: Come salvare e caricare un file ?

Ciao a tutti, sono un principiante con la programmazione in Delphi 5 e ogni
tanto ricorro al newsgroup quando non sò che pesci pigliare....
Dunque, alla partenza del mio applicativo dovrei caricare un file
costituente l'immagine di un array di 100 byte, con nome fisso , es, pgm.cfg
o qualcosa di simile. Da una mia form apposita dovrei poter salvare il mio
array sul file in questione.
Qualcuno può aiutarmi damdomi le indicazioni su come fare ?
Grazie e ciao
abraco...@hotmail.com


Ciao ! Puoi usare uno stream:
type TuoTipo=array [1..100] of byte;
var f:TFileStream;
     x:TuoTipo;
 begin
  f:=TFilestream.Create('prova.cfg',fmCreate);
  f.write(x, sizeof(x));
  f.free;
end;

 ha scritto nel messaggio
news:9cmbbo$2dn$1...@nreadB.inwind.it...

No, dai, fagli usare BlockWrite !!!!!! ;=P
Andrea

Qualcuno puņ aiutarmi damdomi le indicazioni su come fare ?
type TMyRecord = record 
                   Dati : array [1..100] of Byte ;
                 end ;
var F : File of TMyRecord ;
    MyRecord : TMyRecord ;
begin
  AssignFile( F, 'pgm.cfg' ) ; Reset( F ) ;
  Read( F, MyRecord ) ;
  CloseFile( F ) ;
end.


wrote:

BlockWrite e' eccessivo pero' si potrebbe usare ... ^___^
Comunque NESSUNO mi ha ancora fatto vedere come leggere un file di
testo con TFileStream senza farsi venire la meningite!
Ciao,
Un Max noioso.
-- 
"Ciao Rex, che cavolo di situazione eh? Due dentro, due fuori, puo' succedere di tutto!"
Newsgroup: it.comp.lang.delphi
Titolo: Calcolo Angolazione

Ciao a tutti, vorrei creare un gioco tipo Puzzle Bobble in Delphi, ma ho un
problemino. Come faccio a calcolare l'angolazione della pallina??? Inoltre
come posso far ruotare un componente? (In questo caso il cannoncino dove
spara la bolla).
Grazie e Ciao

Inoltre come posso far ruotare un componente? 
In che senso ?
-- 
Andrea Laforgia
Gioca a Tetris !
http://www.geocities.com/andrealaforgia/downloads.html

gradi,
scusa, da 0 a pi greca _radianti_ ... 


Andrea bello il gioco... se mi dai le dimensioni provo a farti delle
mattonelle + realistiche :)
ovviamente senza impegno ;)

mattonelle + realistiche :)
Lo puoi vedere da te, sono dei BMP nella cartella "images" (o qualcosa
del genere)...


Uhm grazie, ma in geometria queste cose non le abbiamo ancora fatte...
Avresti qualche esempio rapido rapido?
2. Per ruotare un componente intendevo un pulsante o un qualcosa altro, tipo
il cannoncino in mezzo al gioco dovrebbe ruotare no? ma non so come fare.
Grazie e Ciao


Newsgroup: it.comp.lang.delphi
Titolo: SpeedButton

Ciao a tutti,
ho un problema e non riesco a venirne a capo...
Sulla mia form ho alcuni SpeedButton, con la proprietà flat settata a
true; ma vorrei disabilitare la funzione che ogni volta che col mouse
passo sopra al button questo venga "messo in evidenza". Cioè per
spiegarmi meglio: vorrei che se passo col mouse sopra i button questo
non si notasse fino a quando non ne seleziono uno.
E' possibile?
Grazie in anticipo...
DR

dr...@libero.it
 ha scritto:

Prima di cimentarmi nel provarci, posso chiederti semplicemente *perché*?
-- 
Jax

 non si notasse fino a quando non ne seleziono uno.
Ma se non viene messo in evidenza come fai a selezionarlo?
forse desideri gestire il click del mouse in una zona ben precisa?
Mario

 Mario
Perché in realtà l'utetente deve cliccare su delle scritte contenute
sullo speedbutton e non mi interessa (anzi non voglio proprio) che
sappia che è un button...

 Mario
Perché voglio che l'utente clikki su delle scritte contenute nel
Speedbutton e non mi interessa (anzi, non voglio proprio) che sappia
che sia gestito con un button...

 che sia gestito con un button...
e allora usa delle label, no? con OnMouseDown/Up. Perchč complicarsi la 
vita?
Avalon 

 che sia gestito con un button...
A parte che IMHO non è un gran problema, oltretutto non è per niente 
standard come elemento di interfaccia (io *odio* le cose inventate fuori 
standard, soprattutto come interfaccia); voglio dire, se un utente va su 
una barra di scorrimento di windows, sa già a priori come usarla e cosa 
aspettarsi quando la usa; analogamente un pulsante è fatto per essere 
cliccato ed è giusto che sia evidenziato quando quest'azione è possibile.
*COMUNQUE*, nel tuo caso, o utilizzi una semplice label (che però non ha 
neanche l'effetto del "premuto"), oppure uno dei tanti componenti sui 
soliti siti (
www.torry.net
) che ti permettono di gestire delle label 
cliccabili (per esempio che cambiano colore quando ci passi sopra o 
clicchi).
-- 
Jax

 sappia che è un button...
Scusa, forse non ho capito, ma perchè non gestisci l'evento un click di una
label.
Puoi mettere di fianco una immagine con un componente tImage.
Ciao
Mario - (
mari...@inwind.it
)
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/


Ciao,
Concordo in pieno con Jax: ma perché usare uno SpeedButton, che è stato 
creato per un uso specifico, quando quasi tutti i componenti hano un 
evento OnClick che per te, a quanto pare, è sufficiente (non serve 
nemmeno l'"effetto premuto")?
NioBi
--- posted by geoForum on 
http://www.delphiedintorni.it

Grazie a tutti, in effetti non avevo pensato ad una label...
Ho risolto così!
Newsgroup: it.comp.lang.delphi
Titolo: Componente mxWebUpdate per aggiornamenti da Internet

     sto cercando di "Riciclare" il componente mxWebUPdate su XE2 (lo 
usavo in una versione precedente per l'aggiornamento via web di un mio 
software)
     Il componente si connette al server, legge un file htm con le 
informazioni sulla versione disponibile.
     Facendo il parse delle informazioni si decide se scaricare il file 
aggiornato.
 
     Del componente non esistono aggiornamenti dopo la versione 2010: 
sto quindi cercando di adattarlo
     Mi succede una cosa che non mi torna: quando scarico il file di 
informazioni, se ne visualizzo i dati, vedo cose strane, mentre se li 
memorizzo in un file di testo, il contenuto è corretto
 
     Data: Array[ 0..1024 ] Of WideChar;
     FDownloadSize: DWord;
     FDownloadedSize: DWord;
     ....
             If Not InternetReadFile( hRequest, @Data, SizeOf( Data ), 
FDownloadSize ) Then Break
     // in questo punto i dati scaricati in "data" "sembrano" 
illeggibili apparendo come caratteri cinesi/giapponesi
     {$WARNINGS ON}
         Else
         Begin
           If FDownloadSize = 0 Then Break Else
           Begin
     {$WARNINGS OFF}
             If FSaveToFile Then
               BlockWrite( f, Data, FDownloadSize )
             Else
     {$WARNINGS ON}
             Begin
               TempStr := Data;
               SetLength( TempStr, FDownloadSize );
               FStringResult := FStringResult + TempStr;
             End;
     Si tratterà certamente di una svista ma non riesco a trovare l'inghippo
     Qualcuno buttando l'occhio vede il suggerimento giusto?

 informazioni, se ne visualizzo i dati, 
 
Visualizzi come? Usando cosa?
Cosi a occhio, proverei a sostituire widechar prima con char e poi con Ansichar per vedere cosa succede.
 
 
 
A.
 

 memorizzo in un file di testo, il contenuto è corretto
 
Molto probabilmente si tratta di un problema di encoding errato: prova a usare un Char (che si basa su Unicode, già da versioni di Delphi precedenti alla 2010) al posto del WideChar, oppure analizza i byte che ottieni nel download per controllare quale tipo di encoding viene utilizzato dal server per restituirti le informazioni.
 
Ciao,
  Marco.
 
-- 
MARCO BREVEGLIERI (Software and Web Developer)
#Home: 
http://bit.ly/marcobreveglieri
 
#Blog: 
http://bit.ly/compilaquindiva
 

 Molto probabilmente si tratta di un problema di encoding errato:
 
prova a usare un Char (che si basa su Unicode, già da versioni di Delphi 
precedenti alla 2010)
 
al posto del WideChar, oppure analizza i byte che ottieni nel download 
per controllare quale tipo di encoding viene utilizzato dal server per 
restituirti le informazioni.
 
Infatti, come anche suggerito da Alberto, è bastato impostare Data come 
AnsiChar e la cosa si è risolta.
A volte la soluzione è sotto gli occhi ma non la vedi...
Grazie
Newsgroup: it.comp.lang.delphi
Titolo: Un paio di domande! (roba da poco)

Ciao ragazzi!! E' parecchio che non facevo qualche domanda e così....;-)
Allora....
1:
Ho installato degli oggetti scaricati da torry nel mio Delphi 4 CS. Ora
la mia domanda è questa: perchè ogni volta che apro     Delphi e vado a
compilare un programma che usa i suddetti oggetti mi viene dato l'errore: "
[Fatal Error] NomeProgetto.dpr(6): File not found: 'Suddetto_oggetto.dcu' ".
Ogni volta mi devo reistallare i componenti per farlo             funzionare
e
pure il file che non trova in relatà c'è! :(. Il problema sparisce e posso
compilare normalmente il progetto tutte     le volte che voglio, fino a
quando però non chiudo Delphi e poi lo riapro. Qui si ripresenta. Credo sia
facile risolvere il problema....ma a me non riesce : ( .
2:
Altro giro altra corsa...:)
L' EXE di alcuni programmi che ho fatto gira senza problemi su qualunque
PC con cui ho provato (con Win 9x). Altri invece (e questo mi capita con
i programmi che ho sviluppato di recente) mi visualizzano il messaggio di
errore "DLL non trovata VCL40.BPL (o VCLX40.BPL)" e sono costretto a
portare sul PC anche questi file! Ora a me non costa nulla iglobarli
nella procedura di installazione, ma vorrei sapere il perchè, visto che in
alcuni casi gli oggetti che uso nei programmi sono simili e non
faccio uso di DLL esterne (anche se so che il VCL40 è la libreria di oggetti
di Delphi...vero?).
So che possono essere quesiti banali ma....
Grazie in anticipo ragazzi!!!
de...@inwind.it

 ha scritto nel messaggio
news:8bo52r$582$1...@pegasus.tiscalinet.it...


Newsgroup: it.comp.lang.delphi
Titolo: Jpeg in campo DB

Salve a tutti,
ho un problema nell'inserimento di un' immagine
jpg in un campo blob di una tabella di un database Interbase.
Le seguenti istruzioni mi permettono di inserire solo immagini di tipo bmp:
   ( ImgName_: String;)
  OpenPictureDialog1.Execute;
  ImgName_ := OpenPictureDialog1.FileName;
  dbimg.Picture.LoadFromFile(ImgName_);
//dbimg č un TDBImage
ma quando ne passo una di tipo jpg non avviene niente.
ho inserito tra le uses anche la libreria Jpeg,
ma senza risultato.
qualcuno mi aiuta?
grazie
sal
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

devi x forza usare un tbdimage?
A.

devi x forza usare un tbdimage?
Perché non dovrebbe?
Newsgroup: it.comp.lang.delphi
Titolo: problema con deleteobject

mi potete spiegare una cosa dal listato seguente:
procedure 
TAcQrLabel.Disegna(Video:Boolean;xxx,yyy:Integer;fnzX,fnzY:AcFunMolt;Cnv:TCanvas);
var
  Fnt     : hFont;
  LogFont : TLogFont;
  F       : TFont;
  XX,
  YY      : Integer;
  Angolo  : Integer;
  re      : TRect;
  txt     : String;
begin
..........
   Cnv.Font.Assign(Font);
   FillChar(LogFont, SizeOf(LogFont), 0);
//  GetObject(Cnv.Font.Handle, SizeOf(LogFont), Addr(LogFont));
//  Logfont.lfOutPrecision := OUT_TT_ONLY_PRECIS;  { Request TrueType 
precision }
//  Logfont.lfEscapement   := Angolo*10;
//
   With LogFont do
   Begin
     if (Assigned(fnzX)) then
          lfHeight      := fnzX(-Font.Height)
     else lfHeight      := -Font.Height;
     lfOrientation := 0;
     lfOutPrecision := OUT_TT_ONLY_PRECIS;
     lfEscapement  := Angolo*10;
     lfWeight      := FW_BOLD;
     lfCharSet     := OEM_CHARSET;
     StrPCopy(lfFaceName,Font.Name);
   End;
   Fnt := CreateFontIndirect(LogFont);
   F := TFont.Create;
   F.Assign(font);
   F.Color := Font.Color;
   F.Handle := Fnt;
   Cnv.Font.assign(F);
//  Cnv.
//  Cnv.Font.Size := Trunc(Abs(ParentReport.XPos(Font.Size)));
   Cnv.Font.Handle := Fnt;
   Cnv.Brush.Color := Color;
   Cnv.Brush.Style := bsClear;
..................
   F. Free;
//  DeleteObject(Fnt);
end;
perche' se tolgo il commento dalla deleteobject mi va in crisi, 
l'oggetto viene tolto già dal free precedente?
quando assegno "F.Handle := Fnt;" l'oggetto che precedentemente era 
puntato dall'handle viene eliminato oppure rimane e crea una perdita di 
memoria.
grazie.
-- 
---------------------------------------
Per rispondere in privato togliere 1975

 memoria.
l'oggetto é ancora li, perchè dovrebbe essere distrutto? potresti averlo
assegnato a qualcosa d'altro...
Matheus

Newsgroup: it.comp.lang.delphi
Titolo: Problema con ADO

Ciao Ragazzi.
ho creato un'applcazione database utilizzando componenti ADO e un database
scritto con Access2000, inoltre per la connessione ho utilizzato Microsoft
Jet.
Sul mio pc ovviamente funziona benissimo mentre su un altro no: quest'ultimo
ha
Windows NT e Access97.
Il messaggio di errore che compare quando lancio il programma è il seguente:
Impossibile trovare il provider specificato.
Inoltre se faccio doppio clic sul db compare questo errore: formato database
non riconosciuto.
Come devo fare per far partire la mia applicazione anche su questo pc?
Grazie.

 Impossibile trovare il provider specificato.
Non credo che access supporti la compatibilità in avanti.
Ovvero, il 2000 può leggere i db del 97 ma il contrario non va.
Bye
AS


Io proverei ad aggiornare l'MDAC alla versione 2.6 con il Service pack di
Jet 4.
Newsgroup: it.comp.lang.delphi
Titolo: GetEnumCachedPassword

Carlo, ho usato il tuo frammento di codice, ma non esce niente.
Ottengo 2 stringhe che non hanno nulla a che vedere con le pw attive.
La seconda riga mi esce la stringa MAPI:MAPI.
Ho fatti qualche ca##ata?
Saluti
AS
"Se è Microsoft non funziona"

 Ho fatti qualche ca##ata?
No, dubito ...
Ciao!
--
- Carlo -
ps : a me compaiono correttamente tutte le password usate in rete ...

ps : a me compaiono correttamente tutte le password usate in rete ...
beato te!


Newsgroup: it.comp.lang.delphi
Titolo: Come 'registrare' i componenti internet esistenti ?

Salve,
chi mi sa spiegare come
'registrare' i componenti internet
per fare in modo che un applicazione semplice che
usa http e html funzioni nel momento
in cui dopo la compilazione l'oggetto viene portato su altra
macchina dove non è installato l'ambiente Delphi ?
Magari è una domanda stupida ma veramente nei libri non
è indicato come fare, qualcuno mi ha detto di registrare
gli ocx necessari (ma quali sono ???) usando il prog regsrv32 di windows.
Il messaggio che ho quando lancio un programma è:
Exception EOleSysError in module PROJECT!.EXE at 0003E1D9
Interfaccia non registrata.
Uso Delphi 3 ma ho provato anche col 4....
Grazie infinite a chi mi dà una mano.. please ripondere qui sul gruppo.
Roberto

Roberto:
| Salve,
| chi mi sa spiegare come
| 'registrare' i componenti internet
| per fare in modo che un applicazione semplice che
| usa http e html funzioni nel momento
| in cui dopo la compilazione l'oggetto viene portato su altra
| macchina dove non è installato l'ambiente Delphi ?
se ho capito, la cosa + rapida è farti un setup con installshield,
te li registra automaticamente
Ciao,
Alan Solo


Grazie molte, ma purtroppo non funzia,
creando il setup e indicando semplicemente l'eseguibile
non tiene conto dei componenti internet che usa,
forse nella sezione dove permette modifiche al registro
va fatto qualcosa ma dove e quali chiavi ?
Se puoi provaci... basta una semplice finestra html
e in locale funzia ma portato su altre macchine da quell'errore di
interfaccia ole non registrata..
Grazie nuovamente.. Roberto

Roberto:
| Grazie molte, ma purtroppo non funzia,
| creando il setup e indicando semplicemente l'eseguibile
| non tiene conto dei componenti internet che usa,
da installshield devi indicare anche questi componenti
che usi (sono delle dll?), e poi lasci
che installshield faccia il "self register"...
oppure dai un'occhiata anche alla sezione
'Select InstallShield Objects for Delphi' e seleziona
quelli che ti servono (sempre se ci sono ;-) )
Ciao! fammi sapere,
Alan Solo
Newsgroup: it.comp.lang.delphi
Titolo: freereport fuzzyreport

Scusate, magari apro una vecchia discussione, ma per curiosità mi piacerebbe 
avere da voi qualche notizia.
Che differenza c'è tra il freereport o fastreport ed il fuzzy report ?
é un caso che abbiano la grafica; e non solo, molto simile?
Grazie a chi mi volesse rispondere.
Ciao 

NicolaS ha scritto:

Ciao !
Derivano tutti sia freereport che fuzzyreport da fastreport (la versione 
free che si può scaricare da 
http://www.fast-report.com/
Purtroppo la versione fuzzyreport sviluppata da Fabio Dell'Aria (che 
all'inizio si chiamava proprio freereport) è in un certo senso "morta" 
perchè Fabio ha smesso di supportare il progetto che  si è arenato. 
Qualcuno tempo fà sembrava volesse fare qualcosa ma poi non ne ho 
saputo/visto più nulla.
Ovviamente fastreport commerciale è MOLTO meglio... ma questo è una 
discussione puramente accademica dato che uno è un generatore di report 
free e l'altro ci vogliono $
Spero di aver risposto alle tue domande.
Ciao

Newsgroup: it.comp.lang.delphi
Titolo: Clipboard

Come gestisco la clipboard in Delphi???
Tnk
--
Kleidemos

 Come gestisco la clipboard in Delphi???
è una faq. Cerca la.
--
- Carlo -

Come gestisco la clipboard in Delphi???
Parti dal principio che la VCL ti mette a disposizione TClipboard, unit
Clipbrd, come oggetto di riferimento. Parti da li' e, se vuoi qualcosa di piu'
discorsivo che la guida, fatti un giro su delphi.about:
http://delphi.about.com/library/weekly/aa092199.htm
C'e' proprio tutto.
Ciao
 
-- 
Morde. 
(
mo...@despammed.com
)
M-List di icld: 
http://it.groups.yahoo.com/group/icld/
Newsgroup: it.comp.lang.delphi
Titolo: Delphi - BDE - ODBC - PostgresSQL

Ciao a tutti,
sto cercando di collegarmi a un db fatto in postgres attraverso i
componenti BDE di Delphi e ODBC. Apparentemente non ci sono problemi di
connessione e riesco a caricare le tabelle nei vari grid... Il problema
è che non vedo i campi di tipo varchar, text o simili. In pratica se
il campo è numerico, o di tipo data,ora ecc. ecc. no problem, se
invece inserisco una semplice stringa delphi vede il campo ma non
riconosce il tipo quindi nel grid non mi visualizza quella colonna.
grazie a chiunque abbia un suggerimento
Simone Bollini

 componenti BDE di Delphi e ODBC. 
xche bde? che delphi usi?
A.

Uso il Borland Studio 2006, quindi mi sembra sia la versione 10 di
Delphi.
Vorrei evitare software a pagamento tipo PostgresDAC, e purtroppo non
riesco a installare le lib di zeosdbo. Quindi stavo cercando di usare
gli strumenti che avevo già a disposizione... che dici... sono sulla
strada sbagliata?
Ciao
S.
Alberto Salvati ha scritto:


 strada sbagliata?
imho, si. bde è deprecated.
sicuro che non esista un oledbprovider o un driver dbx?
A.

 componenti BDE di Delphi e ODBC.
Butta via il BDE e non usare ODBC.  Per collegarti a PostgreSQL usa l'OLE
DB Provider fornito sul sito ufficiale e i componenti ADO distribuiti con
Delphi.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

Grazie per l'ottimo consiglio!
Ho installato l'ole db provider e ho usato i componenti ADO. Ora vedo
tutti i dati correttamente. Ho usato la ADOconnection, la ADOtable, il
datasource e un dbgrid con dbnavigator. Però non riesco a modificare o
aggiungere nuove tuple. Forse ora sono stanco e mi sfugge qualche
banalità....
Ciao!
S.
Andrea Laforgia ha scritto:


[...]non riesco
ovvero ?

Ovvero mi posiziono su una riga del grid, clikko per inserire una nuova
riga, il cursore comincia a lampeggiare ma non è possibile scriverci
dentro nulla. Pigiare lettere o numeri non sortisce alcun effetto.
Se cerco di eliminare una riga mi esce:
First chance exception at $7C812A5B. Exception class EOleException with
message 'Le informazioni sulla tabella di base non sono sufficienti per
effettuare l'aggiornamento'. Process Project1.exe (3980)
Invece all'inizio, quando compilo e lancio l'applicazione mi esce:
First chance exception at $7C812A5B. Exception class EOleException with
message 'L'operazione richiesta non è supportata dall'oggetto o dal
provider'. Process Project1.exe (3980)
Puoi illuminarmi?
grazie e buon week-end 
Simone
Newsgroup: it.comp.lang.delphi
Titolo: Deallocazione Oggetti...

Salve a tutti,
vorrei sottoporvi 2 problemi
che mi turbano :-)
A) Ipotiziamo di avere un
oggetto referenziato da 2
variabili:
  A:MioOggetto;
  B:MioOggetto;
 
  A := MioOggetto.Crea;
  B := A;
Ora se distruggo l'oggetto... 
  A.Free;
Come risultato ho che ne A ne
B risultano essere a NIL dopo
tale operazione.
Quindi codice tipo questo
darebbe qualche problemino...
  if (A<>nil) then A.Free;
  if (B<>nil) then B.Free;
Avete qualche idea per
aggiornare il puntatore B,
visto che A può essere
aggiornato immediatamente dopo
la chiama A.Free.
B) Ho una form di partenza fA
che crea una nuova form
   if (fB <> nil) then
     fB :=
TMyForm.Create(nil);
   fB.Show;
   Come è possibile
sincronizzare le 2 form in
modo che fA sappia che in un
certo istante
   sono uscito da fB e quindi
posso chiamare:
   fB.Free;
   fB := nil;				
 
   NB. Non uso ShowModal, in
quanto fB non deve essere
modale.
Nella speranza di essere stato
sufficientemente chiaro, 
rigrazio in anticipo ogni
suggerimento.
Stefano.

 la chiama A.Free.
Ciao,
        dopo A.Free io farei un bel A:=Nil;
in modo da ri-inizializzare il puntatore...
Per la questione delle form, stai sbagliano approcio:
usa l'evento OnClose di Tform e utilizza la variabile action:
pppp TuaForm.OnClose......ecc
begin
Action:=caFree;
TuaForm:=nil;
end;
Ciao :-)
--
(¯`·.¸¸.·´¯`·.¸¸.-> Andrea <-.¸¸.·´¯`·.¸¸.·´¯)
AntiSpam: rimuovere il trattino basso dall'indirizzo per rispondere
AntiSpam: remove the underscore from the e-mail address to reply

 in modo da ri-inizializzare il puntatore...
E su questo non posso che
essere d'accordo come già
anticipavo nella mia
richiesta.
Però il problema ribadisco lo
incontro su la variabile B o
sulle (N-1) variabili (escludo
A) che 
referenziavano l'oggetto
distrutto da A.
Tali variabili infatti sono
diverse da NIL ma nel concreto
puntano ad area di memoria
sporca...
Quindi 
  if (variabile <> nil) then
variabile.Metodo;  darà un
AccessViolation ovviamente.
Quindi come fare per evitare
tutto ciò ?
Ciao, Stefano.

 tutto ciò ?
Penso che l'unica sia usare un blocco Try Except... ma tieni conto che è un
metodo sicuro sì ma decisamente poco "pulito"...


Newsgroup: it.comp.lang.delphi
Titolo: Problema ridisegno grafica

Ho un problema con un applicazione scritta in Delphi 5.
Dopo circa un'ora di utilizzo (quindi cliccando su toolbar, outlookbar
ecc..) il programma mi restituisce un errore di Exception:
Win32 Error.  Code: 87.
Parametro incorretto
Canvas does not allow drawing
Avete una qualche idea che cosa possa essere?
Alberto Cigliutti

 Canvas does not allow drawing
Mi fa pensare che da qualche parte le risorse vengono mangiate di continuo e
poi finiscono (e quando finiscono ci sono i risultati più esotici...)
Direi di provare con un profiler. memprof (a memoria) è gratis
Ciao
Matteo