您当前的位置: 首页 >  windows

qianbo_insist

暂无认证

  • 2浏览

    0关注

    399博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

在windows文件系统中加右键执行程序

qianbo_insist 发布时间:2021-07-19 17:31:02 ,浏览量:2

在windows中有一个很好的方式就是右键执行程序,怎么做?下面就是,比较简单

show me the code
#include 
#include 
#include 
using namespace std;

void add(string strMenuText, string strApplication);
void del(string strMenuText);

int main() {
	add("上传文档到xx云", "d:/filesystemfile1.exe");
	system("pause");
	return 0;
}

void add(string strMenuText, string strApplication) {
	HKEY hresult;
	long value;
	string strRegKeyName = strMenuText;
	string strRegKey = "*\\shell\\" + strRegKeyName;//if txt file, please use "txtfile\\shell\\用我的文本编辑程序打开"
	string strRegSubkey = "*\\shell\\" + strRegKeyName + "\\command";
	strApplication = strApplication + " %1";

	DWORD dwPos;

	value = RegCreateKeyEx(HKEY_CLASSES_ROOT, (LPSTR)(LPCSTR)strRegKey.c_str(), 0, NULL, REG_OPTION_NON_VOLATILE, KEY_CREATE_SUB_KEY | KEY_ALL_ACCESS, NULL, &hresult, &dwPos);
	value = RegSetValueEx(hresult, NULL, 0, REG_SZ, (BYTE*)(LPCTSTR)strMenuText.c_str(), strMenuText.length());

	value = RegCreateKeyEx(HKEY_CLASSES_ROOT, (LPSTR)(LPCSTR)strRegSubkey.c_str(), 0, NULL, REG_OPTION_NON_VOLATILE, KEY_CREATE_SUB_KEY | KEY_ALL_ACCESS, NULL, &hresult, &dwPos);
	value = RegSetValueEx(hresult, NULL, 0, REG_SZ, (const BYTE*)(LPCTSTR)strApplication.c_str(), strApplication.length());

	::RegCloseKey(hresult);
}

void del(string strMenuText) {
	HKEY hKey;
	//string strRegKeyName = "我的加密";
	string strRegKeyName = strMenuText;
	string strRegKey = "*\\shell\\" + strRegKeyName;
	string strRegSubkey = "*\\shell";

	//打开父键
	long lRet = ::RegOpenKeyEx(HKEY_CLASSES_ROOT, (LPSTR)(LPCSTR)strRegKey.c_str(), 0, KEY_READ, &hKey);

	//删除“command”子键  
	::RegDeleteKey(hKey, LPCTSTR("command"));
	::RegCloseKey(hKey);

	lRet = ::RegOpenKeyEx(HKEY_CLASSES_ROOT, (LPSTR)(LPCSTR)strRegSubkey.c_str(), 0, KEY_READ, &hKey);

	//删除“加密”子键  
	::RegDeleteKey(hKey, LPCTSTR(strRegKeyName.c_str()));
	::RegCloseKey(hKey);
}
执行后

执行后会右键加上“上传文档到xx云”,点击就会执行自己指定的程序,很方便吧。当然,执行的程序是要自己做了。

关注
打赏
1663161521
查看更多评论
立即登录/注册

微信扫码登录

0.4812s