我用程序在注册表中修改了鼠标的指针,但是要重新进入系统才可以生效,用什么办法可以让它立即生效的呢?给个代码,谢谢了:)
解决方案 »
- 求个CAsyncSocket使用方法
- opengl导入obj文件时纹理坐标的问题
- 请教高手:BCG中的CBCGPDockingControlBar类的窗体如何能够实现全屏显示???
- VC 6.0编译错误之三连弹!您的经验将指引着我前进!(标题不能写太长)
- 我的 IP Address控件为什么在运行时显示不了?
- 菜鸟问题,引用DLL中的资源?
- 请问哪有IDL语言规范描述.(在线等)
- 求助:一个具有排序功能的ListCtrl类,请高手看看问题出在哪里?HELP……
- [计算机]西交大。西工大不知道考那个学校的研究生好一点
- CAsyncSocket的OnSend有什么用
- 怎样把一个模块转换成activex控件?(只剩80了)
- 一个VC++ API的群,大家帮忙顶一下。。。。。。。。。。。。。。。。。。。。
SystemParametersInfo(SPI_SETCURSORS,0,NULL,SPIF_SENDCHANGE); 就可以了
我设置的是:
Windows Registry Editor Version 5.00[HKEY_CURRENT_USER\Control Panel\Cursors]
@="MYMouse"
"Scheme Source"=dword:00000002
"Arrow"="E:\\Application Project\\out\\MouseStyle\\Cursor.cur"
"Help"="E:\\Application Project\\out\\MouseStyle\\Help.cur"
"AppStarting"="E:\\Application Project\\out\\MouseStyle\\Working.ani"
"Wait"="E:\\Application Project\\out\\MouseStyle\\Busy.ani"
"Crosshair"="E:\\Application Project\\out\\MouseStyle\\Cross.cur"
"IBeam"="E:\\Application Project\\out\\MouseStyle\\Beam.cur"
"NWPen"="E:\\Application Project\\out\\MouseStyle\\Pen.cur"
"No"="E:\\Application Project\\out\\MouseStyle\\Unavailable.cur"
"SizeNS"="E:\\Application Project\\out\\MouseStyle\\Size Horz.cur"
"SizeWE"="E:\\Application Project\\out\\MouseStyle\\Size Vert.cur"
"SizeNWSE"="E:\\Application Project\\out\\MouseStyle\\Resize Right.cur"
"SizeNESW"="E:\\Application Project\\out\\MouseStyle\\Resize Left.cur"
"SizeAll"="E:\\Application Project\\out\\MouseStyle\\Resize All.cur"
"UpArrow"="E:\\Application Project\\out\\MouseStyle\\Alternate.cur"
"Hand"=hex(2):00,00
请问怎么刷新呢?
楼上大哥给的代码可以编辑通过,但是没有起作用啊?
楼主按下面的试试:HKEY hKey;
struct HKEY__*RootKey;
TCHAR *SubKey;
TCHAR *ValueName;
LPBYTE SetContent_S;
RootKey=HKEY_CURRENT_USER;
SubKey="Control Panel\\Cursors";
ValueName="AppStarting";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Working.ani");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="Arrow";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Cursor.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="Crosshair";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Cross.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="Hand";
SetContent_S=LPBYTE(""); //这里使用windows默认
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="Help";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Help.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="IBeam";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Beam.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="No";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Unavailable.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="NWPen";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Pen.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="SizeAll";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Resize All.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="SizeNESW";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Resize Left.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="SizeNS";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Size Horz.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="SizeNWSE";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Resize Right.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="SizeWE";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Size Vert.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="UpArrow";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Alternate.cur");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
ValueName="Wait";
SetContent_S=LPBYTE("E:\\Application Project\\out\\MouseStyle\\Busy.ani");
RegOpenKeyEx(RootKey,SubKey,0,KEY_WRITE,&hKey);
RegSetValueEx(hKey,ValueName,NULL,REG_EXPAND_SZ,SetContent_S,CString(SetContent_S).GetLength());
RegCloseKey(hKey);
SystemParametersInfo(SPI_SETCURSORS,0,NULL,SPIF_SENDCHANGE);
MessageBox("鼠标主题转换已完成!","OK",MB_ICONINFORMATION);另Tora3(啄木鸟):不同的修改向系统发的消息是不同的,不能一概而论;修改输入法好象必须重启或注销
然后再 Createprocess explorer.exe
你说的方法可以实现,是我自己把ANI文件的路径给错了,:)
非常感谢你!