29日:
在windows 2003 標準版上安裝sql server 2008r2|時,提示找操作系統windows 目錄下的installer 目錄下不能找到某個文件及數字鑒名驗證的警告,如果點確定繼續安裝最后會失敗。
原因是:當計算機沒有足夠的連續內存可供 Windows Server 2003 或 Windows XP 用于驗證是否對 .msi 包或 .msp 包正確進行了簽名時將出現此問題。
首先,修改HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Safer\CodeIdentifiers 更改 PolicyScope 中的“PolicyScope”,設置從 0 更改為 1。
其次,運行gpedit.msc,在本地安全策略中單擊軟件限制條件策略,如果沒有就新建策略,在對象類型中雙擊強制,選擇“除本地管理員以外的的所有用戶”,重啟電腦。
30日:
const 和define定義變量的區別:
1:define定義的宏在預處理階段會進行替換。
2:define定義的宏名字由于被預處理時被替換了,所以不會進入調試符號表。
3:不能對define的名稱取地址。
4:define 不受名稱空間的約束,它的有效期是從定義處開始,直到預處理結束或遇到相應的undefine。
5:deine的寫法比較復雜,最好的最議是在宏的過程中,對其每個參數都加括號。
6:由于define是替換,所以產生的代碼可能會增大。
7:如果沒有對const變量取地址或引用,好的編譯器會用常數代替變量,而不會分配空間,這樣效率也等同于define了.