Jump to content

DLL Path.


Thareh
 Share

Recommended Posts

Hi,

I'd like the feature to define where your DLLs are at. ^^

I want my EXE directory to be very clean, with only a setup executable and the game executable.

Just a simple variable you declare, or command would be great ^^

Core2Duo, 3.33GHz, Radeon HD 5850 Black Edition, 4GB RAM, 4 TB HDD, Windows 7.

Core2Duo, 2.00GHz, Geforce 9500m, 4GB RAM, 320 GB HDD, Windows 7.

Link to comment
Share on other sites

I think the handling of DLL files is too OS specific to be part of LE. On Windows, the handling of DLL files don't differ much from EXE files, and should be handled as such.

 

Assets, including shaders.pak, are handled with the abstract path system, which is clearly not OS specific, but only LE specific.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

I think you are being to picky. Is it really that big of a deal to have 4 or 5 dlls in the same directory as your exe? Look at most games out there. The directory that has the exe is mostly clouded with other files. If it's good enough for these companies making millions of dollars I think it's ok for you :)

Link to comment
Share on other sites

Hi,

I'd like the feature to define where your DLLs are at. ^^

I want my EXE directory to be very clean, with only a setup executable and the game executable.

Just a simple variable you declare, or command would be great ^^

 

I may be way off here but calling any sort of engine command from C/C++, C# or LUA requires the DLL to be present in the same directory as the EXE. Thus you could never implement this as an engine command the way I see it.

Link to comment
Share on other sites

I may be way off here but calling any sort of engine command from C/C++, C# or LUA requires the DLL to be present in the same directory as the EXE. Thus you could never implement this as an engine command the way I see it.
Like I said, DLLs work just like EXEs, they don't need to be in the same directory from where you are calling them, but they need to be in the path. It's a shame that Windows uses the current directory as a hack to add to the path, since on other OS, like OSX, Unix, AIX, Linux, BSD, etc... you can't even run an "exe" from the current directory unless it's in the path, but you need to specify the path from there to run the "exe", like ./mygame. It's also a security risk that Windows calls any exe from the current directory, that's why other OS don't do that.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

I understand that, but on Windows it would be a no go. In order for the DLL to be in another location, the programmer has to either create a BAT file to add the path to the game's environment before executing the EXE, add it to the system path, or put the DLL in the system32 directory and as the OP has already told that none of those options are any good for him.

 

So what the OP is asking - an engine command to specify the location of the engine DLL - impossible on Windows. Even if it were possible it would be futile. If the engine command would execute it would mean the game executable already found it, so whats the point of telling the engine where it is?

  • Upvote 1
Link to comment
Share on other sites

You can also change the application runtime path with C++ code, so no cmd file is needed. That meaans you can also make a command with enables the engine to find DLL files in a specified folder.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...