Time of Update: 2018-12-03
問題描述:高訪問量類型的電子商務網站,需要將一些不是經常變化的頁面產生靜態頁面,然後普通使用者就可以直接存取這些靜態頁面而不用再訪問需要串連資料庫的動態網頁面。那麼ASP.NET MVC3中如何做到這一點呢?要解決這個問題,我們需要先瞭解ASP.NET應用程式的生命週期,先看下面作者整理的一張圖片:我們可以清楚的看到:通用IIS訪問應用程式時,每次的單個頁面URL訪問時,都會先經過HttpApplication 管線處理請求,走過BeginRequest
Time of Update: 2018-12-03
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="
Time of Update: 2018-12-03
目的:1、希望刪除除class,src,href外的其他HTML例如1)<a href="http://51js.com" title="這是標題" class="a">標題</a>刪除屬性後:<a href="http://51js.com" class="a">標題</a>2)<td style="color:red" class="b" rospan="3"
Time of Update: 2018-12-03
這個WebBrowser是基於SDK建立的,而不是我們一直用的MFC的CHtmlView這些類.關於如何建立這個WebBrowser 參見這裡一些過去的東西 :http://blog.csdn.net/norsd/category/515334.aspx我們在使用sdk構建WebBrowser中並沒有明確的函數啟用/關閉快速鍵. 但是在C#中可以設定WebBrowserShortcutsEnabled 快速鍵 . 實際上,有一個介面 IOleInPlaceActiveObject
Time of Update: 2018-12-03
一日,發現程式從 1->2->3 中 , 1的傳值是正確的, 2把傳值封裝到VARIANT中去, 可是到了3有一個值就出現預料外的值.總是設定為true;varProxy.vt = VT_BOOL ; varProxy.bVal = Global::stGlobalInfo.bProxy?VARIANT_TRUE:VARIANT_FALSE ;問題就在第二句, bVal 是一個 BYTE , 而不是BOOL , 一粗心就寫成了bVal , 而不是boolVal .VARIANT_
Time of Update: 2018-12-03
WebBrowser 必須是單線程的, 如果我在另一個線程調用invoke, 那麼這個invoke將返回錯誤.妥協的辦法是通過發送訊息(SendMessage)來變相實現跨線程式控制制. 但是其中有一個問題,必須要解決, 因為跨線程,所以計數問題必須要考慮. 對於invoke對象的 IDispatch 指標,必須增加計數,同時,對於DISPPARAMS中的 IDispatch 對象同樣要增加計數. 否則有可能在SendMessage時,對象已然被WebBrowser銷毀(
Time of Update: 2018-12-03
使用jquery擷取radio的值,最重要的是掌握jquery選取器的使用,在一個表單中我們通常是要擷取被選中的那個radio項的值,所以要加checked來篩選,比如有以下的一些radio項:1.<inputtype="radio"name="testradio"value="jquery擷取radio的值"/>jquery擷取radio的值<br
Time of Update: 2018-12-03
最近寫的程式有一個小毛病,某一個地方使用MessageBox,如果不迅速click ok, 就會使整個程式無反應. 因為不是崩潰,所以考慮是死結了.後來使用log,發現了問題,先來看看log file:Time At:0004234132Line:0AddDownloadTaskReady enter CriticalTime At:0004234194Line:1AddDownloadTaskReady leave CriticalTime At:0004234803Line:
Time of Update: 2018-12-03
Qt Creator系列教程為了使更多的Qt初學者能儘快入門Qt,也為了Qt及Qt Creator的快速普及,我們花費大量精力寫出了這一系列教程。雖然教程的知識可能很淺顯,雖然教程的語言可能不規範,但是它卻被數十萬網友所認可。我們會將這一系列教程一直寫下去,它將涉及Qt的方方面面。本系列教程一直在更新…
Time of Update: 2018-12-03
關鍵字: GetOpenFileName CFileDialog SDK Folder我一直不喜歡預設的檔案夾選擇. 相反地,我喜歡MFC中的CFileDialog這種對話方塊.如何使用SDK,實現CFileDialog對話方塊選擇檔案夾, 是我要解釋和舉例的.1. CFileDialog 的實現. CFileDialog 是MFC的類,實現了定製Open, Save, 這些Common Dialog 的定製. 其內部一般是使GetOpenFileName實現的. CFileDialog
Time of Update: 2018-12-03
控制項重載WM_PAINT訊息。在WM_PAINT的重載中這樣寫道:Do not call CEdit::OnPaint() for painting messages //CPaintDC dc(this); // device context for painting // TODO: Add your message handler code here // Do not call CEdit::OnPaint() for painting
Time of Update: 2018-12-03
ListCtrl 中 item 的建立: LVM_INSERTITEM LVITEM stItem ; stItem.iItem = i ; // 第幾列 stItem.iSubItem = 0 ; //必須置0, 否則,無效 stItem.iImage = stShellFileInfo.iIcon; stItem.pszText = L"1st SubItem" ; ::SendMessageW( hList , LVM_INSERTITEM , 0 , (LPARAM)&
Time of Update: 2018-12-03
改變控制項顏色問題改變控制項顏色,一般都是響應一個反射的訊息:ON_WM_CTLCOLOR_REFLECT (=WM_CTLCOLOR)在不改變任何的情況下,函數如下: HBRUSH CMyEdit::CtlColor(CDC* pDC, UINT nCtlColor){ // TODO: Change any attributes of the DC here // TODO: Return a non-NULL brush if the parent's handler should
Time of Update: 2018-12-03
結構 COMBOBOXINFO 的一些注意事項COMBOBOXINFO定義如下:typedef struct tagCOMBOBOXINFO { DWORD cbSize; RECT rcItem; RECT rcButton; DWORD stateButton; HWND hwndCombo; HWND hwndItem; HWND hwndList;} COMBOBOXINFO, *PCOMBOBOXINFO,
Time of Update: 2018-12-03
這幾天需要測試網頁, 使用XMLHTTP發現ie直接調用緩衝. 網上查看,多是通過加頁面參數,比如 pageid=xxxxxx 來變相解決. 可是對於根頁面,比如: www.google.cn 這種情況就很麻煩. 照例google , csdn , 結果基本上都是pageid 和 head 這兩個方法. 另外一個就是 setRequestHeader ,通過佈建要求頭來實現 . 我個人很討厭一種情況 , 就是問別人問題, 最後自己解決也不出來冒個泡 , 放個屁 .
Time of Update: 2018-12-03
話說俺在把一個程式改成c#,然後有些功能還是用VC寫比較方便,所以要求c#調用dll. 俺這個程式是WebBrowser介面,通過external 調用dll , 結果c#的WebBrowser就會拋出異常,說 object error . 這是一個說了等於白說的錯誤. 奇怪的是該dll通過vc調用一切"正常". 通過ida查看,一開始以為 C# 沒有對CRT初始化,導致我的dll中的CRT函數訪問記憶體出錯, 後來ida調試發現不是的. DLL本身的入口函數就正確的CRT_INIT了.
Time of Update: 2018-12-03
關於如何在程式中調用js函數, 網路上已經泛濫多時了.下面這個連結是這方面的鼻祖了,大家可以看看.http://www.codeproject.com/KB/COM/jscalls.aspx?msg=1162277 一般說來,調用js函數多數是為了讓程式核心和程式介面(ie介面)互動.所以我讓程式核心發送自訂訊息 WM_CALLDISP 到介面視窗.介面視窗調用invoke運行disp. 這裡有幾個問題要注意:0. js自訂函數其實是一個DISPATCH 對象. 在我給出的例子中是通過
Time of Update: 2018-12-03
1. input name 不支援這樣寫: var oInput = document.createElement("input"); oInput.name = "MyName"; 這樣寫無用, 應該寫: var oInput = document.createElement("<input name=MyName >");2. 嚴格定義的XHTML標準的一些問題. 假設層關係為: 1>>2>>3>>4
Time of Update: 2018-12-03
一.起子 沒有,想用SDK而已, 程式看的清爽. 討厭mfc許多麻煩的代碼.有時候明明很簡單,卻只好用mfc,不爽.二.構想 如果你嘗試模仿mfc, 你就會發現似乎有一道過不去的坎, 你想實現自己的CWnd, CDialog, 可是發現很難實現複用. 因為你的"CWnd,CDialog"似乎必須要有一個尾巴, 這個尾巴就是WndProc, 一個被要求是__stdcall 的函數. 假設,你實現了你的基類: CMyWindow, 然後你的程式中有兩個視窗:
Time of Update: 2018-12-03
BMP 檔案的注意事項 BMP 檔案作為古老的位元影像檔案格式,本來是沒什麼屁事的. 但是最近折騰了我3天. 事情是這樣的, 俺的一個GIF幀要複製成一個BMP, 然後出現奇怪問題, 有的圖片能正常顯示,有的就會失真,表現為長寬的失真, 而不是色彩的失真, 我實在是被弄的身心憔悴. 後來發現如果把bmp儲存成 32位格式的bmp,則所有圖片都能正常顯示. 可是為什麼我用8位調色盤就會間歇性失真? 我用VS開啟二進位的圖片,對比..........