Video Screencast Help
Search Video Help Close Back
to help
Not able to make it to Vision this year? Get a sampling in the Best of Vision on Demand group.

gac_msil

Created: 27 Sep 2010 | 4 comments
Tom.J's picture
0 0 Votes
Login to vote

Hello,

Can someone tell me what is the correct way to install files in the GAC_MSIL folder.
I found this:
---------------------------
Anything captured in GAC Native images folder- they are dot assemblies registered with ngen.exe - native imgaes are created for faster execution of assemblies. One needs to delete these files from captured wsi and use ngen in custom action to create native images for these assemblies.
-------------------
But i don't understand this fully.
Do i need to put the files in a folder under the 'program files' and then use the 'Generate native-code version during installation' ?? or do i need to put them in the GAC folder and use the 'Generate native-code'  from there?
Thanks a lot
Discussion Filed Under:

Comments

EdT's picture
28
Sep
2010
0 Votes 0
Login to vote

Book

I am no expert on GAC packaging, but the book I would recommend as a reference for .NET packaging is here:

http://www.amazon.co.uk/Definitive-Guide-Windows-Installer/dp/1590592972

If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.

Tom.J's picture
29
Sep
2010
0 Votes 0
Login to vote

HI Edt,I have that book

HI Edt,

I have that book right here, but in it there is no solution for repackaging an application that contains files in these folders.

I just need a sollution how i can put the files on a correct way in that folder with wise package studio.
More people must have repackaged applications that put files in this folder.

I don't think leave them there in the package is the right solution.
Now i  tried to leave the files just there, but it triggers a repair even if i just try to open the folder under start->run.

Moving the GAC_MSIL folder to the 'global assembly cache' within wise fix my repair. But then the GAC_MSIL folder exist under \windows\assembly and on the root of my drive.

JohanH's picture
30
Sep
2010
0 Votes 0
Login to vote

I think you are mistaken

I think you are mistaken here. GAC_MSIL is one of the folders in C:\Windows\assembly that contains assembly files, NOT native images. In Wise, just drop assembly files in the Global Assembly Cache folder and they will be installed to the right place (don't try to copy the GAC_MSIL folder, only files).

There is no need to generate native images, unless there is a specific need for it. Native images (if they exist) are located in the NativeImages_xxxx folder within the GAC. They should NOT be installed, but instead generated by ngen, but as I said, you should not do it if you don't know that you have a need for it.

The native images are only meant for speeding up execution of assemblies and are not needed for them to work. We have made experiments with native images for one of our applications, but we could not find any noticable performance improvements.

Tom.J's picture
30
Sep
2010
0 Votes 0
Login to vote

Yeah you right JohanH.

Yeah you right JohanH. I Made a mistake indeed the GAC_MSIL has nothing to do with generatting a native code.

I tried your solution to put all the assemlbies in the global assemlby cache and it seems to work. Need to test the application.