Jump to content

- - - - -

AIM - use mono to run on system without .NET?

  • Please log in to reply
2 replies to this topic

#1 misty


    Gold Member

  • Developer
  • 1035 posts
    United Kingdom

Posted 18 June 2019 - 04:13 PM

Is it possible/viable to package mono for use with aim_cli.exe, ArsenalImageMounter.exe, ArsenalImageMounterMountTool.exe, etc - avoiding the need to install .NET 4.*.

I had never heard of mono until recently stumbling across iSCSI Console. Tal Aloni has released a mono package for use with his iSCSI Console - iSCSI Console has a .NET 2.* dependency.

Using Tal Aloni's mono (see here) I was able to run iSCSI Console in Windows XP without .NET installed. And in Windows 8.1 without .NET 2.* installed.

Any thoughts?

Alternatively would it be possible/viable to package mono to somehow access the discutils library using aim_ll.exe?

I ask this having no comprehension of the difficulties involved. It's so far beyond my knowledge and technical abilities that I would not even know where to start.



#2 Olof Lagerkvist

Olof Lagerkvist

    Gold Member

  • Developer
  • 1420 posts
  • Location:Borås, Sweden

Posted 18 June 2019 - 04:35 PM

I am not sure if aim_cli.exe and the others would work with mono. Could be worth trying of course. But these applications have lots of native calls and shared memory between the .NET world and native world and from what I have seen about that in the past, there could be problems with mono.


Another approach if .NET Framework 2.x/3.x is available but not 4.x (such as Windows Vista or 7 without any additional frameworks installed) is to use devio.exe with the additional files iobridge.dll (to load a .NET 2.x/3.X dll) and DiscUtilsStreamer.dll (to open an image as a .NET stream through DiscUtils.dll).

devio --dll=iobridge.dll;dllopen -r shm:objectname DiscUtilsStreamer.dll::DiscUtilsStreamer.ClassFactory::OpenDiskStream::C:\diskimage.vhd 0

(Notice that when using devio.exe with AIM instead of ImDisk, the last 0 parameter is recommended to avoid devio.exe parsing any partition table and let Windows handle that instead.)


More about devio.exe with DiscUtils.dll using .NET 2.x here: http://reboot.pro/to...et-20/?p=172072


Yet another approach is obviously to use the libyal libraries directly with devio.exe instead of using DiscUtils.dll. In most cases I would say they are sufficient for mounting vhd, vhdx, vdi, vmdk etc kind of images.

  • misty likes this

#3 misty


    Gold Member

  • Developer
  • 1035 posts
    United Kingdom

Posted 18 June 2019 - 05:40 PM

Thanks for the feedback/information. I missed the DiscUtils with .NET 2.0? topic when researching AIM - more experiments will no doubt follow.
  • Olof Lagerkvist likes this

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users