WinFuture-Forum.de: VB.net Verknüpfung erstellen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

VB.net Verknüpfung erstellen

#1 Mitglied ist offline   ::YC Tech:: 

  • Gruppe: aktive Mitglieder
  • Beiträge: 169
  • Beigetreten: 01. Oktober 11
  • Reputation: 0

geschrieben 27. Oktober 2012 - 18:17

moin, alle programmierer!
ich schreibe gerade an einem programm für windows 8, dass versteckte ordner (wie "Anwendungen" oder "God Mode") sichtbar machen soll. nun hab ich aber dieses prob: man soll per checkbox entscheiden können, ob es an den startscreen geheftet wird (der trick ist, eine verknüpfung von der datei unter "%AppData%\Microsoft\Windows\Start Menu\Programs" anzulegen). dazu hab ich diesen code fürs verknüpfungerstellen benutzt:
Private Function MakeShortcut(ByVal File As String, ByVal ShortcutFolder As String, ByVal Name As String, ByVal WorkDirectory As String)
        Dim WshShell As Object = CreateObject("WScript.Shell")
        Dim NewShortcut As Object = WshShell.CreateShortcut(ShortcutFolder & "\" & Name & ".lnk")

        NewShortcut.TargetPath = File
        NewShortcut.WindowStyle = 1
        NewShortcut.IconLocation = File & ",0"
        NewShortcut.WorkingDirectory = WorkDirectory
        NewShortcut.Save()
    End Function

System.IO.Directory.CreateDirectory(Path_Box.Text & "\" & Me.Text & ".{ED228FDF-9EA8-4870-83B1-96B02CFE0D52}")
            If Startscreen.Checked = True Then
                MakeShortcut(Path_Box.Text & "\" & Me.Text & ".{ED228FDF-9EA8-4870-83B1-96B02CFE0D52}", "%AppData%\Microsoft\Windows\Start Menu\Programs", Me.Text, Path_Box.Text)
            End If

aber sobald ich einen von windows vordefinierten ordner verwende (hier bei %AppData%), bekomme ich eine ausnahmemeldung, in der plötzlich das steht:

Zitat

Eine nicht behandelte Ausnahme des Typs "System.IO.DirectoryNotFoundException" ist in Microsoft.VisualBasic.dll aufgetreten.

Zusätzliche Informationen: Die Verknüpfung "C:\Users\###\Documents\Visual Studio 2012\Projects\Unhide 8\Unhide 8\bin\Debug\%AppData%\Microsoft\Windows\Start Menu\Programs\Games.lnk" wurde nicht gespeichert.


gibt es irgendeine möglichkeit, das zu beheben?
danke im voraus für antworten.
0

Anzeige

#2 Mitglied ist offline   Kirill 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.948
  • Beigetreten: 04. Dezember 06
  • Reputation: 49

geschrieben 30. November 2012 - 16:16

Das heißt auch nicht %appdata%, sondern Environment.GetSpecialFolders.
Most rethrashing{
DiskCache=AllocateMemory(GetTotalAmountOfAvailableMemory);}
0

#3 Mitglied ist offline   ::YC Tech:: 

  • Gruppe: aktive Mitglieder
  • Beiträge: 169
  • Beigetreten: 01. Oktober 11
  • Reputation: 0

geschrieben 01. Dezember 2012 - 18:34

Zitat

"GetSpecialFolders" ist kein Member von "System.Environment".

0

#4 Mitglied ist offline   Kirill 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.948
  • Beigetreten: 04. Dezember 06
  • Reputation: 49

geschrieben 02. Dezember 2012 - 17:28

Stimmt, das ist SpecialFolders.
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData));
Most rethrashing{
DiskCache=AllocateMemory(GetTotalAmountOfAvailableMemory);}
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0