Skip to content
| Marketplace
Sign in
Visual Studio>Tools>MakeFriendAssembly
MakeFriendAssembly

MakeFriendAssembly

Friedrich_Brunzema

|
542 installs
| (0) | Free
Visual Studio 2013 Extension that easily allows establishing friendship relationship between c# projects
Download

Toronto, January 2015
Friedrich Brunzema

MakeFriendAssembly – Getting Started Guide.

Introduction

The MakeFriendAssembly extension is designed to make it easier to establish friendship relationships between assemblies allowing access to internal types of the befriending assembly.

Compatibility

Tested on Visual Studio 2013 only for now.  Have not tested with Visual Studio 2015. Probably won’t work with VS 2010, VS2012 (not tested).

Installation

There are three options to install the extension

  1. (Preferred) Installation is through the Visual Studio Gallery. Search for MakeFriendAssembly.
  2. Use GitHub .vsix installer. The GitHub project has an Installer folder containing the MakeFriendAssembly.vsix file.  Installing that file may get you a version that is work in progress.
  3. Get the source code (use a release tag), build it and then run the output MakeFriendAssembly.vsix file.  You need the Visual Studio Extension SDK (free) and Visual Studio 2013 to build the project.

Source code

Source code for the Extension lives on https://github.com/brunzefb/MakeFriendAssembly.  Feel free to fork. You can also send me a pull request through github if you have bug fixes/enhancements.

Support/Feedback

If you find a bug, please add it to the issue tracker on github. https://github.com/brunzefb/MakeFriendAssembly. You also can email me at brunzefb@gmail.com, please put MakeFriendAssembly in the subject line. I will only respond if an issue has been created. The extension generates comprehensive logs info stored in C:\ProgramData\MakeFriendAssembly\MakeFriendAssembly.log, so please attach the log file to the issue along with what you were doing at the time.

License / Disclaimer of Warranty / Limitations of Liability

Software is provided under the Apache License 2.0 license.  It says that there’s no warranty, and that you are getting this MakeFriendAssembly extension “as is”, and that the author is not responsible anything that goes wrong as a result of you installing this software.

Version History

Version 1.0 - January 2015 – Initial revision.

 

How do I know the install worked?

The Extension adds one new menu item to the Visual Studio Tools menu:

Make Friend Assembly

In order to use the “Make Friend Assembly”, you need to have a solution with at least two C# projects.  Only C# is supported at this time.  With a solution loaded, execute the command.

Select the project that is giving access to its internal types in the first combo box.  The second listbox will then display the non-selected projects from the first listbox.  Check the checkboxes of the assemblies you wish to give access to, and click OK. The modified AssemblyInfo.cs file is opened by the extension.

The AssemblyInfo.cs of the “giving” assembly is modified to add the InternalsVisibleTo() statement. The extension supports both “strong-named” and non-strong named friendships.

Note: For things to work, your AssemblyInfo.cs files must be named “AssemblyInfo.cs”. There is no scanning/parsing of AssemblyInfo.cs files, new InternalsVisibleTo() statements are added regardless of existing InternalsVisibleTo() statements.

 

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft