Sure its possible (assuming no drive encryption) but I know of no one trying to make it work.
Installing an application is nothing special, really. Its the obfuscation from the user that makes it appear magic.
Basically, what would need to be done:
- Capture all file writes
- Capture all Registry changes
Linux can read an write to NTFS, so you could capture all file creations and manually copy these to the write places on the Windows drive, likely at C:\Program Files\ApplicationFolder\
and maybe some others like C:\Users\Public\Desktop\
and C:\ProgramData\Microsoft\Windows\Start Menu\Programs
Once all the files are in place, you just need to tell Windows what it does, where its installed and modify all that fun stuff.
You need to add an uninstall string in Add remove programs (I detailed some of that here)
But to do that, you need to load the hive for the machine. Some linux based utilities already can do this (Password reset disks for example) You would need to expand that functionality to many new keys.
Possible keys that you might need to add to:
- extentions: What to do with a new file type
- Path variables
- Enviroment variables
There is not a single approach to install an application and what files registry keys it may touch, so every install would have to be independently captured and converted to do what you wish.
TL;DR
It is possible, but there is nothing on the market that does this. It would not be a simple task to do this reliably.