kwcsprojparser generates error(s) when folder names use special charactersIf you are using Visual Studio with a C# project, and create a folder from within the IDE containing a MSBuild reserved character(s), it will be referenced in the underlying .csproj file with escaped encoding for any special characters in the name. Specifically, the characters shown in the table below will be converted to their ASCII representations:
When kwbuildproject consumes the build specification created from the .csproj file by kwcsprojparser, the encoded folder names are processed and the '%' characters are further ASCII-encoded for downstream processing. This double-encoding causes kwbuildproject to generate errors because the folders cannot be found. The effect of the double-encoding is as follows:
To solve this problem, you can use kwbuildproject's --replace-path option to re-interpret the build specification as it is being consumed:
kwbuildproject --replace-path <old_path>=<new_path> -o <tables_directory> <build_specification>where:
For example:
kwbuildproject --replace-path "C:\MyProject\source%2524remainder_of_folder_name"="C:\MyProject\source\$remainder_of_folder_name" -o tables buildspec.out For more information, see Replacing the path to your source files |