首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

FreeEnvironmentStrings()解决方案

2012-03-30 
FreeEnvironmentStrings()FreeEnvironmentStrings翻译指定的环境字串块从百度搜出的。但我总觉得这个函数应

FreeEnvironmentStrings()
FreeEnvironmentStrings   翻译指定的环境字串块
从百度搜出的。但我总觉得这个函数应该属于清空环境变量字符串值的。

这个函数有没有更具体一些的解释?最好有代码说明。

[解决办法]
可以看看Windows核心编程第四章
http://www.chmchm.com/book/dnjc/cxsj/hxbc/index.html

BOOL CreateProcess(
PCTSTR pszApplicationName,
PTSTR pszCommandLine,
PSECURITY_ATTRIBUTES psaProcess,
PSECURITY_ATTRIBUTES psaThread,
BOOL bInheritHandles,
DWORD fdwCreate,
PVOID pvEnvironment,
PCTSTR pszCurDir,
PSTARTUPINFO psiStartInfo,
PPROCESS_INFORMATION ppiProcInfo);
4.2.4 pvEnvironment

p v E n v i r o n m e n t 参数用于指向包含新进程将要使用的环境字符串的内存块。在大多数情况下,为该参数传递N U L L ,使子进程能够继承它的父进程正在使用的一组环境字符串。也可以使用G e t E n v i r o n m e n t S t r i n g s 函数:

PVOID GetEnvironmentStrings();
该函数用于获得调用进程正在使用的环境字符串数据块的地址。可以使用该函数返回的地址,作为C r e a t e P r o c e s s 的p v E n v i r o n m e n t 参数。如果为p v E n v i r o n m e n t 参数传递N U L L ,那么这正是C r e a t e P r o c e s s 函数所做的操作。当不再需要该内存块时,应该调用F r e e E n v i r o n m e n t S t r i n g s 函数将内存块释放:
BOOL FreeEnvironmentStrings(PTSTR pszEnvironmentBlock);

热点排行