Link(): differenze tra le versioni

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
Nessun oggetto della modifica
 
(5 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
La funzione della libreria di C
La funzione '''link()''', dichiarata nel file header "''/usr/include/unistd.h''":
  ''int link(const char *oldpath, const char *newpath)''
  int link (const char *__from, const char *__to)
crea un nuovo collegamento ad un file conservando anche quello iniziale. Il nuovo collegamento deve assumere diverso nome, se viene creato nel medesimo percorso di quello iniziale; e può assumere identico nome a quello iniziale, se viene creato in un percorso differente.
crea un nuovo collegamento ad un file conservando anche quello iniziale. Quindi sostanzialmente questa funzione copia un collegamento ad un file assegnandogli, a seconda dei casi, un nuovo nome e/o un nuovo percorso. Il collegamento precedente al file è conservato.
<BR>Questa funzione quindi sostanzialmente questa funzione copia un collegamento ad un file assegnandogli, a seconda dei casi, un nuovo nome e/o un nuovo percorso. Il collegamento precedente al file è conservato.
<BR>Il nuovo collegamento deve assumere diverso nome, se viene creato nel medesimo percorso di quello iniziale; e può assumere identico nome a quello iniziale, se viene creato in un percorso differente.




Volendola utilizzare in Gambas, bisognerà dichiararla con ''Extern'', nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta:
Volendola utilizzare in Gambas, bisognerà dichiararla con ''Extern'', nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta:
  Private <FONT color=#B22222>Extern link</font>(oldpath As String, newpath As String) As Integer In "<FONT color=#B22222>libc:6</font>"
  Private <FONT color=#B22222>Extern link</font>(__form As String, __to As String) As Integer In "<FONT color=#B22222>libc:6</font>"
 
 
 
Semplice esempio di uso in Gambas:
Semplice esempio di uso in Gambas:
  <FONT color=Gray>' ''int link(const char *oldpath, const char *newpath)''</font>
Library "libc:6"
  '''Private''' <FONT color=#B22222>Extern link</font>(vecchiopercorso As String, nuovopercorso As String) As Integer In "<FONT color=#B22222>libc:6</font>"
 
  <FONT Color=gray>' ''int link (const char *__from, const char *__to)''
' ''Make a link to FROM named TO.''</font>
  Private Extern <FONT color=#B22222>link</font>(vecchiopercorso As String, nuovopercorso As String) As Integer
   
   
  '''Public''' Sub Main()
  Public Sub Main()
   
   
   Dim i As Integer
   Dim i As Integer
    
    
  i = link("''/percorso/del/vecchio/collegamento/al/file''", "''/percorso/del/nuovo/collegamento/al/file''")
  i = link("<FONT Color=gray>''/percorso/del/vecchio/nome/del/file''</font>", "<FONT Color=gray>''/percorso/del/nuovo/nome/del/file''</font>")
  If i = -1 Then Error.Raise("Impossibile creare un nuovo collegamento al file !")
  If i == -1 Then Error.Raise("Impossibile creare un nuovo collegamento al file !")
   
   
  '''End'''
  End




Vedi anche la funzione esterna [[unlink()|unlink()]] .
Vedi anche la funzione esterna [[unlink ()]] .

Versione attuale delle 15:08, 13 giu 2024

La funzione link(), dichiarata nel file header "/usr/include/unistd.h":

int link (const char *__from, const char *__to)

crea un nuovo collegamento ad un file conservando anche quello iniziale. Quindi sostanzialmente questa funzione copia un collegamento ad un file assegnandogli, a seconda dei casi, un nuovo nome e/o un nuovo percorso. Il collegamento precedente al file è conservato.
Il nuovo collegamento deve assumere diverso nome, se viene creato nel medesimo percorso di quello iniziale; e può assumere identico nome a quello iniziale, se viene creato in un percorso differente.


Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:

Private Extern link(__form As String, __to As String) As Integer In "libc:6"

Semplice esempio di uso in Gambas:

Library "libc:6"
 
' int link (const char *__from, const char *__to)
' Make a link to FROM named TO.
Private Extern link(vecchiopercorso As String, nuovopercorso As String) As Integer


Public Sub Main()

 Dim i As Integer
 
 i = link("/percorso/del/vecchio/nome/del/file", "/percorso/del/nuovo/nome/del/file")
 If i == -1 Then Error.Raise("Impossibile creare un nuovo collegamento al file !")

End


Vedi anche la funzione esterna unlink () .