Newsgroup: it.comp.lang.delphi
Titolo: Importare una Unit

Scusate la banalità ma non ne vengo fuori:
spesso in rete trovo delle Unit già fatte che verrebbero utili ai miei
scopi ma mi imbatto in un problemino, come le importo in un progetto già
fatto??
--- posted by geoForum on 
http://www.delphiedintorni.it

 come le importo in un progetto gi` fatto??
Le metti nel search path ed usi "uses" oppure le aggiungi al progetto
ed usi "uses"
-- 
I am what I am, I do what I can
Do. Or do not. There is not try.

 fatto??
Se si tratta di unit con sole procedure e funzioni, ti basta copiarla 
nella cartella del progetto in cui vuoi utilizzarla, oppure in una 
cartella che Delphi possa raggiungere e ricercare al suo interno 
attraverso il "Library Path".
Se si tratta di componenti, è necessario aggiungerli all'IDE di Delphi 
(sempre se intendi usarli anche a designtime, oltre che a runtime) 
inserendoli in un package designtime o, generalmente, in un package 
runtime che viene poi sfruttato da un package designtime che provvede a 
registrare i componenti contenuti nella controparte runtime.
In alternativa, per essere ancora più sbrigativi, hai sempre a 
disposizione il "Borland User Package", anche se questo è stato rimosso 
da D2005 (era ora, così gli utenti imparano ad usare proficuamente i 
package come si deve). :-)
Ciao,
   Marco.
-- 
Marco «Alka» Breveglieri	
http://www.marco.breveglieri.name
  «bvmcnxsjlkhròhyeq, potrei scrivere a questo punto,
   se mi addormentassi sui tasti» (Daniele Luttazzi)

Se ho capito bene:
- creo un nuovo progetto;
- poi aggiungo una Unit (File->New->Unit);
- incollo il contenuto e la salvo come "unitprova";
- nella Form1, dove c'è "uses" aggiungo "unitprova";
se ora compilo mi dice che non trova "unitprova.dfm"
cosa posso fare?


Come non detto: ho cercato di salvare il contenuto di una form iun una unit...
Grazie e ciao!


Ora il problema è un altro:
so importare una unit già fatta in un nuovo progetto ma non riesco a
creare una nuova unit.
Ho queste due procedure nella form per cifrare e decifrare delle stringhe:
procedure TForm1.EncodePass(password, instring : string; var outstring :
string);
var
  len,
  pcounter,
  scounter : byte;
begin
  len := length(password) div 2;
  scounter := 1;
  pcounter := 1;
  repeat
    outstring := outstring + chr(ord(password[pcounter]) +
                             ord(instring[scounter]) + len);
    inc(scounter);
    inc(pcounter);
    if pcounter > length(password) then
      pcounter := 1;
  until scounter > length(instring);
end;
procedure TForm1.DecodePass(password, instring : string; var outstring :
string);
var
  len,
  pcounter,
  scounter : byte;
begin
  len := length(password) div 2;
  scounter := 1;
  pcounter := 1;
  repeat
    outstring := outstring + chr(ord(instring[scounter]) -
                             ord(password[pcounter]) - len);
    inc(scounter);
    inc(pcounter);
    if pcounter > length(password) then
      pcounter := 1;
  until scounter > length(instring);
end;
Funzionano ma vorrei toglierle dalla form e creare una unit da usare in
tutte le form che necessitano di queste due procedure, ho provato a creare
una nuova form ma sbagli qualcosa, forse la sintassi... c'è un esempio?


1) crea una unit
2) in essa dichiari una classe che espone 2 metodi: EncodePw e
DecodePw.
Ricorda! Non si mette "logica" sui form.
I form sono solo interfaccia utente.
AS

Ci proverò, anche se non ho materiale a riguardo e non avendolo mai fatto
penso di aver bisogno di un piccolo esempio...
Grazie
Ciao


c'è sempre una prima volta.
Il materiale è nella guida.
AS