[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 4362
  • Last Modified:

Using a batch file to create desktop shortcuts

I'm using Windows Server 2008 Standard with Windows XP clients.  All clients are on a domain.  I need to create a batch script that will load desktop shortcuts when the user logs in.  I know how to assign the batch file to the OU's but I need help with the batch file creation itself.  Here is the kicker... my shortcuts have a Target path that is different than the Start in path.  Here is an example:

In the shortcut properties...

Target: C:\FamousSoftware\Famous.exe

Start in: Z:\FamousSoftware

so basically the target is for the local computer and the start in is a mapped network drive on the server.  Any help?  
0
rbudj
Asked:
rbudj
  • 4
  • 3
  • 2
  • +2
1 Solution
 
ConnectNZCommented:
How is the batch file creating the shortcuts? Is it copying them from a central location? Surely if they are pre-configured with the Target and Start-in values, they will retain those values once the shortcuts are copied to the users' desktops.
0
 
VallerianiCommented:
I don't know if this is any help, but check out

http://www.msfn.org/board/index.php?showtopic=29964&hl=creat+shortcut

It uses a inf file to create a shortcut, and looks like you can modify the folder/etc. Uses a cmd file but same thing as a bat file I believe really. If this doesn't help I do apologize! Was looking around for you and it's all I found. It's easy to create a shortcut but the kicker you have there is the issue!
0
 
rbudjAuthor Commented:
I have a logon batch file already in place to map a network drive so I have to use this same batch file to create the shortcuts.  Currently there is no script to create the shortcuts.  That is why I am asking here.  I can place the shortcuts in on the server and copy them but I do not know how to create the batch file to do so.
0
Has Powershell sent you back into the Stone Age?

If managing Active Directory using Windows Powershell® is making you feel like you stepped back in time, you are not alone.  For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why.

 
ConnectNZCommented:
Just create a shortcuts.bat (or whatever) file in notepad. make sure you create it with a .bat extension and not a .txt extension.

These commands will copy the shortcuts:

@echo off

copy x:\shortcut1.lnk %userprofile%\Desktop
copy x:\shortcut2.lnk %userprofile%\Desktop

(or you could use *.lnk to copy a bunch of them at once)

Then in your logon script add:

call shortcuts.bat

Make sure your drive maps run before the copy commands!
0
 
zoofanCommented:
If you are not set on using a batch file, here is a vbscript that you can assign with a gpo to create the shortcut for you.
Will place the shortcut in the "All Users" desktop folder.

copy and paste the script into notepad modify configuration where noted and save as Filename.vbs put it where your gpo can get to it.



zf


Option Explicit
	Dim strTargetDirectory
	Dim strTargetFile
	Dim strStartIn
	Dim strDESTFolder
	Dim strNEWlink
	Dim strLinkFileName
	Dim strLinkDescp
	Dim objShell
			
			'EDIT LINK CONFIGURATION HERE AS NEEDED
			strLinkFileName = "Link_To_Boot_INI"
			strLinkDescp ="Custom Shortcut Description"
			strTargetDirectory = "c:\"
			strTargetFile = "boot.ini"
			strStartIn = "d:\"
		
	Set objShell = CreateObject("WScript.Shell")
	strDESTFolder = objShell.SpecialFolders("AllUsersDesktop")
	Set strNEWlink = objShell.CreateShortcut(strDESTFolder & "\" & strLinkFileName & ".lnk")
	strNEWlink.Description = strLinkDescp
	strNEWlink.TargetPath = strTargetDirectory & strTargetFile
	strNEWlink.WorkingDirectory = strStartIn
	strNEWlink.IconLocation = "C:\Windows\System32\SHELL32.dll, 13" 
	strNEWlink.Save
	
	WScript.Quit(0)

Open in new window

0
 
zoofanCommented:
One more thing I should have mentioned,

After the shortcut is created on first gpo apply, when the gpo that calls the script updates the next time it will overwrite the shortcut properties if the link file name has not changed, if you change the link file name it will create a new link and leave the old one.

So if you never change the script only one shortcut will appear regardless of updates applied,

If you need to change the properties of the link do so in the script but leave the link file name the same and on next apply the link will be updated.

If you wish to rename the link then you will need to add to this script to delete the old link and create the new one.


hoping this makes sense,  if not let me know.


zf
0
 
zoofanCommented:
btw you can call the vbscript from your existing batch file.



zf
0
 
rbudjAuthor Commented:
im still working on this... will report back
0
 
rbudjAuthor Commented:
thank you.  I did it a bit differently but you were on the right track and is very close to my solution.
0
 
zoofanCommented:
If you need help implementing it just ask.



zf
0
 
8r0k3n71nXCommented:
Great work, zoofan. Thanks!
0

Featured Post

Veeam Disaster Recovery in Microsoft Azure

Veeam PN for Microsoft Azure is a FREE solution designed to simplify and automate the setup of a DR site in Microsoft Azure using lightweight software-defined networking. It reduces the complexity of VPN deployments and is designed for businesses of ALL sizes.

  • 4
  • 3
  • 2
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now