SetEnvironmentVariable VB声明 
Declare Function SetEnvironmentVariable Lib "kernel32" Alias "SetEnvironmentVariableA" (ByVal lpName As String, ByVal lpValue As String) As Long 
说明 
将一个环境变量设为指定的值 
返回值 
Long,TRUE(非零)表示成功,否则返回零。会设置GetLastError 
参数表 
参数 类型及说明 
lpName String,欲设置的环境变量的名称。如具有这个名称的一个环境变量尚不存在,则函数会自动创建它 
lpValue String,欲为变量设置的新值。如为NULL,表示清除一个现成值(用vbNullString常数向这个函数传递一个NULL) 

解决方案 »

  1.   

    当然首先GetEnvironmentStrings VB声明 
    Declare Function GetEnvironmentStrings& Lib "kernel32" Alias "GetEnvironmentStringsA" () 
    说明 
    为包含了当前环境字串设置的一个内存块分配和返回一个句柄。这个内存块包含了所有环境字串。各字串间用一个NULL分隔;连续两个NULL标志着列表的结尾 
    返回值 
    Long,指向包含了环境字串的一个内存块的地址。零表示失败。会设置GetLastError 
    注解 
    注意一定要用FreeEnvironmentStrings函数释放这个内存块
     
    其他 
    请看从vb的api文本查看器复制的声明:Declare Function GetEnvironmentStrings Lib "kernel32" Alias "GetEnvironmentStringsA" () As String,与前面的声明返回值不同 GetEnvironmentVariable VB声明 
    Declare Function GetEnvironmentVariable Lib "kernel32" Alias "GetEnvironmentVariableA" (ByVal lpName As String, ByVal lpBuffer As String, ByVal nSize As Long) As Long 
    说明 
    取得一个环境变量的值 
    返回值 
    Long,载入的环境变量的长度。如指定的环境字串不存在,就返回零。如lpBuffer的长度不足以全部容下字串,则返回字串的全长。随后可用这个长度分配一个足够大的缓冲区 
    参数表 
    参数 类型及说明 
    lpName String,欲读入的环境字串的名称 
    lpBuffer String,随同字串装载的一个缓冲区。注意预先将其初始化到合适的长度 
    nSize Long,lpBuffer的长度