VS2005 Web安装程序 创建程序菜单组

本示例的效果如下:

                        |FreeWebB-> |图标 OpenMyWeb
                        |                 |图标 UnstallMyWeb
                        |
         |所有程序->|
开始->|

也就是将属于本程序相关的快捷菜单都放在一个程序文件夹下

主要代码如下:

public override void Install(System.Collections.IDictionary stateSaver)
{
    base.Install(stateSaver);

    #region 程序目录下自定义目录FreeWebB

    string strVDir2 = Context.Parameters["VDIR"].ToString();
    string address2 = @"http://localhost/" + strVDir2 + "/Default.aspx";
    //取得启动目录
    string startMenu = Environment.GetFolderPath(Environment.SpecialFolder.Startup);
    //取得程序目录
    string processDir = startMenu.Substring(0, startMenu.LastIndexOf("\\"));
    //判断 程序目录 下 自定义的软件目录FreeWebB是否存在
    string freeWebDir = processDir + "\\FreeWebB";
    if (!Directory.Exists(freeWebDir))
    {
        Directory.CreateDirectory(freeWebDir);               
    }
    stateSaver.Add("processDirFreeWebB", freeWebDir);
    //FreeWeb目录下的软件相关链接指向
    string path2 = processDir + "\\FreeWebB\\OpenMyWeb.url";
    //自定义的图标文件路径
    string logoPath2 = new FileInfo(System.Reflection.Assembly.GetExecutingAssembly().Location).Directory.FullName + "\\WebLogo.ico";
    FileInfo fi2 = new FileInfo(path2);
    using (StreamWriter sw2 = fi2.CreateText())
    {
        sw2.WriteLine("[InternetShortcut]");
        sw2.WriteLine("URL=" + address2);
        sw2.WriteLine("IconIndex=0");
        sw2.WriteLine("IconFile=" + logoPath2);
    }
    stateSaver.Add("processFreeWebB", path2);

    #endregion
}

public override void Uninstall(System.Collections.IDictionary savedState)
{
    base.Uninstall(savedState);
    if (File.Exists(savedState["processFreeWebB"].ToString()))
    {
        File.Delete(savedState["processFreeWebB"].ToString());
    }

    if (Directory.Exists(savedState["processDirFreeWebB"].ToString()))
    {
        Directory.Delete(savedState["processDirFreeWebB"].ToString(),true);
    }
}
更多详细的安装包制作相关
请参看
[转]一次.NET Web应用程序安装包的制作经历:Sql数据库安装的3种方式 配置IIS及Web.Config文件

[转]asp.net 部署数据库、开始菜单、桌面快捷方式实例

posted on 2008-04-09 17:40  freeliver54  阅读(990)  评论(4编辑  收藏  举报

导航