I was wondering why I cannot just put all XNA dlls in the same directory as the game.exe, but I need to install that XNA redistributable?

if i try to run it i get an "assembly not found" error http://msdn.microsoft.com/en-us/library/shhcw6y9(v=vs.80).aspx even though that assembly (dll) is there in the same directory.


3 Answers 3


Well installers often do many other things than just copying files. For example XNA redist tries to install/update DirectX on a user computer to required version. I guess it can also write some required information to registry.

However, even if you can just copy XNA files with your game, that, most certainly, will violate license terms.

  • \$\begingroup\$ Yes you can only redistribute the redistributable not the separate XNA dlls that will violate the license. \$\endgroup\$
    – Roy T.
    Commented Oct 30, 2012 at 11:46
  • \$\begingroup\$ thanks for the info about the license. actually i am still interested as to why a game doesnt run without the redistributable, though all DLLs are in the same directory as the exe. \$\endgroup\$
    – clamp
    Commented Oct 30, 2012 at 13:05
  • \$\begingroup\$ @clamp see: "required information to registry" in the answer. \$\endgroup\$ Commented Oct 30, 2012 at 16:19

When you have a redistributable, it usually is for not sending the end user the complete engine you used, as the end user only need some specific files. For XNA is the same.


You can examine the contents of any MSI installation package using tools like less msiérables or MSI Viewer.

It's also possible to query via a script and the MSI API but it's non-trivial (Docs).

Just be aware that being able to see the contents doesn't give you any additional rights not already granted by the license.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .