openDecal/Managed/Decal.sln
erik d1442e3747 Initial commit: Complete open-source Decal rebuild
All 5 phases of the open-source Decal rebuild:

Phase 1: 14 decompiled .NET projects (Interop.*, Adapter, FileService, DecalUtil)
Phase 2: 10 native DLLs rewritten as C# COM servers with matching GUIDs
  - DecalDat, DHS, SpellFilter, DecalInput, DecalNet, DecalFilters
  - Decal.Core, DecalControls, DecalRender, D3DService
Phase 3: C++ shims for Inject.DLL (D3D9 hooking) and LauncherHook.DLL
Phase 4: DenAgent WinForms tray application
Phase 5: WiX installer and build script

25 C# projects building with 0 errors.
Native C++ projects require VS 2022 + Windows SDK (x86).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 18:27:56 +01:00

166 lines
13 KiB
Text

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.0.31903.59
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Core", "Decal.Interop.Core\Decal.Interop.Core.csproj", "{A328E1A0-F70B-41B2-B6AF-217674EB91B2}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.D3DService", "Decal.Interop.D3DService\Decal.Interop.D3DService.csproj", "{339862FE-4E9A-43EB-9ECF-07DB1B50C4EC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.DHS", "Decal.Interop.DHS\Decal.Interop.DHS.csproj", "{FBB3A799-6DDC-40B7-9768-D257BE6BF007}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Dat", "Decal.Interop.Dat\Decal.Interop.Dat.csproj", "{B646EBA1-B635-4CCB-9C84-1DFB6949DCCD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.SpellFilter", "Decal.Interop.SpellFilter\Decal.Interop.SpellFilter.csproj", "{1AC7A0E3-DF45-4DF6-9FB3-78C03E75AAFD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Net", "Decal.Interop.Net\Decal.Interop.Net.csproj", "{91035378-2CE7-4A67-90D2-A4097092D97E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Input", "Decal.Interop.Input\Decal.Interop.Input.csproj", "{C4E3BBC8-75E4-4C55-9E7B-1E5D544D3558}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Inject", "Decal.Interop.Inject\Decal.Interop.Inject.csproj", "{B45148C2-5EAD-4A3A-9455-83B89554A3F5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Filters", "Decal.Interop.Filters\Decal.Interop.Filters.csproj", "{A5283E36-8FBA-4595-9C9B-C24EE8D5E702}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Controls", "Decal.Interop.Controls\Decal.Interop.Controls.csproj", "{4A0EA6C5-BF88-4CF6-B786-48BE51742FFD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Interop.Render", "Decal.Interop.Render\Decal.Interop.Render.csproj", "{C55615C2-5CA1-41BB-9D68-4A42A79E13AF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Adapter", "Decal.Adapter\Decal.Adapter.csproj", "{FB81134A-7AF8-44F4-BD09-A6C0EE32B003}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.FileService", "Decal.FileService\Decal.FileService.csproj", "{35C959E4-747A-464D-9290-5DB60D4C9614}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DecalUtil", "DecalUtil\DecalUtil.csproj", "{505E6EBA-25E0-4A85-A29C-1685BC96179D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DecalDat", "Decal.DecalDat\Decal.DecalDat.csproj", "{E53274E5-BC82-4E8B-973B-6D3A9BE1D3B7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DHS", "Decal.DHS\Decal.DHS.csproj", "{7F72E603-3C1A-4DAC-9C8F-557822B8D26E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.SpellFilter", "Decal.SpellFilter\Decal.SpellFilter.csproj", "{054D5CE6-F24E-4A3C-ACEC-CA078479D888}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DecalInput", "Decal.DecalInput\Decal.DecalInput.csproj", "{A0EE045A-7D6A-4F24-9D9C-C8B7F7EFE568}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DecalNet", "Decal.DecalNet\Decal.DecalNet.csproj", "{BA0A302B-F57E-43C1-B22E-19F88A0D73C5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DecalFilters", "Decal.DecalFilters\Decal.DecalFilters.csproj", "{4EED1867-45CD-4FC2-98E5-CCC07BA19EBF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.Core", "Decal.Core\Decal.Core.csproj", "{D3A58F24-42F7-4C9E-A1D7-5E02A8E8B3F1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DecalControls", "Decal.DecalControls\Decal.DecalControls.csproj", "{C1F8B924-7D3E-4A5F-9C2B-3E8A6D4F1B72}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DecalRender", "Decal.DecalRender\Decal.DecalRender.csproj", "{2B9E4F3A-1C7D-48E5-A6B8-D9F0C3E2A571}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.D3DService", "Decal.D3DService\Decal.D3DService.csproj", "{8A5F2E1B-C4D6-49A3-B7E0-F1D2C3A4B5E6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Decal.DenAgent", "Decal.DenAgent\Decal.DenAgent.csproj", "{F7A12E3B-D4C6-49A3-B8E1-2D9F0C3E5A71}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{A328E1A0-F70B-41B2-B6AF-217674EB91B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A328E1A0-F70B-41B2-B6AF-217674EB91B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A328E1A0-F70B-41B2-B6AF-217674EB91B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A328E1A0-F70B-41B2-B6AF-217674EB91B2}.Release|Any CPU.Build.0 = Release|Any CPU
{339862FE-4E9A-43EB-9ECF-07DB1B50C4EC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{339862FE-4E9A-43EB-9ECF-07DB1B50C4EC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{339862FE-4E9A-43EB-9ECF-07DB1B50C4EC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{339862FE-4E9A-43EB-9ECF-07DB1B50C4EC}.Release|Any CPU.Build.0 = Release|Any CPU
{FBB3A799-6DDC-40B7-9768-D257BE6BF007}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FBB3A799-6DDC-40B7-9768-D257BE6BF007}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FBB3A799-6DDC-40B7-9768-D257BE6BF007}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FBB3A799-6DDC-40B7-9768-D257BE6BF007}.Release|Any CPU.Build.0 = Release|Any CPU
{B646EBA1-B635-4CCB-9C84-1DFB6949DCCD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B646EBA1-B635-4CCB-9C84-1DFB6949DCCD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B646EBA1-B635-4CCB-9C84-1DFB6949DCCD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B646EBA1-B635-4CCB-9C84-1DFB6949DCCD}.Release|Any CPU.Build.0 = Release|Any CPU
{1AC7A0E3-DF45-4DF6-9FB3-78C03E75AAFD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1AC7A0E3-DF45-4DF6-9FB3-78C03E75AAFD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1AC7A0E3-DF45-4DF6-9FB3-78C03E75AAFD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1AC7A0E3-DF45-4DF6-9FB3-78C03E75AAFD}.Release|Any CPU.Build.0 = Release|Any CPU
{91035378-2CE7-4A67-90D2-A4097092D97E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{91035378-2CE7-4A67-90D2-A4097092D97E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{91035378-2CE7-4A67-90D2-A4097092D97E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{91035378-2CE7-4A67-90D2-A4097092D97E}.Release|Any CPU.Build.0 = Release|Any CPU
{C4E3BBC8-75E4-4C55-9E7B-1E5D544D3558}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C4E3BBC8-75E4-4C55-9E7B-1E5D544D3558}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C4E3BBC8-75E4-4C55-9E7B-1E5D544D3558}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C4E3BBC8-75E4-4C55-9E7B-1E5D544D3558}.Release|Any CPU.Build.0 = Release|Any CPU
{B45148C2-5EAD-4A3A-9455-83B89554A3F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B45148C2-5EAD-4A3A-9455-83B89554A3F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B45148C2-5EAD-4A3A-9455-83B89554A3F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B45148C2-5EAD-4A3A-9455-83B89554A3F5}.Release|Any CPU.Build.0 = Release|Any CPU
{A5283E36-8FBA-4595-9C9B-C24EE8D5E702}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A5283E36-8FBA-4595-9C9B-C24EE8D5E702}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A5283E36-8FBA-4595-9C9B-C24EE8D5E702}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A5283E36-8FBA-4595-9C9B-C24EE8D5E702}.Release|Any CPU.Build.0 = Release|Any CPU
{4A0EA6C5-BF88-4CF6-B786-48BE51742FFD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4A0EA6C5-BF88-4CF6-B786-48BE51742FFD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4A0EA6C5-BF88-4CF6-B786-48BE51742FFD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4A0EA6C5-BF88-4CF6-B786-48BE51742FFD}.Release|Any CPU.Build.0 = Release|Any CPU
{C55615C2-5CA1-41BB-9D68-4A42A79E13AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C55615C2-5CA1-41BB-9D68-4A42A79E13AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C55615C2-5CA1-41BB-9D68-4A42A79E13AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C55615C2-5CA1-41BB-9D68-4A42A79E13AF}.Release|Any CPU.Build.0 = Release|Any CPU
{FB81134A-7AF8-44F4-BD09-A6C0EE32B003}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FB81134A-7AF8-44F4-BD09-A6C0EE32B003}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FB81134A-7AF8-44F4-BD09-A6C0EE32B003}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FB81134A-7AF8-44F4-BD09-A6C0EE32B003}.Release|Any CPU.Build.0 = Release|Any CPU
{35C959E4-747A-464D-9290-5DB60D4C9614}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{35C959E4-747A-464D-9290-5DB60D4C9614}.Debug|Any CPU.Build.0 = Debug|Any CPU
{35C959E4-747A-464D-9290-5DB60D4C9614}.Release|Any CPU.ActiveCfg = Release|Any CPU
{35C959E4-747A-464D-9290-5DB60D4C9614}.Release|Any CPU.Build.0 = Release|Any CPU
{505E6EBA-25E0-4A85-A29C-1685BC96179D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{505E6EBA-25E0-4A85-A29C-1685BC96179D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{505E6EBA-25E0-4A85-A29C-1685BC96179D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{505E6EBA-25E0-4A85-A29C-1685BC96179D}.Release|Any CPU.Build.0 = Release|Any CPU
{E53274E5-BC82-4E8B-973B-6D3A9BE1D3B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E53274E5-BC82-4E8B-973B-6D3A9BE1D3B7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E53274E5-BC82-4E8B-973B-6D3A9BE1D3B7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E53274E5-BC82-4E8B-973B-6D3A9BE1D3B7}.Release|Any CPU.Build.0 = Release|Any CPU
{7F72E603-3C1A-4DAC-9C8F-557822B8D26E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7F72E603-3C1A-4DAC-9C8F-557822B8D26E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7F72E603-3C1A-4DAC-9C8F-557822B8D26E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7F72E603-3C1A-4DAC-9C8F-557822B8D26E}.Release|Any CPU.Build.0 = Release|Any CPU
{054D5CE6-F24E-4A3C-ACEC-CA078479D888}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{054D5CE6-F24E-4A3C-ACEC-CA078479D888}.Debug|Any CPU.Build.0 = Debug|Any CPU
{054D5CE6-F24E-4A3C-ACEC-CA078479D888}.Release|Any CPU.ActiveCfg = Release|Any CPU
{054D5CE6-F24E-4A3C-ACEC-CA078479D888}.Release|Any CPU.Build.0 = Release|Any CPU
{A0EE045A-7D6A-4F24-9D9C-C8B7F7EFE568}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A0EE045A-7D6A-4F24-9D9C-C8B7F7EFE568}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A0EE045A-7D6A-4F24-9D9C-C8B7F7EFE568}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A0EE045A-7D6A-4F24-9D9C-C8B7F7EFE568}.Release|Any CPU.Build.0 = Release|Any CPU
{BA0A302B-F57E-43C1-B22E-19F88A0D73C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BA0A302B-F57E-43C1-B22E-19F88A0D73C5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BA0A302B-F57E-43C1-B22E-19F88A0D73C5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BA0A302B-F57E-43C1-B22E-19F88A0D73C5}.Release|Any CPU.Build.0 = Release|Any CPU
{4EED1867-45CD-4FC2-98E5-CCC07BA19EBF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4EED1867-45CD-4FC2-98E5-CCC07BA19EBF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4EED1867-45CD-4FC2-98E5-CCC07BA19EBF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4EED1867-45CD-4FC2-98E5-CCC07BA19EBF}.Release|Any CPU.Build.0 = Release|Any CPU
{D3A58F24-42F7-4C9E-A1D7-5E02A8E8B3F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D3A58F24-42F7-4C9E-A1D7-5E02A8E8B3F1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D3A58F24-42F7-4C9E-A1D7-5E02A8E8B3F1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D3A58F24-42F7-4C9E-A1D7-5E02A8E8B3F1}.Release|Any CPU.Build.0 = Release|Any CPU
{C1F8B924-7D3E-4A5F-9C2B-3E8A6D4F1B72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C1F8B924-7D3E-4A5F-9C2B-3E8A6D4F1B72}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C1F8B924-7D3E-4A5F-9C2B-3E8A6D4F1B72}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C1F8B924-7D3E-4A5F-9C2B-3E8A6D4F1B72}.Release|Any CPU.Build.0 = Release|Any CPU
{2B9E4F3A-1C7D-48E5-A6B8-D9F0C3E2A571}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2B9E4F3A-1C7D-48E5-A6B8-D9F0C3E2A571}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2B9E4F3A-1C7D-48E5-A6B8-D9F0C3E2A571}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2B9E4F3A-1C7D-48E5-A6B8-D9F0C3E2A571}.Release|Any CPU.Build.0 = Release|Any CPU
{8A5F2E1B-C4D6-49A3-B7E0-F1D2C3A4B5E6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8A5F2E1B-C4D6-49A3-B7E0-F1D2C3A4B5E6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8A5F2E1B-C4D6-49A3-B7E0-F1D2C3A4B5E6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8A5F2E1B-C4D6-49A3-B7E0-F1D2C3A4B5E6}.Release|Any CPU.Build.0 = Release|Any CPU
{F7A12E3B-D4C6-49A3-B8E1-2D9F0C3E5A71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F7A12E3B-D4C6-49A3-B8E1-2D9F0C3E5A71}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F7A12E3B-D4C6-49A3-B8E1-2D9F0C3E5A71}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F7A12E3B-D4C6-49A3-B8E1-2D9F0C3E5A71}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal