Time of Update: 2018-12-04
問題描述:之前我們有個介面類似int WINAPI ReadBiosVersion(BYTE *bios, ULONG size, char *version);這個介面是封裝在dll中,是操作底層bios的。提供介面的人,提供了32bit和64bit兩套dll.而我們的應用程式是32bit的,需要在64bit OS上運行,就需要調用64bit.所以我們的方案是上篇文章介紹的使用進程外的COM來解決。但問題來了,我在COM中提供了一個介面來封裝這個介面,例如int WINAPI
Time of Update: 2018-12-04
#include <iostream>#include <string>#include <map>using namespace std;void maxNumTimes(int a[], int len, int b[]){map<int, int> mapData;int count = 0;for(int i = 0; i < len; i++){mapData[a[i]]++;}//int max timesint
Time of Update: 2018-12-04
並發和並行的區別就是一個處理器同時處理多個任務和多個處理器或者是多核的處理器同時處理多個不同的任務。前者是邏輯上的同時發生(simultaneous),而後者是物理上的同時發生.並發性(concurrency),又稱共行性,是指能處理多個同時性活動的能力,並發事件之間不一定要同一時刻發生。並行(parallelism)是指同時發生的兩個並發事件,具有並發的含義,而並發則不一定並行。來個比喻:並發和並行的區別就是一個人同時吃三個饅頭和三個人同時吃三個饅頭。這樣,對於並發和並行的區別,您應該瞭解了吧
Time of Update: 2018-12-04
作為一個現代的開發人員,你已經習慣了使用版本管理來管理自己的代碼和文檔。當我們在家裡的機器上想對自己的東西做版本管理的時候你需要自己配置一個版本管理伺服器,如CVS等。但是很遺憾的是,CVSNT的配置很是麻煩,而且CVS的功能實在是落伍,SVN伺服器的配置也實在麻煩,VSS?老古董一邊去!網路上申請一個免費的項目空間,如sf.net之類的:那你的檔案就都公開了。 今天我無意中發現原來建立一個個人用的SVN
Time of Update: 2018-12-04
procedure TMainForm.aListBoxDrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);var i: Integer; position: Integer; str: string;begin str := aListBox.Items.Strings[Index]; position := AnsiPos('* ', str); if
Time of Update: 2018-12-04
在公司,不能大張旗鼓的搞VM+unix,用Cygwin湊合這學慣用。用了一段時間之後,不知道咋搞的,Cygwin不好用了。arm-elf-gcc編譯去不能正常使用了。make,gcc等等也不正常。執行之後“死”在那裡許久許久,等待了許久才報告出錯誤。網路上查了許多相關的內容,但都無解。出錯提示的樣子一般都是這個樣子:(以執行為arm-elf-gcc例子)Administrator@krsrd217 ~/examples/chapter2$ arm-elf-gcc -O2 -c
Time of Update: 2018-12-04
游標從XP進入VMware之後 卡死一會,大約2秒之後才能活動起來,並正常使用。不論VMware中安裝的是XP還是Linux。但是游標從裡面移動到外面則沒有問題。游標立即就可以正常工作。這個問題糾結了許久。改用其它的虛擬機器(Virtual
Time of Update: 2018-12-04
#include <stdio.h>#include <stdlib.h>int main(){ unsigned int i; for(i=5; i>=0; i--) { printf("This is %d !/n",i); getch(); } return 0;}嘿嘿!試一試吧!結果是:This is 5 !This is 4 !This is 3 !This is 2 !This is 1
Time of Update: 2018-12-04
vc程式只運行一次的判斷 方法一:BOOL CAutoUpdateApp::InitInstance(){ HANDLE hMap=CreateFileMapping((HANDLE)0xFFFFFFFF, NULL, PAGE_READWRITE, 0, 128, AfxGetAppName()); if(hMap == NULL) // 如果建立失敗 { AfxMessageBox("建立用於互斥啟動並執行記憶體對應檔對象失敗!",
Time of Update: 2018-12-04
終於狠心給自己放了個長假,遊覽了嚮往已久的夢中香巴拉——雲南。這次行程經過的地方有:昆明、大理、麗江、香格裡拉(迪慶藏族自治州)。一路陽光明媚,有山有水,空氣好得不得了。 但需要注意下的是:1)高原地區。景點多在2000~4000米左右的海拔高度,體質差的人容易有高原反應。2)晝夜溫差。白天秋高氣爽(因為剛好的中秋後去),但清晨和夜晚的溫度很低,一般4~5攝氏度左右,注意保暖。3)自備乾糧。由於高原地區的沸點比較低,加上交通等原因,一般不要對團餐抱有很大的期望。自備乾糧,補充體能。4)備保溫杯。
Time of Update: 2018-12-04
1.在定義幾個變數或字串時如: 1.student = struct('name',{'Annie'},'scores',{70,89,100,45})定義構架函數 2.A = {[1,4,3;0,5,8;7,2,9]} %定義元胞數組 3.prompt = {'Enter matrix size:','Enter colormap name:'}; title = 'Input for peaks function'; lines = 1; def = {'
Time of Update: 2018-12-04
#include <stdio.h>#include <stdlib.h>#include <windows.h> enum { N = 5 }; /* number of philosphers */static HANDLE fork[N]; /* model forks as mutex
Time of Update: 2018-12-04
由於開發中使用了OCX控制項,如果目標機器上沒有對應的OCX檔案會造成應用程式無法正常運行,用InstallShield2009註冊OCX控制項時我走了彎路,最開始是使用INF檔案,在InstallScript裡寫 rundll32 + INF檔案名稱。這樣可以正確載入OCX控制項,但是在卸載時會把載入的OCX檔案卸載掉。經過尋找資料,發現InstallShield是自己帶了自載入OCX等自動註冊控制項的功能。流程如下: 第一步:Project Assistant —
Time of Update: 2018-12-04
qt4 線程睡眠
Time of Update: 2018-12-04
轉自:http://jhxk.javaeye.com/blog/451618 某一天,在偵錯工具時突然發現,在附加資料庫後,想添加關係表,結果出來了下面的錯誤: 此資料庫沒有有效所有者,因此無法安裝資料庫圖表支援對象。若要繼續,請首先使用“資料庫屬性”對話方塊的“檔案”頁或Alter
Time of Update: 2018-12-04
http://redotheweb.com/CodeFlower/能顯示出“代碼花”。具體的看這個網頁的介紹。如何讓自己在Win下開發的軟體也開花呢?下載cloc-1.56.exe這個工具。其它版本應該也可以。在DOS下執行,D:\tools\cloc>cloc-1.56.exe symfony-master --csv --by-file --report-file=symfony.cloc
Time of Update: 2018-12-04
對於有對話方塊的類,點擊右鍵,virtual function,添加PreTranslateMessage,然後Edit,寫入如下代碼: BOOL CYourDlg::PreTranslateMessage(MSG* pMsg) { if(pMsg->message==WM_KEYDOWN&&pMsg->wParam==VK_RETURN) return TRUE;
Time of Update: 2018-12-04
32位進程調用64位dll應該也可以通過這種方法解決,原因64位windows系統下安裝了32位和64位兩套COM系統(本人已驗證) 最近做在Windows XP
Time of Update: 2018-12-04
http://blog.163.com/xiaochunxu@126/blog/static/854233362008725114653448/dereference的一種新譯法:用引 今天閱讀RFC3986(URI: Generic Syntax)時,遇到了dereference一詞。 dereference一個URI的意思是: To use that access mechanism to perform an action on the URI's resource is to
Time of Update: 2018-12-04
讓某個註冊表值不被Installshied反安裝 有些註冊表的值在安裝的時候寫入目標機器,但是反安裝的時候不希望反安裝掉它,比如一些限制版的軟體(限制使用時間)的時間參數,第一次使用時寫入,以後每次安裝都去查看對應的註冊表值,反安裝的時候不能反安裝掉。 RegDBSetKeyValueEx的協助中有下面這段話:When they are created using RegDBCreateKeyEx.While logging is enabled.When they