Is there any way to store external content in a dll or container?

Multimedia Builder (Legacy Forum)
Post Reply
rikintosh
Posts: 16
Joined: Sun Aug 06, 2017 6:58 pm

Is there any way to store external content in a dll or container?

Post by rikintosh »

My project has several external files that cannot be embedded, as they are constantly modified, I would like it to be possible to put them in a container or dll, and that the multimedia builder could access them, how could this be done?

Nigg
Posts: 74
Joined: Thu Apr 14, 2011 2:10 pm

Re: Is there any way to store external content in a dll or container?

Post by Nigg »

just use <SrcDir> and place them with the MMB executable

rikintosh
Posts: 16
Joined: Sun Aug 06, 2017 6:58 pm

Re: Is there any way to store external content in a dll or container?

Post by rikintosh »

I didn't want to have all these files lying around

Nigg
Posts: 74
Joined: Thu Apr 14, 2011 2:10 pm

Re: Is there any way to store external content in a dll or container?

Post by Nigg »

Why? Normally you place your programme in the programme files folder. It makes no difference whether there are files in the folder. Otherwise, you could also unpack them from a 7zip archive at runtime.

rikintosh
Posts: 16
Joined: Sun Aug 06, 2017 6:58 pm

Re: Is there any way to store external content in a dll or container?

Post by rikintosh »

because there are 1001 photos and text documents, small files generate fragmentation, all programmers know that. Windows uses dlls for this purpose, games use containers that store their thousands of files for the same reason.

Nigg
Posts: 74
Joined: Thu Apr 14, 2011 2:10 pm

Re: Is there any way to store external content in a dll or container?

Post by Nigg »

Well, fragmentation is practically irrelevant with today's file systems and data carriers. With an SSD, it is of little interest. Above all, look at how some programmes come along - e.g. everything based on Electron or Java. Nothing is "packed" there.

Besides, you don't pack photos or other large binary files in DLLs. Games use container formats mainly for textures, some of which are streamed directly or also unpacked. But the comparison is flawed.

dgilmour
Posts: 542
Joined: Fri Oct 22, 2010 11:29 am
Location: Moskva, Rusko

Re: Is there any way to store external content in a dll or container?

Post by dgilmour »

rikintosh wrote:
Thu Jun 17, 2021 6:19 pm
small files generate fragmentation, all programmers know that
They don’t care. ;)
You can create plugin that will merge and extract files from container. Or use zip as suggested, why don’t you?

rikintosh
Posts: 16
Joined: Sun Aug 06, 2017 6:58 pm

Re: Is there any way to store external content in a dll or container?

Post by rikintosh »

I'm not programming for a modern system, I'm programming for a 25 year old system where this is relevant.Zip would be just a container that I would need to take things out of in order to access them, to use a method like that, I could use a simple windows cab. I wanted something for direct access, like a folder.

dgilmour
Posts: 542
Joined: Fri Oct 22, 2010 11:29 am
Location: Moskva, Rusko

Re: Is there any way to store external content in a dll or container?

Post by dgilmour »

It wasn't relevant to fragmentation event 25 years ago.

As for reading data directly from container - for text files this can be done using variables, but how do you imagine loading of images directly to MMB from unknown (for MMB player) format? The data must be extracted to temporary bitmap file anyway, so you can go with "simple windows cab".

Nigg
Posts: 74
Joined: Thu Apr 14, 2011 2:10 pm

Re: Is there any way to store external content in a dll or container?

Post by Nigg »

If compression/decompression takes too much time/is undesirable, then I would recommend an image format like WIM. Mount the image at runtime and unmount it again. This can all be automated. Of course, it depends on the Windows version.

Otherwise, use a different image format and a tool that can mount them, e.g. ISO.

Post Reply