mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.delphi
Titolo: Crash su apertura eseguibile Delphi7

Ciao,
ho un eseguibile compilato in D7 che accede, tramite ADO, ad un DB Access.
Su alcuni PC l'eseguibile non funziona, ciò nonostante i sistemi operativi 
siano sempre gli stessi (XP) e l'ultima versione degli MDAC_TYP risulti già 
presente (infatti, lanciando l'update dell'ultima release, la risposta è che 
il sistema è già aggiornato).
Cosa dovrei controllare ulteriormente?
Grazie.
A D'Addio 

[...]l'eseguibile non funziona
Pronto ? Dottore, mi fa male qui.

> Su alcuni PC l'eseguibile non funziona,
Non è che usi alcuni componenti Jedi versione 2 punto qualcosa?
Perchè hanno un problema di compatibilità con alcuni processori
recenti che hanno una funzione di cui ora non ricordo il nome.
Se così fosse installati la versione 3 punto qualcosa!
Ciao M.

Pensavo fosse un ng su Delphi, non su Medicina33
"Andrea Laforgia" <a.laf...@andrealaforgia.it.invalid> ha scritto nel 
messaggio news:ksgst2hka2quibkei...@4ax.com...


 Pensavo fosse un ng su Delphi, non su Medicina33
Bravo il simpaticone. Peccato che non hai colto il senso vero del mio
messaggio, giustappunto sottilmente ironico. Quando dici "non funziona"
non stai dando alcun apporto utile all'individuazione del problema.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

E' difficile essere stringati su un ng, comunque il problema è che lanciando 
l'applicativo non compare nulla, eccetto l'errore microsoft che ti invita a 
inviare la segnalazione dell'errore. Su alcuni pc va perfettamente, su altri 
l'errore diventa addirittura un loop: non invii la segnalazione e ti 
ripropone la domanda, finché non termini l'applicazione dal task mgr.
Apparentemente, non c'è discriminazione tra processori e processori.
Non era mia intenzione essere offensivo, è che non so che pesci pigliare.
"Andrea Laforgia" <x...@xx.xx> ha scritto nel messaggio 
news:erph90$lsp$1...@news.newsland.it...


inviare la segnalazione dell'errore.
OK.  Bisognerebbe capire, perň, se l'applicazione non parte proprio,
oppure parte e crasha.  Nel primo caso, bisogna investigare su
problemi inerenti l'ambiente, il sistema operativo.  Nel secondo caso,
val la pena inserire un log e vedere in che punto si ferma.  Ti č
possibile farlo ?

Ok, ci provo.
Per ora grazie 1000.
Antonio
"Andrea Laforgia" <a.laf...@andrealaforgia.it.invalid> ha scritto nel 
messaggio news:vhd3u2ltsn1ffh70l...@4ax.com...

Newsgroup: it.comp.lang.delphi
Titolo: Dimensione file database .mdb (un pò OT)

Salve,
è un pò che sto trafficando con Delphi e i database,
e oggi per fare una prova ho creato (con Access 2000)
un database file con una tabella esempio con 3 (tre) campi
(nome cognome, indirizzo, ragione sociale) in cui ho messo
5 record riempiti con dati testuali a caso, tanto per non
tenerla vuota.
Salvo il file col nome "clienti.mdb", vado a vedere su
disco C: il file e sorpresa: 140Kb!!
Ma non è un pò tantino per 5 righe di testo si e no??
Poi ho risalvato la stessa tabella in .DBF: "clienti.dbf" solo 2Kb.
Ma cosa c'è nei file MDB oltre ai dati? Che vantaggio
mi dà usare files MDB invece di DBF?
Grazie

mi dà usare files MDB invece di DBF?
Non puoi confrontare un file .mdb con un .dbf.
I .dbf rappresentano singole tabelle, i .mdb rappresentano
database interi (contenenti al loro interno una o piu'
tabelle).  Per esempio, nel misurare i .dbf non conti anche
i file indici primari .ntx e i file indici secondari .mdx.
Il file .mdb, cioe', non racchiude solo le tabelle, ma tutte
le strutture di supporto.  Anche se la dimensione del file
.mdb ti sembra eccessiva, devi tener presente che il file
non cresce di pari passo (cioe', per 10 record non occupa
280 Kb, ne' per 30 il triplo).
-- 
Andrea Laforgia
#exclude <windows.h>
Newsgroup: it.comp.lang.delphi
Titolo: Mac

Domanda stupida:
Le applicazioni compilate con Delphi funzionano su Mac?
--
_________________________________
Edmondo Di Tucci 
snar...@tin.it
www.powernetsi.it
 
edm...@powernetsi.it

 Le applicazioni compilate con Delphi funzionano su Mac?
su un processore diverso, su hardware diverso, senza le api e i servizi di
windows? magari in qualche film di hakkkker ci riuscirebbero pure, a farlo
funzionare :D
Ciao, Sandro

Me lo aspettavo che un'applicazione win32 non funzionasse su Mac solo che
speravo in qualche mandrakata tipo Kylix
I sogni son desideri


 speravo in qualche mandrakata tipo Kylix
Forse, e dico forse, su MacOS X, se creai una applicazione CLX, copi i
sorgenti della CLX e dell'applicazione su Mac, scarichi la versione per
linux del free pascal (compilatore), la ricompili e con questo compili il
tuo prog, allora e ribadisco forse potresti fare un porting dei tuoi
applicativi sotto MacOS X


no.
i processori che usa "la mela" non sono come le schifezzelle che usiamo su
pc.
Loro usano risc gia da svariati anni.
Anche usando linux, devi considerare che l'exe generato da kylix è intel.
L'unica speranza potrebbe essere il softwindows che, se esiste ancora, è un
emulatore di winsozz x mac, con tutti i pregi e difetti di questo tipo di
soluzione.
Bye
AS

 kylix è intel.
Kylix genera gli exe ? ;)
Se ne parla da tempo.  Ci sono voci che dicono che Borland
produrra' Delphi anche per Mac, partendo da Kylix.
Considerando che Kylix gira su Linux, che non e' molto 
differente da BSD e che su quest'ultimo e' basato Mac OS X e
che utilizza la libreria QT, che e' disponibile anche sotto
Mac OS X, la cosa non dovrebbe essere cosi' improbabile.
In ogni caso, il Mac e' la prima piattaforma richiesta dagli
utenti Borland nella Borland Community per un eventuale 
porting.
Borland non sembra deludere le aspettative, con gli altri
prodotti (JBuilder 6 e' disponibile anche sotto Mac OS X).
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

> Kylix genera gli exe ? ;)
Kylix genera eseguibili, ma non sono stand alone, a quanto ho visto.

 Kylix genera eseguibili, ma non sono stand alone, a quanto ho visto.
è un limite di Linux, non di Kylix. Alcune librerie (esempio: POSIX 
thread) non sono native o anche solo supportate, pur essendo standard. 
Riguardo alle interfacce grafiche, su Unix l'unico e ultimo standard è 
Xt, che *nessuno* ha mai usato (ma pare che non fosse un granchè). Uno 
standard di fatto è Motif, ma è rimasto molto indietro
-- 
 < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
     Don't stand, REACT!      version 0.0.19. C, C++ and ASM developers
                              and beta testers are welcome!
Newsgroup: it.comp.lang.delphi
Titolo: Unit Windows

Girando per la unit windows ho visto la funzione
InitiateShutDown e cercavo di provarla senza mai andare a buon fine e
cercando cercando mi è parso di capire che questa funzione serva a spegnere
macchine remote e non la macchina locale passandogli ovvamente il loro
indirizzo Ip, è vera questa cosa?
Nel caso in cui sia vera sulla macchina remota non deve essere installato
niente che riceva comandi da quella locale?
Inoltre, sono capitato di li per cercare una funzione che spenga la macchina
locale ed ho trovato Ex_Windows e simili ma non me ne funzona nessuna, mi
sapreste dare qualche suggerimento?
Antonio Volpe.


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

 macchina locale ed ho trovato Ex_Windows   ExitWindowsEx(EWX_SHUTDOWN,0);
Le funzioni che ho mostrato sopra sono quelle di cui parlavo.

 sapreste dare qualche suggerimento?
ExitWindowsEx(EWX_SHUTDOWN, 0);
--
Acqua

Newsgroup: it.comp.lang.delphi
Titolo: Disco USB

Ciao a tutti,
ho googlato un po' ma non sono riuscito a trovare nulla quindi chiedo a voi.
Avrei la necessità di leggere le caratteristiche di una chiavetta USB 
come il numero seriale e la marca (o produttore). Praticamente i 
parametri che vengono visualizzati nelle proprietà di windows.
 
Qualche idea?
 
Ps. Ovviamente il numero seriale non è quello dato dalla funzione 
GetVolumeInformation ma quello proprio del dispositivo.
 
Grazie,
David

Ho avuto la stessa necessità tempo fa.
http://rlbyte.com/product-details.php?id=4&show=desc
 
 
Ciao,
Andrea

 windows.
 
usa il WMI.
 
-- 
Alessandra
 
In sei giorni il Signore aveva creato tutte le cose: il sole, la luna,
quello scemo di Maradona, i puffi, la forfora, e tutti gli animali del
creato, tranne Andreotti, che era giï¿œ suo segretario da tempo
immemorabile. - Giobbe Covatta

Grazie a tutti.
Con le WMI ci sono venuto a capo (per la cronaca ho usato la suit di 
componenti gratuiti che potrete trovare qui' 
http://neftali.clubdelphi.com/
)
Ora, dato che le WMI lavorano passandogli il parametro 
\\.\PhisicalDriveN (dove N va da 0 al numero di unità) mi chiedevo se 
esiste una qualche funzione che dato una lettera di unità mi ritorni N o 
viceversa.
 
Grazie

Le WMI in particolari frangenti non vanno (ad esempio privilegi bassi
su Vista/Seven).
Comunque anche queste sono interessanti
 
http://www.magsys.co.uk/delphi/magwmi.asp
 
 
 
Andrea
Newsgroup: it.comp.lang.delphi
Titolo: Acquisizione dati

E' possibile acquisire informazioni da una pagina html?
Esempio: Lista dei dati di una Table o testo da una posizione della pagina
web.

nek2000 wrote:

Si.

Mi potresti dire dove poter trovare esempi?

 web.
qui la cosa si complica abbastanza se non sai l'esatta posizione, nel codice
html, di ciò che ti interessa
per esempio mi sono fatto un breve tutorial (non mi ricordo minimente dove
l'ho trovato o dove lo abbia adesso)
che chiama altavista con una certa ricerca e estrapola i risultati dall'html
di risposta.
ci sono riuscito solo perchè altavista ha alcuni tag html facilmente
riconoscibili ...
insomma per farla breve devi fare un interprete html ...
che non è cosa facilissima ... (ovviamente con il giusto sacrificio di tempo
si fa tutto ;) )
forse trovi qualche parser già fatto su sourceforge o su torry
non so dirti altro
spero ti sia utile ciò che ti ho scritto
  ciao
  Mak

 Mi potresti dire dove poter trovare esempi?
Demo Indy -> HTTP Client

Newsgroup: it.comp.lang.delphi
Titolo: XP e Delphi 4 su notebook?

Devo acquistare un portatile e dovrei scegliere tra XP e WinME.
Dato che sto studiando Delphi (versione 4 Standard) per diletto, da
principiante mi chiedevo se, nel caso scegliessi un portatile con XP
preinstallato, potrň continuare a "programmare" e fare applicazioni con
Delphi anche con quel S.O. o se sarň costretto a optare per WinME.
Cosa mi consigliate?

Newsgroup: it.comp.lang.delphi
Titolo: Il percorso corretto in Vista

Qual'è il path dove mettere le dll condivise per le proprie applicazioni in 
Vista senza dover disabilitare UAC?

 in Vista senza dover disabilitare UAC?
In genere, le DLL vengono installate da un setup che gira con i diritti 
amministrativi, quindi può copiare i file delle librerie anche in 
percorsi normalmente vietati ad una normale applicazione.
Non comprendo il nesso che poni tra l'UAC e l'installazione di DLL 
condivise.
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

 in Vista senza dover disabilitare UAC?
Io normalmente preferisco copiare tutte le dll nella stessa cartella del 
programma e, finora, nessun sistema operativo (compreso Vista) ha mai 
creato problemi.

Newsgroup: it.comp.lang.delphi
Titolo: Andare a capo in una riga di una Griglia

Ciao a tutti.
E' possibile andare a capo in una cella di una griglia?
Io ho una griglia (dbGrid) in cui viene visualizzatta
una tabella, č possibile andare a capo in una cella?
Esempio:
Nome    Cognome    Telefono
-----------------------------
                   0123456789
Andrea  Rossi      0987654321
                   3291010101
Luca    Balli      4957845738
Andrea ha 3 telefoni, ma non mi va di creare
3 record per la stessa persona, ne tantomeno
creare dei campi in piů visto che potrei
conoscere una persona che ha 10 cellulari
e quindi mi diventerebbe tutto scomodo.


Newsgroup: it.comp.lang.delphi
Titolo: Modifica file

Salve a tutti,
(sono un neofita di delphi) ... vorrei creare una piccola
applicazione che ha lo scopo di modificare un certo byte presente di un
file, in altre parole:
- apro il file in scrittura;
- modifico un certo byte del file;
- lo salvo;
Si puo' fare questa cosa in delphi? Thk a tutti e scusate per la domanda
banale!

file, in altre parole:
ehhehehehe.. mi piacerebbe sapere a quale scopo devi patchare un exe...
cmq, ci sono dei tools fatti all'uopo per l'occasione.
Dei generatori di patch, per intendersi:
http://www.softpedia.com/get/Programming/Patchers/
Cmq,se vuoi imparare a farlo con delphi, leggi qui: 
http://tinyurl.com/6bhhm
Ciao
-- 
Morde. 
(
mo...@despammed.com
)
M-List di icld: 
http://it.groups.yahoo.com/group/icld/

Var
   F : File of Byte;
Begin
   // Assegno il file e lo apro in lettura/scrittura
   AssignFile(F, Nome_Del_File);
   Reset(F);
   // Punto alla posizione che mi interessa
   Seek(F, Posizione_del_byte_da_modificare);
   // Scrivo il nuovo byte
   Write(F, Byte_Modificato);
   // Chiudo il file
   CloseFile(F);
End;
Ciao,
David

 ha scritto nel messaggio
news:cs2r17$d31$1...@newsreader.mailgate.org...


 ha scritto nel messaggio
news:vg5Fd.27085$H%6.10...@twister1.libero.it...


Newsgroup: it.comp.lang.delphi
Titolo: [LUNGHETTO][NEWBIE][URGENTE]Procedure, come usarle????

Salve a tutti,
Mi trovo in un problema che per voi di sicuro è di facile risoluzione, ma
veniamo al dunque:
come ben saprete quando uno clicca due volte sulla form quell'intelligente
di Delphi 7 che possiedo piazza una procedure di tipo Activate o simile che
contiene gli eventi da fare alla visualizzazione della form.
Il mio problema è questo, ho trovato su una rivista un Tip che fa in modo
che venga richiesta una conferma per uscire dall'applicazione, il codice è
questo:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
    //codice della procedure
end;
Alla compilazione il programma mi diceva che non esisteva nessuna reference,
allora mi sono dato all'esplorazione del codice e ho notato che Delphi,
quando facevo due clic sulla form metteva pressoche all'inizio del sorgente
una scritta di questo tipo:
procedure TForm1 Activate (Sender: TObject); //non so se è corretta poichè è
da un po' che non uso Delphi
allora mi sono messo a creare una procedure simile che potesse rispecchiare
il Tip, il programma si compila ma alla chiusura non succede assolutamente
nulla. Che cosa devo fare???

 ha scritto nel messaggio
news:5Yfdb.351773$Ny5.11...@twister2.libero.it...


 Ciao!
Grazie mille, ora provo...
Newsgroup: it.comp.lang.delphi
Titolo: Un aiutino

salve come si fa a cancellare  l ultimo numero da un  longint vi posto un 
esempio io ho un numero decimale 85899347 devono andare via una alla volta
gli ultimi numeri fino a che rimanere 85 non e per  delphi ma per un 
compilatore pascal di un microchip. a8 bit
grazie
Umberto
$55                 85
$35A              858
$218D            8589
$14F8B          85899
$D1B71          858993
$83126E         8589934
$51EB853       85899347 

 ha scritto nel messaggio 
news:47a3af5e$0$17951$4faf...@reader1.news.tin.it...

Prova con questa....
Ciao,
Antonio Volpe.
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function TagliaCifre(NumeroDaTagliare : Real) : LongInt;
var Pr : LongInt;
    I ,Lunghezza : Integer;
begin
PR := trunc(NumeroDaTagliare);                              //Se Numero Da 
Tagliare lo scegli Reale altrimenti basta che imposti che il tipo deve 
essere LongInt.
Lunghezza := Length(IntToStr(Pr)) - 2;                   // -2 perche vuoi 
che ti rimangano le ultime due cifre.
for I := 1 to  Lunghezza  do
begin
 Pr := trunc(Pr /10);                                              // divido 
ogni volta per dieci e mi prendo l'intero tramite la funzione trunc.
end;
 Result := Pr;
end;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Newsgroup: it.comp.lang.delphi
Titolo: [NEWBYE] Collegare FireBird e Delphi

Ciao a tutti,
mi sono avvicinato da poco al mondo di Delphi, quindi "scusate 
l'ignoranza". Sto cercando una guida passo-passo che mi spieghi come si 
possa accedere ad un DB Firebird e utilizzarlo tramite Delphi. Le guide 
che ho trovato danno per scontato molte (troppe) cose, ed è molto 
frustante tutto ciò.
Qualcuno riesce a googlare meglio di me?
Grazie.
-- 
Davide
"'A rocchia ha saputo 'a n'asso 'e denari
che duie forlocchi hanno fatto biscotto.
E tu che fai: 'o scartiloffista o scatuozzo?
SCARTILOFFISTA O SCATUOZZO??"

Paisa'! ;-)
premesso che l'argomento è trito&ritrito e che se cerchi nei vecchi
post del ng tramite google-gruppi trovi materiale con la pala....
Fino a d7, a prescindere dal db e dalla tecnologia, hai:
1) un componente che gestisce la connessione al db.
Questo componente ha delle property che indicano nome del server (o
indirizzo ip...) e nome del db.
Ado=AdoConnection
Bde=Tdatabase
DbExpress=TSqlConnection
Ibx=TIbDatabase
2) uno o + componenti per interrogare il db.
Questo coponente ha una property nella quale scrivi uno statement sql
da eseguire. Ne esistono di vari tipi, qui di seguito trovi una lista
semplificata, giusto x chiarire le idee..
Ado=TAdoQuery
Bde=TQuery
DbExpress=TSqlQuery
Ibx=TIbQUery
3) Per visualizzare i dati restituiti da un oggetto di quelli descritti
al punto 2, associ il relativo oggetto alla property Dataset di un
TDatasource.
Poi, il tdatasource  viene associato ai componenti visuali come la
dbgrid tramite la property Datasource.
Questo è uno schema non dettagliatissimo.
Esistono infatti differenze a seconda della tecnologia di accesso ai
dati.
Ad esempio..
se usi ibx, per ogni oggetto di accesso ai dati potrebbe essere
necessario aggiungere un TibTransaction
se usi dbexpress ti conviene associare la tsqlquery ad un
TDATASETPROVIDER, aggiungere un TClientDataset che punti al
tdatasetprovider e associare al tdatasource il tclientdataset.
Ma qui la cosa si complica un po...
... e se uso ADO?
Ado lo usi solo per MsSql e *forse* per oracle.
Il bde è OBSOLETO e non va usato.
nel caso di firebird, dal suo sito si possono scaricare, direttamente o
indirettamente (link che puntano ad altri siti...)::
1) driver odbc (bleah!puah!)
2) provider 
ado.net
 (per 
vs.net
 o delphi2005)
3) componenti specifici per l'accesso ai dati su firebird.
Questi componenti possono essere usati solo x firebird.
Se un giorno decidi di usare Oracle, devi sostituirli.
AS
"Dicette 'o pappece n'faccia 'a noce dammi 'o tiempo ca te spertoso"

 ha scritto nel messaggio 
news:ezDOe.73933$2U1.3...@news3.tin.it...


imho, non mi sentirei di consigliare ibx, nativi x interbase.
Non si sa fino a quanto potranno essere utilizzati con firebird.
AS

 
Grazie a tutti per le risposte!
Da quanto ho capito la catena di componenti è:
DataBase -> Transaction -> DataSet ->
DataSource -> un componente Data Controls.

Newsgroup: it.comp.lang.delphi
Titolo: ripetere

devo far ripetere per un tot di volte una parte di codice, il valore di 
ripetizione che è un numero intero è contenuto in Tedit che comando devo 
usare?

 usare?
Repeat ... until <condizione>
While <condizione> do
begin
end;
For x := x to y
begin
end;
A te la scelta
^_Goblin_^
-- 
Ibis et redibis non morieris in bello
http://goblinland.myminicity.com/

 
errata corrige
For x:= a to b do
begin
end;


 
scusami avevo sbagliato nella mia richiesta.
Vorrei che il contenuto di TEdit si ripesse per il valore presente in un 
altro TEdit e che il risultato me lo riportasse in TRichEdit o 
equivalente, credo che il For faccia a cso mio ma ho cercato in diversi 
modi di applicarlo ma non ci sono riuscito.

 
Ho fatto in questo modo:
var
   I: Integer;
begin
   Lista.Items.Clear;
   for I := 0 to StrToInt(Num.Text)-1 do
   Lista.Items.Add (A.Text);
end;

Newsgroup: it.comp.lang.delphi
Titolo: Cerco Componente

sto cercando un componente per utilizzare una periferica di cattura video
ho già provato su torry

Prova a guardare in questo sito, non so se ci sia qualcosa che faccia al
tuo caso, ma guardare non costa nulla :-)
http://www.vclcomponents.com/

Newsgroup: it.comp.lang.delphi
Titolo: Delphi e unicode

Saluti,
vi prego di perdonarmi se la domanda vi pare ovvia: evitatemi delle lunghe 
ricerche in rete, per favore.
Dal 2001 io sono con D6 (sì, sono antico), e tuttavia la mia applicazione 
maggiore la mantengo ancora bene. A volte sono costretto a personalizzare 
parti della vcl, ma va bene comunque.
Sto facendo i salti mortali per mantenere nella mia app la possibilità di 
editare caratteri unicode e per ora i risultati mi soddisfano. Però...
Mi chiedevo: le nuove versioni di Delphi, per i progetti win32, supportano 
nativamente unicode? Se sì, supportano utf16 o utf32? So che Vista si ha 
integrato utf32, anziché il solo utf16 di xp, e se debbo fare il passaggio 
voglio che, per ciò che cerco, ne valga la pena.
Per favore non reindirizzatemi sui componenti TNT, già li utilizzo...
Saluti 

Il supporto per unicode sarà dalla prossima versione di
delphi (2008).

 delphi (2008).
Grazie... spero facciano le cose bene e non facciano retrocomputing 
supportando solo utf16.
Allora con D6 ancora ci sto dentro! :-D

Newsgroup: it.comp.lang.delphi
Titolo: principiante, quick report & filtro

salve, sono un principiante, sto usando quick report per stampare un report
di un database, come posso fare a filtrare un report mettendo un tedit e
usando table1.findnearest per poter selezionare i record (scrivendo poche
lettere sul tedit), questo sistema l'ho gia applicato su di una form dove
risiedono tutti i vari campi del record e non appena scrivo delle lettere
sul componente tedit compare il record interessato, come posso sfruttare lo
stesso criterio di filtraggio sul quick report?
grazie a quanti volessero aiutarmi.
Giovanni Ilari

"Giovanni ILARI":

il criterio è identico,
filtri la tabella a cui il qr è collegato! ;)
ciao,
Alan Solo
Newsgroup: it.comp.lang.delphi
Titolo: Filosofia di un servizio

Ciao,
volendo creare un servizio che ogni n minuti fa qualcosa su un server
2003, quale è secondo voi l'approccio migliore?
1- Sviluppo il servizio col solo ttimer e ogni n minuti richiamo
qualcosa di esterno.
2- Inglobo il servizio nel "qualcosa" e ogni n minuti faccio eseguire
la procedura principale.
3- Uso le operazioni pianificate di windows e mi evito di fare il
servizio.
4- Altro.
Io uso spesso l'opzione n.3 perchè è la più banale da sviluppare ma
vorrei capire secondo le vostre esperienze se e quando è meglio
generare un servizio.
Ciao,
Matteo

 generare un servizio.
Dipende da *cosa fa* questa operazione.
Credo, generalizzando, che la soluzione che hai adottato usando le 
schedulazioni di windows sia giï¿œ quella adatta.
Diversamente, dacci qualche informazione in piï¿œ.
ciao
-- 
Morde

 2003, quale � secondo voi l'approccio migliore?
Se le opzioni di pianificazione che prevedi sono semplici (ad esempio, 
esecuzione periodica di un'operazione ogni N minuti), puoi sviluppare un 
servizio Windows standard.
Se sono pi� complicate, in effetti, forse � pi� proficuo appoggiarsi 
alle funzionalit� di schedulazione fornite dal sistema operativo e 
sviluppare un'applicazione Win32 Console o simile.
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

> Dipende da *cosa fa* questa operazione.
In realtà ne facevo un caso generale.
I casi in cui mi sono imbattuto sono:
- qualcosa tipo backup, ovvero ogni n minuti mi fai una copia di
qualcosa su una cartella.
- verifica se un sito è attivo, ogni n minuti mi fai un ping e
verifichi la risposta. Se non risponde mi avverti.
- Acquisizione automatica di dati da internet. Ogni giorno prelevi i
dati e li metti in un db.
ecc.
Io in tutti questi casi ho semplicemente fatto un "normale" software
che eventualmente verificava da linea di comando cosa doveva fare.
Ora, vedendo quello che esiste in giro vedo che in questi casi
normalmente si ricorre ad un servizio.
La cosa me la spiego solo per gestire la schedulazione senza andare a
creare una pianificazione su windows. Ci sono altri motivi?
Matteo

 In realtï¿œ ne facevo un caso generale.
Sï¿œ a questo punto conviene che ti crei un servizio che incapsula tutte 
queste attivitï¿œ di tipo batch.
Nei dettagli, gestisci le attivitï¿œ all'interno del servizio con dei 
ttimer oppure con uno scheduler interno (non sarebbe altro che un 
thread che ogni microsecondo verifica se ha un job da eseguire).
Ciao
-- 
Morde

Newsgroup: it.comp.lang.delphi
Titolo: Come si fa a risalire dall'indirizzo IP all'ubicazione dell'utente Internet?

Cerca il programma NeoTracer
Saluti
AS

Come si fa a risalire dall'indirizzo IP all'ubicazione dell'utente Internet?
E' possibile farlo ed esistono programmi che lo consentono?
Grazie
Ciao
Newsgroup: it.comp.lang.delphi
Titolo: Informazoine

Ciao a tutti,
ho un problema, devo cambiare una risorsa (un'immagine) all'interno di un
programma compilato, senza  modificare il sorgente.
Mi hanno detto che esistono dei programmi che permettono di aprire
l'eseguibile, modificare la risorsa, e re-linkarla, senza dover ricompilare
tutto il programma. Qualcuno sa dirmi qualcosa di più su questo argomento o
mi può indicare dove posso raccogliere delle informazioni?
Grazie
Daniele

ResHacker
Newsgroup: it.comp.lang.delphi
Titolo: Una query

Potete aiutarmi con una query ? Mi sembrava banale, ma eseguendola mi dą un 
risutltato inaspettato.
Dunque, ho due archivi: un archivio Libri, che contiene un elenco di libri, 
e un archivio Autori. Ogni libro ha un solo Autore, identificato dall'ID 
corrispondente nel file Autori. Per ragioni che adesso non sto a spiegare, 
ho aggiunto anche il nome autore nel file Libri.
Con la query voglio identificare i records di Libri che hanno un nome Autore 
che esiste nel file Autori (ed eventualmente copiarne l'ID).
Ho provato con la seguente select:
Select  Titolo, Autore, A.Autore  from "Libri.dbf", "Autori.dbf" as A where 
Autore = A.Autore';
Con questa select ottengo lo stesso record ripetuto enne volte. Perchč e 
come andrebbe corretta la selezione ?


Ciao
qui se OT
dovresti postare la domanda su
microsoft.public.it.sql  ad esempio
C. 

 andrebbe corretta la selezione ?
Perchè ci sono tanti libri con lo stesso nome di autore, pertanto il 
risultato sono tanti record quanti sono i libri con il campo autore che 
fa match con quello nella tabella autori.
aggiungi una
select distinct(id) from autori where libri.autore = autori.autore
e' concettuale ma spero che hai capito.
ciao
-- 
Morde

 come andrebbe corretta la selezione ?
Sticazzi, va bene che sei OT, ma almeno conoscere le *basi* dei database 
relazionali prima.....
http://php.html.it/guide/lezione/2264/breve-introduzione-ai-database-relazionali/
-- 
Jax

> Sticazzi, va bene che sei OT, ma almeno conoscere le *basi* dei database
Jax ekekazz.... Non fare il talebano, su...... :-D
A.

> Jax ekekazz.... Non fare il talebano, su...... :-D
Dai con le pietre, please :) LOL
Antonio

 ha scritto nel messaggio 
news:49cb9378$1...@news.x-privat.org...


 ha scritto nel messaggio 
news:49cbe3c0$1...@news.x-privat.org...


 c'entra con le *basi* dei database relazionali ?
In effetti ho riletto il post iniziale... non avevo capito che avevi un 
nome autore anche sulla tabella libri, scusami (è una cosa talmente 
astrusa che il mio cervello non l'ha manco elaborata).
Comunque, io farei così:
select distinct autore from libri where autore in
(select distinct autore from autori)
se vuoi estrarre solo gli autori
select libro, autore from libri where autore in
(select distinct autore from autori)
se vuoi estrarre tutti i libri
select a.libro, a.autore, b.idautore from libri a join autori b on 
a.autore = b.autore
se vuoi estrarre anche gli id dalla tabella autori
-- 
Jax

 autore anche sulla tabella libri, scusami 
LOL, hai fornito non una, bensì TRE soluzioni: mi viene da pensare che 
"niente e' piu' forte del senso di colpa".. ahahhaha :P
-- 
Morde

 > Jax

 "niente e' piu' forte del senso di colpa".. ahahhaha :P
Ti viene da pensare bene. Per questo prima di incazzarmi ci penso su tre 
volte. Di solito.
Comunque è OT :D
-- 
Jax

 ha scritto nel messaggio 
news:1b0ff2dd-d6b2-4644...@33g2000yqm.googlegroups.com...

Newsgroup: it.comp.lang.delphi
Titolo: Sono disperato. AIUTO HELP

Ciao a tutto il NG,
Uffa non ci capisco ninete...
il problema e sempre lo stesso... l'ultima volta qualcuno mi aveva
risposto... ma cmq non riesco a risolvere...
ora come saprete io ho una classe ho un metodo (wndproc)
Function WndProc(hWnd : HWND; message : UINT; wParam  : WPARAM; lParam
: LPARAM ) : LRESULT stdcall;
e devo creare una finestra percui registro la classe.
tramite una varibile cosi dichiarata:     WC : TWndClass;
inizializata in questo modo
    With WC
      Do Begin
        style         := CS_HREDRAW OR CS_VREDRAW OR CS_OWNDC;
        lpfnWndProc   := MethodPointer(WndProc);
        cbClsExtra    := 0;
        cbWndExtra    := 0;
        hInstance     := Data.Handle.Istance;
        hIcon         := Data.Icon;
        hCursor       := Data.Cursor;
        hbrBackground := 0;
        lpszMenuName  := NIL;
        lpszClassName := 'OpenGl';
        End;
la registo (e controllo se è registrata) facendo
    If RegisterClass(WC) = 0
definisco lo stile della finestra :
        Data.dwExStyle := WS_EX_APPWINDOW or WS_EX_WINDOWEDGE;   
        Data.dwStyle   := WS_OVERLAPPEDWINDOW or WS_CLIPSIBLINGS or
WS_CLIPCHILDREN;
e finalmento creo la finestra
    With Data
      Do Handle.Window:=
CreateWindowEx(dwExStyle,'OpenGl',Caption,dwStyle,0,0,Width,Height,0,0,Handle.Istance,
nil);
Qui mi da errore (paramentro non valido interpelando un po' di API)
mentendo una funzione normale (e non un metodo) supero questo punto
(anche se ho avolete qualche problema quando registro la classe).
Ora essendo questo codice una semplice traduzione da una mia unit non
orientata ad oggetti perche non funziona???? io credo che sia nella
mia MethodPointer....
che ho fatto cosi:
 Type TWndProc = Function (hWnd : HWND; message : UINT; wParam  :
WPARAM; lParam  : LPARAM ): LRESULT stdcall of Object;
  Function MethodPointer(Method: TWndProc): Pointer;
  Begin
    MethodPointer:= @Method;
  End;
tutto funge alla perfezione ma se provo a fare un piccolo programma
che fa:
X: Pointer;
...
  x:= MethodPointr(MiaVar.WndProc);
  TWndPRoc(X)(1,2,3,4);
...
richiama si la mia WndProc ma pasandogli i valori 2,3,4 e 5767168.
e poi uscendo dalla procedura INIT che ho fatto crashia il programma
dicendo "Exception EExternalException in moudule NOMEEXE.EXE at
0068EF68. ExternalException C000001D."
e questo cosa centra??!?!?
Vi prego di rispondermi,
PS USO DELPHI 5 ENTERPRISE (Build 5.62)
Il Razziatore,
The Only Good Windows in an uninstalled Windows
-----------------------------------------------
E-MAILs : IlRazziat...@NOSPAMnetscape.net
WEB     : 
http://www.razziatore.dns2go.com/
ICQ     : 67552596

>>>>>>>>>>>>>>>>> Notizia originaria <<<<<<<<<<<<<<<<<<
Il 28/12/2001, 0.01.20, 
IlRazz...@netscape.net
 ha scritto 
sull‘argomento Sono disperato. AIUTO HELP:

Newsgroup: it.comp.lang.delphi
Titolo: Statistiche e grafici

Rimando questo post, nella speranza che dopo le ferie qualcuno mi
aiuti :)
Devo realizzare delle elaborazioni statistiche su un set di dati, in
particolare calcoli di valore max, valore min, media, deviazione
standard e successivamente rappresentare con dei grafici i trend, ma
anche realizzare istogrammi e diagrammi a torta.
Oltre ai TChart e TDBChart, sapreste indicarmi altri componenti da
usare?
Grazie,
Cecilia

Perchè cerchi altri componenti oltre a quelli in dotazione ?
Non capisco il motivo.
Nella pagina ActiveX trovi altri 2 pomponenti che fanno grafici.
Tieni presente che, questi, come altri di terze parti, devono essere
registrati con RegSvr32.Exe o simili.
Ciao
Mario.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

gia visto sui soliti siti?
A
Newsgroup: it.comp.lang.delphi
Titolo: Delphi 2005 e Aruba

Salve
qualcuno utilizza per caso Delphi 2005 pubblicando su Aruba pagine aspx ?
Se si, cosa è necessario uploadare ? e quali componenti non possono essere
utilizzati
su server 2003 in hosting condiviso ?
Grazie a tutti
GP

 utilizzati su server 2003 in hosting condiviso ?
A livello 
ASP.NET
, credo non ci siano limitazioni: è sufficiente copiare 
le pagine "aspx" sul server preposto al servizio di hosting, inclusi i 
file "bin" eventuali che contengono il codice (code behind) delle pagine.
Se hai utilizzato Delphi 2005 per sviluppare assembly sottoforma di 
"package", se non sbaglio devi pubblicare anche la libreria 
/Borland.Delphi.dll/ da cui dipendono per le funzioni RTL di Delphi.
Se disponi di una versione "Architect", puoi usufruire del *Deploy 
Manager*, un'estensione dell'IDE che ti consente di creare un progetto 
di deploy allo scopo di pubblicare automaticamente i file necessari al 
funzionamento del tuo progetto, inclusi i file esterni, sul server di 
test o di produzione.
Se ho l'occasione di effettuare test approfonditi, visto che sto 
provando la trial di Delphi2005 anche in questo senso, ti fornirò 
eventualmente ulteriori indicazioni. :-)
-- 
Marco «Alka» Breveglieri
(marco [@] abls [.] it )
  ABLS Team S.n.c. - Software & Web
  42019 Scandiano (Reggio Emilia)
 
http://www.abls.it

GP
Ciao MassimoB
-------------------------------------------
http://www.massimobeschi.it/

 semicompilato)
Va precisato che l'inserimento del codice "server side" direttamente 
nella pagina non può essere scritto in linguaggio Delphi, poichè il 
server Web non è in grado di effettuarne la compilazione; va 
obbligatoriamente scritto in linguaggio C#.
Se invece si utilizza la tecnica "code behind", è possibile creare dei 
package Delphi veri e propri con tutto il codice compilato e pronto ad 
essere eseguito; è la soluzione che preferisco e che consiglio 
vivamente, perchè consente di
1) pubblicare codice già in linguaggio intermedio (IL) e quindi pronto 
da tradurre in codice nativo, con un guadagno notevole sulle performance 
di esecuzione; senza il code behind, è maggiore la quantità di codice 
che va compilata al primo accesso;
2) la compilazione del codice rimuove il 90% degli errori, sempre se il 
codice è scritto bene, poichè verifica la correttezza formale dello 
stesso _prima_ della sua pubblicazione; in caso contrario, senza il code 
behind, ci si accorgerebbe di un eventuale (e magari banale) errore solo 
nel momento in cui la pagina aspx viene richiamata.
Riguardo le limitazioni poste da Aruba sui propri server Windows, mi 
sono dimenticato di dire che non è consentito l'uso di file eseguibili 
Win32, quindi ISAPI e CGI...ma essendo supportato 
ASP.NET
, questa 
"chiusura" non pone delle limitazioni.
Ciao! :-)


Ciao! :-)
	Ciao
	MassimoB
 
---------------------------
http://www.massimobeschi.it/
Newsgroup: it.comp.lang.delphi
Titolo: Consigliatemi

Ciao mi chiamo Rosario e vorrei iniziare a programmare in Delphi.
Quale testo mi consigliate per cominciare?
Vi prego aiutatemi :-)
mr...@iol.it

C'è un buon manuale di marco cantu' : Master delphi o una cosa del genere.
In base alla versione di delphi che hai ti scegli quello che ti serve.
Consiglio: vai sulla 5!
Saluti
AS

č quasi d'obbligo suggerirti Mastering Delphi del grande Marco Cantů


Newsgroup: it.comp.lang.delphi
Titolo: ora ed eventi

Salve, volevo sapere come fare un determinato evento ad una
determinata ora...
per esempio inserisco un'orario in un edit e quando il tempo del pc è
uguale a quello nell'edit mi scrive ciao


Usare un Thread.
Oppure, un modo poco elegante ma + semplice, consiste nel creare una action
e associare il blocco di codice per il controllo dell'ora all'evento
OnUpdate.
Bye
AS
-- 
Posted from  [212.17.220.41] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:938avtor84elnmgr9...@4ax.com...


 wrote in message
news:938avtor84elnmgr9...@4ax.com...

Oltre ad uare un Thread
Potresti gestire l'evento Application.OnIdle (vedi help se fa al caso tuo)
Oppure un componente Ttimer (vedi help se fa al caso tuo)
Saluti
-- 
Posted from 
hwadsl-213-155-195-162.telvia.it
 [213.155.195.162] 


determinata ora...
Un Timer e' la cosa piu' semplice.
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls,
Forms, Dialogs,
  ExtCtrls, StdCtrls;
type
  TForm1 = class(TForm)
    Button1: TButton;
    tmrEvento: TTimer;
    Edit1: TEdit;
    procedure tmrEventoTimer(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    EventoEseguito: Boolean;
    OraEvento: TTime;
  public
  end;
var
  Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.tmrEventoTimer(Sender: TObject);
begin
  tmrEvento.Enabled := false;
  if (not EventoEseguito) then
  begin
    if (Time >= OraEvento) then
    begin
      Edit1.Text := 'SVEGLIA !';
      EventoEseguito := true;
    end
  end;
  tmrEvento.Enabled := true;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
  // circa tra 5 secondi esegui l'evento
  OraEvento := Time + 0.00006;
  EventoEseguito := false;
  tmrEvento.Enabled := true;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
  tmrEvento.Enabled := false;
end;
-- 
The Follet

Anche a me si era presentato il problema, anceh piů complesso in quanto ho
gestito pure la data e il tutto tramite tramite un Tdataset, cmq io ho
risolto mettendo 2 timer...
1 che mi aggiorna l'ora in una edit...
1 che mi controlla se la data corrente č presente nella tabella.
Se fai cosě funziona, SICURO!
Newsgroup: it.comp.lang.delphi
Titolo: Readln piu' veloce?

Salve
Non so se quello che chiedo sia una boiata....pero ci provo..
Devo leggere dei file molto grossi linea per linea e questo in alcuni casi
impiega 7 o 8 secondi.
Conoscete funzioni alternative piu' veloci della Readln standard do delphi?
Grazie

 wrote in message 8fr9ft$aq5$1...@news.IT.net...


> Quanto è grande il file ?
sui 18 mega .(

 ha scritto nel messaggio
news:8ftvip$nqc$1...@news.IT.net...


 che vuoi leggere riga per riga non mi viene in mente niente.
Io avrei una mezza idea: usa un TStringList e carica il file in memoria [ci
metterà parecchio ovviamente].
Puoi accedere alle linee tramite la Lines.
[così dovresti avere + tempo in fase di caricamento del file (che viene
caricato _tutto_ subito) ma minor tempo di accesso alle singole linee...]
Ciao :-)
--
(¯`·.¸¸.·´¯`·.¸¸.-> Andrea <-.¸¸.·´¯`·.¸¸.·´¯)
AntiSpam: rimuovere il trattino basso dall'indirizzo per rispondere
AntiSpam: remove the underscore from the e-mail address to reply

> Visto la dimensione, buona grazia che ci mette solo 7 sec. comunque visto
Hehe si si hai ragione...magari speravo di rubare 2 sec. in meno :)
Grazie cmq

 Grazie
Usa TFileStream
crealo utilizzando la seguente istruzione:
    aFileStream:=TFileStream.create(nomefile,fmOpenRead or fmShareDenyWrite)
dove aFileStream e' di tipo TFileStream.
Preparati un'area di memoria per ricevere i dati che leggerai in questa
maniera:
    GetMem(buffer,50*1024)  // allochiamo 50k
dove buffer e' di tipo pchar
Preparati un'altra area di memoria per impostare il fine linea
    GetMem(myeof,2)
dove myeof e' di tipo pchar
Carica il fine linea con i due caratteri CR e LN:
    myeof[0]:=#13;
    myeof[1]:=#10;
Cicla continuamente per leggere man mano 50k di file alla volta in questa
maniera:
    aFileStream.read(buffer,50*1024)
    Dopo ogni lettura cicla all'interno dei 50k per trovare le righe in questa
maniera
        posizioneattuale:=buffer // posizioneattuale e' pchar
        treof:=StrPos(posizioneattuale,myeof); // treof e' di tipo pchar
        Poniamo temporaneamente il carattere terminatore per poter prelevare
         la riga e quindi preleviamo la riga
        treof^:=#0;
        riga:=PChar(posizioneattuale) // dove riga e' di tipo string
        Poniamo posizione attuale alla riga siccessiva in questa maniera:
        posizioneattuale:=treof+2;
Fine ciclo
Naturalmente devi fare attenzione a quando ti terminano i 50k (sicuramente non
terminano con la riga esatta) e a quando ti finisce il file (controllando il
risultato della funzione che va a leggere il file).
Ricordati anche alla fine di liberare il file con l'istruzione aFileStream.free
e anche di liberare i due blocchi di memoria che hai occupato con l'istruzione
FreeMem(buffer,50*1024) e FreeMem(myeof,2)
Come vedi di modi ce ne sono tanti. Io ti ho fatto un esempio utilizzando il
TFileStream.
Gia' questo ti scende molto sotto gli 8 secondi.
Potresti aprirti direttamente il file con CreateProcess e leggere con Readfile,
il che ti riduce ulteriormente i tempi.
Ciao e buon lavoro
Francesco
Newsgroup: it.comp.lang.delphi
Titolo: [TMediaPlayer]effetti grafici

sapete indicarmi come e' possibile creare degli effetti grafici tipo quelli
di winampo con un componente TMediaPlayer? oppure come gestire i bnassi,
alti, frequenze, ecc. se non e' possibile con il componente in questione,
sapete indicarmene un altro valido per l'occasione? grazie mille
--
Ciao
Gianfranco Marchese
e-mail dgruma@NOPUBBLICITA'
tin.it
 (Da togliere NOPUBBLICITA' se vuoi
rispondermi in privato)
sito internet personale: 
http://www.turbo-pascal.cjb.net
  Tutto sul Turbo
Pascal  1.5

se trovi qualcosa mi interesserebbe pure a me!!!
Simo

 Simo
ho cercato e ricercato,ma... niente



ho trovato forse quello che cerchiamo su torry, il componente e' il
tbassplayer, piu' di due mega...supporta cneh i plug in di winamp. c'e' un
problema... non ho capito come usare quetso componente, magari se lo
scarichi e ne capisci qualche cosa, mi fai sapere, ok?


Newsgroup: it.comp.lang.delphi
Titolo: errore "designide70.bpl" quando chiudo delphi7

Buongiorno a tutti ho appena reinstallato win-7-hp-64bit sul mio portatile e come ho fatto altre volte ho reistallato delphi7 in una cartella creata appositamente (C:\D7) ed alla quale ho tolto la spunta di sola lettura dopo l'installazione.
 
Il delphi si apre bene ma dopo la sua chiusura esce un APPLICATION ERROR:
  Exception eaccess violatio in module designide70.bpl at 00012997.
  Access violation at address 00242997 in module 'designide70.bpl'.
  Read of address 00000008
e poi esce la classica richiesta di windows:
  cerca una soluzione online ...
  chiudi il programma
  esegui debug del programma
 
Ho provato sia con che senza diritti di amministratore.
 
 
Grazie anticipatamente del Vostro aiuto.

 Grazie anticipatamente del Vostro aiuto.
 
Mamma mia... D7 mi fa tornare un po' indietro con gli anni...  :)
L'errore ti esce sempre? Cioe' basta aprire delphi e uscire 
e ti da l'errore?
Lo da con delphi "puro" o hai installato dei componenti aggiuntivi ?
 
ciao
Giacomo
 
 


Ho buttato un "designide70.bpl 00012997" dentro Google e sono venuti 
fuori due risultati: il tuo messaggio ed una discussione 
(
http://bbs.cnpack.org/viewthread.php?tid=8552
) il cui ultimo messaggio, 
postato da chi ha avuto il problema, e tradotto da Google Translate è 
"Prova (probabilmente è 'provata' - ndWarp10) la versione 0.9.7.591 
nello stesso ambiente, la stessa operazione, nessun errore! Il problema 
è risolto!"
 
 
 
-- 
@WarpTen10

Googleggiando avevo trovato varie info, ma alla fine per risolvere ho dovuto reinstallare delphi ex-novo :-(
 
Ora tutto funge nonostante abbia reinstallato dallo stesso cd e nello stesso modo
(che poi è come ho sempre fatto).
 
Grazie a tutti.

Newsgroup: it.comp.lang.delphi
Titolo: AAA cercasi VCL e sorgenti per Antifurto

Salve a tutti, volevo sapere se qualcuno hai i vcl e i sorgenti dell'
antifurto usciti sulla rivista IO PROGRAMMO.
Se qualcuno li ha me li pouoi inviare a 
in...@jojoba-online.it
.
Ne ho un disperato bisogno.
Grazie.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Puoi acquistarli direttamente dall'autore
Gianluca
Newsgroup: it.comp.lang.delphi
Titolo: Memorizzare una data in un campo di una tabella MySQL

Come faccio a memorizzare una data nel formato YYYY-MM-DD in una tabella di
un database MySQL?
Ad esempio, 24/7/2003 la memorizza come 2024/07/20
Il problema è che io uso una data nel formato italiano, ma deve essere
memorizzata poi con il formato interno di MySQL.
Franz

 ha scritto nel messaggio
news:CEbUa.22704$Za4.5...@news2.tin.it...

Ho risolto, grazie.

> Ho risolto, grazie.
Come? Magari serve a qualcun'altro.....
Ciao!

 Ciao!
Ecco, come ho risolto il problema. Il trucco stava nell'usare le variabili
ShortDateFormat e DateSeparator, e convertire poi in stringa tramite la
funzione DateToStr la data da inserire, ricavata dalla funziona Date.
procedure TForm4.SpeedButton1Click(Sender: TObject);
var i,j:integer;
today:string;
begin
ShortDateFormat := 'yyyy/mm/dd';
DateSeparator := '-';
today:=datetostr(Date);
adoinserisci.close;
adoinserisci.SQL.Clear;
adoInserisci.sql.add('Insert Into Storico (Data_Inserimento, Valore)');
adoInserisci.sql.add(' Values (');
adoInserisci.sql.add(quotedstr(today)+',');
adoInserisci.sql.add(quotedstr(edtValore.Text]) +')' );
adoInserisci.execsql;
end;
Ovviamente, possiamo usare anche questo metodo per leggere e confrontare
date di tabelle di database MySQL. Ad esempio, io dovevo eliminare da una
tabella tutti i record  che avessero la stessa data del record corrente:
procedure TForm5.SpeedButton1Click(Sender: TObject);
var today:tdatetime;
begin
ADOQUERY2.CLOSE;
Adoquery2.sql.clear;
ShortDateFormat := 'yyyy-mm-dd';
DateSeparator := '-';
today:=AdoQuery1['Data_Inserimento'];
adoquery2.sql.Add('Delete From Storico Where
Data_Inserimento='+quotedstr(datetostr(today)));
adoquery2.execsql;
end;
AdoQuery1 è la query di selezione che mi permette di visualizzare tutti i
dati della tabella, mentre invece adoquery2 è una query di eliminazione dei
record verificanti il criterio specificato.
La prima cosa che faccio è determinare la data memorizzata nel record
corrente:
today:=AdoQuery1['Data_Inserimento'];
e poi elimino i record che hanno la stessa data:
adoquery2.sql.Add('Delete From Storico Where
Data_Inserimento='+quotedstr(datetostr(today)));
adoquery2.execsql;
Spero di essere stato chiaro
Franz
Franz

 ha scritto nel messaggio
news:0epUa.25671$Za4.6...@news2.tin.it...


 
Mi sembra più semplice
Franz
Newsgroup: it.comp.lang.delphi
Titolo: Unicode e Win32

 
Domanda che mi provocherebbe molti commenti negativi, se ci fossero utenti 
su questo newsgropup. Ma in un ambiente ancora Delphi 2007 posso cominciare 
a fare qualche conversione a Unicode ?
 

Non ti conviene. 
 
A.
 

Non ti conviene vuol dire che + possibile. Comunque se tu dici che non mi 
conviene sarà così. Ma perchè?
 
"Alberto Salvati"  ha scritto nel messaggio 
news:992ec0e8-b2bd-444a...@googlegroups.com...
 
Non ti conviene.
 
A. 
 

 Comunque se tu dici che non mi  conviene sarà così. Ma perchè?
 
 
Prima di unicode, se scrivi:
 
q: string;
 
la stringa è ansi. Se vuoi dichiarla unicode non puoi usare string:
 
q: UnicodeString;
 
Questo "oggi".
Domani, passi ad una versione di delphi che è unicode.
Quindi, se dichiari:
 
q: string;
 
q sarà una stringa unicode.
 
Ergo:
se oggi invece di usare "string" usi UnicodeString, rischi di complicarti la vita per ciò che riguarda il trattamento delle stringhe.
Ancora, se usi componenti di terze parti, non essendo la tua versione di delphi unicode, i componenti a loro volta non saranno unicode.
 
Nota che nelle ultime versioni  di delphi "string" è un alias di "unicodestring".
 
 
Ma mo, a parte tutto, c'è la domanda vera:
 
a che pro dovresti farlo?
 
 
A.
 

 
In effetti, la mia domanda era un pò sciocca dopo che mi ci avevi fatto 
riflettere. La ragione per farlo era di affrontare la conversione un pò per 
volta allo scopo di passare da Delphi 2007 a Delphi XE (versione che adesso 
non ricordo, ma che ho avuto da un amico che è passato a un diverso 
linguaggio e lo teneva lì. Visto che era gratis, volevo adottarlo, senza un 
vero bisogno, visto che ormai faccio tutto per hobby.
Grazie molte della tua disponibilità e chiarezza.
 
"Alberto Salvati"  ha scritto nel messaggio 
news:656f9aab-7eb6-4e04...@googlegroups.com...
