Win32: delayload lua51.dll
This commit is contained in:
parent
d8ae7d5d0e
commit
3316c49348
|
@ -48,6 +48,22 @@
|
|||
extern TASEDITOR_LUA taseditor_lua;
|
||||
#endif
|
||||
|
||||
bool DemandLua()
|
||||
{
|
||||
#ifdef WIN32
|
||||
HMODULE mod = LoadLibrary("lua51.dll");
|
||||
if(!mod)
|
||||
{
|
||||
MessageBox(NULL, "lua51.dll was not found. Please get it into your PATH or in the same directory as fceux.exe", "FCEUX", MB_OK | MB_ICONERROR);
|
||||
return false;
|
||||
}
|
||||
FreeLibrary(mod);
|
||||
return true;
|
||||
#else
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
|
||||
extern "C"
|
||||
{
|
||||
#include <lua.h>
|
||||
|
@ -5482,6 +5498,11 @@ void FCEU_LuaFrameBoundary()
|
|||
* Returns true on success, false on failure.
|
||||
*/
|
||||
int FCEU_LoadLuaCode(const char *filename, const char *arg) {
|
||||
if (!DemandLua())
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (filename != luaScriptName)
|
||||
{
|
||||
if (luaScriptName) free(luaScriptName);
|
||||
|
@ -5653,6 +5674,9 @@ void FCEU_ReloadLuaCode()
|
|||
*/
|
||||
void FCEU_LuaStop() {
|
||||
|
||||
if (!DemandLua())
|
||||
return;
|
||||
|
||||
//already killed
|
||||
if (!L) return;
|
||||
|
||||
|
|
|
@ -115,6 +115,7 @@
|
|||
</DataExecutionPrevention>
|
||||
<SupportUnloadOfDelayLoadedDLL>true</SupportUnloadOfDelayLoadedDLL>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<DelayLoadDLLs>lua51.dll</DelayLoadDLLs>
|
||||
</Link>
|
||||
<Manifest>
|
||||
<AdditionalManifestFiles>$(ProjectDir)../src/drivers/win/fceu_x86.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles>
|
||||
|
@ -149,7 +150,7 @@
|
|||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>Rpcrt4.lib;comctl32.lib;vfw32.lib;winmm.lib;ws2_32.lib;htmlhelp.lib;../src/drivers/win/directx/dsound.lib;../src/drivers/win/directx/dxguid.lib;../src/drivers/win/directx/ddraw.lib;../src/drivers/win/directx/dinput.lib;../src/drivers/win/lua/win32/lua51.lib;luaperks.lib;psapi.lib;mpr.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<DelayLoadDLLs>%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>lua51.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
|
@ -193,6 +194,7 @@
|
|||
<SubSystem>Windows</SubSystem>
|
||||
<EntryPointSymbol>mainCRTStartup</EntryPointSymbol>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<DelayLoadDLLs>lua51.dll</DelayLoadDLLs>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
|
@ -221,6 +223,7 @@
|
|||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<EntryPointSymbol>mainCRTStartup</EntryPointSymbol>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<DelayLoadDLLs>lua51.dll</DelayLoadDLLs>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib ../src/drivers/win/lua/win32/lua51.lib luaperks.lib delayimp.lib psapi.lib mpr.lib"
|
||||
LinkIncremental="2"
|
||||
DelayLoadDLLs="gdi32.dll"
|
||||
DelayLoadDLLs="gdi32.dll;lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="1"
|
||||
EntryPointSymbol="mainCRTStartup"
|
||||
|
@ -157,6 +157,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="dxguid.lib winmm.lib dinput.lib ws2_32.lib ddraw.lib dsound.lib ../src/drivers/win/lua/x64/lua51.lib"
|
||||
LinkIncremental="2"
|
||||
DelayLoadDLLs="lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
EntryPointSymbol="mainCRTStartup"
|
||||
|
@ -241,7 +242,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib ../src/drivers/win/lua/win32/lua51.lib luaperks.lib delayimp.lib psapi.lib mpr.lib"
|
||||
LinkIncremental="1"
|
||||
DelayLoadDLLs="gdi32.dll"
|
||||
DelayLoadDLLs="gdi32.dll;lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
|
@ -327,6 +328,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="dxguid.lib winmm.lib dinput.lib ws2_32.lib ddraw.lib dsound.lib ../src/drivers/win/lua/x64/lua51.lib"
|
||||
LinkIncremental="1"
|
||||
DelayLoadDLLs="lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
|
@ -416,7 +418,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib ../src/drivers/win/lua/win32/lua51.lib luaperks.lib delayimp.lib psapi.lib mpr.lib"
|
||||
LinkIncremental="1"
|
||||
DelayLoadDLLs="gdi32.dll"
|
||||
DelayLoadDLLs="gdi32.dll;lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
|
@ -502,6 +504,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="dxguid.lib winmm.lib dinput.lib ws2_32.lib ddraw.lib dsound.lib ../src/drivers/win/lua/x64/lua51.lib"
|
||||
LinkIncremental="1"
|
||||
DelayLoadDLLs="lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
|
|
|
@ -72,7 +72,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib ../src/drivers/win/lua/win32/lua51.lib luaperks.lib psapi.lib mpr.lib"
|
||||
LinkIncremental="2"
|
||||
DelayLoadDLLs=""
|
||||
DelayLoadDLLs="lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="1"
|
||||
EntryPointSymbol="mainCRTStartup"
|
||||
|
@ -158,6 +158,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="dxguid.lib winmm.lib dinput.lib ws2_32.lib ddraw.lib dsound.lib ../src/drivers/win/lua/x64/lua51.lib"
|
||||
LinkIncremental="2"
|
||||
DelayLoadDLLs="lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
EntryPointSymbol="mainCRTStartup"
|
||||
|
@ -239,7 +240,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="Rpcrt4.lib comctl32.lib vfw32.lib winmm.lib ws2_32.lib htmlhelp.lib ../src/drivers/win/directx/dsound.lib ../src/drivers/win/directx/dxguid.lib ../src/drivers/win/directx/ddraw.lib ../src/drivers/win/directx/dinput.lib ../src/drivers/win/lua/win32/lua51.lib luaperks.lib psapi.lib mpr.lib"
|
||||
LinkIncremental="1"
|
||||
DelayLoadDLLs=""
|
||||
DelayLoadDLLs="lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
|
@ -325,6 +326,7 @@
|
|||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="dxguid.lib winmm.lib dinput.lib ws2_32.lib ddraw.lib dsound.lib ../src/drivers/win/lua/x64/lua51.lib"
|
||||
LinkIncremental="1"
|
||||
DelayLoadDLLs="lua51.dll"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
|
|
Loading…
Reference in New Issue