问题是这样的:
CString filename,pathname;
int result;
HKEY m_Key;
unsigned long bdata;
if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment\\",
0,
KEY_ALL_ACCESS,
&m_Key)!=ERROR_SUCCESS)
AfxMessageBox("Error Querying..."); if(RegQueryValueEx(m_Key,"CLASSPATH",NULL,NULL,(LPBYTE)pathname.GetBuffer(pathname.GetLength()),&bdata)!=ERROR_SUCCESS)
{
AfxMessageBox("not exsit");
return;
}
filename="\\lib\\llll.jar";
TRACE("%s\n",pathname); //pathname的值是.;G:\\j2eesdk\\lib\\llll.jar;G:\\j2eesdk\\lib\\oooo.jar
result=pathname.Find(filename); //result的值是 12
TRACE("%d\n",result);
result=pathname.Delete(result,filename.GetLength ()); // result的值是 0
TRACE("%d\n",result);
TRACE("%s\n",pathname); //pathname的值仍然是.;G:\\j2eesdk\\lib\\llll.jar;G:\\j2eesdk\\lib\\oooo.jar
RegCloseKey(m_Key);
这是怎么回事啊??????????????????????
CString filename,pathname;
int result;
HKEY m_Key;
unsigned long bdata;
if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment\\",
0,
KEY_ALL_ACCESS,
&m_Key)!=ERROR_SUCCESS)
AfxMessageBox("Error Querying..."); if(RegQueryValueEx(m_Key,"CLASSPATH",NULL,NULL,(LPBYTE)pathname.GetBuffer(pathname.GetLength()),&bdata)!=ERROR_SUCCESS)
{
AfxMessageBox("not exsit");
return;
}
filename="\\lib\\llll.jar";
TRACE("%s\n",pathname); //pathname的值是.;G:\\j2eesdk\\lib\\llll.jar;G:\\j2eesdk\\lib\\oooo.jar
result=pathname.Find(filename); //result的值是 12
TRACE("%d\n",result);
result=pathname.Delete(result,filename.GetLength ()); // result的值是 0
TRACE("%d\n",result);
TRACE("%s\n",pathname); //pathname的值仍然是.;G:\\j2eesdk\\lib\\llll.jar;G:\\j2eesdk\\lib\\oooo.jar
RegCloseKey(m_Key);
这是怎么回事啊??????????????????????
你可以把这段代码移到新的工程里看看。