SlimDX possible to merge to Exe?

Aug 19, 2013 at 11:20 AM
Is it possible to merge the runtime DLL file to an application to prevent the need of installing it?
Pretty much like all other DLL files that can be merged.

I tried merging the SlimDX runtime Net4.0 but sadly it didn´t work.
Coordinator
Aug 19, 2013 at 11:26 AM
What do you mean by "runtime" DLL? Just a standard unmanaged/Win32 dll?

If that's what you mean see:
https://libz.codeplex.com/workitem/2
Aug 19, 2013 at 11:53 AM
Edited Aug 19, 2013 at 12:25 PM
Well what i mean is.

To run a SlimDX application, you need to install the runtime (much like, Net Framework needs it´s runtime).
But if i understand it right SlimDX only has 1 dll file, only which is limited to the Net framework itself.

So, if i wonder if it´s possible to merge it.


Not sure if it´s Win32 dll or what sadly, don´t understand it fully.

But it´s not a library, so you can´t use it in your code like other stuff (LZ4.Net for example).

Well LZ4 is a good example when i think about it.

It got the LZ4.Net dll, and then 2 other, the encoder/decoder in x64 and x86, and those to can´t be merged.
Those are probably the same as the DLL i am talking about.


EDIT:

Okay i am just confused now. It seems to work;S
Not sure what i did, before i got an error when i tried to merge it.
Now i can merge it just fine.
Now sure if it works though, but at least i can merge it. Though i don´t understand why it works now.

EDIT 2:

Well it doesn´t work for LZ4, not the x64 or x86 files.
Is it possible to merge them to the application?

Thanks:)
Coordinator
Aug 19, 2013 at 12:31 PM
Edited Aug 19, 2013 at 12:34 PM
Depends which LZ4 library you mean.
Mine (https://lz4net.codeplex.com/)? You CAN do this with mine.
Khalid Salomão's (https://code.google.com/p/lz4-net)? No, you CANNOT. Basically it's just P/Invoke wrapper for native .DLLs and native .DLLs cannot be embedded for reasons I gave in https://libz.codeplex.com/workitem/2.
Aug 19, 2013 at 12:36 PM
I meant Khalid from the looks of which i was using.

But now i am a bit confused, what´s the difference between your wrappers?
I mean, performance wise.
Coordinator
Aug 19, 2013 at 12:49 PM
Performance wise you are more than welcome to do 24-hour test and send me results. Just remember to take out the HDD speed out of equation.
I would expect his his to marginally (like for example ~1%) faster because mine are written in .NET and his are native. That's why his cannot be merged. That's the trade-off.
Aug 19, 2013 at 12:54 PM
Think i will pass with that;P

But hmm, interesting, to bad there is a trade off, but at less than 1% it isn´t something to to really care about i guess.

But, do you know how much difference there would be compared to the native code in it´s original language (which i guess is C++)?

As Wrappers and such will slow things down to a certain degree. But is it something to be cared about in LZ4 for example?
Or is it also about 1%?

That is an off topic question of course, but if you know the answer or a guess, i would be interested to hear it:)