使用RegEnumValue()API函数读取的注册表项信息:
char lpName[100], lpData[1000];
DWORD dwNameLen = 100,dwDataLen = 1000;
memset(lpName,0,100);
memset(lpData,0,1000);
RegEnumValue(hk,0,lpName,&dwNameLen,NULL,NULL,(unsigned char*)lpData,&dwDataLen);成功后lpData中的内容类似这样的: "C:\Program Files\360safe\360Safe.exe" "%1"问题是我必须把后面的"%1"去掉,只要前面的"C:\Program Files\360safe\360Safe.exe"。请问大家这个怎么实现?(把lpData转换为CString后用CString的方法也行)注意:上面读取的值本身是带双引号的,不是我加上去的!
str.Mid(1, Find('\"', 1) - 1);
str = str.Left(str.Find("\" \""));
CString tmp="\"C:\\Program Files\\360safe\\360Safe.exe\" \"%1\"";
int pos=tmp.Find("\"",2);
tmp=tmp.Mid(1,pos-1);
MessageBox(tmp);