Olisiko kelläkään vinkkiä, kuinka saada ohjelman itsensä lisäämään Käynnistys-kansioon (C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup)? Eihän se sinänsä ole mikään ongelma, mutta minulla ainakin tössää aina, koska oikeudet eivät ole riittävät, vaikka olen kirjautunut järkän tunnuksilla.
Käytössä: Microsoft Visual Basic 2010 Express Edition
No jos se security elevation on ongelma, niin tossa aiheesta juttua
http://www.codeproject.com/KB/vista-security/UAC_Shield_for_Elevation.aspx
Toisaalta eikös kuvaamasi homma kuuluisi yleensä asennusohjelmalle.
jos click&play paketin teet (se expressin vakio publish muoto), niin et voi määrittää. Se asentuu käynnistä valikkoon siihen kansioon minkä olet projektiisi määrittänyt publisheriksi. (ellei sit publisher satu olemaan startup niminen, sitten en tiedä mitä tapahtuu ;D)
Et tietääkseni voi myöskään määrittää asennuskansiota, vaan se asentuu automaagisesti jonnekkin käyttäjän app2.0 hakemistoon piilotettuna.
käytä erillistä installeria.
Eikö automaattikäynnistystä varten kannattaisi mieluummin lisätä ohjelma rekisteriin?
HKEY_CURRENT_USER\Software\Microsoft\Windows\
(Käyttäjäkohtainen, ei muistaakseni vaadi admin-oikeuksia.)
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\
(Kaikille käyttäjille, vaatii admin-oikeudet.)
Moikka Petja!
jutska menee näin...
'COM-Referenssi: 'Windows Script Host Object Model (wshom.ocx) Imports IWshRuntimeLibrary Public Partial Class MainForm Public Sub New() Me.InitializeComponent() End Sub Sub MainForm_Load(sender As Object, e As EventArgs) 'Dim userID, passWord As String 'userID = Environment.UserName 'passWord = "********" Dim lnkTargetPath As String = _ Environment.GetFolderPath( _ Environment.SpecialFolder.CommonStartup) Dim appName As String = _ System.Reflection.Assembly. _ GetExecutingAssembly.GetName().Name Dim lnkPath As String = lnkTargetPath + "\" + _ appName + ".lnk" If Dir(lnkPath) = "" Then Dim MyWsh As New WshShell Dim shortCut As IWshRuntimeLibrary.IWshShortcut shortCut = CType(MyWsh.CreateShortcut( _ lnkPath), IWshRuntimeLibrary.IWshShortcut) With shortCut .TargetPath = _ System.Reflection.Assembly.GetExecutingAssembly.Location() .WindowStyle = 1 .Description = "Käynnistä " + appName .WorkingDirectory = lnkTargetPath .IconLocation = System.Reflection.Assembly. _ GetExecutingAssembly.Location() & ", 0" '.Arguments = userID & ", " & passWord .Save() End With shortCut = Nothing: MyWsh = Nothing End If End Sub End Class
Aihe on jo aika vanha, joten et voi enää vastata siihen.