#if (DEV)         [Guid("00000000-47f4-49b9-9724-b9c8038bb4de")]         [ClassInterface(ClassInterfaceType.None)]         [ProgId("GISCAF_PRODUTO.GISCAFExtensionDEV")]     #elif (QAS)         [Guid("11111111-47f4-49b9-9724-b9c8038bb4de")]         [ClassInterface(ClassInterfaceType.None)]         [ProgId("GISCAF_PRODUTO.GISCAFExtensionQAS")]     #elif (PRD)         [Guid("22222222-47f4-49b9-9724-b9c8038bb4de")]         [ClassInterface(ClassInterfaceType.None)]         [ProgId("GISCAF_PRODUTO.GISCAFExtensionPRD")]     #else         [Guid("d3fabbd4-47f4-49b9-9724-b9c8038bb4de")]         [ClassInterface(ClassInterfaceType.None)]         [ProgId("GISCAF_PRODUTO.GISCAFExtension")]     #endif     public class GISCAFExtension : IExtension, IExtensionConfig, IPersistVariantSolved! Go to Solution.
I would create 3 projects but share the key source code. You can add an existing file to a Visual Studio project as a link.
When you add an existing file, don't click the Add button but rather get the drop down and select Add As Link. That way you only have 1 set of source code to keep up with.