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>
This commit is contained in:
commit
d1442e3747
1382 changed files with 170725 additions and 0 deletions
101
Native/Include/DecalDat.idl
Normal file
101
Native/Include/DecalDat.idl
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
// DecalDat.idl : IDL source for DecalDat.dll
|
||||
//
|
||||
|
||||
// This file will be processed by the MIDL tool to
|
||||
// produce the type library (DecalDat.tlb) and marshalling code.
|
||||
|
||||
import "oaidl.idl";
|
||||
import "ocidl.idl";
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(D501DE12-DD81-4CE1-8854-78CBCB96C2DB),
|
||||
dual,
|
||||
helpstring("IDatService Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDatService : IDispatch
|
||||
{
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(4EC04AB5-F87A-465D-B282-1B6C2E6068C9),
|
||||
dual,
|
||||
helpstring("IDatLibrary Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDatLibrary : IDispatch
|
||||
{
|
||||
[propget, id(1), helpstring("property Stream")] HRESULT Stream(DWORD File, [out, retval] LPUNKNOWN *pVal);
|
||||
[id(2), helpstring("method Open")] HRESULT Open(BSTR Protocol, DWORD File, [out, retval] LPUNKNOWN *pFile);
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(B27D3F72-2640-432F-BAE4-175E1AA0CA39),
|
||||
helpstring("IDatStream Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDatStream : IUnknown
|
||||
{
|
||||
[propget, helpstring("property Size")] HRESULT Size([out, retval] long *pVal);
|
||||
[propget, helpstring("property Tell")] HRESULT Tell([out, retval] long *pVal);
|
||||
[helpstring("method Skip")] HRESULT Skip(long Bytes);
|
||||
[helpstring("method Restart")] HRESULT Restart();
|
||||
[helpstring("method ReadBinary")] HRESULT ReadBinary(long Bytes, [size_is(Bytes)] BYTE *Buffer);
|
||||
[helpstring("method Read")] HRESULT Read(long Bytes, [out, retval] BSTR *Data);
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(1349EF1A-06EA-43e5-9026-4F3967C6C1D3),
|
||||
helpstring("IFileFilter Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IFileFilter : IUnknown
|
||||
{
|
||||
[helpstring("method Initiailize")] HRESULT Initialize(IDatStream *Stream);
|
||||
};
|
||||
|
||||
[
|
||||
uuid(C2C11EC7-2CB9-4999-BDD9-AF599455601F),
|
||||
version(1.0),
|
||||
helpstring("DecalDat 1.0 Type Library")
|
||||
]
|
||||
library DecalDat
|
||||
{
|
||||
importlib("stdole32.tlb");
|
||||
importlib("stdole2.tlb");
|
||||
|
||||
interface IFileFilter;
|
||||
|
||||
[
|
||||
uuid(37B083F0-276E-43AD-8D26-3F7449B519DC),
|
||||
helpstring("DatService Class")
|
||||
]
|
||||
coclass DatService
|
||||
{
|
||||
[default] interface IDatService;
|
||||
};
|
||||
|
||||
[
|
||||
uuid(6FA05FDA-B4B5-4386-AB45-92D7E6A5D698),
|
||||
helpstring("DatLibrary Class"),
|
||||
noncreatable
|
||||
]
|
||||
coclass DatLibrary
|
||||
{
|
||||
[default] interface IDatLibrary;
|
||||
};
|
||||
|
||||
[
|
||||
uuid(9F7F6CD9-D164-418D-8CB5-3B9ACD70BEAF),
|
||||
helpstring("DatStream Class"),
|
||||
noncreatable
|
||||
]
|
||||
coclass DatStream
|
||||
{
|
||||
[default] interface IDatStream;
|
||||
};
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue