Collegamenti a file

antonio89x
Propongo una vecchia domanda a cui non mi è stata data risposta:

E' possibile fare con Visual Basic 6 un programma che crei sul desktop un collegamento ad un file scelto?

Speriamo ci sia qualcuno che mi risponda stavolta :D

Come sempre grazie mille :-D

Risposte
superpunk733
allora, io non conosco il vb6, pero' ho pensato una soluzione: cioe' un collegamento e' un file *.lnk no? quindi sarebbe sufficiente sapere come e' "formattato" per creare un collegamento. mi spiego? potresti fare un output come fosse un file txt solo con estensione lnk formattato opportunamente... non so se e' fattibile, pero' credo sia un procedimento applicabile. Prova ad aprire con blocco note il files lnk.. oh io cho provato a darti un consiglio nn so se sara' fallimentare... :-D

TomSawyer1
Se lo apri in questo modo, vedrai l'outoput del file originale. I link non hanno memoria.

antonio89x
E quindi? :?

luciano791
"superpunk733":
allora, io non conosco il vb6, pero' ho pensato una soluzione: cioe' un collegamento e' un file *.lnk no? quindi sarebbe sufficiente sapere come e' "formattato" per creare un collegamento. mi spiego? potresti fare un output come fosse un file txt solo con estensione lnk formattato opportunamente... non so se e' fattibile, pero' credo sia un procedimento applicabile. Prova ad aprire con blocco note il files lnk.. oh io cho provato a darti un consiglio nn so se sara' fallimentare... :-D


Ha ragione Crook, il link non è un file. Se lo apri con un qualsiasi editor ti fa vedere il contenuto del file a cui fa riferimento. Il link è solo una parte del file system contenente alcune informazioni riguardanti il file, tra cui il puntatore al suo indirizzo in memoria.
Ecco come si crea in VB6

Private Declare Function fCreateShellLink Lib "STKIT432.DLL" (ByVal lpstrFolderName as String,ByVal lpstrLinkName as String ,ByVal lpstrLinkPath as String ,ByVal lpstrLinkArgs as String ) As Long
...
Dim N As Long
N = fCreateShellLink("C:\Windows\Desktop", "Collegamento al file che vuoi te", "C:\percorso\file.xxx","")


Luciano

antonio89x
@Luciano

Sicuro che la libreria sia esatta?

A me dice "Impossibile trovare...".

antonio89x
Scusa una cosa, ma il "Private Declare Function" va inserito nella routine generale, vero?

Ciao.

TomSawyer1
No, va inserito nelle dichiarazioni di variabili, fuori da ogni routine.

antonio89x
"Crook":
No, va inserito nelle dichiarazioni di variabili, fuori da ogni routine.


Si, volevo dire quello...

Però quando eseguo il programma, non mi trova il file...

luciano791
"antonio89x":
[quote="Crook"]No, va inserito nelle dichiarazioni di variabili, fuori da ogni routine.


Si, volevo dire quello...

Però quando eseguo il programma, non mi trova il file...[/quote]

posta il codice che hai scritto...

antonio89x
Ho scritto quello che mi hai suggerito tu
Forse quel file mi manca per davvero...

TomSawyer1
Prova a cercarlo sul computer. Se non ce l'hai scaricalo da internet. Posta anche l'errore che ti dà.

antonio89x
Beh, l'errore come avevo accennato prima fa notare l'assenza del file:

Impossibile trovare il file "STKIT432.DLL"

Dove posso scaricare il file?

antonio89x
Ok, file scaricato!
Adesso dove lo colloco?

TomSawyer1
System32, credo.

antonio89x
Si si, tutto fatto...
Grazie mille a tutti :-D

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.