Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Desktop-Icon

Frage Entwicklung Installation

Mitglied: hertingo

hertingo (Level 1) - Jetzt verbinden

07.01.2015, aktualisiert 08.01.2015, 1909 Aufrufe, 5 Kommentare

Hallo zusammen,

eine vermutlich einfache Frage, die mich aber zur Weißglut bringt:

ich habe eine Programmverknüpfung (EXCEL-Basiert) auf dem Desktop liegen mit einem selbst erstellten Icon.

Nun soll eine neue Versoin mit einem neuen Icon auf dem Desktop plaziert werden.
Die Aktualisierung erfolgt über eine Batch-Datei.

Aber nach der aktualisierung erscheint immernoch das alte Symbol für die Verknüpfung.

Hier der Text aus der Batch-Datei:

@echo off & setlocal

::Löschen von dem Ordner KnowledgeMapping, falls dieser existiert
if exist "c:\KnowledgeMapping" rmdir /s /Q "c:\KnowledgeMapping"
if exist "%userprofile%\desktop\KnowledgeMapping.lnk" del "%userprofile%\desktop\KnowledgeMapping.lnk"

::Löschen von dem Ordner Portal, falls dieser existiert
if exist "c:\Portal" rmdir /s /Q "c:\Portal"
if exist "%userprofile%\desktop\c:\Portal.lnk" del "%userprofile%\desktop\c:\Portal.lnk"


::erstellen von dem Ordner Portal, falls dieser noch nicht existiert
if not exist "c:\Portal" md "c:\Portal"

::kopieren der Dateien von Netzlaufwerk nach C:\Portal\
robocopy "\\ITFS1001\Netzlaufwerk\Portal\Setup" "C:\Portal" /MIR


::Desktop als Zielpfad für Verknüpfung

set "zielpfad=%userprofile%\Desktop"


::Name der Verknüpfung (ohne ".lnk")

set "progtitel=Portal"

::Speicherort der Programmdatei

set "progdir=C:\Portal\"

::Name der auszuführenden Programmdatei

set "progexe=Portal.xlsm"

::Beschreibung des auszuführenden Programms

set "beschreibung=Portal

::Bei Bedarf Speicherordner der Verknüpfung erstellen (siehe oben "zielpfad"):

if not exist "%zielpfad%" md "%zielpfad%"

::temporäres VBScript erzeugen ...
echo Set objShell=WScript.CreateObject("Wscript.Shell")>%temp%\MakeShortCut.vbs
echo Set objShortcut=objShell.CreateShortcut("%zielpfad%\%progtitel%.lnk")>>%temp%\MakeShortCut.vbs
echo objShortcut.TargetPath="%progdir%\%progexe%">>%temp%\MakeShortCut.vbs
echo objShortcut.Description="%beschreibung%">>%temp%\MakeShortCut.vbs
echo objShortcut.WorkingDirectory="%progdir%">>%temp%\MakeShortCut.vbs
echo objShortcut.IconLocation = "C:\Portal\favicon.ico,0">>%temp%\MakeShortCut.vbs
echo objShortcut.Save>>%temp%\MakeShortCut.vbs

::... ausführen ...

cscript //nologo %temp%\MakeShortCut.vbs

::... und wieder löschen.

del %temp%\MakeShortCut.vbs

if exist "Portal Setup.zip" del "Portal Setup.zip"
if exist "Portal Setup.bat" del "Portal Setup.bat"




Hat jemand eine Idee? Vielen Dank im Voraus!

VG

herting
Mitglied: Ravers
LÖSUNG 07.01.2015, aktualisiert 08.01.2015
Hi,

habs mir nicht genau angeschaut, sehe aber das du den Link per VBS erstellst.

Warum kopierst du es nicht einfach per batch?

greetz
ravers
Bitte warten ..
Mitglied: rubberman
07.01.2015, aktualisiert um 20:55 Uhr
Hallo hertingo, willkommen im Forum.

if exist "%userprofile%\desktop\c:\Portal.lnk" del "%userprofile%\desktop\c:\Portal.lnk"
So ein Pfad kann nicht existieren. Ich gehe davon aus, dass das c:\ zu viel ist.
Korrigiere das mal und teste erneut.

Falls das nicht hilft, gib dem System die Chance zu realisieren, dass die Verknüpfung neu ist. Z.B. indem du zwischen Löschen und Neuerstellung ein
>nul timeout /t 2 /nobreak
setzt.

Andere Möglichkeit die du testen könntest wäre, zuerst die neue Verknüpfung mit einem anderen Name zu erstellen, danach die alte löschen und dann die neue umbenennen.

Grüße
rubberman
Bitte warten ..
Mitglied: hertingo
07.01.2015 um 21:04 Uhr
Hallo Ravers und Rubberman,

erstmal vielen Dank für Eure Antworten. Ich werde die morgen gleich mal testen und dann berichten.

Bis dahin vielen Dank!

VG

hertingo
Bitte warten ..
Mitglied: hertingo
08.01.2015 um 08:08 Uhr
Hallo Ravers, hallo rubberman,

also folgendes zu den Lösungsmöglichkeiten:

die Befehlszeile
if exist "%userprofile%\desktop\Portal.lnk" del "%userprofile%\desktop\Portal.lnk"
habe ich korrigiert aber leider ohne Effekt.

Auch ein Timeout mit dem Befehl
>nul timeout /t 2 /nobreak
hatte leider keinen Effekt.

Dann habe ich eine bestehende Verknüpfung, die mit dem Icon versehen worden war, kopiert. Und siehe da, es hat funktioniert!

Aus diesem Grund habe ich nun die weitere Variante
"zuerst die neue Verknüpfung mit einem anderen Name zu erstellen, danach die alte löschen und dann die neue umbenennen"
nicht ausprobiert.

Euch beiden vielen Dank für Eure Hilfe!

VG

hertingo
Bitte warten ..
Mitglied: mayho33
LÖSUNG 04.02.2015, aktualisiert 09.02.2015
Hi!

ISt zwar schon gelöst, aber wenn du die Verknüpfung für mehrere Profile bereitstellen willst solltest du die direkt in des Public.Desktop-Folder stellen. Der wird von allen Profilen verwendet. Dazu brauchst du zwar Adminrechte, aber du hast kein Problem mit nicht aktualisierten Verknüpfungen in einzelnen Profilen.

Wir mache das z.B. so per VBScript:

zuerst den Public-Desktop-Pfad über die Registry ermitteln (der sichere Weg unter Windows (Xp, Vista, usw.)

01.
Dim objShell : Set objShell = CreateObject("Wscript.Shell") 
02.
AllUsersDesktop   = objshell.RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Common Desktop")
und anschließend die Verknüpfung anlegen (die OS-Architektur muss berücksichtig werden):
01.
Set oLink = objshell.CreateShortCut(AllUsersDesktop & "\meineVerknüpfung.lnk") 
02.
olink.TargetPath = """C:\Program Files (x86)\Microsoft Office\Office15\excel.EXE""" 
03.
olink.WindowStyle = 4 
04.
oLink.IconLocation = "C:\Program Files (x86)\Microsoft Office\Office15\excel.EXE,0" 
05.
oLink.WorkingDirectory = """C:\Program Files (x86)\Microsoft Office\Office15""" 
06.
oLink.Save 
07.
Set oLink = Nothing
Grüße

Mayho
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Virtualisierung
OpenSource Desktop-Virtualisierung für Thin-Clients (7)

Frage von Fenris14 zum Thema Virtualisierung ...

Windows Server
Windows Server 2008 R2 Aero-Design auf Remote Desktop geht nicht (3)

Frage von Motherboard33 zum Thema Windows Server ...

Mac OS X
Problem mit Microsoft Remote Desktop App auf macOS Sierra (10.12) (5)

Frage von lordzwieback zum Thema Mac OS X ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...