Novità

Scelta percorso file dinamico senza immissione (da uscire pazzi)

Edoardo_95

Advanced Member
Salve a tutti

Ho uno script che presenta questa funzione

Codice:
Function ScegliFiletxt(sDir)
Dim i
ReDim aV(0)
Call ElencoFileInDirectory(sDir,aV,".txt")
i = ScegliOpzioneMenu(aV,,"Scegli file txt")
ScegliFiletxt = sDir & aV(i) & ".txt"
End Function
Dim sFile1
Dim aLunghette
Dim sFiletxt
sFile1 = "C:\Users\utente\Desktop\Script\"
sFiletxt = ScegliFiletxt(sFile1)


Ogni qualvolta io lancio lo script devo impostare lo specifico percorso in cui risiedono i file txt. Esiste un modo per evitare di immettere "manualmente" il percorso di sFile1? ... magari fare in modo da reperire "automaticamente" il percorso in base alla cartella in cui risiede lo script medesimo?
 

Edoardo_95

Advanced Member
Forse ho trovato un soluzione adoperando il linguaggio vbs che riporto qui di seguito:

Codice:
Left(wscript.scriptfullname, (Len(wscript.scriptfullname) - Len(wscript.scriptname)))

come posso adattarlo a spaziometria? Considerando che il "comando" WScript non viene riconosciuto da spaziometria?
 

joe

Advanced Member >PLATINUM PLUS<
Ciao.

Secondo me devi attribuire gli indirizzi dei file

imponendoli alle variabili con il segno di uguale.

SENZA usare le istruzioni preposte alla scelta di essi.

Perchè esse ti inducono a scegliere i file tra i molti presenti.

:)
 

Edoardo_95

Advanced Member
Buonasera a tutti e grazie davvero per il supporto fornito ?. Il mio obbiettivo è quello di mantenere la funzione di scelta del file .TXT ma di non immettere attraverso il codice la Path di sistema dove si trovano.

Esempio pratico e fittizio

Se apro lo script nella cartella di un computer

C:\Users\marco\Desktop\Script\

Ed un giorno apro lo stesso script sul computer di un'altra persona

C:\Users\luca\Desktop\programma\

Nella funzione richiamata devo modificare il percorso del file (sFile1) in base all'utente (marco/luca) e la cartella (script/programma) .


Voglio creare una versione "portatile" dello script in sostanza.

Ho provato GetDirectoryApp ma il risultato è il seguente

C:\Users\utente\Appdata\roaming\spaziometria\

Ovvero la cartella "dati" di spaziometria
 

lotto_tom75

Advanced Premium Member
Ciao Edoardo, se ho capito bene cosa cerchi..., per rendere "portable" qualsiasi script che pesca da un file txt
basta che usi quest'accortezza:

sfile = ".\" & "filetxtdesiderato.txt"

e che tu inserisca i files txt che ti necessitano sempre nella stessa directory dove risiede lo stesso script che li richiama...

Ciao

:)
 

Edoardo_95

Advanced Member
Perfetto è proprio quello che cerco :) .. ma spaziometria continua a restituirmi C:\Users\utente\AppData\Roaming\spaziometria :confused:
Ho provato a disinstallare ed reistallare il programma ma nulla .. richiama automaticamente la cartella dati di spaziometria .. a molti funziona il metodo ".\" che conosco .. ma a me non c'è verso ?
 

lotto_tom75

Advanced Premium Member
Perfetto è proprio quello che cerco :) .. ma spaziometria continua a restituirmi C:\Users\utente\AppData\Roaming\spaziometria :confused:
Ho provato a disinstallare ed reistallare il programma ma nulla .. richiama automaticamente la cartella dati di spaziometria .. a molti funziona il metodo ".\" che conosco .. ma a me non c'è verso ?

Prova a postare la parte del codice che ti da sempre errore... e vediamo di risolvere...

Ciao!

:)
 

Edoardo_95

Advanced Member
Lo script non mi dà errore ? semplicemente quando inserisco

sfile = ".\"

Anzi che "pescare" i file nella cartella in cui risiede lo script me li va a pescare nella cartella dati di spaziometria che non c'entra nulla ovvero

C:\Users\utente\AppData\Roaming\spaziometria

Ciao ??
 

lotto_tom75

Advanced Premium Member
Lo script non mi dà errore ? semplicemente quando inserisco

sfile = ".\"

Anzi che "pescare" i file nella cartella in cui risiede lo script me li va a pescare nella cartella dati di spaziometria che non c'entra nulla ovvero

C:\Users\utente\AppData\Roaming\spaziometria

Ciao ??

Da come hai descritto il problema sembrerebbe che tu debba solo commentare e quindi disattivare gli eventuali path "aggiuntivi" presenti nel tuo code tipo dir o sfile ad esempio i quali evidentemente hanno qualche aggancio o richiamo a quella cartella di sistema di spaziometria ;)

Perchè se lasci solo

sfile1 = ".\filetxt.txt"

non c'è motivo alcuno che ti apra la cartella dati di spaziometria :)
 
L

LuigiB

Guest
Ciao esiste una funzione che ritorna il per orso dati del pc corrente...non ricordo il nome della funzione...inizia con Get
Quindi

Sfile = getpercorso & "mioscript.ls"
 

joe

Advanced Member >PLATINUM PLUS<
Scusa ma ....

... il pc non può sapere dove si trova "un file esterno".

Forse non lo sa neppure il sistema operativo.

Tanto è vero che si deve lanciare un programma per la ricerca dei file

ed occorre anche spesso molto tempo per cercare il nome inserito

in ogni posizione (nella directrory) prima che il file venga trovato.

:)
 

joe

Advanced Member >PLATINUM PLUS<
Ops ...

Luigi ho visto che hai dato una risposta mentre scrivevo.

Penso di no.

Conosco GetDirectoyappdata e GetDirectoryTemp,

ma sembra che siano quelle da cui vuole togliersi.

Quindi secondo me ... lui vorrebbe un programma

come quelli di installazione che sanno a priori

quanto c'è tra i contenuti e dove esso è ... prima di utilizzarlo.


:)
 
L

LuigiB

Guest
ho letto meglio la richiesta , purtroppo gli script girano dentro spaziometria e non tramite wscript.exe che è il programma di windows deputato ad eseguire i vbs , quindi sebbene in uno script che gira in windows e lanciato tramite wscript conoscere il percorso è molto semplice , farlo da spaziometria al momento non è possibile ..
 
Ultima modifica di un moderatore:

Edoardo_95

Advanced Member
Grazie infinite per il supporto a tutti :D . Che peccato .. Immaginavo fosse impossibile, dopo tutte le prove ed i meccanismi utilizzati o_O però tentar non nuoce... ed almeno ci ho provato ?
 

Ultima estrazione Lotto

  • Estrazione del lotto
    venerdì 26 aprile 2024
    Bari
    65
    67
    84
    22
    77
    Cagliari
    38
    09
    83
    18
    20
    Firenze
    76
    24
    78
    30
    40
    Genova
    50
    56
    61
    90
    57
    Milano
    87
    21
    15
    12
    79
    Napoli
    13
    66
    86
    25
    49
    Palermo
    72
    60
    68
    74
    09
    Roma
    23
    15
    43
    07
    75
    Torino
    82
    79
    31
    41
    64
    Venezia
    66
    89
    18
    80
    41
    Nazionale
    04
    24
    10
    69
    73
    Estrazione Simbolotto
    Genova
    33
    03
    16
    35
    32
Alto