mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.delphi
Titolo: [D5 + STRING + CHAR] Ricavare il valore ASCII........

Inizio con il ringraziare chiunque voglia dare anche solo un'occhiata a
questo messaggio,
Avrei bisogno di ricavare il valore ASCII di ogni singolo carattere di una
stringa e non ho proprio idea di come fare.
In pratica l'idea sarebbe questa
for  i := 0 to Length(MiaStringa) do
    begin
        MioChar := ????
        //Il singolo carattere lo ottengo con Copy(MiaStringa, i,1)
    end;
Grazie per l'aiuto
Michele

 Michele
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:0eb0eb2854b46a10cb1...@mygate.mailgate.org...

Grazie, ma stavi aspettando che postassi ??
Grazie mille ancora
Michele

Newsgroup: it.comp.lang.delphi
Titolo: OT: Disabilitare l'EJECT del cdrom

Salve a tutti.
Ho cercato online (senza successo) il modo di disabilitare via software il
tasto EJECT del  cdrom o del masterizzatore.
C'e qualcuno a cui e' gia' servito qualcosa di simile?
Grazie mille.
Sandro

 C'e qualcuno a cui e' gia' servito qualcosa di simile?
Ai software di masterizzazione! :)
--
- Carlo -
c.b...@libero.it

Newsgroup: it.comp.lang.delphi
Titolo: blocca database

a livello di delphi si puo' bloccare un campo, una riga, una colonna, una
tabella, un database.. ?
buio

tabella, un database.. ?
forse č la vodka di ieri, ma non ho capito...
AS
"Se č Microsoft non funziona"

Voglio portare il mio gestionale in rete ed ho bisogno di gestire il
multiaccesso..
mi chiedevo se esistono routine in deplhi create per questo e se ti
permettono di lockare anche il singolo campo o devo lockare tutto il DB.. o
se non posso fare proprio nulla.. ed alloro so fregato perche' uso ACCESS..
:(((
buio

"buio":
| [...] multiaccesso [...] ACCESS
hmmm, quelle due parole
non stanno molto bene insieme ;)

Newsgroup: it.comp.lang.delphi
Titolo: [d5][d6] componenti menu stile office2007

ciao a tutti, qualcuno può suggerirmi qualche componente per fare menu stile 
office 2007 ?
Simone 

 Simone
http://www.tmssoftware.com/site/advtoolbar.asp
* 
http://www.devexpress.com/Products/VCL/ExBars/
Entrambi a pagamento, di free forse c'e' qualcosa, ma non so dirti
* vanno per la maggiore
^_Goblin_^
-- 
Ibis et redibis non morieris in bello
http://goblinland.myminicity.com/

 Entrambi a pagamento, di free forse c'e' qualcosa, ma non so dirti
Anche un upgrade a Delphi 2009 può essere una soluzione valida. :-)
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)
Newsgroup: it.comp.lang.delphi
Titolo: CGI e ACCESS DENIED

Ciao a tutti,
stamani ho creato (a scuola) un CGI che si interfacciava con una pagina Web
di Frontpage.
Il CGI andava ad agire su un Database Paradox...finchè ho lavorato in locale
(con Personal Web Server) non ho avuto alcun problema, i problemi sono sorti
nello spostare
il DB in rete. Ho creato un Alias che puntava al DB paradox in rete, ma mi
sono imbattuto in
un problema di EDBC Error .... Alias Pincopallino error.
Così ho pensato che fosse tutto merito (si fa per dire) del grande Paradox a
cui la rete non va molto
a genio...per problemi di tempo ho creato un DB in Access
(ripeto era solo una questione di tempo altrimenti mi lanciavo su IB!! :) e
lo ho puntato con un alias
creato con ODBC32. Dopo aver risettato il tutto su Delphi ho eseguito il CGI
e ho avuto lo stesso problema.
Di cosa potrebbe trattarsi? Ho controllato tutti i permessi sul Server ed
era tutto OK, modalità di esecuzione
della cartella sul Server settata etc....Non so proprio come risolvere il
problema.
Se fosse colpa di Access.....
Appena posso proverò con IB, se avete suggerimenti in merito vi sarei grato.
Bye
--
- Carlo -
BSSoftware Tips Mailing-List Support

 a genio...per problemi di tempo ho creato un DB in Access
sfatare questo mito: occhio che Paradox non è così male (soprattutto se
rapportato ad Access!)
Ciao :-)
--
(¯`·.¸¸.·´¯`·.¸¸.-> Andrea <-.¸¸.·´¯`·.¸¸.·´¯)
AntiSpam: rimuovere il trattino basso dall'indirizzo per rispondere
AntiSpam: remove the underscore from the e-mail address to reply

rapportato ad Access!)
Io non ho mai detto che Paradox non sia un buon DBMS,anche perchè non lo
conosco
fino in fondo (sicuramente tu lo conoscerai meglio di me), ma per chi è
ormai abituato
a lavorare con IB penso che non veda Paradox molto bene...con questo non
voglio dire
che Paradox non sia buono, ma sorgono diversi problemi quando si mette in
mezzo la rete.
Riguardo Access non lo vedo molto di buon occhio, ma devo dire che come
tutti i prodotti M$
ha un'ottima caratteristica, essere semplicissimo da utilizzare.
Senza conoscerlo una persona qualsiasi potrebbe realizzare un DB in Access e
questo non è poco...
Ora ti saluto!!
Se vuoi apriamo un thread sui DBMS, vediamo anche cosa ne pensano gli
altri!! :)

Newsgroup: it.comp.lang.delphi
Titolo: Delphi / Sql

Avrei due domande da porre :
1)E' possibile usare sqlserver 200 con delphi 5?
2)Nel caso in cui la risposta fosse si qualcuno mi potrebbe spiegare come
funziona la connessione al database con sqlserver?
Al limite mandandomi un esempio anche banale?
Ringrazio tutti coloro che mi risponderanno!
Antonio.

si. presumo convenga ado.
bye
A
--
Per rispondere non usare il reply ma scrivere al seguente indirizzo:
alsalvati(at)
supereva.it
Please, don'r reply this message.
Use this address: alsalvati(at)
supereva.it

 ha scritto nel messaggio
news:bkcjud$42g$1...@newsreader1.mclink.it...


funziona la connessione al database con sqlserver?
Io per accedere sia a Access che a SQL Server (7, però, non 2000) ho
usato ADO.  Ho utilizzato un file DSN esterno per la definizione della
ConnectionString.  Ho sviluppato la mia applicazione su SQL Server
2000 e il mio cliente la usa con SQL Server 7, senza problemi.

 Al limite mandandomi un esempio anche banale?
Segui queste lezioni :
http://programmazione.html.it/delphi/delphi_35.htm
http://programmazione.html.it/delphi/delphi_36.htm
Ciao,
Donato Di Tullio

 ha scritto nel messaggio
news:wBkab.114348$R32.3...@news2.tin.it...


nella palette dei componenti trovi un tab etichettato ADO.
Bye


Io uso la libreria ZEOS
Andrea
Newsgroup: it.comp.lang.delphi
Titolo: identificazione form.

 Buon giorno,
se lancio una form da un'altra form, come posso fare riferimento da 
quest'ultima alla prima, senza impostare ulteriori variabili, come nel 
caso sotto?
if FormSource = 'frmsch' then
        frmsch.ActAbortExecute(Sender)
else if FormSource = 'frmmach' then
        frmmach.ActAbortExecute(Sender); 
Alla fine il metodo che è lo stesso per entrambe.
Saluti, grazie.
Marco.
--- posted by geoForum on 
http://www.delphiedintorni.it

nella unit principale (probabilmente Unit1) devi aggiungere subito dopo Implementation:
uses Unit2
(dove Unit2 č il nome della unit della form lanciata dalla prima)
cosě poi puoi riferirti agli oggetti della Form principale in questo modo:
Form1.OggettoX.MetodoY:=OggettoX.MetodoY
-- 
madbat870 
------------------------------------------------------------------------
View this thread: 
http://www.itsistemi.net/viewtopic-763088.html
Inviato via 
http://www.itsistemi.net

se la stringa č per esempio su una label ubicata nella form1, dalla unit della form2 puoi fare:
if form1.label1.caption='qualcosa' then
qualcos'altro
non so se era questo che intendevi, se per caso ho sbagliato ad interpretare il tuo mex scusami
-- 
FoxDie 


[...]if form1.label1.caption='qualcosa' then
MAI fare una cosa del genere, in Delphi.  MAI, cioč, far riferimento a
un'istanza specifica, nel codice di una classe.
Delphi ha la cattiva abitudine di dichiarare una variabile globale per
ogni form creata (vedi Form1 per TForm1), il che porta a sbagliare
facilmente.

Form1.OggettoX.MetodoY:=OggettoX.MetodoY
Errato, anzi "erratissimo".  Mai fare riferimento a un'istanza
specifica, nel codice di una classe.  Per passare dati da una form
(che ricordo essere un'istanza di una *classe*) all'altra, č bene
usare un metodo pubblico della form invocata, es.:
function Execute(const Sender: TObject): TModalResult;
begin
  FSender := Sender;
  Result := ShowModal;
end;
Newsgroup: it.comp.lang.delphi
Titolo: porting di una applicazione sul web

Ciao ancora, un'altra domanda per i più esperti.
E' possibile convertire un'applicazione client-server scritta in delphi 5
sul web, ossia trasformare il modulo in pagine html?
Grazie

 Ciao ancora, un'altra domanda per i piů esperti.


Quindi anche utilizzando intraweb devo comunque riscrivere la mia
applicazione vero?
Grazie mille MasterMind

 wrote:
C'e' una lista ancor piu' corposa qui: 
http://delphi.about.com/cs/toppicks/tp/aatpwebrad.htm?terms=web+development
Conosci l'esistenza di frameworks simili ma FREE?
Ciao!
Morde.
morde [at] programmer [.] net

oops! sono off topic, sorry!


> applicazione vero?
si, e non c'e' alternativa, dal momento che la logica di funzionamento
dell'interfaccia di un'applicazione web e' profondamente diversa da quella
di un'applicazione desktop. Puoi mantenere, al massimo, il "motore" del
software, vale a dire l'accesso ai dati, le elaborazioni, ecc. ma tutto il
resto va rifatto.
Ciao, Sandro


No, mi dispiace.
Ciao,
MM

su web.
Infatti avevo capito male il thread, e frainteso la tua risposta!
Sorry :-)


sul web, ossia trasformare il modulo in pagine html?
Possibile, ma assolutamente sconsigliabile.
Oltre all'immane lavoro di trasformazione del codice (la logica del
web e` molto diversa da quella desktop) c'e` da aggiungere che,
normalmente, l'interfaccia di un'applicazione complessa mal si adatta
ai limiti del browser.  Tra l'altro il modello state-less del web non
consente di avere un'interazione veloce ed efficiente, come quella
richiesta, normalmente, da un gestionale.  Se vuoi distribuire il tuo
programma su una rete piu` o meno estesa, consenti di avere un client
desktop e un server (o un app server e un server db), i dati
viaggeranno normalmente in rete e le interfacce saranno per lo meno
usabili.  Dovrai prevedere un sistema di aggiornamento (normalmente lo
si fa tramite download diretto da parte del client) del software
client, allorche` lo aggiorni (questo e` IMHO l'unico vantaggio del
modello web centralizzato, che ti consente di avere applicazione e
dati in un unico punto).

Newsgroup: it.comp.lang.delphi
Titolo: Turbo Delphi

Buongiorno a tutti,
ho fatto un grosso errore e ho installato erroneamente su un PC nuovo
Turbo Delphi per .NET al posto di T.D. Explorer (mai lavorare di
notte !!!!)
Dopo aver disinstallato la versione errata e installato quella
corretta mi ritrovo che non posso utilizzare T.D. perchè rimane attiva
la licenza della versione .NET.
Come si fa ad eliminare questa licenza per inserire quella
corretta ???
Grazie Mille

 corretta ???
dovresti chiedere direttamente sui forum o all'help di codegear..
Ad ogni modo, provo con la domanda idiota delle 14:47: hai riavviato 
dopo la disinstallazione? Hai rimosso manualmente il file di 
attivazione?
ciao
-- 
Morde

Innanzitutto grazie per la risposta.
Poi ho riavviato, disinstallato, reinstallato ma nulla.
Se guardo con il gestore delle licenze mi dice che c'è registrata la
versione per .NET.
Provo con help di codegear.
Ciao
Newsgroup: it.comp.lang.delphi
Titolo: Mi serve un aiuto per gestire un doc Word con CreateComObject!!

Questa è una parte del codice con cui sto provando la cosa. Le variabili
sono tutte OleVariant, ma quando eseguo l'istruzione
"word.ActiveDocument.SaveAs" mi da un errore di tipi incompatibili. Stessa
cosa eseguendo l'istruzione "word.documents.open". Andando per esclusione la
variabile che stona dovrebbe essere Filename, ma non riesco a comprendere
come devo impostarla!!! è l'unica cosa che mi manca per finire il prototipo
da inserire sul mio programma...Grazie alle anime pie!! a Buon Rendere!!
Moreno
Word:=CreateComObject( Class_Application ) as _Application;
      if Assigned(word) then  begin
         app:=word.Application;
         recent:=word.RecentFiles;
         quanti:=recent.Get_Count;
         if quanti>1 then
         recent.Item(1).Open;
          try
         word.Set_Visible(true);
         FileName :='Pippo.doc';
         FileFormat:= wdFormatDocument;
         LockComments:= True;
         Password:= False;
         AddToRecentFiles:= False;
         WritePassword:= False;
         ReadOnlyRecommended:= False;
         EmbedTrueTypeFonts:= False;
         SaveNativePictureFormat:= False;
         SaveFormsData:= False;
         SaveAsAOCELetter:= False;
         word.ActiveDocument.SaveAs(FileName, FileFormat, LockComments,
Password, AddToRecentFiles, WritePassword, ReadOnlyRecommended,
EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData,
SaveAsAOCELetter);

da inserire sul mio programma...Grazie alle anime pie!! a Buon Rendere!!
io tempo fa avevo fatto qualcosa di simile ma piů semplice del tuo caso.
Avevo utilizzato "CreateOleObject" e poi altri comandi OLE per far quello
che mi interessava.
Sinceramente non ho provato il tuo codice, se trovi ulteriori problemi
scrivimi che riesumo il vecchio codice.
Poi per essere piů preciso, dovrei vedere l'help per i comandi OLE.
Ti saluto......ciao !!
Antonio Tarolla
BSSoftware Tips Mailing - List Support

Ti ringrazio intanto per avermi risposto
Il mio problema persiste pur avendo consultato l'help microsoft sulle
chiamate
metodi e proprietà degli oggetti in visual basic.
Io non ho fatto altro che usare la classe Document della Type Library
Word_TLB dove definisce la funzione con quei parametri come OLEVARIANT.
Ho consultato l'help e per ogni punto mi dava le opzioni obbligatorie e
facoltative.
Per non sbagliare le ho riempite tutte con i valori più opportuni.
Sta di fatto che non riesco aprire e salvare il documento !!! le altre
funzioni (dove ci sono dati booleani o costanti funzionano) non so che
dire.....
grazie se ti viene in mente qualcosa....
se ti può essere utile ti spedisco l'intero progettino con cui sto provando
questa cosa.....(con tutti i difetti di un progettino fatto per provare
qualcosa).
Grazie
Newsgroup: it.comp.lang.delphi
Titolo: Access --> Excel

Ciao a tutti.
Ho un bottono che quando lo premo deve copiare i dati contenuti in una
tabella mdb o db (è uguale ce l'ho entrambe) in un foglio di lavoro Excel.
Esempio:
NOME     COGNOME    DATA
andrea    verdi           15/07/1980
...          ...               ...
Il foglio excel deve essere semplice: ossia nella riga 1 deve avere le
intestazioni e nelle colonne A, B, C deve contenere i 3 campi della tabella
mdb o db.
Ciao.

 ha scritto nel messaggio
news:_0t39.37554$n04.1...@twister2.libero.it...

const
  xlWBATWorksheet = $FFFFEFB9;
var
    XlApp, XlBook, XlSheet: Variant;
//*****************************
// CREAZIONE DEL FOGLIO EXCEL
 // Ole actions
 try
  XlApp  := CreateOleObject('Excel.Application');
  XlBook := XlApp.WorkBooks.Add(xlWBATWorksheet);
  XlSheet  := XlApp.WorkBooks[1].Sheets[1];
  if VarType(XlApp) <> VarDispatch then begin  // If we are not connected
with MsExcel
   ShowMessage('MS Excel 2000 not this installed');
   Exit;
  end;
 except on E: Exception do
  XlApp.Quit;
  ShowMessage(E.Message)
 end
//************************************************
//*************************************************
//********** SCRIVI
if VarType(XlApp) <> VarDispatch then
  Exit;
XlSheet.Cells[1,1]:= 'INTESTAZIONE 1';
XlSheet.Cells[1,2]:= 'INTESTAZIONE 2';
XlSheet.Cells[1,3]:= 'INTESTAZIONE 3';
i:=2;
 while not Table1.Eof do
    begin
      XlSheet.Cells[i,1]:= Table1.FieldByName (CAMPO1).AsString;
      XlSheet.Cells[i,2]:= Table1.FieldByName (CAMPO2).AsString;
      XlSheet.Cells[i,3]:= Table1.FieldByName (CAMPO3).AsString;
      inc (i);
      Table1.Next
    end;
//****************************************************
ciao e speriamo che funzioni :)

 ha scritto nel messaggio
news:fit39.37611$n04.1...@twister2.libero.it...


 ha scritto nel messaggio
news:eau39.37767$n04.1...@twister2.libero.it...


 Miiii.
Non ci posso CREDEEEEREEEEEEE :) :) :)

Se ti interessa esiste anche un componente che esporta i dati in Excel, CSV
e html.
Si chiama scExcelExport e lo trovi su  Delphi Super Page
Ciao

ma si basa sempre su OleAutomation?
Bye
A.
Newsgroup: it.comp.lang.delphi
Titolo: aggiornamento dell'exe di un programma mentre è in uso

buonasera a tutto il NG
ho il problema di aggiornare l'exe di un programma delphi mentre questo è in 
uso
spiego meglio:
l'exe risiede su file ssytem in una cartella di rete mappata a tutti gli 
utenti con la lettera M e hanno il relativo collegamento sul desktop
ho la necessità di aggiornare l'exe secondo i vari rilasci fatti, ma questo 
è normalmente in uso da parte degli utenti dalla mattina alla sera, quindi 
attualmente lo faccio al mattino o alla sera...
ho già provato a creare un file bat oppure cmd che richiami l'exe, come si 
faceva coi vecchi programmi dos, ma l'exe resta comunque in uso da parte 
degli utenti...
come si può fare? anche se faccio un exe che lancia l'exe principale, 
quest'ultimo poi risulta in uso
idee?? suggerimenti??
ringrazio tutti per i consigli che mi darete 

l'aggiornamento viene effettuato manualmente o tramite qualche
applicazione?? potresti far in modo che se un client lancia per primo
l'aggiornamento questo scarica il nuovo exe e dopo averlo chiuso lo
sovrascrive tenendo il file in locked
Simone

Se puoi tenere per una giorata i client disallineati puoi fare così...
Lato Client:
--------------
Link ad un link "B" sul server (leggi sotto)
Lato server
------------
link "B" al reale .exe
Quando vuoi aggiornare, anche a metà giornata, cambi il link "B" sul server
e man mano che i client chiudono/riaprono l'applicativo, si trovano la nuova
versione.
Altra soluzione: schedulare :)  (con il buon vecchio scheduler :)

 trovano la nuova versione.
Geniale!
-- 
Jax
====
Esitare va benissimo, se poi fai quello che devi fare.(B.Brecht)

Incredibbbile...č la prima volta che qualcuno mi ringrazia per un
consiglio...(o č il primo consiglio decente che propongo?)
:)
Ciauz!
(Per le cose strane sono bravo...per le cose banane sono k.o.)

 (Per le cose strane sono bravo...per le cose banane sono k.o.)
E quali sarebbero le cose banane? ROTFL
-- 
Jax
====
E' difficile credere ancora negli ideali, ma per un compenso adeguato
si puň fare. (Fabio Di Iorio).

Se guardi i miei post/richieste...sono tutte richieste "banana" (banali)

 (banali)
Beh lo spirito di un ng è fatto anche dalle domande banana. Se nessuno ne
fa, quelli che avranno quel problema banana in futuro, non avranno la
soluzione...
E poi "banale" non esiste: ciò che è banale per me può non esserlo per te, e
viceversa... comunque, di cosa stavamo parlando? :D
-- 
Jax
====
"E' possibile accedere a Internet da qualsiasi posizione."
Introduzione a Windows98 (seconda edizione)
Newsgroup: it.comp.lang.delphi
Titolo: D2005 e Componenti .pas

Ciao a tutti, su D7 avevo alcuni componenti che non avevano il classico 
Package .DPK ma solo il.pas e tramite il menů componenti instal component 
riuscivo senza problemi ad installarli, ora con D2005 c'č un modo analogo? 
Io ho provato a cercarlo per parecchio tempo ma non l'ho trovato, qualcuno 
di voi che ha il mio stesso problema ci č riuscito? se si come?
Ciao ciao
-- 
Lorenzo Mendini Iz2FOS
http://www.polopositivo.org
 (Home Page) 

 
Un amico ha avuto lo stesso problema e ha dovuto creare i dpk del pas 
per poi poterli installare leggendo la documentazione dice appunto 
questo purtroppo non conosco tutti i dettagli.
Omega

Grazie delle info, scusa ma come si creano i DPK? li devo creare su D7 o sul 
2005? TNX 

 
humm ad occhio sul 2005, ripeto purtroppo non ho mai provato a costruire 
un dpk ma so che è la strada da seguire.
Omega

 di voi che ha il mio stesso problema ci è riuscito? se si come?
Come ti è stato suggerito, devi creare il tuo package.
Ne abbiamo parlato abbastanza recentemente, hai provato a fare una 
ricerca con Google?
Per creare un nuovo package, è sufficiente richiamare la finestra di 
dialogo [File|New|Other] e selezionare l'elemento corrispondente.
In genere, è buona abitudine creare un package "runtime" contenente il 
codice dei componenti vero e proprio (il file PAS) a tua disposizione e 
un package "designtime" che contenga solamente la registrazione, gli 
eventuali ComponentEditor e PropertyEditor.
Per fare prima, potresti creare semplicemente un package "designtime + 
runtime" e installarlo, dopo aver aggiunto il file PAS del componente 
che hai scaricato. La tipologia di package si regola dalla finestra 
delle opzioni del progetto del package.
Ciao,
   Marco.
-- 
Marco «Alka» Breveglieri	
http://www.marco.breveglieri.name
  «bvmcnxsjlkhròhyeq, potrei scrivere a questo punto,
   se mi addormentassi sui tasti» (Daniele Luttazzi)
Newsgroup: it.comp.lang.delphi
Titolo: [GM] Problema con Delphi

Ultimamente paciocco solo più in asp... asp asp asp e ancora asp...
cmq è vario (molto) divertente... non trovate?... si possono fare un sacco
di cose in internet...
...
come da un po' di anni... il pc non è niente senza un modem... senza
internet... una scatola senza possibilità di crescita... di espansione...
vita...
ora siamo arrivati a fare delle distinzioni tra applicazioni on e
off-line... quelle offline sono dei pacchetti senza possibilità di
crescita... di espansione... vita...
pero' non mi fido dei tipi che mi danno gratis (o anche a pagamento) lo
spazio per mettere in intènnèt il sitarello (db compresi)... c'è da
fidarsi?... e se "per sbaglio" mi cancellano tutto? e se gli succede un
casino sul server?... buaaaa!... no dai... speriamo di no... che non
capitino mai ste cose...
Questa sera vado al Macchia Nera a giocare a qualche gioco di ruolo... forse
Martelli da Guerra... forse D&D (non Delpy & Dintorni!!!)... dorse Angeli e
Demoni... si vedrà... ci si becca!
Mark il Gatto
Mark il Macchia

Demoni... si vedrà... ci si becca!
Per cortesia, scrivi messaggi in tema col topic e con un po' piu' di
senso. Spero ti renda conto che il corpo del tuo messaggio non ha
nulla a che vedere con l'oggetto dello stesso e con il topic del
gruppo.
--
Andrea Laforgia (ICQ 87230455)
http://www.geocities.com/AndreaLaforgia
"ci sono tre tipi di persone nel mondo : quelli che
 sono bravi in matematica e quelli che non lo sono."

 vita...
[snip]
quanti anni hai? 14? o meno?
Ciao, Sandro

quanti anni hai? 14? o meno?
Sono d'accordo col commento di Andrea, sul fatto di scrivere cose
sensate e on-topic (d'altra parte, è una regola del NG).
Ma non mi pare sia scritto in alcun luogo che il NG è vietato ai
minori o sia accessibile solo da un'età in su. Quindi, per favore,
asteniamoci dal fare commenti circa l'età. In altri NG scrivo con
persone di 12 anni che sanno il fatto loro e danno del filo da torcere
ai quarantenni. Per un commento come il tuo una volta è nata una
disputa che, secondo me, si poteva e si doveva evitare.
Grazie!
P.S. Conosco trentenni che giocano appassionatamente a D&D e
WarHammer. Giochi come questi non discriminano l'età, informati :)
CIAO.
/|/|/ Bozzy \|\|\

 ha scritto nel messaggio
news:93mb3g$b48b5$1...@ID-43509.news.dfncis.de...


 minori o sia accessibile solo da un'etą in su. Quindi, per favore,
ti vorrei far notare che la mia era solo una curiosita', e che il tuo
messaggio e' frutto di tue fantasie personali ;)
Ciao, Sandro

> gheeeee, non te lo dico, poi vieni sotto casa mia a farmi cose brutte...
eddaiiii volevo solo chiederti se mi presti qualche ciddi' piratato di
pleistescion e il monopattino :)))
Ciao, Sandro

messaggio e' frutto di tue fantasie personali ;)
Si vabbč, pensala come vuoi... certo poteva essere interpretato in piů
di un modo (cioč, non solo in modo "benigno"). Ripeto, ho visto brutte
scene in altri NG per messaggi simili al tuo. Magari ci metti una
bella :) la prossima volta. Il mio vuole essere un buon consiglio.

Newsgroup: it.comp.lang.delphi
Titolo: ambiente delphi free ?

Salve ragazzi , sapete se esiste un qualche ambiente di sviluppo visuale 
compatibile col delphi ma gratuito con cui possa sviluppare programmi da 
rilasciare sotto licenza gnu gpl o freeware ?
Ho gia' provato con lazarus ma non mi trovo molto bene
grazzie
www.freelanders.it

 Ho gia' provato con lazarus ma non mi trovo molto bene
Potresti spiegarci più in dettaglio perchè non ti trovi molto bene ? 

 ha scritto nel messaggio 
news:4181f575$1...@x-privat.org...

Io qui a casa (XP Pro SP2) ho provato l'ultima versione stabile (o presunta 
tale) e dopo pochi secondi che apro un menu qualsiasi l'applicazione mi 
crasha...
Stefano

Newsgroup: it.comp.lang.delphi
Titolo: [D2005] Demo TXMLTransformProvider

Salve a tutti,
Sono alle prese (per la prima volta) con la classe
TXMLTransformProvider, come nel più classico dei casi volevo
utilizzarlo collegato ad un TClientDataSet e realizzare una piccola
applicazione che utilizza come database locale un file XML.
Ho iniziato studiandomi l'help e non ho incontrato grosse difficoltà,
ho creato i documenti di trasformazione con l'XML Mapper e li ho
indicati nel TXMLTransformProvider, ecc...
Il problema sorge quando la mia applicazione esegue la open del
TClientDataSet, invece che aprire i dati presi dal file XML ottengo il
seguente errore:
"Variant or safe array is locked."
Convinto di aver fatto un qualche errore da novizio dell'argomento mi
vado ad aprire il progetti di esempio fornito con il mio D2005, nella
fattispecie:
C:\Programmi\Borland\BDS\3.0\Demos\DelphiWin32\VCLWin32\Internet\XMLTransformProvider
Indovinate un po'?
Avvio l'eseguibile e che errore ottengo?
"Variant or safe array is locked."
A questo punto ho il sospetto che debba installare un qualche SDK nel
mio PC....
Qualcuno sa dove può essere il problema?
Ciao
PS: se cerco "TXMLTransformProvider locked" su google non escono
risposte ma solo altre segnalazioni di problemi simili...

 risposte ma solo altre segnalazioni di problemi simili...
Prova a cercare "Variant or safe array is locked Delphi" su GoogleGroups ...
Ciao
ACSH
-- 
http://ctc2007-catand.blogspot.com/
 

unit MidasLib.
L'indicazione era quella giusta, avevo la midas.dll errata ! 
Il problema è che servirebbero n pc, ho troppe versioni di Delphi
tutte sulla stessa macchina.... 
Ciao e grazie

 tutte sulla stessa macchina....
oltre a questa soluzione, esiste quella piu' economica di tenere piu'
ummagini sulla stessa macchina, e caricarsele all'occorrenza (vedi VMWare e
simili)
ciao
-- 
Morde
Newsgroup: it.comp.lang.delphi
Titolo: Pulire una TImage

Sto impazzendo: come faccio a pulire un oggetto TImage?
Vi riporto il codice del mio programma:
begin
 Immagine --> clear ?
 Immagini.GetBitmap((Sender as TRadioButton).Tag , b);
 Immagine.Picture.Bitmap := b;
end;
In pratica ogni volta che questa procedura viene chiamata viene
caricata in una TImage (Immagine) una bitmap (b) estrapolata da una
TImageList (Immagini). Il problema è che se non pulisco la TImage
prima di ogni caricamento, le varie immagini si vanno a sovrapporre
creando un bruttissimo effetto.
Aiutoooo!!! Grazie
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Sto impazzendo: come faccio a pulire un oggetto TImage?
Image1.Picture := nil;
-- 
Morde. 
(morde at programmer dot net)

 Image1.Picture := nil;
Non funziona  :(
Continuo ad avere la sovrapposizione delle immagini



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

 wrote in message
news:qZieb.145067$
hE5.4...@news1.tin.it
[CUT]
Perfetto, cosě funziona!!!
Grazie


svuoti il controllo TImage
[cut]
volevo solo chiedere ...
questa assegnazione a nil non fa perdere in memoria l'istanza a
cui puntava precedentemente la proprieta' Picture?
...
Oppure ci pensa il componente TImage a dare il free?
	Ciao
	MassimoB
 

 Oppure ci pensa il componente TImage a dare il free?
La proprietą Picture viene assegnata tramite un metodo SetPicture() che
richiama a sua volta il metodo Assign(), il quale controlla se il valore
č nil e, in tal caso, richiama un altro metodo SetGraphic() che provvede
ad effettuare la Free della classe TGraphic che rappresenta la figura
per crearne poi una nuova.
In definitiva, dopo una serie di interminabili chiamate, si ottiene il
Free. :-)


Free. :-)
[cut]
come pensavo anche io al momento stavo seguendo lo stesso percorso ...
ed effettivamente ci pensa lui a rilasciare l'istanza dalla memoria ... 
	Ciao
	MassimoB
Newsgroup: it.comp.lang.delphi
Titolo: TADOStoredProc dove sbaglio?

ammetto che č la prima volta che utilizzo questo componente :-(
ma non capisco dove sia l'errore.
Di seguito riporto il codice "incriminato", dopo ExecProc mi compare il messaggio
d'errore: EOleException "Uno o piů errori durante l'elaborazione del comando"
(non č che sia molto chiaro)
   adoSP := TADOStoredProc.Create(nil);
   adoSP.Connection := adoConn;  // adoConn č una connessione al Database
   adoSP.Parameters.CreateParameter('Return_Value',ftInteger, pdReturnValue, 0,null);
   adoSP.Parameters.CreateParameter('p_cli',ftString,pdInput,14,null);
   adoSP.Parameters[1].value := '054653110';
   try
      adoSP.ExecProc;
      i := adoSP.Parameters[0].Value;
      ShowMessage('return: ' + IntToStr(i));
   except
   on E:Exception do
    begin
    ShowMessage(E.Message);
  end;
Quesito 2:
Utilizzando il BDE ero abituato a "trappare" gli errori con qualche cosa del tipo:
    on E: Exception do
      begin
        if (E is EDBEngineError) then
        begin
          iErrorCode  := EDBEccezione.Errors[0].ErrorCode;
         sErrorMessage := Format('EDBEngineError - Fallita stored procedure: ErrorCode: %d, Motivo:
%s (DatabaseName: %s)',
                        [iErrorCode, FormatBDEErrorString(EDBEccezione),qrQuery.DatabaseName]);
         end
     end;
č possibile anche in ADO (immagino) ma come si chiama la classe?
Nella documentazione di Delphi NON trovo esempi...
Grazie
Giň

 ha scritto nel messaggio
news:aqasrp$87juh$1...@ID-161979.news.dfncis.de...

Newsgroup: it.comp.lang.delphi
Titolo: ADO query

Ciao
Premetto che non ho mai usato ADO, ma sempre il bde..
Sull'insert in una tabella ado ho un'errore quando vado ad immettere stringe
con lunghezza nulla
o meglio: se io passo al parametro un edit.text su cui non è stato digitato
nulla ho l'errore che dice che il parametro non è stato definito
correttamente, eppure nella tabella ho specificato Consenti lunghezza zero a
si
q.parameters[0].value:= trim(edit1.text);
se sull'edit non viene digitato nulla ho l'errore
Da cosa può dipendere
Grazie
Andrea


In alcune situazioni, la differenza tra stringa nulla e valore nullo è
molto sottile; mi sembra di ricordare di aver avuto un problema simile
tempo fa.
Prova     q.parameters[0].value := null (aggiungendo la unit
variants.pas nelle uses)
Ciao.
-- 
Ore 18.30: premo invio.

 variants.pas nelle uses)
questo non č corretto.
Il modo giusto č:
q.parametrs[0].CLEAR
Bye
A

Grazie
Spero di aver capito cosa chiedevi.
-- 
Morde. 
morde[at]programmer[.]net



Mi spiace contraddirti, ma nei parametri ADOQuery il metodo clear non
esiste, ti confondi con TField.


 esiste, ti confondi con TField.
Non devi dispiacerti.
Se dico kazzare è giustissimo che tu me le faccia notare.
Mea culpa, credevo che ado usasse parametri di tipo tParam che hanno il
metodo clear.
Bye
A

 ha scritto nel messaggio
news:7156dv4g7mbaj039e...@4ax.com...

Hai capito alla perfezione, infatti si tratta di Access
Purtroppo ho già fatto ciò che mi consigli ma... niente
se passo al parametro una stringa di lunghezza zero il jet s'inca@@a
Ho anche scaricato dalla Borland l'aggiornamento ADO (io ho Delphi5) ma
niente da fare!!
Ma?!
Ciao e grazie comunque
Ma..


Senti, impacca tutto in uno zippone e mandamelo in email, vedro' che posso
fare, ovviamente non ti garantisco niente.
Se ti va e se ti fidi.
Ciao


 ha scritto nel messaggio
news:TxHTPp2Qkavqrb...@4ax.com...

Purtroppo niente da fare,
inoltre la unit variants non è trovata, e quindi non posso aggiungerla....
ma?!
Io uso D5 e comincio a sospettare che ci sia qualche errore del db...
Ciao e grazie comunque
Andrea

Newsgroup: it.comp.lang.delphi
Titolo: creazione dinamica oggetti

Il seguente codice dovrebbe creare degli oggetti dinamicamente e poi
visualizzarli sullo schermo. Viene compilato correttamente, ma non funziona.
Perché ?
Grazie
//////////////////////////////////////////////////////////////////
Var
cerchio : array[0..10] of TShape;
i : integer;
begin
 for i := 0 to 10 do
        begin
         cerchio[i] := TShape.Create(self);
                cerchio[i].Height := random(50);
                cerchio[i].left := random(200);
                cerchio[i].top := random(200);
                cerchio[i].width := random(50);
                cerchio[i].visible := true;
        end;
////////////////////////////////////////////////////////////////////////////
//////

 Perché ?
mi pare che devi mettere anche controllo.parent:=<un altro controllo>
generalmente l'altro controllo e' la form.
scusatemi se ho detto una cavolata :)

 ha scritto nel messaggio
news:9balbl$j9c$1...@fe1.cs.interbusiness.it...


 ha scritto nel messaggio
news:jNdC6.6523$lu5.1...@news1.tin.it...

Newsgroup: it.comp.lang.delphi
Titolo: Ado per DB MDB

Salve a tutti,
Ho trovato come accedere ad un mdb e restituire ad un dbgrid il risultato
di una query. Ho usato un TADOQuery, un TADOConnection e un TDataSource. 
Il problema è che dovrei accedere ad un file mdb del quale non so nulla,
quindi la mia necessità sarebbe ottenere una lista delle tabelle in esso
presente con i rispettivi campi, in modo da poter costruire la stringa di
SQL query adatta a quanto cerco. Come faccio ad ottenere queste
informazioni?
Grazie mille, Poochie

 Grazie mille, Poochie
-- 
Ciao, Anto', [37, 143, AQ] 
MB C SC 220 CDI Magma Rot
"Di sempre cio' che senti e fai cio' che pensi."
    G.G. Màrquez

presente con i rispettivi campi
I metodi della ADOConnection ti vengono in aiuto:
   ADOConnection1.GetTableNames(ComboBox1.Items, ChkSystemTables.Checked);
   ADOConnection1.GetFieldNames(ComboBox1.Items[i], list);
cerca nella guida con F1 su Adoconnection per maggiori metodi e infos.
Ciao!
-- 
Morde. 
(
mo...@despammed.com
)
M-List di icld: 
http://it.groups.yahoo.com/group/icld/

lista dei campi di una data tabella.
a ciň che ti ha suggerito corretamente Antonio
aggiungerei che ...
volendo i campi li puoi vedere direttamente dalla
connection mediante il metodo
GetFieldsName(tabella,StringsDiRisposta)
comunque aggiungerei di dare un'occhiata anche ad
OpenSchema e GetProcedureNames per avere una panoramica
abbastanza completa del componente AdoConnection
relativamente allo schema e struttura del DB.
Ciao MassimoB
 

Anno domini Wed, 14 Apr 2004 23:24:26 GMT, Poochie, nobilissimus apud
internautas, scripsit:
[CUT]
Grazie a tutti, era piuttosto semplice!
Newsgroup: it.comp.lang.delphi
Titolo: Strano errore eseguendo stored procedure da Dalphi.

Salve,
ho un programma fatto da diversi mesi che usa stored procedure memorizzate
in IB ed eseguite da Delphi attraverso l'apposito componenete TStoredProc.
Il programma fino ad oggi ha sempre funzionato mentre ora quando
eseguo StoredProc1.ExecProc mi da questo errore:
"Project ... raised exception class EDBEngineError with message "Translate
Error. Value out of bounds.', process stopped.
Ho reinstallato Delphi4 con patch, il DBE ver 5.01 e Interbase 5.6 ma
niente. Ho fatto un validate del database ma niente. Ho addirittura
ripristinato
il database e il programma da un backup di gennaio ma niente.
Che cavolo è successo?
Da notare che la spored procedure lanciata dall' IterBase ISql funziona
e restituisce i valori che mi aspetterei (roba tipo 'N', 0 etc) e che sono
congrui con il tipo dei parametri attesi che sono ftString e ftFloat.
Grazie
Mirko Guidolin

 Che cavolo è successo?
Se anche cos' non va, verificherei il pc!
Questo problema lo da da una sola macchina o da + macchine?
Altre operazioni danno problemi?
Il disco fisso ha almeno 100mb di spaziwo libero?
6 sicuro della inetgrità del disco fisso?
Che sistema operativo?
saluti
AS
-- 
Posted from  [212.177.19.163] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Che sistema operativo?
Intanto il sistema è un W98SE che non sembra dare problemi, lo scandisk
non riporta errori, e tutto il resto sembra funzionare ad es. interrogazioni
sui
dati, stampe etc.; spazio libero ne ho 500MB.
Oggi preparo un secondo PC per provare ma mi romperebbe reinstallare
tutto senza capire qual'è il problema.
Resto in attesa se avete altre idee.
Grazie e ciao
Mirko
ps. Cacchio, scusa per la mail privata ma non mi sono accorto di aver
risposto a te e non al ng.

 andavo usando il 5.01.
Risolto, dico come sperando possa essere utile se capita ad altri...
precedentemente avevo solo reistallato i BDE senza cancellare niente,
adesso ho reinstallato sempre la versione 5.01 ma prima ho pianato via
la cartella di installazione del BDE e adesso è tornato tutto a funzionare.
Probabilmente qualche archivio corrotto nelle librerie del BDE che
però non venivano ripristinate con la semplice reinstallazione.
Ciao
Mirko
ps. Proverò comunque il BDE5.2

Prendi la procedure e copiati il testo.
Poi ne crei una nuova con un nome diverso e gli appioppi il codice
copiato dall'altra.
Poi, provi ad usare questa e vedi cosa succede.
Dimenticavo una cosa: server e client ib sono allineati come versione?
Saluti


Newsgroup: it.comp.lang.delphi
Titolo: Dataadapter Visual Studio 2005 (VB)

Ciao a tutti, in VB 2005 pur avendo selezionato i componenti di dataset, 
dataadapter ecc non compaiono tra quelli disponibili, tra quelli sqlXXXX 
compare solo sqlDataSource ?
Gli altri li riesco ad usare solo nel codice ma non in visual mode.
Qualcuno conosce il motivo ?
Grazie in anticipo
Francesco 

 Ciao a tutti, in VB 2005 [...]
Sei "leggermente" OT... :-|
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)
Newsgroup: it.comp.lang.delphi
Titolo: 'liberare' un file mdb dal lock senza chiudere il programma

Ciao a tutti, ho fatto diversi programmi che accedono ad altrettanti 
file mdb, e ovviamente quando avvii il programma compare il file di 
lock. Il problema è che fino a che non chiudo la mia applicazione il 
file di lock non va via, quindi non posso compattare il file mdb. Ho 
provato ad eseguire delle procedure che mi chiudano tutte le 
connessioni con mdb (ADOConnection, ADOTable, ADOQuery, eccetera) però 
il lock rimane, devo per forza chiudere il programma; non è attivo più 
niente perchè ho fatto passare tutte le griglie e i campi ed è tutto 
vuoto. Dove sbaglio? Ho fatto passare tutte le proprietà e le ho 
manovrate in diversi modi ma niente da fare.
Grazie.
Inviato da 
www.mynewsgate.net

 Grazie.

Adesso che ci penso non ho mai provato ad eseguire il prg da solo, cioè 
lo avviavo direttamente da delphi, quindi probabilmente è proprio delphi 
che tiene aperta la connessione. Stasera provo.
Inviato da 
www.mynewsgate.net

stesso che tiene aperta una conessione e non liberare l'mdb.
Infatti e' cosě.
-- 
Morde. 
(
mo...@despammed.com
)
Newsgroup: it.comp.lang.delphi
Titolo: Versione trial di un applicativo delphi

Buona sera ancora a tutti
Volevo sapere se conoscevate qualche tips su come poter rendere una mia 
applicazione delphi trial 30 gg o 20 gg
io avevo pensato a scrivere nel registro ecc...ecc...
pero mi sembra troppo lunga bho non saprei consigliatemi voi
un abbraccio
:-)

ma il thread aperto da jano dal titolo "Se invece si usasse il numero di 
volte di utilizzo del gestionale?" lo hai visto?
Mica 6 uno di quelli che posta su un ng senza dare manco un occhio ai 
msg esistenti, vero?
-- 
Alberto Salvati
A NEAPOLITAN Delphi Developer who is studying c# and .net
"Dicette 'o pappece 'nfaccia 'a noce dammi 'o tiempo che pure te spertoso"

 
oddio scusami e scusate non lo avevo proprio visto grazie mille

 applicazione delphi trial 30 gg o 20 gg
Potresti usare una versione "trial" di Delphi: l'eseguibile condivide lo 
stesso periodo di validità dell'ambiente e cessa di funzionare alla 
scadenza. :-P
Ovviamente, sto scherzando... ;-)
-- 
Marco «Alka» Breveglieri	
http://www.marco.breveglieri.name
  «bvmcnxsjlkhròhyeq, potrei scrivere a questo punto,
   se mi addormentassi sui tasti» (Daniele Luttazzi)

 ha scritto nel messaggio 
news:k6MGe.28070$fm.19...@news4.tin.it...


Avrai sicuramente letto il mio thread ma vorrei spiegarti il motivo che 
mi ha spinto ad agire in questo modo:
Ero partito anche io ad utilizzare il discorso delle date ma poi mi sono 
reso conto che se una persona mi tira indietro l'orologio il mio 
applicativo non funziona.
Ciò perchè io non blocco tutto il programma ma solo alcuni moduli usando 
codici diversi che scrivo nel registro opportunamente criptati.
Da questo esame che ho fatto ho deciso bloccare a 50 utilizzi la 
possibilità di utilizzare alcune form.
In pratica dopo 50 utilizzi il programma blocca le funzioni attribuendo a 
DBNav.Visible:=False;
Ciò impedisce l'insrimento di nuovi record.
In oltre ho utilizzato i componenti scaricati dal sito:
http://www.maxcomponents.net/components.html#PROTECTOR
Per generare il numero seriale in base alla licenza.
Ciò fornisce al programma ulteriori sicurezze in modo da rendere il 
programma copiabile solo da gente veramente esperta.
Grazie dell'attenzione.
A presto.
 
Massimiliano Monti
Cellulare: 0039 - 335 - 8477278
Mail: 
massimili...@matia.it
--- posted by geoForum on 
http://www.delphiedintorni.it
Newsgroup: it.comp.lang.delphi
Titolo: Recupero Cartella documenti.

Salve a tutti.
Sto utilizzando il componente tdirectorylistbox.
C'è la possibilità di recuperare la cartella documenti di default e 
impostarla ?



per recuperare il path cerca sulla guida dell'sdk di windows 
SHGetSpecialFolderLocation.
Quello che ti serve è
CSIDL_PERSONAL	File system directory that serves as a common respository 
for documents.
Per un esempio d'uso guarda in shellctrls.pas (componente TShellTreeView 
della palette "samples" in D7):
procedure CreateDesktopFolder;
var
  DesktopPIDL: PItemIDList;
begin
  SHGetSpecialFolderLocation(0, nFolder[rfDesktop], DesktopPIDL);
  if DesktopPIDL <> nil then
  begin
    DesktopFolder := TShellFolder.Create(nil, DesktopPIDL, 
DesktopShellFolder);
    DisposePIDL(DesktopPIDL);
  end;
end;
Per impostarla non so, ma potresti guardare su MSDN. 
Così senza aver guardato, io accederei al registry e cambierei il valore 
della chiave
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User 
Shell Folders\Personal
-- 
Mauro Falzari 
 
  La teoria è quando si sa tutto ma non funziona niente. 
  La pratica è quando funziona tutto ma non si sa il perchè. 
  In ogni caso si finisce sempre a coniugare la teoria con la pratica: 
  non funziona niente e non si sa il perchè. 
   (Albert Einstein)
Newsgroup: it.comp.lang.delphi
Titolo: Da array of byte a string

Salve a tutti!
Ho un array [0..19] di byte, con valori che possono (ovviamente) andare da
$00 a $FF. Devo mettere il contenuto di questo array in una variabile di
tipo string (non vi sto a spiegare perchč, ma deve essere proprio una
variabile string). Ovviamente il codice:
var
  a: array[0..19] of byte;
  s: string;
begin
 {...}
  s:=StrPas(@a);
  {...}
end;
non va bene, perchč i byte $00 vengono considerati terminatori e la stringa
cosě viene troncata. Un ciclo tipo:
SetLength(s,20);
for i:=0 to 19 do
 s[i+1]:=chr(a[i]);
Mi sembra davvero poco efficiente.
Qualcuno ha qualche idea per aiutarmi? Grazie 1k!!
--
Un Ippatsu in multiprecisione
ICQ: 135471013

Mi sembra davvero poco efficiente.
Parli di efficienza per un array di 20 elementi ?
-- 
Andrea Laforgia
Open Delphi Manual
http://groups.yahoo.com/group/delphi_open_manual/

 Parli di efficienza per un array di 20 elementi ?
Giusto, di per sè ci vuole un istante, il problema è che la procedura che
contiene questo codice viene chiamata anche 5000 volte (è come considerare
un array di 100000 elementi?). Per questo vorrei qualcosa di più efficiente.
--
Un Ippatsu che optimalcode (dot) com è sparito...
ICQ: 135471013

un array di 100000 elementi?). Per questo vorrei qualcosa di più efficiente.
A parte che una funzione che viene richiamata 5000 volte e lavora su
array di 100000 elementi mi fa pensare a dei seri problemi di
progettazione del programma, la trasformazione da array di caratteri
(che inizi dall'indice 0) a stringa, si può ottenere con StrCopy.
  StrCopy(PChar(S), @A);
Però devi assicurarti che l'array contenga anche il terminatore nullo.
Voglio ben sperare che quei byte siano tutti caratteri stampabili.



var
  a: array[0..19] of Byte;
  s: String;
begin
  {...}
  SetLength(s, 20);
  Move(a[0], s[1], 20);
  {...}
end;
Ciao,
Stefano
Newsgroup: it.comp.lang.delphi
Titolo: Cosa sbaglio?

Salve NG!!!
Tutto bene?
Sentite un po'....
questa č una Function fatta da me...
==========================================
function GetWinDir:string;
var winPath:pchar;
begin
     getwindowsdirectory(winpath,255);
     getwindir:=strpas(winpath);
end;
==========================================
...che mi restituisce il percorso della directory Windows....
Il mio problema sta nel fatto che quando richiamo tale funzione sull'evento
OnCreate della form principale della mia applicazione mi si blocca tutto č
devo terminare Delphi dalla lista dei Task che compare con
CTRL+ALT+CANC...quando la richiamo in qualsiasi altro punto del programma mi
da'
il seguente errore:
======================================================
Access violation at address 00421A45 in module "MioProgetto.EXE". Read of
address 575C3A2F........
======================================================
Mi sapete dire perchč??
Ringrazio anticipatamente...CIAOOOOOOOOO!!!!!!!!!!!!!!!!!!!!!!!!

 end;
Ciao! Ti sei dimenticato di allocare memoria !! Il compilatore non ti ha
dato nessun Warning ??
Cmq... se vuoi utilizzare i pchar puoi usare new, getmem o altre funzioni
per allocare la memoria...
Io consiglierei di fare cosě :
Function GetWinDir: shortstring;
Begin
    GetWindowsDirectory ( pchar(integer(@result)+1),255);
End;
Questo č un po' un barbatrucco... e dovrebbe funzionare... mi sembra ^_^
Un metodo + sicuro/pulito puň essere :
function GetWinDir: string;
var p : pchar;
begin
 getmem (p,256);
 getwindowsdirectory ( p,255);
 result := p;
 freemem (p,256);
end;
Ciao, Davide DG

 Mi sapete dire perchè??
Non allochi memoria per il puntatore (PChar punta ad un array di caratteri
con terminazione nulla...)
Dovresti fare GetMem(WinPath, MAX_PATH) e relativa FreeMem(WinPath);
function GetWinDir:string;
var winPath:pchar;
begin
   GetMem( WinPath, MAX_PATH+1 )
   GetWindowsDirectory( WinPath, MAX_PATH );
   GetWinDir := StrPas( WinPath );
  FreeMem( WinPath );
end;
oppure
function GetWinDir:string;
var winPath : array[0..MAX_PATH] of char;
begin
   GetWindowsDirectory( WinPath, MAX_PATH );
  GetWinDir := StrPas( WinPath );
end;
Dovrebbe andare...
Ciao :-)
--
(¯`·.¸¸.·´¯`·.¸¸.-> Andrea <-.¸¸.·´¯`·.¸¸.·´¯)
AntiSpam: rimuovere il trattino basso dall'indirizzo per rispondere
AntiSpam: remove the underscore from the e-mail address to reply