zoukankan      html  css  js  c++  java
  • 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 部署数据库、开始菜单、桌面快捷方式实例

  • 相关阅读:
    c语言中逆向显示数值
    c语言中无限循环语句
    css静态网页css代码
    css静态网页css代码
    考试html代码
    考试css代码
    考试html框架代码
    css静态网页代码
    5个CSS书写技巧
    5个CSS书写技巧
  • 原文地址:https://www.cnblogs.com/freeliver54/p/1145430.html
Copyright © 2011-2022 走看看