2011年4月1日 星期五

加解密Web.config中的連線字串(預設方法)

加密方法
aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" -prov "RsaProtectedConfigurationProvider"

解密方法
aspnet_regiis -pd "connectionStrings" -app "/SampleApplication"

當然金鑰要記得備份
匯出RSA金鑰
aspnet_regiis -px "SampleKeys" keys.xml -pri


匯入RSA金鑰
aspnet_regiis -pi "SampleKeys" keys.xml




參考資料
http://msdn.microsoft.com/zh-tw/library/zhhddkxy(v=vs.80).aspx
http://blog.blueshop.com.tw/flybean/archive/2009/10/03/59067.aspx

RSA金鑰處理方法
http://msdn.microsoft.com/zh-tw/library/yxw286t2%28VS.80%29.aspx

2011年3月31日 星期四

甚麼格式都可以轉,轉甚麼都不稀奇

還不賴的SERVICE
各式各樣的檔案互轉
推薦一下

http://www.convertfiles.com/

__doPostBack null 錯誤

__doPostBack(__EVENTTARGET,__EVENTARGUMENT)
發生null錯誤,原因是整個頁面中沒有一任何一個控制項有設定到AUTOPOSTBACK
HTML就不會有__doPostBack函式輸出

解決方法可以建立一個空的LinkLabel並且把TEXT設定為空字串
並且設定AutoPostBack設定為True

如何撰寫高DPI的視窗程式

當客戶年紀稍長,都會自行把WINDOWS的DPI提高
通常是提高到125%,雖然我們的建議是由我們來處理字形的放大縮小
會比較妥當,但也沒法滿足客戶喜歡自行處理的樂趣

參考資料如下:
Writing High-DPI Win32 Applications
http://msdn.microsoft.com/en-us/library/dd464660%28VS.85%29.aspx#dpi_virtualization
 
DPI Virtualization

http://codingjames.blogspot.com/2010/02/dpi-virtualization.html

有用到RegistryKey時候要
using Microsoft.Win32;

bool IsDpiVirtualization()


{

// open the key of Desktop Window Manager

RegistryKey k = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Windows\\DWM");

if (k != null)

{

// get the value if it exists

if ((int)k.GetValue("UseDpiScaling", 0) == 1)

{

k.Close();

return true;

}



k.Close();

}

return false;
}