Plugin was non-autonomous: Build.cs referenced ../../../../Dependencies (SDK installed externally) and copied dpwin64.dll into the project's Binaries at build time, requiring manual DLL placement. Migrate to the canonical UE third-party pattern so the plugin self-contains everything and UBT handles staging. - Embed minimal SDK files inside the plugin: dris.h, dpwin64.lib in Source/ThirdParty/DinkeyPro/, dpwin64.dll in Binaries/ThirdParty/DinkeyPro/Win64/. - Switch from runtime GetProcAddress to import-lib delay-load (better protection: calls go through PE import table instead of named lookup). - Load DLL via IPluginManager::FindPlugin()->GetBaseDir() — no more ProjectDir-based path, no more manual File.Copy in Build.cs. - Drop Win32 dead code; plugin is Win64-only per the .uplugin whitelist. - Update .gitignore to keep Binaries/ThirdParty/ tracked while ignoring build artifacts under Binaries/Win64/. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
408 B
408 B