hur.cn - 华软网

 热门搜索

求个好用的注册表导出函数或者类

  作者:未知    来源:网络    更新时间:2010/6/22
我在VC知识库上找到个导出类
CRegisterExport
但是这个类函数有个致命的不足就是将字符串解释成16进制表示时,明显有问题,比如一个服务程序的启动路径
正常导出应该是:

"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
  52,00,49,00,56,00,45,00,52,00,53,00,5c,00,59,00,47,00,56,00,44,00,72,00,69,\
  00,76,00,65,00,2e,00,73,00,79,00,73,00,00,00

但是用上面类的导出函数:
"ImagePath" = hex(2):73,79,73,74,65,6d,33,32,5c,44,52,49,56,45,52,53,5c,59,47,56,44,\
72,69,76,65,2e,73,79,73,00

少了很多个00 难道是宽字节?

求一个好用的导出函数或者类 最好不要用SHELL方法调用reg.exe或者regedit.exe因为这个函数要放在服务程序里,调别的程序会在关机的时候出警告~~

有劳了各位
---华软 网友回答---
有什么问题吗,他导出的应该是多字节字符串的16进制,而正常导出的是宽字符的16进制
---华软网友回复---
引用 1 楼 stonewater 的回复:
有什么问题吗,他导出的应该是多字节字符串的16进制,而正常导出的是宽字符的16进制


在我的XP系统下,用这个导出函数导出的.reg文件再导入的时候,就解释成乱码了~~
---华软网友回复---
你用它的类导出,估计还要用他的类导入
---华软网友回复---
引用 3 楼 stonewater 的回复:
你用它的类导出,估计还要用他的类导入


他的导入函数就是SHELL命令调regedit.exe导进去指定的reg文件
导进去就成乱码了~~
---华软网友回复---
::sprintf 
---华软网友回复---
引用 5 楼 huandfly 的回复:
::sprintf


楼上什么意思呢?
---华软网友回复---
真心求个 代码实现 注册表导出的函数或者类  60分不够的话可以追加  帮个忙吧~~
---华软网友回复---
可能需要将宽字符转成多字节的
---华软网友回复---
都有源码了,改下用字符导出
---华软网友回复---
这个程序用在UNICODE工程下可以,但是我的程序用的不是UNICODE,所以导出会有问题,求个通用的函数啊
---华软网友回复---
继续求个好用的函数或者求一个适用于ANSI工程的函数或者类,拜托拜托
---华软网友回复---
you can change your code, for example, in ANSI environment, change TCHAR to wchar_t
---华软网友回复---
引用 12 楼 buyong 的回复:
you can change your code, for example, in ANSI environment, change TCHAR to wchar_t


中间涉及到一些字符串的算法用CString进行的,如果想在ANSI工程下加入一段UNICODE代码就要我自己把算法重新写一遍,我不确定自己能改好,所以先找个现成的,我自己同时也试着改~~我用的VC6连CStringW都没有
---华软网友回复---
这个类我也看过了,没营养,自己改进了一下!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。