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
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:
- How do I make Yahoo my default email on Windows XP?Best solution by Yahoo! Answers
- Locked out of Windows XP, how do I get back in?Best solution by Super User
- How can I restore my Windows XP toolbar?Best solution by Yahoo! Answers
- How do I open my HP director with my windows XP?Best solution by answers.yahoo.com
- How can I use Windows Live Messenger?Best solution by Answerbag.com
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
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.