Ciao a tutti,
ho un programma scritto in vb.net, ho la necessità di avviarlo all'avvio del pc. Dunque creo un file .bat che vado a copiare nella cartella di avvio automatico, questa è la sintassi del file .bat:
Il tutto è perfettamente funzionante se il prompt dei comandi non mi rispondesse che "echo off" è un comando non riconosciuto, apparentemente sembra che ci sia un carattere "fantasma" davanti a tutta la stringa, come vedete nell'immagine. (se tolgo o metto la @ non cambia nulla, l'errore persiste).codice:@echo off timeout 15 >nul 2>nul IF EXIST "%appdata%\Microsoft\Windows\Start Menu\Programs\Gestione Commesse 4.0\Gestione Commesse 4.0.appref-ms" ("%appdata%\Microsoft\Windows\Start Menu\Programs\Gestione Commesse 4.0\Gestione Commesse 4.0.appref-ms") ELSE (start /b "" cmd /c del "%~f0"&exit /b)
Immagine.jpg
il codice vb con cui creo il file bat è questo:
codice:Dim app_dir_generica As String = "%appdata%\Microsoft\Windows\Start Menu\Programs\Gestione Commesse 4.0\Gestione Commesse 4.0.appref-ms" Dim startup_dir_generica As String = "%appdata%\Microsoft\Windows\Start Menu\Programs\Startup" Dim app_dir As String Dim startup_dir As String app_dir = Environment.ExpandEnvironmentVariables(app_dir_generica) startup_dir = Environment.ExpandEnvironmentVariables(startup_dir_generica) Dim bat As String = "@echo off" & vbCrLf & "timeout 15 >nul 2>nul" & vbCrLf & "IF EXIST " & Chr(34) & app_dir_generica & Chr(34) & " (" & Chr(34) & app_dir_generica & Chr(34) & ") ELSE (start /b " & Chr(34) & Chr(34) & " cmd /c del " & Chr(34) & "%~f0" & Chr(34) & "&exit /b)" My.Computer.FileSystem.WriteAllText(startup_dir & "\Gestione Commesse.bat", bat, False)
Il codice del file bat funziona se eseguito riga per riga manualmente dalla console, ma se eseguo direttamente il .bat completo da quell'errore.
Sapete aiutarmi?
grazie

Rispondi quotando
