53 lines
1.2 KiB
C
53 lines
1.2 KiB
C
#include "precomp.h"
|
|
#pragma hdrstop
|
|
|
|
VOID
|
|
JzDeleteVariableSegment (
|
|
PCHAR VariableName,
|
|
ULONG Selection
|
|
)
|
|
{
|
|
PCHAR Variable;
|
|
CHAR VariableValue[MAXIMUM_ENVIRONMENT_VALUE];
|
|
ULONG Index;
|
|
ULONG Count;
|
|
BOOLEAN FirstSegment;
|
|
|
|
if ((Variable = ArcGetEnvironmentVariable(VariableName)) == NULL) {
|
|
return;
|
|
}
|
|
|
|
FirstSegment = TRUE;
|
|
Index = 0;
|
|
*VariableValue = 0;
|
|
while (strchr(Variable,';') != NULL) {
|
|
Count = strchr(Variable,';') - Variable;
|
|
if (Index != Selection) {
|
|
if (!FirstSegment) {
|
|
strcat(VariableValue,";");
|
|
}
|
|
strncat(VariableValue, Variable, Count);
|
|
FirstSegment = FALSE;
|
|
}
|
|
Variable += Count + 1;
|
|
Index++;
|
|
}
|
|
|
|
if (Index != Selection) {
|
|
if (!FirstSegment) {
|
|
strcat(VariableValue,";");
|
|
}
|
|
strcat(VariableValue,Variable);
|
|
}
|
|
|
|
ArcSetEnvironmentVariable(VariableName, VariableValue);
|
|
return;
|
|
}
|
|
|
|
PCHAR BootString[] = { "LOADIDENTIFIER",
|
|
"SYSTEMPARTITION",
|
|
"OSLOADER",
|
|
"OSLOADPARTITION",
|
|
"OSLOADFILENAME",
|
|
"OSLOADOPTIONS" };
|