Other options are execl(2), which takes the parameters in individual arguments, or execvp(2), which also takes a null-terminated array of environment variables.
Execv (2) is one of the simpler ways to replace the current image, because it doesn't need information about the environment and it USES the null-terminated array.
No matter where it appears, an UpperFilters or LowerFilters value is of type REG_MULTI_SZ and can therefore contain one or more null-terminated Unicode string values.