Newsgroup: it.comp.lang.visual-basic
Titolo: Applicazione che parte all' avvio di windows

Salve a tutti,
Devo creare un app che deve partire direttamente all' avvio di windows...
Come fare?
Normalemente metto tutto in AllUsers/MenuAvvio/Esecuzione automatica...
Ma come fare tutto questo da codice? Come faccio a sapere esattamente dove 
si trova la suddetta cartella?
E poi, come faccio a creare il file .ink (collegamento) all' exe?
Qual' è il formato? Purtroppo "l' ecceso" s.o. che è windows non mi permette 
di aprire i file .ink con notepad o modifcare l' estensione (assurdo! anche 
tolgo la spunta a "non mostrare estensioni per i tipi di file 
conosciuti")...
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS
"Un problema non è un problema se può essere risolto" 

 si trova la suddetta cartella?
Lascia perdere la cartella.
Guardati le API di Windows per lavorare sul registry e metti tutto nella 
chiave Run nel registry.


Non so perchè ma ho come l'impressione che carmine stesse parlando di 
InnoSetup, con cui si sta divertendo in questi giorni :)
Ciao 

 ha scritto nel messaggio 
news:PvT%f.83800$A83.1...@twister1.libero.it...


 CurrentVersion \ Run] per XP
Ma cosa devo mettere poi?
Devo creare una chiave tipo "MiaApplicazione" e con valore 
"C:\programmi\miaapp\miaapp.exe" ?


Occhio,
mia esperienza:
dal Registro l'app non parte sempre
(a volte è chiamata troppo presto, 
cioè quando altri file suoi o di sistema non sono "pronti")
da Esecuzione Automatica invece sono sempre partite (almeno le mie).


 "C:\programmi\miaapp\miaapp.exe" ?
Esatto.
Se guardi cosa c'è sotto Run lo vedi subito.
Puoi metterla sotto HKEY_LOCAL_MACHINE per farla partire sempre o sotto 
HKEY_CURRENT_USER se è limitata all'utente corrente.
Ciao 

 da Esecuzione Automatica invece sono sempre partite (almeno le mie).
Inoltre trovo un po' "maleducato" andare a scrivere sul registro del 
cliente(a meno che non ci siano questioni di denaro di mezzo...).
Il quick start di OpenOffice, ad esempio, viene inserito in "Esecuzione 
Automatica"(che, ahimč, sta cadendo in disuso)...

 da Esecuzione Automatica invece sono sempre partite (almeno le mie).
Mah casomai provo entrambe (anche se quella del registro mi sembra piů 
pulita...).
Qual' č la variabile d' ambiente con il path della cartella "esecuzione 
automatica"?
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site (
http://www.tekkentag.altervista.org/
 )
"Un problema non č un problema se puň essere risolto"

te la restituisce l' Api
SHGetSpecialFolderLocation
il parametro relativo alla cartella da usare č CSIDL_STARTUP 
(che corrispode all' italiana 'Esecuzione automaticata')
nota:
non so se su XP funziona


 (che corrispode all' italiana 'Esecuzione automaticata')
Azz... solo con un API la trovo?
Non ci sta una tipo:
%systemfolder%\system32\ ? (questa per accedere a windows/system32)...
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS


> il parametro relativo alla cartella da usare è CSIDL_STARTUP 


 %systemfolder%\system32\ ? (questa per accedere a windows/system32)...
Perche' cosa ha  l'APE che non va ?
Api Guide Download
http://www.mentalis.org/agnet/apiguide.shtml
http://www.allapi.net/agnet/appdown.shtml
vai a :
RegEnumValue
comunque :
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\
Explorer\Shell Folders
'test al volo in >>>  *.vbs
set oShell = CreateObject("WScript.Shell")
bKey = oShell.RegRead("HKEY_CURRENT_USER\Software\Microsoft\"& _
     "Windows\CurrentVersion\Explorer\Shell Folders\Startup")
msgbox bKey
' esempio di run nel registro (file *.reg esportato)
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"Key"="regedit /s C:\\WINDOWS\\Key.reg"
dove "regedit /s C:\\WINDOWS\\Key.reg"   e' qualsiasi  "roba" che abbia
un senso ... cioe' che sia eseguibile p.e.  anche in start esegui  ...
(notare il doppio \\  nella path )
' altro vbs per sfizio :
'(ricordarsi che per uso personale il FSO e' accettabile per altro NO')
filename = "SpecFolders.log"
set oShell = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
windir = fso.getspecialfolder(0).path ' Windows
sysdir = fso.getspecialfolder(1).path ' System
Tmpdir = fso.getspecialfolder(2).path 'Temp
Set newf = fso.createtextfile(filename)
for each dir in oShell.SpecialFolders
newf.Write dir & VBCrLf
Next
newf.Write "////////////////////////" & Vbcrlf
newf.Write windir&Vbcrlf&sysdir&Vbcrlf&Tmpdir
newf.Close
oShell.run"SpecFolders.log"
'Copia incolla su notepad e salva con estensione .vbs
'tutti i file (*.*)  poi ci clicchi sopra. (per esempio SpecFold.vbs)
'se ti da' errore disattiva l'antivirus
'2
set oShell = CreateObject("WScript.Shell")
WScript.Echo oShell.SpecialFolders("Programs")
--
Fosco

 Perche' cosa ha  l'APE che non va ?
Pecche appunto devo mettere quell' app in quella cartella in fase d' 
installazione con InnoSetup.
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS


 Bye,
Ah, ora finalmente si è capito: devi usare {commonstartup} (o {userstartup})
come specificatore nella sezione [Icons] del file ISS!
[Icons]
Name: {commonstartup}\YourApp; Filename: {app}\YourApp.exe; WorkingDir: {app};
IconFilename: {app}\YourApp.exe; IconIndex: 0
Bye
Raf

 WorkingDir: {app}; IconFilename: {app}\YourApp.exe; IconIndex: 0
Ah... ok, grazie!
Non pensavo ci fosse già un costante di IS atta allo scopo
