aardvark-platform/aardvark.base

Aardvark.Init x86 corrupts native libs

luithefirst opened this issue · 5 comments

When starting an app with x86, Aardvark.Init will extract x86 native libs. After switching to x64 Aardvark.Init will see that the libs are there and fail loading them...

We should either separate x86 and x64 or add some other additional check to prevent this.

If we don't want to support x86 we should write a BIG warning all over the console.

still valid with new netcore3.0 mechanism?

if the netcore3.0 mechanism also extracts to aardvark-native and does not separate x86 and x64 then yes

for netframework and netcoreapp2.0 apps the same old mechnanism is used and still broken
you can go to the rendering solution and set 00 - HelloWorld (net471) to "Prefer 32-bit" and run it. if x64 was run first the aardvark-native libs will not be overwritten and the x86 app will crash. Otherwise, if changing back to x64 it will not work because the x86 dlls are still in the aardvark-native directory and will not be overwritten

Nope, we forgot about that. I'll look into this, but 32bit compat is broken anyway for almost all aardvark components...

corruption fixed by 640d70f as far as i can tell. shall we throw badarchitecture exception in rendering?

I thought about that too...
Maybe even in Aardvark.Init (devil, etc. will most likely fail on 32bit anyways)