亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#獲取Setup文件的運行路徑的方法

2023-05-20 20:23:32
字體:
來源:轉載
供稿:網友

在我 做的一個項目中因為需要在安裝時做配置,而在打包之前是不知道配置的具體信息的。用InstallShield來做打包好像做這樣的處理比較方便,但是使用Visual Studio創建安裝項目來打包時好像不是那么容易,在網上查找相關的資料一直沒有找到很好的方法來直接獲取其運行路徑,網上有人說繼承Installer來做,但是無論如何所能取得的路徑是系統msiexec.exe的運行路徑,所以這種方法看起來是行不通了。獲取其安裝路徑也是非常簡單而且方法有很多種。

想到以前在做項目時要求程序只能有一個運行實例,這種方法來處理豈不是很好,換種思路來處理:先取得當前運行的所有Process然后再找到那個Setup或是*.msi那不就好了。

想到著就趕快動手試驗,在程序中加上處理代碼,很快搞定。

Process[] processes = Process.GetProcesses();
string tmp = "";
int i = 0;//調試時為了查找線程的個數
foreach (Process pro in processes)
{
    //MSI Title即為你的打包文件在運行時顯示的標題
    if (pro.ProcessName.ToLower() == "msiexec" && pro.MainWindowTitle == "MSI Title")
    { 
    //這里在Vista下測試時因為要讀寫文件(由于Vista使用了UAC來增強安全性, 
    //要求必須以管理員身份運行,而直接運行msi文件只能以普通權限來運行), 
    //所以不讓用戶直接運行MSI文件,而要求必須從Setup.exe文件運行, 
    //如果你不需要在Vista下使用則不用如此處理 
    MessageBox.Show("Please run setup.exe", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); 
    throw new InstallException("run");
    }
    else if (pro.ProcessName.ToLower().IndexOf("setup")>0 && pro.MainWindowTitle == "MSI Title")
    {//判斷ProcessName是否是setup,并且其MainWindowTitle為你的安裝文件的Title
       tmp = tmp + pro.Id + "" + pro.ProcessName + Environment.NewLine;
       tmp = tmp + " " + i.ToString() + "=" + pro.MainModule.FileName
              +Environment.NewLine;//pro.MainModule.FileName即為Setup的完整運行路徑
       tmp = tmp + " " + i.ToString() + "=" + pro.MainWindowTitle + Environment.NewLine;
     }
}
MessageBox.Show(tmp);

不過此方法有點不妥之處,那就是如果用戶改變了Setup.exe或是*.msi的文件名就不好處理了,為了防止在用戶更改文件名后運行安裝,你可以在程序中加上判斷文件名更改的處理,給用戶提示。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品人人爽夜夜爽| 成人乱色短篇合集| 国产精品欧美一区二区| 久久久综合免费视频| 亚洲最大激情中文字幕| 久久精品91久久久久久再现| 成人久久精品视频| 91精品国产高清久久久久久91| 性色av一区二区三区红粉影视| 4438全国成人免费| 日韩av在线播放资源| 欧美大片va欧美在线播放| 久久国产精品久久久久久久久久| 狠狠躁天天躁日日躁欧美| 亚洲精品一区久久久久久| 大荫蒂欧美视频另类xxxx| 日韩最新av在线| 亚洲国产小视频在线观看| 亚洲人成网在线播放| 国产成人精品免高潮在线观看| 亚洲成年人影院在线| 黑人巨大精品欧美一区二区一视频| 欧美午夜性色大片在线观看| 日韩欧美国产高清91| 国产亚洲精品久久久久久777| 国产日韩亚洲欧美| 97在线视频国产| 欧美乱大交xxxxx| 欧美电影免费观看大全| 亚洲激情电影中文字幕| 欧美成人全部免费| 久久精品欧美视频| 91亚洲国产成人精品性色| 亚洲福利视频网| 色偷偷av亚洲男人的天堂| 欧美美最猛性xxxxxx| 精品国内自产拍在线观看| 91精品视频在线免费观看| 国产在线精品成人一区二区三区| 97国产精品人人爽人人做| 97视频com| 欧美一级视频在线观看| 日韩电影在线观看永久视频免费网站| 久久香蕉频线观| 久久久91精品| 欧美大片欧美激情性色a∨久久| 高清欧美性猛交xxxx黑人猛交| 欧美一级淫片videoshd| 国内精品中文字幕| 91av视频在线免费观看| 日韩av一区二区在线观看| 欧美性xxxxx| 亚洲国产高清高潮精品美女| 日韩综合视频在线观看| 中文字幕欧美亚洲| 欧美成人免费全部| 亚洲欧美国产一本综合首页| 国产精品一区二区三区免费视频| 国产综合在线看| 亚洲深夜福利在线| 亚洲japanese制服美女| 91精品国产综合久久香蕉最新版| 久久久女人电视剧免费播放下载| 九九精品视频在线观看| 色播久久人人爽人人爽人人片视av| 国内偷自视频区视频综合| 欧美视频国产精品| 久久久久久成人| 国产精品91免费在线| 日本成人黄色片| 日韩成人免费视频| 97**国产露脸精品国产| 精品久久在线播放| 亚洲性日韩精品一区二区| 成人精品久久久| 国产成人短视频| 国产精品毛片a∨一区二区三区|国| 亚洲性线免费观看视频成熟| 亚洲成人网在线观看| 色偷偷88888欧美精品久久久| 日韩成人高清在线| 久久久中文字幕| 一区二区三区 在线观看视| 亚洲精品一区二区网址| 国产日韩中文字幕| 性日韩欧美在线视频| 欧美激情性做爰免费视频| 中文字幕亚洲字幕| 久久99国产综合精品女同| 欧美精品国产精品日韩精品| 精品视频—区二区三区免费| 欧美日韩亚洲一区二区| 国产成人免费av电影| 日韩网站免费观看高清| 久久国产精品久久久久| 亚洲欧洲高清在线| 国产精品久久久久久久久久久新郎| 亚洲最大福利视频网| 亚洲午夜国产成人av电影男同| 国产精品草莓在线免费观看| 久久精品国产亚洲| 欧美一级电影在线| 欧美国产亚洲精品久久久8v| 日韩一区二区三区在线播放| 日本精品一区二区三区在线| 亚洲情综合五月天| 中文字幕在线看视频国产欧美在线看完整| 国产精品久久77777| 日产日韩在线亚洲欧美| 91久久精品国产| 久久久精品2019中文字幕神马| 色噜噜亚洲精品中文字幕| 久久香蕉频线观| 国产精品啪视频| 欧美激情亚洲综合一区| 国产亚洲欧美日韩美女| 影音先锋日韩有码| 久久人人爽亚洲精品天堂| 亚洲第一精品久久忘忧草社区| 日韩一区二区久久久| 26uuu久久噜噜噜噜| 日韩视频中文字幕| 富二代精品短视频| 中文字幕日韩免费视频| 日韩性xxxx爱| 欧美大片免费观看在线观看网站推荐| 日韩欧美在线免费| 国产成一区二区| 91色视频在线观看| 精品中文字幕乱| 91av在线免费观看视频| 国产日产欧美a一级在线| 国产热re99久久6国产精品| 国产日韩欧美中文| 国产亚洲一区精品| 国产精品男人爽免费视频1| 国产做受69高潮| 98午夜经典影视| 69**夜色精品国产69乱| 亚洲视屏在线播放| 日韩美女在线观看一区| 久久久在线视频| 欧美一级免费看| 青草成人免费视频| 97超碰色婷婷| 亚洲成人999| 亚洲免费影视第一页| 日韩在线免费高清视频| 国产在线拍揄自揄视频不卡99| 成人午夜在线影院| 97碰在线观看| 精品久久久视频| 国产99视频精品免视看7| 欧美性xxxx在线播放| 亚洲国产高清自拍| 96精品久久久久中文字幕| 日韩欧美国产免费播放| 国产手机视频精品| 日韩中文在线视频| 成人观看高清在线观看免费| 午夜精品一区二区三区在线播放| 亚洲欧美日韩一区二区在线| 亚洲老司机av| 久久精品国产亚洲7777|