日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Web安装项目创建桌面快捷方式

發布時間:2024/8/22 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Web安装项目创建桌面快捷方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.WEB安裝項目部署
1.新建:新建項目-安裝和部署項目-WEB安裝項目
2.部署:
(1)進入文件系統視圖,"項目-右鍵-視圖-文件系統";也可以直接點"解決方案資源管理器"上部的快捷圖標
(2)在"WEB應用程序文件夾"添加文件,例如aspx文件,ico文件,bin目錄及文件,images目錄及文件等
(3)設置虛擬目錄屬性,右擊"WEB應用程序文件夾"選屬性,一般只須修改默認文檔"defaultdocument"以及虛擬目錄名"VirtualDirectorly"(若有多個虛擬目錄
(4)Web安裝項目默認沒有提供"用戶的程序菜單",需要自己創建:右擊"目標計算機上的文件系統-添加特殊文件夾-用戶的程序菜單"
(5)Web安裝項目默認也沒有用戶桌面目錄,添加方法同上
右擊"目標計算機上的文件系統-添加特殊文件夾-WEB自定義文件夾",逐次添加多個,但需要指出的是,這些多的虛擬目錄只能在設計時設置好名稱等屬性,而在安裝過程中卻無從控制)

補充:
在web項目部署時,添加網站有兩種方式:
①把你的網站先發布,然后把發布后的頁面一一添加進來同時把諸如images之類的文件夾要在安裝部署項目中文件夾然后再添加其下文件
②在安裝部署項目中添加項目輸出,選擇你的網站,但這樣做部署項目會把你網站所有文件包括.cs文件原樣打包進去,不太好

二.重寫安裝類:
1.作用:安裝類是在安裝部署項目被生成后,在被"安裝","提交","回滾","卸載"的過程中來完成一些自定義的操作
2.創建:
(1)新建一個類庫項目
(2)刪掉類庫中原有類文件,新建一個"安裝程序類"("添加新項"中有這個模版的)
(3)自定義方法:這個安裝類特殊就在于引用了System.Configuration.Install.dll并using System.Configuration.Install和繼承:Installer
在自定義方法中主要是對Install,Uninstall,Commit,Rollback方法進行override重寫
3.使用:創建完后,還不起效,要和安裝部署項目配合才得以使用
方法一:
(1)在安裝部署項目中將剛才類庫項目添加為"項目輸出-主輸出"
(2)在安裝部署項目"視圖-自定義操作"的"安裝","提交","回滾","卸載"等操作上"右鍵-添加自定義操作"選擇剛才添加的類庫項目輸出
方法二:
(1)將類庫進行編譯,生成.dll
(2)在安裝部署項目"視圖-自定義操作"的"安裝","提交","回滾","卸載"等操作上"右鍵-添加自定義操作"選擇文件,瀏覽到你編譯生成的.dll

至此,你所寫的安裝類將在"安裝","卸載","回滾","提交"過程中起效了!

三.為Web安裝項目添加桌面快捷方式及圖標
1.Web安裝項目特殊于一般的安裝部署項目:
(1)Web安裝項目無法在自身加入的網站項目中創建快捷方式,可以借助創建.url文件方式來創建(注:.lnk也是快捷方式文件,但安裝部署項目不允許添加.lnk文件,卻可以添加.url文件)
(2)Web安裝項目默認沒有用戶桌面和用戶程序菜單的添加,要"文件系統視圖-右鍵-添加特殊文件夾-***"中添加一些特殊操作
(3)Web安裝項目在安裝過程中用戶自己動態設置"虛擬目錄",所以.url文件中不能先前定死http://localhost/***,只能通過"安裝類"在自定義"安裝"操作時動態創建
2.創建"安裝類"并添加到Web安裝項目的"自定義操作"的"安裝"下,內容如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration.Install;
using System.IO;
using System.DirectoryServices;//操作IIS虛擬目錄
namespace InstallClass
{
??? [RunInstaller(true)]
??? public partial class InstallerClass : Installer
??? {
//重寫安裝方法
??????? public override void Install(System.Collections.IDictionary stateSaver)
??????? {
??????????? //創建桌面快捷方式及圖標,借助.url生成網絡快捷方式
??????????? base.Install(stateSaver);//先進行安裝,因為安裝后才會有安裝目錄
??????????? string fname = System.Reflection.Assembly.GetExecutingAssembly().Location;//獲取軟件安裝的物理目錄,形如:D:\Inetpub\wwwroot\Endy_Web\InstallClass.dll
??????????? //string fname2 = Context.Parameters["assemblypath"];//也可以獲取軟件安裝的物理目錄,和上面獲取的結果一樣,形如:D:\Inetpub\wwwroot\Endy_Web\InstallClass.dll
??????????? string[] sz = fname.Split(new char[] { '\\'});
??????????? StreamWriter sw = new StreamWriter(File.Open(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + "\\我的測試軟件.url", FileMode.Create, FileAccess.Write));
??????????? sw.WriteLine("[InternetShortcut]");
??????????? sw.WriteLine("URL=http://localhost/"+sz[sz.Length-2]);
??????????? sw.WriteLine("IconFile="+fname.Substring(0,fname.LastIndexOf("\\"))+"\\logo.ico");
??????????? sw.WriteLine("IconIndex=0");
??????????? sw.Flush();
??????????? sw.Close();
???? //創建用戶"程序"菜單快捷方式及圖標,借助.url生成網絡快捷方式(要和界面添加的用戶程序目錄一致)
??????????? /*處理"開始-程序"目錄的位置,因為默認SpecialFolder.Programs會到當前用戶的程序目錄下,而我們要處理到All User的程序目錄下,
??????????? 因為在web部署項目中添加卸載快捷方式時,我們在"文件系統視圖-右鍵-添加特殊文件夾-用戶的'程序'菜單"是添加到All User的程序目錄下的,所以下面用程序創建的要和界面添加的保持一致,
??????????? 同時當添加到All User的程序目錄下,那么所有用戶的程序菜單中都會有的*/
??????????? string str = Environment.GetFolderPath(Environment.SpecialFolder.Programs);
??????????? string[] arr = str.Split(new char[] { '\\' });
??????????? arr[arr.Length - 3] = "All Users";
??????????? string t = "";
??????????? foreach (string i in arr)
??????????????? t += i + "\\";
??????????? StreamWriter swr = new StreamWriter(File.Open(t + "Endy測試項目\\我的測試軟件.url", FileMode.Create, FileAccess.Write));
??????????? swr.WriteLine("[InternetShortcut]");
??????????? swr.WriteLine("URL=http://localhost/" + sz[sz.Length - 2]);
??????????? swr.WriteLine("IconFile=" + fname.Substring(0, fname.LastIndexOf("\\")) + "\\logo.ico");
??????????? swr.WriteLine("IconIndex=0");
??????????? swr.Flush();
??????????? swr.Close();
??????? }
//重寫卸載方法[本想卸載時刪除虛擬目錄和安裝目錄,但沒成功]
??????? public override void Uninstall(System.Collections.IDictionary savedState)
??????? {
??????????? base.Uninstall(savedState);//先進行卸載
??????????? //刪除虛擬目錄[有問題不能用]
??????????? //System.DirectoryServices.DirectoryEntry dirroot = new DirectoryEntry("IIS://localhost/W3SVC/1/ROOT");
??????????? //DirectoryEntry Dirport = dirroot.Children.Find("Endy_Web","IIsVirtualDir");
??????????? //Dirport.Invoke("AppDelete", true);
??????????? //dirroot.CommitChanges();
??????????? //刪除安裝文件夾[有問題不能用]
??????????? //string fname = Context.Parameters["assemblypath"];
??????????? //if (Directory.Exists(fname.Substring(0, fname.LastIndexOf("\\"))))
??????????? //{
??????????? //??? DirectoryInfo di=new DirectoryInfo(fname.Substring(0, fname.LastIndexOf("\\")));
??????????? //??? foreach (FileInfo f in di.GetFiles())
??????????? //??????? f.Delete();
??????????? //??? di.Delete();
??????????? //}
??????? }?????
??? }
}

最后客戶端安裝完畢后桌面生成快捷方式("我的測試軟件.url"實際上是看不到擴展名的)用記事本打開內容如下:
[InternetShortcut]
URL=http://localhost/EndyWeb
IconFile=C:\Inetput\wwwroot\EndyWeb\logo.ico
IconIndex=0

轉載于:https://www.cnblogs.com/zgqys1980/archive/2009/07/14/1523566.html

總結

以上是生活随笔為你收集整理的Web安装项目创建桌面快捷方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲一级视频在线观看 | 国产毛片久久久久久国产毛片 | 五月婷中文字幕 | 日本一区二区三区在线观看 | 天天上天天干 | 日本高清视频网站 | 日本中文字幕网 | 午夜黄色网址 | 日韩一级生活片 | 黄网站免费大全入口 | 午夜激情一区二区 | 高清视频在线播放 | 国产精品久久久久久久免费观看 | 欧美成人免费高清视频 | 黄色在线免费观看视频 | 国产一区欧美二区 | 性高潮久久久久久久久久 | 国产精品99精品无码视 | 人人舔人人插 | 人妻熟人中文字幕一区二区 | 成人免费视频国产免费麻豆 | 国产精品成人自拍 | 日本毛片视频 | 日本国产在线观看 | 成人作爱视频 | 国产精品一二区在线观看 | 国产在线一卡二卡 | 91精品国产综合久久久蜜臀粉嫩 | 成人性生交大片免费 | 182在线视频 | 在线射| 女同在线观看 | а√天堂www在线天堂小说 | 岛国视频一区 | 精品美女久久久 | 催眠美妇肉奴系统 | 亚洲最大福利网 | 久久久久无码精品国产 | 少妇又白又嫩又色又粗 | 啪啪网站视频 | 在线免费黄色片 | 一级黄色免费大片 | 天天射夜夜撸 | 欧美激情视频一区二区三区在线播放 | 国产精品无码久久久久久 | 高清视频在线免费观看 | 国产美女无遮挡永久免费观看 | 激情四虎 | 色香天天 | www.亚洲激情 | 成人av观看 | 成人动漫一区二区 | 欧美日韩a v | 女生的胸无遮挡 | 老熟妇仑乱视频一区二区 | 三上悠亚人妻中文字幕在线 | 黄色片免费的 | 美女扒开粉嫩的尿囗给男生桶 | 男人插女人网站 | 91成人福利 | 黄色在线观看视频网站 | 国产乱人乱精一区二视频国产精品 | 农村少妇久久久久久久 | 国产精品美女主播 | 操综合| 免费精品国产 | 99热这里只有精品8 国产一卡二 | 精品无码国产一区二区三区av | 成人做爰www看视频软件 | 日本三不卡 | 后进极品美女白嫩翘臀 | 国产极品美女高潮无套在线观看 | 国产高清一区在线 | 亚洲女同一区 | 欧美午夜精品一区二区 | 伊人免费| 一区二区日韩精品 | 精品人妻一区二区三区视频 | 国产在线xx | 亚洲视频播放 | 手机看片日韩 | 天天爽夜夜春 | 国产亚洲第一页 | 怡红院av亚洲一区二区三区h | 欧美日韩久久精品 | 88av网站 | 国产精品xxxxx| 中文字幕日韩经典 | 日韩色婷婷 | 人妻少妇偷人精品久久性色 | 国产一区二区毛片 | 恶虐女帝安卓汉化版最新版本 | 日韩精品av一区二区三区 | 亚洲av无码乱码国产精品 | 亚洲精品无码专区 | 国产精品无码久久久久成人app | 天天夜夜爽 | 97看片网| 成人日皮视频 |