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:
erik 2026-02-08 18:27:56 +01:00
commit d1442e3747
1382 changed files with 170725 additions and 0 deletions

View file

@ -0,0 +1,79 @@
#if !defined(AFX_DOWNLOADERDLG_H__EF5E9E0B_873E_4AFC_85D8_8F210D77AD79__INCLUDED_)
#define AFX_DOWNLOADERDLG_H__EF5E9E0B_873E_4AFC_85D8_8F210D77AD79__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DownloaderDlg.h : header file
//
#include "resource.h"
/////////////////////////////////////////////////////////////////////////////
// cDownloaderDlg dialog
class cDownloaderDlg : public CDialog
{
// Construction
public:
enum DownloadStatus
{
DOWNLOAD_SUCCEEDED,
DOWNLOAD_FAILED
};
cDownloaderDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(cDownloaderDlg)
enum { IDD = IDD_DOWNLOADER };
CStatic m_stStatusTotalData;
CStatic m_stStatusTotal;
CButton m_wndStop;
CProgressCtrl m_wndProgress;
CProgressCtrl m_wndProgressTotal;
CStatic m_stIEMsg;
CStatic m_stCustomMsg;
//}}AFX_DATA
CLSID m_clsid;
CWinThread* m_pWorkerThread;
bool m_bThreadDone;
DownloadStatus GetDownloadStatus();
unsigned long m_ulTotalData;
void cDownloaderDlg::addFile(std::string remoteFile, std::string localFile);
void ProgressUpdate ( LPCTSTR szIEMsg, LPCTSTR szCustomMsg, const int nPercentDone );
void WorkerThreadProc();
LRESULT OnEndDownload(WPARAM nID, LPARAM uMsg);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(cDownloaderDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(cDownloaderDlg)
afx_msg void OnStopdownload();
afx_msg void OnDestroy();
virtual BOOL OnInitDialog();
afx_msg void OnClose();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
std::vector<FILELIST> m_FileList;
bool m_bDownloadSucceeded;
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DOWNLOADERDLG_H__EF5E9E0B_873E_4AFC_85D8_8F210D77AD79__INCLUDED_)