| |

VB.NET - FortgeschritteneOrdner bzw. Dateizugriff | |  | Autor: Dirk.B | Datum: 19.11.20 08:48 |
| Guten Morgen,
ich möchte gern per vb.net eine *.lnk Verknüpfung im Ordner
"C:\Users\Public\Desktop" ändern und zwar die "Arguments".
Problem hierbei ist/sind die Zugriffsrechte.
Hat jemand einen Lösungsansatz, wie ich dennoch die *.lnk ändern kann.
Rechtevergabe kurz erweitern und wieder zurücksetzen, oder so ähnlich?
Dieses habe ich schon probiert aber ohne Erfolg:
https://www.vbarchiv.net/tipps/tipp_1996-rechte-im-dateisystem-besitzer.html
Hier mein bisheriger Test bzgl. "C:\Users\Public\Desktop".
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles _
Button5.Click
'//;;
Dim pathx As String = Nothing
Dim pathxx As String = Nothing
'//;;
For Each fi As String In My.Computer.FileSystem.GetFiles( _
"C:\Users\Public\Desktop", FileIO.SearchOption.SearchTopLevelOnly, "*.lnk")
pathx = fi.Substring(fi.LastIndexOf("\") + 1)
If pathx.StartsWith("AutoCAD " & "2021") = True Then
pathxx = pathx
End If
Next
'//;;
MsgBox(pathxx)
'//;;
Dim NewArg01 As String = " /product ACAD /language " & """de-DE""" & " /p " & _
"profilname"
Dim NewArg02 As String = " /product ACAD /language " & """de-DE""" & "/nologo"
Dim NewArg03 As String = " /product ACAD /language " & """de-DE""" & _
"/nologo" & " /p " & "borowski2cad"
'//;;
Dim shell As New IWshShell_Class()
Dim path As String = IO.Path.Combine(Environment.GetFolderPath( _
Environment.SpecialFolder.CommonDesktopDirectory), pathxx)
'//;;
MsgBox(path)
'//;;
Dim sC As IWshShortcut = DirectCast(shell.CreateShortcut(path), IWshShortcut)
'//;;
Try
MsgBox(sC.Arguments)
'//;;
sC.Arguments = NewArg01
sC.Save()
'//;;
MsgBox(sC.Arguments)
'//;;
Catch ex As System.Exception
MsgBox("ACHTUNG!" & vbCrLf & ex.Message, vbCritical)
Return
End Try
'//;;
End Sub Bei *.lnk Verknüpfungen unter "C:\Users\...\Desktop" ist das kein Problem, da dieser Ordner lese und schreib Rechte besitzt.
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles _
Button4.Click
'//;;
Dim NewArg01 As String = " /product ACAD /language " & """de-DE""" & " /p " & _
"profilname"
Dim NewArg02 As String = " /product ACAD /language " & """de-DE""" & "/nologo"
'//;;
Dim shell As New IWshShell_Class()
Dim path As String = IO.Path.Combine(Environment.GetFolderPath( _
Environment.SpecialFolder.Desktop), "Test AutoCAD 2021 - Deutsch (" & _
"German).lnk")
'//;;
MsgBox(path)
'//;;
Dim sC As IWshShortcut = DirectCast(shell.CreateShortcut(path), IWshShortcut)
'//;;
Try
MsgBox(sC.Arguments)
'//;;
sC.Arguments = NewArg01
sC.Save()
'//;;
MsgBox(sC.Arguments)
'//;;
Catch ex As System.Exception
MsgBox("ACHTUNG!" & vbCrLf & ex.Message, vbCritical)
Return
End Try
'//;;;
End Sub Vielen Dank im Voraus.
VG
Dirk |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevAniGif (VB/VBA) 
Anzeigen von animierten GIF-Dateien
Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Weitere Infos
Tipp des Monats Oktober 2023 Dieter OtterPopUp-Menü wird nicht angezeigt :-(In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2023 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|