It doesn't make sense to register the extender provider for all project types.
- Project types may or may not be backed by MSBuild.
- Project types may or may not have a project file (Web Site projects do not have a project file).
- Project types may or may not produce executable output. An example of the wide variety of project types, you have *.wixproj, *.ucproj, *.javaproj, *.shfbproj, and many more.
Rather, you need to register your extender provider for the project systems you know it supports.