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, 1979 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 ..
Ähnliche Inhalte
Batch & Shell
Batch Übung zum Desktop Switchen (7)

Anleitung von TechnoX zum Thema Batch & Shell ...

Hardware
Raspbian mit neuem Gesicht - PIXEL Desktop

Link von runasservice zum Thema Hardware ...

Windows 10
gelöst Win10 Pro 1703 - Weiße Icons für Office Dokumente und andere (4)

Frage von emeriks zum Thema Windows 10 ...

Windows 7
gelöst Defender-Icon in der Taskleiste von Windows 7. Wie einrichten? (3)

Frage von akelus zum Thema Windows 7 ...

Neue Wissensbeiträge
Entwicklung

Exploit Development

Anleitung von burhanudinn123 zum Thema Entwicklung ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(1)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
Leiten "dumme" Switches VLAN-Tags mit durch? (17)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Batch & Shell
Batch zum suchen und verschieben von Verknüpfungen (12)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...