刘政道 - 应用程序框架

《31天学会CRM项目开发(C#编程入门及项目实战)》作者,IT经理,程序员
  博客园  :: 新随笔  :: 联系 :: 管理

VBS实用代码分享

Posted on 2011-04-07 13:59  刘政道  阅读(766)  评论(0编辑  收藏  举报


刚刚解决了一个实际问题,拿出来分享。
我刚将Spark重新编译,编译完成后是一个start.bat文件,双击start.bat就能够启动Spark,但是有一个命令窗口,要是能隐藏掉就好了。

隐藏命令窗口
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c startup.bat",vbhide

创建快捷方式
'取得当前用户的application data文件夹
Const APPLICATION_DATA = &H1a&
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(APPLICATION_DATA)
'取得当前程序运行路径
path=left(Wscript.ScriptFullName,len(Wscript.ScriptFullName)-len(Wscript.ScriptName))

set WshShell = Wscript.CreateObject("Wscript.Shell")
'取得自动启动文件夹路径
strDir = WshShell.SpecialFolders("AllUsersStartup")
'创建快捷方式
set oShellLink = WshShell.CreateShortcut(strDir & "\\Spark即时通讯.lnk")
oShellLink.TargetPath = path & "\\startup.vbs"
'设置快捷方式的执行路径
oShellLink.WindowStyle = 1
oShellLink.Hotkey = "Ctrl+Alt+s"
'设置快捷方式的图标
oShellLink.IconLocation = path & "\\spark.ico"
oShellLink.Description = "Spark即时通讯"
oShellLink.WorkingDirectory = path
oShellLink.Save

'删除文件夹
Const APPLICATION_DATA = &H1a&
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(APPLICATION_DATA)
MsgBox(objFolder.Self.Path)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(objFolder.Self.Path & "\\Spark")
objFolder.Delete True

'创建文件夹
set fso=createobject("scripting.filesystemobject")
If fso.FolderExists(path & "\\..\\xtra") = false Then
    fso.CreateFolder(path & "\\..\\xtra")
End If
If fso.FolderExists(path & "\\..\\xtra\\emoticons") = false Then
    fso.CreateFolder(path & "\\..\\xtra\\emoticons")
End If