国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Windows 7軟件開(kāi)發(fā)示例:UAC、系統(tǒng)版本、權(quán)限

瀏覽:135日期:2023-06-04 10:45:14

看到Win7的酷炫功能流口水,已經(jīng)忍不住想擁抱呢?別急,Win7的脾氣可不好,要想擁抱它的新功能,我們的軟件必須嫁給它——在Win7下能正常運(yùn)行。,個(gè)人開(kāi)發(fā)者開(kāi)發(fā)的中小軟件,功能相對(duì)簡(jiǎn)單,與系統(tǒng)的緊密程度普遍較低,添加一些Win7必要的正常運(yùn)行的元素就OK啦!

嫁給Win7的必要條件

我們必須要給軟件添加的是系統(tǒng)版本檢測(cè)和安裝路徑選擇元素,為什么要考慮它們呢?

必要條件1:檢測(cè)系統(tǒng)版本

軟件在運(yùn)行初期需要判斷操作系統(tǒng)的類(lèi)型及版本號(hào),并根據(jù)操作系統(tǒng)類(lèi)型執(zhí)行特定的代碼,相同的功能在不同操作系統(tǒng)上可能會(huì)執(zhí)行不同的代碼。大多數(shù)軟件的在Win7下無(wú)法正常運(yùn)行都是因?yàn)榕袛嗖僮飨到y(tǒng)版本失敗造成的。

當(dāng)版本檢測(cè)出錯(cuò)時(shí),很多軟件也會(huì)跟著出錯(cuò),用戶(hù)可能會(huì)發(fā)現(xiàn)雙擊軟件圖片后,什么反映都沒(méi)有,或者可能會(huì)看到一個(gè)對(duì)話框“你必須運(yùn)行在Microsoft Windows XP或更新版本,但實(shí)際上計(jì)算機(jī)已經(jīng)安裝了Win7 。

必要條件2:適應(yīng)用戶(hù)權(quán)限

Win7默認(rèn)運(yùn)行的是非管理員賬號(hào),權(quán)限相對(duì)較小。而軟件的安裝程序會(huì)往包括系統(tǒng)盤(pán)的Program Files、Windows安裝目錄、注冊(cè)表中寫(xiě)入一些數(shù)據(jù)(軟件在運(yùn)行時(shí)可能會(huì)將一些用戶(hù)數(shù)據(jù)保存到系統(tǒng)文件夾或注冊(cè)表中),如果當(dāng)前用戶(hù)的權(quán)限不夠,軟件就無(wú)法正常入駐Win7。

小知識(shí): UAC是一種降低Windows用戶(hù)默認(rèn)權(quán)限的辦法,這樣會(huì)給用戶(hù)帶來(lái)安全性的提高,它可以一定程度上遏制了一些病毒的發(fā)作——關(guān)閉殺毒軟件、啟動(dòng)復(fù)制及散播病毒進(jìn)程、注入網(wǎng)游客戶(hù)端、監(jiān)聽(tīng)鍵盤(pán)操作從而盜竊密碼。

例如數(shù)據(jù)看似保存成功,在寫(xiě)入的地點(diǎn)卻找不到,或者注銷(xiāo)切換到另一個(gè)Windows用戶(hù)時(shí),無(wú)法找到保存的數(shù)據(jù)。引起這類(lèi)問(wèn)題的根源是Win7的UAC機(jī)制,它降低了Windows用戶(hù)的默認(rèn)權(quán)限,使得一些普通操作無(wú)法更改系統(tǒng)設(shè)置及系統(tǒng)保護(hù)的文件夾。

小提示:軟件要結(jié)合系統(tǒng)某些功能時(shí),需要調(diào)用相應(yīng)的API。API調(diào)用得當(dāng)否,對(duì)軟件運(yùn)行非常關(guān)鍵,我們從下期開(kāi)始結(jié)合Win7酷炫功能,單獨(dú)介紹如何正確的調(diào)用。Win7最新的API,有Win7特有的任務(wù)欄個(gè)性化快捷菜單(Jump List)、程序圖標(biāo)輪廓效果(Icon Overlay)、程序圖標(biāo)進(jìn)度條效果(Progress Bar)、標(biāo)簽式縮略圖(Tabbed Thumbnail)和縮略圖工具欄(Thumbnail Toolbar)……

“婚禮必要的元素

我們的軟件要順利嫁給Win7,在軟件中要添加以下的元素。

1.代碼檢測(cè)操作系統(tǒng)版本號(hào)

在軟件中添加判斷操作系統(tǒng)是Win7 或2008 Server的代碼:

C#

if (Environment.OSVersion.Version > new Version(5, 1)){MessageBox.Show("Windows 7 or Windows 2008 Server","Operating System", MessageBoxButtons.OK,MessageBoxIcon.Error);return;}

2.盡量將數(shù)據(jù)存儲(chǔ)在非系統(tǒng)盤(pán)

軟件不要默認(rèn)安裝到系統(tǒng)盤(pán),在編寫(xiě)軟件安裝路徑時(shí),要考慮這個(gè)。此外,還需要在軟件中添加修改讀寫(xiě)注冊(cè)表的代碼,使用HKEY_CURRENT_USER/Software下的鍵值作為存儲(chǔ)數(shù)據(jù)的結(jié)點(diǎn):

static void Main(string[] args){var registryKey = Registry.CurrentUser.CreateSubKey(@"Software/test");registryKey.SetValue("name", "zswang");registryKey = Registry.CurrentUser.OpenSubKey(@"Software/test");Console.WriteLine(string.Format("{0}={1}/r/n", "name", registryKey.GetValue("name")));}

3.提高程序的運(yùn)行權(quán)限

如果用戶(hù)使用了管理員身份進(jìn)入系統(tǒng),又希望把軟件安裝在系統(tǒng)盤(pán),又該如何呢?需要判斷用戶(hù)權(quán)限的權(quán)限,簡(jiǎn)單的解決方案是添加清單文件。在可執(zhí)行文件夾中找到與可執(zhí)行文件相同名字且擴(kuò)展名.manifest的文件,輸入以下代碼即可:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="test" type="win32"/> <description>Description of your application</description> <!-- Identify the application security requirements. --><trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"><security><requestedPrivileges><requestedExecutionLevellevel="requireAdministrator"uiAccess="false"/></requestedPrivileges> </security></trustInfo></assembly>

標(biāo)簽: Windows系統(tǒng)
相關(guān)文章:
主站蜘蛛池模板: 一级毛片免费不卡在线视频 | fc2ppv在线播放| 亚洲成a人片在线观看中文 亚洲成a人片在线观看中文!!! | 国产精品反差婊在线观看 | 高清午夜毛片 | 亚洲综合久久综合激情久久 | free性chinese国语对白 | 99久久精品免费国产一区二区三区 | 午夜欧美精品久久久久久久久 | 久草免费在线观看 | 亚洲视频在线观 | 欧美真人视频一级毛片 | 绝对真实偷拍盗摄高清在线视频 | 欧美日本一区视频免费 | 91久久精一区二区三区大全 | 2级毛片 | 97公开视频 | 国产午夜精品久久理论片小说 | 国产亚洲精品国产一区 | 大美女香蕉丽人视频网站 | 亚洲精品第五页中文字幕 | 中国成人免费视频 | 久久久9视频在线观看 | 一级黄色大片 | 欧美一区亚洲二区 | 久久青草国产手机看片福利盒子 | 欧美毛片在线观看 | 在线免费观看日本视频 | 国产三级日本三级日产三 | 日韩美女免费线视频 | 91国语精品自产拍在线观看一 | 99久久www免费 | 美国第一毛片 | 亚洲色在线视频 | 99视频精品全国在线观看 | 三级黄色在线观看 | 一区高清 | 在线精品国产一区二区 | 天堂在线www网亚洲 天堂在线视频网站 | 久久99国产综合精品 | 国产精品推荐 |