Does Microsoft require third party .NET applications to meet any minimum standards for things like application security or code quality?

  • @DocBrown Unless I seriously misread it, this question seems answerable enough as is.
    – Adam Lear
    Commented Sep 3, 2011 at 16:03
  • @Anna Lear: after reading the answers, I suspect I finally got what the OP meant - nethertheless the whole question seems to very absurd (so absurd that I was believing the OP must have meant something different). What should Microsoft do when I write a .NET application which does not meet any standard - sue me?
    – Doc Brown
    Commented Sep 3, 2011 at 16:59
  • 3
    @Doc There are platforms that exercise tighter control over application quality, so I can see how a question like this would come about. It may be naive but it's not stupid, if you know what I mean.
    – Adam Lear
    Commented Sep 3, 2011 at 17:12
  • 1
    @Anna: well, if the OP meant "does MS require certain standards for your .NET apps for Windows Phone when you want to sell it through their appstore / marketplace", that would have make sense. But that was not the question, and since the OP is not not going to clarify so far, we can only guess.
    – Doc Brown
    Commented Sep 3, 2011 at 17:34
  • 1
    To be clear, Is your question concerned about the warning windows 7 give while installing 3rd party applications ?? Commented Sep 3, 2011 at 17:44

3 Answers 3


Microsoft does not impose any minimum quality or security requirements on the applications built on the .NET on the desktop and on the web.

We all want applications to be secure and of high quality, but there is no certification process for desktop and web .NET applications. It is up to individual developers and their employers (if any) to ensure quality.

The .NET platform also extends to the mobile market and there Microsoft has application certification requirements that a Windows Phone application must meet in order to be listed in the Windows Phone Marketplace. According to that page, the core requirement categories are:

  1. Reliability;
  2. Efficient use of resources;
  3. Lack of interference with other phone applications;
  4. Absence of malicious software.

For games developed on the XNA platform, there are different standards for indie games and professional ones. Indie games go through a community-driven peer review before they can be published on XBox Live. I can't find a link to a description of the process major game releases go through, but from my combined developing and gaming experience I imagine it is also pretty rigorous.


You may be confusing the idea of Microsoft's ownership of the .NET platform with control of that platform. Although Microsoft can direct and modify the platform itself as they see fit, they do not exercise control or claim rights over any software written to target the platform. If they did, it would be platform suicide--few third-party software vendors would willingly write code that Microsoft could then "veto."

The same is true of the Java platform: Oracle controls its future direction, its development, and its core features, but third-party developers create software to run on the platform independently of Oracle.

  • It doesn't seem to me like iPhone and iPad development has suffered too much from Apple's "platform suicide" of being able to "veto" any application developed for them.
    – user
    Commented Sep 3, 2011 at 17:41
  • The iPhone and iPad are specific, very popular consumer devices. You can't develop for them without targeting Apple's closed platform. PC and server software is a different issue entirely; it's often written for higher stakes, by larger companies, targeting different markets.
    – asthasr
    Commented Sep 3, 2011 at 21:09

Microsoft itself has common guidance on how secure your code should be. For starters, there is a Microsoft Security Development Lifecycle (SDL). The MS SDL also contains further guidance to fulfill common compliance such as HIPAA.

Visit Microsoft SDL: http://www.microsoft.com/security/sdl/default.aspx

Code quality in .NET can be achieved if you meet common guidelines for good codes (taken from Microsoft's best practices):

  • Secure by default
  • Secure by design
  • Secure in deployment

More on this: MS SD3 Video

But the best way to implement these are by practising these into everyday habits of developing software, especially when writing codes.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.