* * * *

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.
Novembre 27, 2024, 03:31:17 am

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

110 Visitatori, 0 Utenti

Autore Topic: Sempre su file  (Letto 11325 volte)

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Sempre su file
« il: Febbraio 28, 2014, 03:13:37 pm »
Mi sto un po' scoraggiando, a memoria in TP non mi dava problemi; a seguito evento di click su bottone
apro una forma che deve visualizzare una serie di dati memorizzati su file; la form si apre tutto ok, se dichiaro "assign (fc,nf) in fondo alla unit (cioè fra begin end.); ma se lo stesso lo fasso all'interno della procedura formactivate non va e proprio non capisco perche' :-[
Codice: [Seleziona]
unit pvisualizzalistaconti;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
const
percorso='/home/nicola/Scrivania/WorkingDocs/UKUPH/Dati/ditprov/';
type
 recconti=record
           codice:integer;
           descrizione:string[30];
           posizione:string[20];
           end;
  { TFvisualizzalistaconti }

  TFvisualizzalistaconti = class(TForm)
    Lcodiceconto: TLabel;
    Ldescrizioneconto: TLabel;
    Lposizione: TLabel;
    mmostraconto: TMemo;
    procedure FormActivate(Sender: TObject);
    procedure mmostracontoChange(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Fvisualizzalistaconti: TFvisualizzalistaconti;



implementation

{$R *.lfm}

{ TFvisualizzalistaconti }

procedure TFvisualizzalistaconti.mmostracontoChange(Sender: TObject);
begin

end;

procedure TFvisualizzalistaconti.FormActivate(Sender: TObject);
var rc:recconti;
    nf:string;
    fc:file of recconti;


begin
  mmostraconto.clear;
  nf:=percorso+'conti.dat';
  assign(fc,nf);  //comando INCRIMINATO!!
  reset(fc);
  while not eof(fc) do begin
  read(fc,rc);
  mmostraconto.lines.add(inttostr(rc.codice)+'     '+rc.descrizione+'     '+rc.posizione);
                        end;
  closefile(fc);
end;
 begin

end.


l'errore:
pvisualizzalistaconti.pas(58,3) Hint: Local variable "fc" does not seem to be initialized
pvisualizzalistaconti.pas(57,16) Error: Wrong number of parameters specified for call to "Assign"
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2922
  • Karma: +20/-4
Re:Sempre su file
« Risposta #1 il: Febbraio 28, 2014, 03:53:30 pm »
tempo fa un problema simile l'ho avuto anche io
credo di aver risolto usando AssignFile/CloseFile invece di Assign/Close
Imagination is more important than knowledge (A.Einstein)

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Re:Sempre su file
« Risposta #2 il: Febbraio 28, 2014, 04:22:29 pm »
Grazie funziona :)
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Re:Sempre su file
« Risposta #3 il: Febbraio 28, 2014, 04:35:35 pm »
Non proprio pertinente, ma come faccio ad usare il "passo passo", se premo F7 o F8 non succede nulla, in TP mi andava in esecuzione una linea alla volta  :(
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2922
  • Karma: +20/-4
Re:Sempre su file
« Risposta #4 il: Febbraio 28, 2014, 04:55:36 pm »
verifica che il compilatore generi anche le informazioni di debugging:

spunta il check che trovi come sotto
project / project options / Compiler Options / Debugging -> Generate debugging info for GDB

controlla anche che -Xs (strip symbols from executables) non sia spuntato

ovviamente quando fai la build del binario... è tutto all'opposto (no debug info + strip symbols) ;)
Imagination is more important than knowledge (A.Einstein)

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Re:Sempre su file
« Risposta #5 il: Febbraio 28, 2014, 05:07:23 pm »
Ho questa schermata e mi sembra corrisponda a quanto tu dici,
io do il comando compila ctrl+F9 e mi sparisce la possibilità di premere F7 o F8
se do direttamente F7 o F8 come detto non succede nulla,
abbi pazienza ma proprio non ne esco....
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2922
  • Karma: +20/-4
Re:Sempre su file
« Risposta #6 il: Febbraio 28, 2014, 05:49:41 pm »
le impostazioni sembrano corrette

verifica anche:
Tools / Options / Debugger
qua deve essere impostato sia il tipo di debugger che la path

se non funziona ancora...
non ti ha mai funzionato o in passato ha funzionato ma non funziona ora?


PS:
una volta verificate le impostazioni, invece di Ctrl+F9, fai la build (Shift+F9)

PPS:
una curiosità: che distro usi? :)
« Ultima modifica: Febbraio 28, 2014, 05:52:44 pm da nomorelogic »
Imagination is more important than knowledge (A.Einstein)

bonmario

  • Hero Member
  • *****
  • Post: 1360
  • Karma: +11/-1
Re:Sempre su file
« Risposta #7 il: Febbraio 28, 2014, 06:31:06 pm »
Aggiungerei anche: che versione di Lazarus usi?

Ciao, Mario

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Re:Sempre su file
« Risposta #8 il: Marzo 01, 2014, 04:00:21 pm »
Lazarus 1.0.10+dfsg-1
Vers. FPC 2.6.2
Rev. SVN 41613
I386-linux-gtk2
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

bonmario

  • Hero Member
  • *****
  • Post: 1360
  • Karma: +11/-1
Re:Sempre su file
« Risposta #9 il: Marzo 01, 2014, 07:40:34 pm »
Non credo che cambi molto, ma l'ultima ufficiale è la 1.0.14 http://www.lazarus.freepascal.org/index.php?page=downloads

Potresti provare a scaricare i sorgenti di Lazarus e compilare quelli, tanto per verificare se anche così quei tasti sono disabilitati.

Un'altra cosa che mi viene in mente: il problema l'hai sia con progetti vecchi che, ad esempio con un progetto nuovo?

Ciao, Mario

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Re:Sempre su file
« Risposta #10 il: Marzo 02, 2014, 12:24:49 pm »
con la nuova versione riesco a fare il debug passo-passo, grazie
per miei progetti l'ultimo risale .....al 1996 con tp 4  :-[
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

bonmario

  • Hero Member
  • *****
  • Post: 1360
  • Karma: +11/-1
Re:Sempre su file
« Risposta #11 il: Marzo 02, 2014, 01:03:59 pm »
Guarda, io il mese scorso sono diventato matto perché non riuscivo a fare il debug su un vecchio progetto su cui in passato avevo fatto sicuramente il debug.
Alla fine avevo scoperto che un tempo venivano salvate delle impostazioni diverse rispetto a quello che viene fatto adesso ... modificate quelle, è tornato tutto a posto.

Sono comunque contento che tu abbia risolto.


Ciao, Mario

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Re:Sempre su file
« Risposta #12 il: Marzo 02, 2014, 02:11:54 pm »
Be grazie a tutti voi!! e penso che mi risentirete
ciao  ;D ;)
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2922
  • Karma: +20/-4
Re:Sempre su file
« Risposta #13 il: Marzo 03, 2014, 09:12:21 am »
sono contento che hai risolto

I386-linux-gtk2

il nome della distro?
(si sono un curiosone, io uso Sabayon :) )
Imagination is more important than knowledge (A.Einstein)

Nicola

  • Full Member
  • ***
  • Post: 201
  • Karma: +0/-0
Re:Sempre su file
« Risposta #14 il: Marzo 03, 2014, 09:23:55 am »
ehm dove lo trovo ?  :-[
La disumanità del computer sta nel fatto che una volta
programmato e messo in funzione, si comporta in
maniera perfettamente onesta.

 

Recenti

How To

Utenti
  • Utenti in totale: 803
  • Latest: maXim.FI
Stats
  • Post in totale: 19208
  • Topic in totale: 2289
  • Online Today: 86
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 110
Total: 110

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.