views:

186

answers:

2

Hello,

I have an application that consists of several .dlls, .libs, .pyd (python library), .exe, .class-es.

What is the best practice in the deployment process?

I plan to put .dlls - managed into GAC and unmanaged into WinSxS folder.

What should I do with .libs, .exe, .class and .pyd?

Is it ok to put it to

/ProgramFiles/ApplicationName/bin
/ProgramFiles/ApplicationName/lib
/ProgramFiles/ApplicationName/java
/ProgramFiles/ApplicationName/python

?

Thanks

Tamara

+2  A: 

The current convention seems to be

"/ProgramFiles/YourCompany/YourApplication/..."

As for how to structure things under that folder, it is really dependent on what your application is doing, and how it's structured. Do make sure to store per-user information in Isolated Storage.

C. Ross
For those too lazy to go to the link, Isolated Storage == "...<user>\Application Data" folder on Windows systems.
tgray
+1  A: 

I agree that /ProgramFiles/CompanyName/AppName is the convention. But you might also have to look at who will install the application. More and more users are no longer given admin rights on their Windows box at work, so they can't install under ProgramFiles. So depending on your target users and how you envisage them getting your application, you might want to install it in a location they can write in (like the user's AppData).

Matt
If the users is trying to install something in the corporate environment without going through the sysadmins ... you will end up with many angry sysadmins.
C. Ross