如何获得所有Windows的操作系统版本,至少win95,98,me,xp,vista,7的名称?
我使用visual c ++ 2010,我希望在纯win32应用程序中包含此功能.
我希望在我的c ++应用程序中有一些字符串,我希望以后能够在已部署的应用程序(编译的exe)中编辑它们,有没有办法让exe编辑自己或它的资源,所以我可以更新字符串值?
应用程序在启动时检查更新,因此我正在考虑使用它来在我需要编辑字符串时发送命令(例如包含用于检查更新的URL的字符串).
我不想使用exe外部的任何东西,我可以简单地使用注册表,但我更喜欢将所有内容保存在exe中.
我正在使用visual studio 2010 c ++(或ms visual c ++的任何其他版本).
我在一个类中使用此代码来使webbrowser控件访问一个网站:
void myClass::visitWeb(const char *url)
{
WCHAR buffer[MAX_LEN];
ZeroMemory(buffer, sizeof(buffer));
MultiByteToWideChar(CP_ACP, MB_ERR_INVALID_CHARS, url, strlen(url), buffer, sizeof(buffer)-1);
VARIANT vURL;
vURL.vt = VT_BSTR;
vURL.bstrVal = SysAllocString(buffer);
// webbrowser navigate code...
VariantClear(&vURL);
}
Run Code Online (Sandbox Code Playgroud)
我从另一个void函数调用visitWeb,该函数在app的handlemessage()上调用.我需要在这里做一些内存释放吗?我看到varurClear正在释放vURL,但是我应该为缓冲区释放内存吗?我被告知在另一个bool我在同一个应用程序中我不应该释放任何东西,因为当bool返回true/false时一切都清除了,但是这个空白会发生什么?