Gambas-it

Gambas3 => Programmazione => Topic aperto da: filipsnew - 30 Marzo 2015, 03:54:17

Titolo: [RISOLTO] Gestione file: problemi in accesso scrittura in Linux
Inserito da: filipsnew - 30 Marzo 2015, 03:54:17
Buonasera a tutti, sono un nuovo utente. Mi sono iscritto perché da poco ho scaricato Gambas su Xubuntu per adattare un programma scritto in VB in ambiente Windows. L'interfaccia (di Gambas) è gradevole, inoltre la documentazione e il supporto sembrano buoni, per questo l'ho preferito a Monodeveloper (che peraltro vincola al modello GTk per la creazione delle GUI, davvero un po' contorto..). Comunque sia, sto intervenendo nel forum perché (tanto per cambiare) ho un problema. In ambiente Linux (sto facendo un po' di test per adattarmi a Gambas, le piccole differenze di questo dialetto ecc..) succede in fase di compilazione che venga segnalato un errore al comando di accesso in scrittura a un file di testo di prova. Ho provato a cambiare i permessi al file da Lettura a Lettura/Scrittura ma niente.. Qualcuno ha avuto un'esperienza analoga e può gentilmente darmi un buon consiglio?

Ecco l'output dell'interprete
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: kicco - 30 Marzo 2015, 07:25:14
 :ciao:
Benvenuto, ho guardato al volo e ho visto che c'è un errore nel nome file hFile è diventato hfile.
Non credo però che il problema sia solo questo.
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: filipsnew - 30 Marzo 2015, 08:57:00
Ciao, infatti la riga problematica precede hfile. Mi sto scervellando ma proprio non riesco a venirne a capo..
vorrei anche precisare che lo stesso scherzo mi capita anche con Mono in Ubuntu
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: kicco - 30 Marzo 2015, 10:42:03
 :ciao:
Hai già dato un occhio qui?
http://www.gambas-it.org/wiki/index.php?title=Guide_della_comunit%C3%A0#Gestione_dei_File (http://www.gambas-it.org/wiki/index.php?title=Guide_della_comunit%C3%A0#Gestione_dei_File)
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: milio - 30 Marzo 2015, 12:18:29
hFile = Open User.Home &/ "test.txt" For Output
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: vuott - 30 Marzo 2015, 20:32:30
Una domanda: perché per la gestione del file hai preferito utilizzare la variabile di tipo Stream anziché quella di tipo File ?
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: filipsnew - 30 Marzo 2015, 21:22:35
cari kikko e milio, grazie per i suggerimenti. Ho seguito il link di kikko e ho trovato una documentazione che sembra davvero ottima. Strano però, perché su 100 ricerche Google non mi era saltato fuori niente rispetto a quella pagina..
Ho risolto :)
ho guardato l'esempio http://www.gambas-it.org/wiki/index.php?title=Scrivere_all%27interno_di_un_file_di_testo (http://www.gambas-it.org/wiki/index.php?title=Scrivere_all%27interno_di_un_file_di_testo), ho pensato un po' al fatto che il path fosse relativo a tmp, così ho provato a mettere il file lì, e tutto è filato liscio. Grazie!

Però mi piacerebbe capire come mai inserendo il file test nella cartella della soluzione Gambas (nell tree del progetto, test figura nella cartella Dati), si verifica quel problema di Access Forbidden in Main.
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: filipsnew - 30 Marzo 2015, 21:24:41
Una domanda: perché per la gestione del file hai preferito utilizzare la variabile di tipo Stream anziché quella di tipo File ?

era solo per fare alcune prove; comunque il problema lo dava anche usando il tipo File.
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: Gianluigi - 30 Marzo 2015, 21:36:10

Però mi piacerebbe capire come mai inserendo il file test nella cartella della soluzione Gambas (nell tree del progetto, test figura nella cartella Dati), si verifica quel problema di Access Forbidden in Main.

Il perché te lo ha spiegato milio se non dai il Path completo, in questo caso Application.Path, come fa a trovare il file?

 :ciao:

P.S. Qualcosa tipo: User.Home &/ Application.Name  ;D
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: filipsnew - 30 Marzo 2015, 21:48:51

Però mi piacerebbe capire come mai inserendo il file test nella cartella della soluzione Gambas (nell tree del progetto, test figura nella cartella Dati), si verifica quel problema di Access Forbidden in Main.

Il perché te lo ha spiegato milio se non dai il Path completo, in questo caso Application.Path, come fa a trovare il file?

 :ciao:

P.S. Qualcosa tipo: User.Home &/ Application.Name  ;D

Perfetto! ecco perché anche provando il suggerimento di milio non mi funzionava: non era in effetti sotto home (ma milio mica poteva prevederlo a meno di essere chiaroveggente ;))

Edit

Scusa se rompo ancora un po' le scatole :) ma mi è venuto in mente perché avevo usato quel percorso: era in base a questo tip del giorno di Gambas (v. allegato)

Come si vede, sembra che si debba usare il percorso relativo per accedere a un file nel progetto, e del resto, se guardate il codice del mio primo post, vedete che l'apertura in input funziona (e il path è identico..); inoltre, il msg di errore indica Access Forbidden, non File Does Not Exist. Dovreste allora cortesemente spiegarmi come mai dà questo problema con un file che mi sembra essere all'interno del progetto (nella 'cartella' dati del tree di progetto). Aggiungo che ho provato con "~/test.txt" e il debug non dà interruzione, solo che incomprensibilmente il file nel progetto non risulta modificato dalla successiva operazione di scrittura.  Qualche idea...?  ???

Edit 2

Sì.. funziona solo con il Path assoluto.. continuo cmq a non capire: devo evincere che test.txt in Dati del tree non sia un file di progetto? Con file di progetto si intende forse dire i file generati in fase di creazione progetto?
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: vuott - 31 Marzo 2015, 10:03:12
Ad ogni modo, in via generale sull'argomento dei percorsi, segnalo anche queste tre discussioni:

http://www.gambas-it.org/smf/index.php?topic=2745.0
http://www.gambas-it.org/smf/index.php?topic=457.msg26627#msg26627
http://www.gambas-it.org/smf/index.php?topic=3310.0
Titolo: Re: Gestione file: problemi in accesso scrittura in Linux
Inserito da: filipsnew - 01 Aprile 2015, 23:25:05
Ad ogni modo, in via generale sull'argomento dei percorsi, segnalo anche queste tre discussioni:

http://www.gambas-it.org/smf/index.php?topic=2745.0
http://www.gambas-it.org/smf/index.php?topic=457.msg26627#msg26627
http://www.gambas-it.org/smf/index.php?topic=3310.0

ok, grazie, direi che adesso è tutto chiaro (particolarmente illuminante il secondo link).