• 大小: 13.37MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-14
  • 语言: C/C++
  • 标签: 程序图标  

资源简介

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\link.command.1.tlog
     文件        3798  2017-08-25 16:07  regedittest\regedittest\Debug\regedittest.tlog\link.read.1.tlog
     文件        1000  2017-08-25 16:07  regedittest\regedittest\Debug\regedittest.tlog\link.write.1.tlog
     文件         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个文件信息

评论

共有 条评论