bool function::registerfiletype(lpctstr houzhui,lpctstr fmiaoshu,lpctstr wmiaoshu,lpctstr filepath)
{hkey hkey = null;
dword dwdip=0;
lptstr newreg=new tchar[512];
tchar bufpath[256];
if(filepath==null)
getmodulefilename(null,bufpath,256);
else
lstrcpy(bufpath,filepath);
bool lreturn=::regcreatekeyex(hkey_classes_root,houzhui,null,null,reg_option_non_volatile,key_all_access,0,&hkey,&dwdip);
if(lreturn != error_success)
return false;
::regsetvalueex(hkey, 0, 0, reg_sz, (const byte *)fmiaoshu, lstrlen(fmiaoshu));
lreturn=::regcreatekeyex(hkey_classes_root,fmiaoshu,null,null,reg_option_non_volatile,key_all_access,0,&hkey,&dwdip);
if(lreturn != error_success)
return false;
::regsetvalueex(hkey, 0, 0, reg_sz, (const byte *)wmiaoshu, lstrlen(wmiaoshu));
lstrcpy(newreg,fmiaoshu);
lstrcat(newreg,_t("//defaulticon"));
lreturn=::regcreatekeyex(hkey_classes_root,newreg,null,null,reg_option_non_volatile,key_all_access,0,&hkey,&dwdip);
if(lreturn != error_success)
return false;
lstrcpy(newreg,bufpath);
lstrcat(newreg,_t(",0"));
::regsetvalueex(hkey, 0, 0, reg_sz, (const byte *)newreg, lstrlen(newreg));
lstrcpy(newreg,fmiaoshu);
lstrcat(newreg,_t("//shell//open//command"));
lreturn=::regcreatekeyex(hkey_classes_root,newreg,null,null,reg_option_non_volatile,key_all_access,0,&hkey,&dwdip);
if(lreturn != error_success)
return false;
lstrcpy(newreg,_t("/""));
lstrcat(newreg,bufpath);
lstrcat(newreg,_t("/" /"%1/""));
::regsetvalueex(hkey, 0, 0, reg_sz,(const byte *)newreg, lstrlen(newreg));
註冊檔案型別,並關聯程式(三)
雙擊一個txt檔案,就能用記事本開啟,因為txt檔案關聯了記事本程式。想讓你自定義的檔案型別也通過雙擊就能直接呼叫你的程式並開啟?ok,首先我們找到第一期,看到其中的這行 registry.setvalue hkey classes root myguo shell open command d b...
註冊檔案型別,並關聯程式(二)
registry.setvalue hkey classes root myguo defaulticon d bin guo.ico 怎麼把ico檔案打包 編譯 到exe檔案中,請參看 將多個圖示檔案編譯到c 程式中 假設我們把兩個ico檔案編譯到了guo.exe檔案中,第一個作為exe的預設圖示...
註冊檔案型別,並關聯程式(一)
在windows上,不同的副檔名會顯示不同的圖示。但是如果你的程式使用了自己定義的一種副檔名 比如.guo windows發現其為 未知型別 時,會顯示一個預設的未知型別圖示,既不好看又不容易在一堆檔案中快速找到你的檔案。所以,本文將介紹怎麼通過登錄檔來實現更改檔案的預設圖示。以.guo型別為例 副...
Qt 如何實現檔案型別關聯
何為檔案開啟關聯,比如,一個副檔名為txt的文字,雙擊之後會呼叫 notepad.exe 進行開啟,doc的副檔名會呼叫word開啟等等。咱們今天講的是如何在qt所編寫的程式實現這個動作。這個關聯動作都是記錄在登錄檔中的。1 檔案格式註冊,比如我自己註冊了swf格式 則在 hkey classes ...
Qt 如何實現檔案型別關聯
何為檔案開啟關聯,比如,一個副檔名為txt的文字,雙擊之後會呼叫 notepad.exe 進行開啟,doc的副檔名會呼叫word開啟等等。咱們今天講的是如何在qt所編寫的程式實現這個動作。這個關聯動作都是記錄在登錄檔中的。1 檔案格式註冊,比如我自己註冊了swf格式 則在 hkey classes ...