VC程式設計技巧

2021-03-31 16:46:37 字數 1677 閱讀 1741

1.得到程式路徑

tchar exefullpath[max_path];

getmodulefilename(null,exefullpath,max_path)

2.從對話方塊得到乙個資料夾

char szdir[max_path];

browseinfo bi;

itemidlist *pidl;

bi.hwndowner = this->m_hwnd;

bi.pidlroot = null;

bi.pszdisplayname = szdir;

bi.lpsztitle = "請選擇受控的目錄";//strdlgtitle;

bi.ulflags = bif_returnonlyfsdirs;

bi.lpfn = null;

bi.lparam = 0;

bi.iimage = 0;

pidl = shbrowseforfolder(&bi);

if(pidl == null) 

return;

if(!shgetpathfromidlist(pidl, szdir))

return;

3.分割字串

cstring s="aaa,bbb,ccc,ddd";

char a1[4],a2[4],a3[4],a4[4];

sscanf(s,"%[^,],%[^,],%[^,],%[^,]",a1,a2,a3,a4);

afxmessagebox(a4);//顯示ddd

4.關閉顯示器:

::sendmessage(getsafehwnd(), wm_sys***mand, sc_monitorpower, 1);

5.  開啟顯示器:

::sendmessage(getsafehwnd(), wm_sys***mand, sc_monitorpower, -1);

6.得到系統時間、語言等的設定

getlocaleinfo(locale_user_default, locale_itime, lplcdata, cchdata);

7.計算windows的執行時間

ulong time_mm  =gettickcount();

ulong time_sec =(time_mm/1000)%60;

int  time_min =(time_mm/(1000*60))%60;

int  time_hour =(time_mm/(1000*60*60))%24;

int  time_day =(time_mm/(1000*60*60*24));

cout

//不存在

9.得到剪貼簿資料

if ( openclipboard() )                      

10.在cstatic上面關聯

cstatic* pwnd = (cstatic*)getdlgitem(idc_static);

pwnd->modifystyle(0, ss_bitmap);

pwnd->setbitmap((hbitmap)::loadimage(0,

"c://zzzzz.bmp",

image_bitmap,

0,0,lr_createdibsection |lr_defaultsize |lr_loadfromfile));

VC程式設計技巧

1.得到程式路徑 tchar exefullpath max path getmodulefilename null,exefullpath,max path 2.從對話方塊得到乙個資料夾 char szdir max path browseinfo bi itemidlist pidl bi.hw...

VC程式設計技巧整理

一 開啟cd rom mcisendstring set cdaudio door open wait null,0,null 二 關閉cd rom mcisendstring set cdaudio door closed wait null,0,null 三 關閉計算機 osversioninf...

VC程式設計小技巧

用vc新建dialog.新增rich edit 後編譯可以通過,執行後自動退出,原因即是沒有初始化的後果。解決方法 解釋 wasatarup 是應用程式呼叫的windows sockets dll的第乙個函式,在呼叫任何winsock api之前,必須呼叫wsastartup 進行初始化,最後呼叫w...