资源简介
C++ 像我的电脑中 百度网盘的 那图标快捷方式。如何生成的呢?设置程序图标到我的电脑 请看下边代码 就ok了(*^__^*) 嘻嘻……
代码片段和文件信息
// regedittest.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
#include
#include
#include
#ifndef _TRACE
#define _TRACE(__VA_ARGS__) OutputDebugString(__VA_ARGS__)
#endif
#define USE_TYPE HKEY_LOCAL_MACHINE
//HKEY_LOCAL_MACHINE HKEY_CLASSES_ROOT
#define REGSTR_SHOWPCMANAGERICON L“SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{6219FCF4-0C23-4E57-BCB8-9F2AAAF7290C}“;
#define REGSTR_HIDEPCMANAGERICON L“SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\CLSID\\{6219FCF4-0C23-4E57-BCB8-9F2AAAF7290C}“;
#define STREAMIOCN _T(“Local Settings\\Software\\Microsoft\\Windows\\CurrentVersion\\TrayNotify\\“)
#define STRNAMESPACE _T(“SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\“)
#define STRCLSID _T(“SOFTWARE\\Classes\\CLSID\\“)
BOOL Show(LPCTSTR lpszGUID);
// 设置图标到我的电脑
// lpszProPath省略 默认给本程序添加图标到我的电脑,否则给指定程序添加图标到我的电脑
BOOL SetProgramToNameSpace(LPCTSTR lpszKeyName LPCTSTR lpszGUID LPCTSTR lpszProPath = NULL);
BOOL SetProgramToNameSpace2(LPCTSTR lpszKeyName LPCTSTR lpszGUID LPCTSTR lpszProPath = NULL);
// 创建注册表项
BOOL CreateSubkey(HKEY hKey LPCTSTR lpszSubkey HKEY& hResult);
// 写入注册表键值
BOOL WritRegValue(HKEY hKey LPCTSTR lpszValue DWORD dwType = REG_SZ);
BOOL WritRegValue2(HKEY hKey LPCTSTR lpszKey LPCTSTR lpszValue DWORD dwType = REG_SZ);
// 删除注册表项
BOOL DelRegKey(LPCTSTR lpszSubkey);
// 删除写入的注册表项
void DelSubKey(LPCTSTR lpszGUID);
// 删除写入的注册表项
void Del(LPCTSTR lpszGUID);
int main(void)
{
//if (SetProgramToNameSpace2(_T(“计算器“) _T(“{FF533112-C7ED-4EBB-8177-F32CC37AB8C7}“)/*_T(“{FE533112-C7ED-4EBB-8177-F32CC37AB8C7}“)*/))
//{
// std::cout << “在我的电脑 中创建图标成功!“ << std::endl;
//}
//else
//{
// std::cout << “在我的电脑 中创建图标失败!“ << std::endl;
// std::cout << “请以右键管理员权限运行!“ << std::endl;
//}
// 删除键值项(用于清理我的电脑里边的图标)
DelRegKey(_T(“{FF533112-C7ED-4EBB-8177-F32CC37AB8C7}“));
//Del(_T(“{6219FCF4-0C23-4E57-BCB8-9F2AAAF7290C}“));
//Show(_T(“{FF533112-C7ED-4EBB-8177-F32CC37AB8C7}“));
system(“pause“);
return 0;
}
BOOL CreateSubkey(HKEY hKey LPCTSTR lpszSubkey HKEY& hResult)
{
DWORD dwDisposition = REG_CREATED_NEW_KEY;
if (ERROR_SUCCESS != RegCreateKeyEx(hKey lpszSubkey 0 REG_NONE REG_OPTION_NON_VOLATILE KEY_ALL_ACCESS | KEY_WOW64_64KEY NULL &hResult &dwDisposition))
{
_TRACE(_T(“NameSpace:写注册表%s项失败!\n“) lpszSubkey);
return FALSE;
}
return TRUE;
}
BOOL WritRegValue(HKEY hKey LPCTSTR lpszValue DWORD dwType)
{
if (ERROR_SUCCESS != RegSetValueEx(hKey NULL 0 dwType (BYTE*)lpszValue sizeof(TCHAR)*(_tcsclen(lpszValue) + 2 * sizeof(TCHAR))))
{
_TRACE(_T(“NameSpace:写注册表键值%s失败!\n“) lpszKeyName);
return FALSE;
}
return TRUE;
}
BOOL WritRegValue2(HKEY hKey LPCTSTR lpszKey LPCTSTR lpszValue DWORD dwType)
{
if (ERROR_SUCCESS != RegSetValueEx(hKey lpszKey 0 dwType (BYTE*)lpszValue sizeof(TCHAR)*(_tcsclen(lpszValue) + 2 * sizeof(T
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-08-25 16:14 regedittest\
目录 0 2017-08-02 15:43 regedittest\.vs\
目录 0 2017-08-02 15:43 regedittest\.vs\regedittest\
目录 0 2017-08-02 15:43 regedittest\.vs\regedittest\v14\
文件 47104 2017-08-25 16:14 regedittest\.vs\regedittest\v14\.suo
目录 0 2017-08-25 16:07 regedittest\Debug\
文件 823296 2017-08-25 16:07 regedittest\Debug\regedittest.exe
文件 1901816 2017-08-25 16:07 regedittest\Debug\regedittest.ilk
文件 5918720 2017-08-25 16:07 regedittest\Debug\regedittest.pdb
目录 0 2017-08-02 15:43 regedittest\ipch\
目录 0 2017-08-03 14:14 regedittest\ipch\REGEDITTEST-fcd850a6\
文件 3473408 2017-08-03 14:14 regedittest\ipch\REGEDITTEST-fcd850a6\REGEDITTEST-a4812870.ipch
目录 0 2017-08-25 16:06 regedittest\regedittest\
目录 0 2017-08-25 16:07 regedittest\regedittest\Debug\
文件 1569 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.Build.CppClean.log
文件 1231 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.log
文件 79956 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.obj
文件 3407872 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.pch
目录 0 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\
文件 1834 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\CL.command.1.tlog
文件 34172 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\CL.read.1.tlog
文件 1858 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\CL.write.1.tlog
文件 1738 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\li
文件 3798 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\li
文件 1000 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\li
文件 239 2017-08-25 16:07 regedittest\regedittest\Debug\regedittest.tlog\regedittest.lastbuildstate
文件 12354 2017-08-25 16:07 regedittest\regedittest\Debug\stdafx.obj
文件 781312 2017-08-25 16:07 regedittest\regedittest\Debug\vc140.idb
文件 397312 2017-08-25 16:07 regedittest\regedittest\Debug\vc140.pdb
文件 1538 2017-08-02 15:43 regedittest\regedittest\ReadMe.txt
文件 13866 2017-08-25 16:06 regedittest\regedittest\regedittest.cpp
............此处省略7个文件信息
评论
共有 条评论