2011-02-04 24 views
0

私は苦労しています... Googleを使用して、この回答はありませんでした。VBS createdhortcutを使用してショートカットの名前を空白で取得する

ユーザーログオン時に実行する予定のコードがあります。ショートカットを見つけ、ネットワークの変更を反映するためにショートカットの場所を更新しますが、ショートカットにスペースが含まれていて、VBSは完全なターゲットを見つけられませんパス...ヘルプ!

ショートカットの現在の目標は次のとおりです。

\\LANG-APPS2\Mandata\Warehouse\Programs\StartApp.exe /sWH /ip192.168.73.124 

しかし、それは.exeだけするビットを返します - それは/sWH /ip192.168.73.124

の最後のビットがここに私のスクリプトですミス:

On Error Resume Next 

    wscript.echo "Checking Warehouse Shortcut..." 
    Dim fso, folder, files, sFolder 
    Set fso = CreateObject("Scripting.FileSystemObject") 
    Set Shell = CreateObject("WScript.Shell") 
    sFolder = Shell.SpecialFolders("Desktop") 
    Set folder = fso.GetFolder(sFolder) 
    Set files = folder.Files 

    For each folderIdx In files 
     fullname = fso.GetAbsolutePathName(folderIdx) 
     Set shortcut = Shell.CreateShortcut(fullname) 
     shortTarget = LCase(shortcut.TargetPath) 
     shortWorkPath = shortcut.WorkingDirectory 

     lnkFind = ".lnk" 
     lnkSearch = instr(fullname, lnkfind) 
     if lnkSearch > 0 then 

      srvFind = "lang-apps2\mandata\warehouse\programs\startapp.exe" 
      srvSearch = instr(shortTarget, srvFind) 
      if srvSearch > 0 then 

       pracFind = "Practice" 
       pracSearch = instr(fullname, pracFind) 
       if pracSearch > 0 then 

        wscript.echo "Warehouse Practice Shortcut Needs Updating!" 
        wscript.echo "Please wait while I sort that out for you......" 
        shortcut.TargetPath = """\\Lang-man\Warehouse\Programs\StartApp.exe /sWHPRAC /ip192.168.73.134""" 
        shortcut.WorkingDirectory = "\\Lang-man\Warehouse\Programs" 
        shortcut.save 
        wscript.echo "Warehouse Practice Shortcut Updated!" 
       else 

        wscript.echo "Warehouse Live Shortcut Needs Updating!" 
        wscript.echo "Please wait while I sort that out for you......" 
        shortcut.TargetPath = """\\Lang-man\Warehouse\Programs\StartApp.exe /sWH /ip192.168.73.134""" 
        shortcut.WorkingDirectory = "\\Lang-man\Warehouse\Programs" 
        shortcut.save 
        wscript.echo "Warehouse Live Shortcut Updated!" 
       end if 
      end if 
     end if 

     set shortTarget=nothing 
     set shortWorkPath=nothing 
     set shortcut=nothing 
    next 
    wscript.echo "Finished" 

答えて

2

MSDNのTargetPathプロパティの説明(太字は私が追加):

このプロパティはショートカットのターゲットパスのみです。 ショートカットへの引数はすべて引数のプロパティに配置する必要があります。

+0

ありがとうございました - 私を狂って運転しています...私は引数のプロパティがあったことを認識していませんでした...今私はそれについて考える! –

関連する問題