How can I use several windows by Ribbon?

Can I use the Windows Ribbon UI on Windows XP? how?

  • I understand from reading http://blogs.microsoft.co.il/blogs/arik/archive/2009/09/03/windows-ribbon-for-winforms-part-1-introduction.aspx that the http://msdn.microsoft.com/en-us/library/dd316910%28VS.85%29.aspx is a COM object in Windows 7, and the http://windowsribbon.codeplex.com is just a .NET veneer around that, to allow the Ribbon UI to be used in Windows Forms applications. I've been successful in implementing a Hello World Windows Form app that employs this wrapper: It is running on my development machine, which is Windows7. Questions: Will this "hello, world" application run on Vista? XP? Do I need to download something onto those machines in order to make that happen? Is there a way to specify the Windows Ribbon UI components as a pre-requisite, in an MSI installer? Thanks Browsing around I found http://msdn.microsoft.com/en-us/library/dd742706%28v=vs.85%29.aspx, which is the DLL on Windows7 that delivers the Ribbon UI. It lists these as minimum supported clients: Windows 7, Windows Vista with SP2 and Platform Update for Windows Vista how would I check for that in an MSI ?

  • Answer:

    Best I can tell, you are taking on a dependency that won't work on Windows XP. This doesn't seem to be a redistributable component ( although I will admit hacking on a VM trying to see if I could transplant it into an XP machine ). Since it isn't redistributable, I'm not sure there's any point in doing a search in MSI as you can just rely on checking the OS Major version ( Win7 ).

Cheeso at Stack Overflow Visit the source

Was this solution helpful to you?

Other answers

You are free to use a Ribbon UI wherever you like (subject to http://msdn.microsoft.com/en-us/office/aa973809; which basically asks that you don't make a half-assed version). There are companies that created their own Ribbon controls. Some of those implementations (i.e. Microsoft's Windows Ribbon Framework) only work on Windows 7 or Windows Vista (with a download installed first). If you want to check that the Windows Ribbon Framework is available on the client machine, try to create a UIRibbonFramework object: IUIFramework* pFramework = NULL; HRESULT hr = ::CoCreateInstance( CLSID_UIRibbonFramework, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pFramework)); if (FAILED(hr)) { //Ribbon not available - fallback to something else return; }

Ian Boyd

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.