| | 80 | /** |
|---|
| | 81 | * Creates an empty environment block. |
|---|
| | 82 | * |
|---|
| | 83 | * @returns IPRT status code. Typical error is VERR_NO_MEMORY. |
|---|
| | 84 | * |
|---|
| | 85 | * @param pEnv Where to store the handle of the environment block. |
|---|
| | 86 | */ |
|---|
| | 87 | RTDECL(int) RTEnvCreate(PRTENV pEnv); |
|---|
| | 88 | |
|---|
| | 89 | /** |
|---|
| | 90 | * Destroys an environment block. |
|---|
| | 91 | * |
|---|
| | 92 | * @returns IPRT status code. |
|---|
| | 93 | * |
|---|
| | 94 | * @param Env Handle of the environment block. |
|---|
| | 95 | */ |
|---|
| | 96 | RTDECL(int) RTEnvDestroy(RTENV Env); |
|---|
| | 97 | |
|---|
| | 98 | /** |
|---|
| | 99 | * Creates an environment block and fill it with variables from the given |
|---|
| | 100 | * environment array. |
|---|
| | 101 | * |
|---|
| | 102 | * @returns IPRT status code. Typical error is VERR_NO_MEMORY. |
|---|
| | 103 | * |
|---|
| | 104 | * @param pEnv Where to store the handle of the environment block. |
|---|
| | 105 | * @param apszEnv Pointer to the NULL-terminated array of environment |
|---|
| | 106 | * variables. If NULL, the current process' environment |
|---|
| | 107 | * will be cloned. |
|---|
| | 108 | */ |
|---|
| | 109 | RTDECL(int) RTEnvClone(PRTENV pEnv, char const *const *apszEnv); |
|---|
| | 110 | |
|---|
| | 111 | /** @todo later */ |
|---|
| | 112 | /* |
|---|
| | 113 | RTDECL(int) RTEnvCloneEx(PRTENV pEnv, const RTENV Env); |
|---|
| | 114 | |
|---|
| | 115 | RTDECL(int) RTEnvExistEx(RTENV Env, const char *pszVar); |
|---|
| | 116 | RTDECL(int) RTEnvSetEx(RTENV Env, const char *pszVar, const char *pszValue); |
|---|
| | 117 | RTDECL(int) RTEnvGetEx(RTENV Env, const char *pszVar, const char **ppszValue); |
|---|
| | 118 | RTDECL(int) RTEnvCountEx(RTENV Env, size_t *cbCount); |
|---|
| | 119 | */ |
|---|
| | 120 | |
|---|
| | 121 | /** |
|---|
| | 122 | * Puts a 'variable=value' string into the environment. |
|---|
| | 123 | * |
|---|
| | 124 | * The supplied string must be in the current process' codepage. |
|---|
| | 125 | * This function makes a copy of the supplied string. |
|---|
| | 126 | * |
|---|
| | 127 | * @returns IPRT status code. Typical error is VERR_NO_MEMORY. |
|---|
| | 128 | * |
|---|
| | 129 | * @param Env Handle of the environment block. |
|---|
| | 130 | * @param pszVarEqualValue The variable '=' value string. If the value and '=' is |
|---|
| | 131 | * omitted, the variable is removed from the environment. |
|---|
| | 132 | */ |
|---|
| | 133 | RTDECL(int) RTEnvPutEx(RTENV Env, const char *pszVarEqualValue); |
|---|
| | 134 | |
|---|
| | 135 | /** |
|---|
| | 136 | * Returns a raw pointer to the array of environment variables of the given |
|---|
| | 137 | * environment block where every variable is a string in format |
|---|
| | 138 | * 'variable=value'. |
|---|
| | 139 | * |
|---|
| | 140 | * All returned strings are in the current process' codepage. |
|---|
| | 141 | * |
|---|
| | 142 | * @returns Pointer to the raw array of environment variables. |
|---|
| | 143 | * @returns NULL if Env is NULL or invalid. |
|---|
| | 144 | * |
|---|
| | 145 | * @param Env Handle of the environment block. |
|---|
| | 146 | */ |
|---|
| | 147 | RTDECL(char const *const *) RTEnvGetArray(RTENV Env); |
|---|
| | 148 | |
|---|