* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Luglio 11, 2025, 06:03:10 am

Inserisci il nome utente, la password e la durata della sessione.

163 Visitatori, 0 Utenti

Post recenti

Pagine: [1] 2 3 ... 10
1
Generale / Re:Pascal Conference 2025
« Ultimo post da nomorelogic il Luglio 10, 2025, 06:57:57 pm »
se riesci sarebbe un bel colpo per il forum
avremmo addirittura un inviato speciale :D
2
Generale / Re:Pascal Conference 2025
« Ultimo post da DragoRosso il Luglio 10, 2025, 06:48:54 pm »
E' in c..o al mondo però questa volta vorrei andarci.
Nei prossimi giorni mi organizzo.

In realtà non molto lontano ho anche un cliente, potrei unire l'utile al dilettevole.

E il fatto che ci siano i vari chiamiamoli "capi dipartimento" dei vari core (FPC, LAZARUS, DELPHI) promette bene.

Ciao e grazie per la segnalazione.
3
Generale / Pascal Conference 2025
« Ultimo post da nomorelogic il Luglio 10, 2025, 05:24:52 pm »
4
Generale / Re:Problema con shared library
« Ultimo post da DragoRosso il Luglio 07, 2025, 01:16:20 pm »
l'ho copiata nella usr/lib e adesso la trova, solo avrei bisogno di debuggarla ed impostando l'applicazione host non aggancia la versione caricata nell'ade
Se vuoi debugare una DLL (o un .so) devi (dovresti) lavorare così:

1) Il progetto caricato nell'IDE deve essere quello della DLL (o .so);
2) La build deve ovviamente creare il file .so nella direccotry corretta (non puoi copiarla a mano);
3) Nei parametri di esecuzione (nel menu Esegui se non sbaglio) devi inserire con HOST il tuo programma di test (TEST.EXE ad esempio).
4) Avvia con il debugger (ovviamento con tutte le opzioni di compilazione opportune) e imposta il tuoi breakpoint (puoi farlo anche prima di fare il RUN ovviamente).

I PUNTI (1) e (2) sono essenziali, se non li rispetti non ti funziona il debug (a meno di ulteriori azioni che io non conosco).

Ciao
5
Generale / Re:Problema con shared library
« Ultimo post da nomorelogic il Luglio 07, 2025, 10:57:37 am »
che intendi con "l'applicazione host non aggancia la versione caricata nell'ade"?

dovresti postare del codice pascal con cui ricevi l'errore ed anche l'errore stesso
così forse riusciamo ad aiutarti
6
Generale / Re:Problema con shared library
« Ultimo post da angman il Luglio 07, 2025, 10:36:41 am »
l'ho copiata nella usr/lib e adesso la trova, solo avrei bisogno di debuggarla ed impostando l'applicazione host non aggancia la versione caricata nell'ade
7
Generale / Re:Problema con shared library
« Ultimo post da nomorelogic il Luglio 07, 2025, 09:28:57 am »
ciao
nel mondo *nix non è come in windows dove la cartella del programma chiamante è il primo luogo in cui si cerca una libreria.

Normalmente le librerie devono risiedere in /usr/lib.

Per vedere un esempio di caricamento dinamico, guarda questo sorgente (soprattutto l'ultimo)
https://www.freepascal.org/docs-html/prog/progse56.html

prova a mettere anche la fullpath

8
Generale / Re:Page Down
« Ultimo post da bonmario il Luglio 07, 2025, 07:35:21 am »
Ciao,
vedi se ti è utile il codice qui sotto: ho messo le combinazioni i tasti che nel tempo mi sono servite.
Da dove mi serve, chiamo la procedure che mi interessa, ti basterebbe farne una per il "Pagina giù", metterla in un ciclo a cui aggiung uno sleep dopo, per fare in modo di caricare i dati

Codice: [Seleziona]
{
Questa unit contiene tutte le funzioni con cui si inviano delle combinazioni di tasti

//Per poter compilare:
//  - Pacchetto ==> Apri file di pacchetto .lpk
//  - Andare sotto components/mouseandkeyinput (si trovo tra i sorgenti di Lazarus)
//  - Cliccare su Compila
//  - Cliccare su Usa ==> Aggiungi al progetto
}
unit BonMarSendKey;

{$mode objfpc}{$H+}

interface

uses MouseAndKeyInput, LCLType, Classes, SysUtils, BonMarUtilsForm;

const CstMsSleep=500;

procedure SendKeyScriviFrase(WrkFrase:String);
procedure SendKeyAltTab;
procedure SendKeyTab;
procedure SendKeyInvio;
procedure SendKeyCtrlV(VFAspettaDopo:Boolean);    //CTRL + V
procedure SendKeyTastoDxP(VFPrimo, VFAspettaDopo:Boolean); //Tasto destro + Paste
procedure SendKeyFrecciaGiu(VFAspettaDopo:Boolean);
procedure SendKeyGenerico(WrkKey:Word; Shift: TShiftState);



implementation
uses BonMarUtils;

procedure SendKeyScriviFrase(WrkFrase: String);
var Idx:Integer;
    ChrLo, ChrUp:Char;
begin
  WrkFrase:=StringReplace(WrkFrase, LineEnding, Chr(VK_RETURN), [rfReplaceAll]);

  for Idx:=1 to Length(WrkFrase) do begin
    ChrLo:=WrkFrase[Idx];
    ChrUp:=UpCase(ChrLo);
    if (ChrLo <> ChrUp) or
       (ChrUp < 'A') or
       (ChrUp > 'Z') then begin
      //Lettere minuscole / non lettere (numeri, ecc.)
      KeyInput.Press(ChrUp);
    end else begin
      //Lettere maiuscole
      KeyInput.Apply([ssShift]);
      KeyInput.Press(ChrUp);
      KeyInput.Unapply([ssShift]);
    end;
  end;
end;



{Torno all'applicativo precedente (ALT + TAB)}
procedure SendKeyAltTab;
begin
  KeyInput.Apply([ssAlt]);  //Tengo premuto il tasto "Alt"
  KeyInput.Press(VK_TAB);
  KeyInput.Unapply([ssAlt]);//Mollo il tasto "Alt"
end;



procedure SendKeyTab;
begin
  KeyInput.Press(VK_TAB);
end;


procedure SendKeyInvio;
begin
  KeyInput.Press(VK_RETURN);
end;



{Incolla (Ctrl + V)}
procedure SendKeyCtrlV(VFAspettaDopo:Boolean);
begin
  KeyInput.Apply([ssCtrl]);  //Tengo premuto il tasto "Ctrl"
  KeyInput.Press(VK_V);
  KeyInput.Unapply([ssCtrl]);//Mollo il tasto "Ctrl"

  if VFAspettaDopo then begin
    Sleep(CstMsSleep)
  end;
end;



procedure SendKeyTastoDxP(VFPrimo, VFAspettaDopo: Boolean);
begin
  KeyInput.Press(VK_APPS);
  Sleep(CstMsSleep);
  if VFPrimo then begin
    //Non so perché, ma quando incollo il primo in una routine, mi ticca aspettare di più !!!
    Sleep(CstMsSleep);
  end;
  if (1 = 2) and
     (LanciatoDaIDE) then begin
     //Usata per debug
     KeyInput.Press(VK_I);
     AggiornaVideo;
     KeyInput.Press(VK_RETURN);
     AggiornaVideo;
  end else begin
    KeyInput.Press(VK_P);
    AggiornaVideo;
  end;

  if VFAspettaDopo then begin
    Sleep(CstMsSleep)
  end;
end;




procedure SendKeyFrecciaGiu(VFAspettaDopo: Boolean);
begin
  KeyInput.Press(VK_DOWN);

  if VFAspettaDopo then begin
    Sleep(300)
  end;
end;



procedure SendKeyGenerico(WrkKey: Word; Shift: TShiftState);
begin
  if (Shift <> []) then begin
    KeyInput.Apply(Shift);
  end;

    KeyInput.Press(WrkKey);

  if (Shift <> []) then begin
    KeyInput.Unapply(Shift);
  end;
end;

end.
9
Generale / Re:Problema con shared library
« Ultimo post da DragoRosso il Luglio 06, 2025, 09:50:11 pm »
Ciao a tutti, ho creato in lazrus 3.8 e ubuntu 24.04 64 bit una libreria condivisa per criptare e decriptare  le password. Ma quando cerco di usarla da un programma di test il programma esce con exit code 127, sembra che non riesca a trovare la libreria che si trova nella stessa cartella dell'eseguibile di test
Non ho sufficiente conoscenze per fornirti una soluzione ma ti posso dare una info su cui riflettere:

1) Sei sicuro che Linux usi la directory corrente ? E se usasse la "bin" (o altre di sistema) per caricarsi il file ".so" (cioè le librerie) ?

10
Generale / Re:Page Down
« Ultimo post da DragoRosso il Luglio 06, 2025, 09:45:17 pm »
Potresti inserire il carattere di PAGEDOWN come fosse premuto da tasitiera, se sei in Windows ... posto il codice domani perchè ora non riesco ...
Pagine: [1] 2 3 ... 10

Recenti

How To

Utenti
Stats
  • Post in totale: 19856
  • Topic in totale: 2393
  • Online Today: 190
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 163
Total: 163

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.