Solved

VB Script to remove shortcut from desktop

Posted on 2013-01-15
6
743 Views
Last Modified: 2013-01-21
Hello, I have found a new way to deploy desktop shortcuts on our client PC's.  The issue is that I currently have VB scripts running to do the same thing via log on script.  I have attached the code I use to create those icons.  What could I add or change in this script to look for the icon and remove it.  Basically I want to reverse what I have been doing.


'FORCE EXPLICIT VARIABLE DECLARATION
option explicit

'STEP OVER ERRORS FOR CUSTOM ERROR REPORTING
on error resume next

'DECLARE VARIABLES
dim shell, desktopPath, link, sys32Path

'INSTANTIATE THE WINDOWS SCRIPT HOST SHELL OBJECT
Set shell = WScript.CreateObject("WScript.shell")

'SET THE PATH TO THE WINDOWS DESKTOP FOLDER & MY DOCUMENTS FOLDER
desktopPath = shell.SpecialFolders("Desktop")
sys32Path = "http://epic1ctx/Citrix/TriCounty/auth/login.aspx"

'CREATE A SHORTCUT ON THE USER'S DESKTOP
Set link = shell.CreateShortcut(desktopPath & "\TriCounty Citrix.lnk")

'SET THE PROPERTIES FOR THE SHORTCUT
link.Description = "My Shortcut"
link.TargetPath = sys32Path
link.WindowStyle = 0
link.WorkingDirectory = desktopPath
link.IconLocation = "\\tch16\IT\ShortcutIcons\epic.ico"
link.Save

'CLEANUP OBJECTS
set shell = nothing
0
Comment
Question by:TriCountyIT
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
6 Comments
 
LVL 20

Expert Comment

by:ltlbearand3
ID: 38781127
You can just use the file system object to delete the file created by the link.  You can add something like this to your code to do the trick.
Dim strRemoveFile, objFSO
strRemoveFile = desktopPath & "\TriCounty Citrix.lnk"

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(strRemoveFile) then
	objFSO.DeleteFile strRemoveFile
End IF

Set objFSO = nothing

Open in new window

0
 
LVL 14

Accepted Solution

by:
Rob Miners earned 500 total points
ID: 38781300
' http://www.petri.co.il/forums/showthread.php?t=46267

set WshShell = WScript.CreateObject("WScript.Shell" )
strDesktop = WshShell.SpecialFolders("Desktop" )
' delete this shortcut
strShortcut = strDesktop & "\notepad.lnk"

Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FileExists(strShortcut) Then fso.DeleteFile(strShortcut)
0
 

Author Closing Comment

by:TriCountyIT
ID: 38801159
This worked perfect.  THanks
0
NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

 
LVL 20

Expert Comment

by:ltlbearand3
ID: 38802425
Can you please explain why my solution was not picked as it essentially the same thing and was posted first.  I am curious.

-Bear
0
 

Author Comment

by:TriCountyIT
ID: 38802477
Of course.  I tried your script and it didnt work.  For whatever reason it would not remove the icon.  So, instead of messaging you to troubleshoot I tried the other script and it worked so I just accepted the other one.  I am sure someone with a little more VB background could have seen what the issue was and it would have worked just fine, but I am for sure not that guy.  The script I posted I got from an expert on this site a couple years ago.  I appreciate the speedy response though.  Thanks alot.
0
 
LVL 14

Expert Comment

by:Rob Miners
ID: 38803004
Your welcome :)
0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

ADCs have gained traction within the last decade, largely due to increased demand for legacy load balancing appliances to handle more advanced application delivery requirements and improve application performance.
Restoring deleted objects in Active Directory has been a standard feature in Active Directory for many years, yet some admins may not know what is available.
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…

691 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question