Longhorn GUI framework runs on XP!


Recommended Posts

Source: http://www.dotnetguru.org/blogs/sami/index.php?m=200312#4

After many weeks trying to work with the duo avalon+indigo on longhorn, i finally decide to move all PDC bits and Avalon APIs on XP. According to Microsoft, it is impossible, Avalon only run on LH. But believe me, longhorn is horribly laggy and it is more convenient for me (and most people) to use one laptop instead of multiple box just for hosting avalon applications. In addition, those who want to demo or test Avalon would prefer to host it on XP.

So, i start a long tough task trying to port Avalon samples on XP, and you know what ? i finally succeed ! There are no words to explain how it's fantastic to see a Xaml GUI running in XP. Avalon perform better on XP than LH and there is no blocking issue, animation work great, codecs also, ... Now i come up with the big question : can i publish my work tru an article or Microsoft discourage such a thing ?

Response by Microsoft developer : http://www.simplegeek.com/

Link to comment
https://www.neowin.net/forum/topic/126469-longhorn-gui-framework-runs-on-xp/
Share on other sites

Source: http://www.dotnetguru.org/blogs/sami/index.php?m=200312#4

After many weeks trying to work with the duo avalon+indigo on longhorn, i finally decide to move all PDC bits and Avalon APIs on XP. According to Microsoft, it is impossible, Avalon only run on LH. But believe me, longhorn is horribly laggy and it is more convenient for me (and most people) to use one laptop instead of multiple box just for hosting avalon applications. In addition, those who want to demo or test Avalon would prefer to host it on XP.

So, i start a long tough task trying to port Avalon samples on XP, and you know what ? i finally succeed ! There are no words to explain how it's fantastic to see a Xaml GUI running in XP. Avalon perform better on XP than LH and there is no blocking issue, animation work great, codecs also, ... Now i come up with the big question : can i publish my work tru an article or Microsoft discourage such a thing ?

Response by Microsoft developer : http://www.simplegeek.com/

well i'd publish it and see what they say

from avalons architect, since it has been quoted that over in the lh forum:

One of the big new changes that isn't yet in the Longhorn builds is the new video driver model. Once that goes in, you really won't be able to run Avalon on XP. In addition when the desktop composition stuff gets turned on (it wasn't in the PDC handout build) there will be a tight dependency between Avalon and the Longhorn User32.

http://www.simplegeek.com/permalink.aspx/d...14-f7f359b9bb2d

Here as promised a small report of the manips that I had to carry out to do to work the stupid Avalon on XP. ?First of all, I left principle that the two environments LongHorn (LH) and XP were at the same level side build of the CLR. ?The two possessed in fact the v1.2.30703. ?Suddenly, if one considers that the assemblies lacking a side must be copied other, there remains the delta of the native DLL (arf, all would be so simple otherwise). ?I have therefore very used naivement my favorite tool "listdlls" (sysinternal) after to have created under Whidbey (LH) an application XAML classical (while using the wizard). ?Here the result on Longhorn:

Application1.exe pid: 1860 Command line: "C:\temp\test\Application1.exe"

Base Size Version Path
0x00400000 0x14000 0.00.0000.0000 C:\temp\test\Application1.exe
0x77ed0000 0x11f000 6.00.4051.0000 C:\WINDOWS\system32\ntdll.dll
0x79000000 0x33000 1.02.30703.0027 C:\WINDOWS\system32\mscoree.dll
0x77e00000 0xc3000 6.00.4051.0000 C:\WINDOWS\system32\KERNEL32.dll
0x77d80000 0x7c000 6.00.4051.0000 C:\WINDOWS\system32\ADVAPI32.dll
0x77c70000 0x79000 6.00.4051.0000 C:\WINDOWS\system32\RPCRT4.dll
0x76740000 0x11000 6.00.4051.0000 C:\WINDOWS\system32\Secur32.dll
0x76a30000 0x4b000 6.00.4051.0000 C:\WINDOWS\system32\SHLWAPI.dll
0x77c20000 0x3f000 6.00.4051.0000 C:\WINDOWS\system32\GDI32.dll
0x77cf0000 0x8c000 6.00.4051.0000 C:\WINDOWS\system32\USER32.dll
0x77bc0000 0x55000 7.00.4051.0000 C:\WINDOWS\system32\msvcrt.dll
0x79ab0000 0x36e000 1.02.30703.0027 C:\WINDOWS\Microsoft.NET\Framework\v1.2.30703\mscorwks.dll
0x7d000000 0x59000 8.00.30703.0027 C:\WINDOWS\Microsoft.NET\Framework\v1.2.30703\MSVCR80.dll
0x790b0000 0x378000 1.02.30703.0027 C:\WINDOWS\assembly\GAC_Neutral\mscorlib\1.2.3400.0__b77a5c561934e089\mscorlib.dll
0x79040000 0x5c000 1.02.30703.0027 C:\WINDOWS\Microsoft.NET\Framework\v1.2.30703\mscorjit.dll
0x76910000 0x110000 6.00.4051.0000 C:\WINDOWS\system32\ole32.dll
0x71880000 0x2a000 6.05.4051.0000 C:\WINDOWS\system32\UxTheme.dll
0x73f10000 0x5b000 6.00.4051.0000 C:\WINDOWS\system32\MSCTF.dll
0x76b00000 0x107c000 6.05.4051.0000 C:\WINDOWS\system32\shell32.dll
0x76360000 0xb000 6.00.4051.0000 C:\WINDOWS\system32\PSAPI.DLL
0x0ffc0000 0x2f000 6.00.4051.0000 C:\WINDOWS\system32\rsaenh.dll
0x3f550000 0x1ee000 6.00.4023.30521 C:\WINDOWS\assembly\GAC_Neutral\PresentationFramework\6.0.4030.0__a29c01bbd4e39ac5\PresentationFramework.dll
0x3eb50000 0x4a000 6.00.4023.30521 C:\WINDOWS\assembly\GAC_Neutral\WindowsBase\6.0.4030.0__a29c01bbd4e39ac5\WindowsBase.dll
0x3ec50000 0x19e000 6.00.4023.30521 C:\WINDOWS\assembly\GAC_Neutral\PresentationCore\6.0.4030.0__a29c01bbd4e39ac5\PresentationCore.dll
0x7a7f0000 0x1c2000 1.02.30703.0027 C:\WINDOWS\assembly\GAC_Neutral\System\1.2.3400.0__b77a5c561934e089\System.dll
0x04340000 0x30000 6.00.4023.30521 C:\WINDOWS\assembly\GAC_Neutral\WindowsUIAutomation\6.0.4030.0__a29c01bbd4e39ac5\WindowsUIAutomation.dll
0x043a0000 0xa000 6.00.3708.0000 C:\WINDOWS\assembly\GAC_Neutral\Microsoft.Windows.EventTracing\6.0.3708.0__365143bb27e7ac8b\Microsoft.Windows.EventTracing.dll
0x630b0000 0x198000 6.00.4023.30521 C:\WINDOWS\system32\milcore.dll
0x6d350000 0x19a000 6.00.4051.0000 C:\WINDOWS\system32\d3d9.dll
0x6d4f0000 0x6000 6.00.4051.0000 C:\WINDOWS\system32\d3d8thk.dll
0x77bb0000 0x8000 6.00.4051.0000 C:\WINDOWS\system32\VERSION.dll
0x76290000 0x24000 6.00.4051.0000 C:\WINDOWS\system32\WINMM.dll
0x3f450000 0x3a000 6.00.4023.30521 C:\WINDOWS\assembly\GAC_Neutral\PresentationCore\6.0.4030.0__a29c01bbd4e39ac5\PresentationCore2.dll
0x703f0000 0x6ec000 6.05.4051.0000 C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.200.0_x-ww_C803A40C\comctl32.DLL
0x70ae0000 0x7b000 5.82.4051.0000 C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_5.82.0.0_x-ww_8A69BA05\comctl32.dll
0x76890000 0x7e000 6.00.4051.0000 C:\WINDOWS\system32\OLEAUT32.DLL

Next, I copied stuck the complete catalog of the project under XP and (tried) to execute the Application1.exe. ?Well heard, that planted with an exception of non DLL found. ?Suddenly, to synchronize the all, here the manips that I carried out on XP:

Copy catalog C: \WINDOWS\Microsoft.NET\Windows of LH under XP (to the same place)

Merger of the catalog C: \WINDOWS\Microsoft.NET\Avalon XP and LH (wholesale, you copy all and in case of message overwrite you skippez)

Copy native files (here the key of the success) milcore.dll and WindowsCodecs.dll of LH on XP. ?This are the alone native files not having any are equivalent under XP. ?The others (ntdll, ole32, etc. ..) are (for the moment) rising compatible. ?This that wants to say that Avalon does not use (for the moment) no native function no existing on XP. ?I want to say by there, in a DLL known. ?In order not to to have to modify the files MSBuild "standard" (WindowsApplication.target being located under Microsoft. NET\Windows) I had to put in GAC the principal managed DLL used by Avalon: n : PresentationFramework.dll,WindowsBase.dll,WindowsUIAutomation.dll,PresentationCore. ?

Last very important thing. ?MsBuild possesses a custom Task that takes care of the generation of the code behind of the files Avalon. ?Suddenly, it is necessary for you also to put in GAC a very important DLL: PresentationBuildTasks.dll and to copy it in Microsoft. NET\Windows if this is not the case. ?Once you did all that, download the following zip, do you entertain to modify the file Windows.xaml and then done "MsBuild" to test the all. ?In less than 3 seconds, the ihm is reg?n?r?e and the execution is almost instantaneous. ?

I d?taillerais in another post the hack of Whidbey for be able to use all attending them Longhorn under Whidbey XP: -). ?A must. ?

from freetranslation, i hope i dont get a warning for posting that (><) but the link it refers to at th end is

http://www.dotnetguru.org/downloads/AvalonXP.zip

The sidebar is part of explorer.exe, I think the explorer.exe in Longhorn has massive linking to a zillion other Longhorn DLLs, meaning that even if you have Avalon you won't be able to have the genuine sidebar in Windows XP. However, I'm sure someone could write an Avalon-powered sidebar for Windows XP. :-)

What the hell is Avalon, what does it look like and what does it do?

1. Avalon is the graphics, display, and forms (windowing) engine for Longhorn. It is written in managed code and is meant to be used by other managed code. Avalon replaces GDI+ and Windows Forms technologies.

2. What Avalon does for the developer is makes it easier to make richer user interfaces. What it means for you is you'll find applications with richer, less bug-ridden user interfaces.

3. Avalon also provides a system called XAML. XAML is eXtensible Application Markup Language, and is an XML dialect for defining a user interface. You link the XAML file to a code-behind file, which is a VB.NET or C# file that defines the code that is activated when an event is triggered (e.g. clicking a button, selecting an item in a listbox, etc.).

4. Avalon doesn't really have a look. Build 4051 has an alternate look (view here) that appears in applications written in XAML, however this is most likely Avalon using a different DLL to render UI widgets which in turn has different graphics than the active theme (e.g. Slate).

visually ultragrid looks like crap. the amazon application presented at PDC would be a better example of avalon. i'd link a picture of it, but the site it was on is down. trying to find a mirror.

<edit>

well the next best thing i found to the amazon thing is a crappy video

http://www.hanselman.com/blog/content/binary/CIMG0701.AVI

Edited by ForkliftDude
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • What people who support this position of LibreOffice do not understand is that EuroOffice is not made to appease the open source enthusiasts (I am also one) and evangelists. EuroOffice was made because some European companies wanted independence from Microsoft Office Suite, which is something installable on your computer. This move to independence was pushed by public institutions and governments in Europe, as well. Using a proprietary FORMAT as default, does not make you dependent on MS. The actual program does. A format can be changed with a simple update in the future in a dystopian world where MS would manipulate the format to lock others out. However, using MS Office proprietary format, guarantees that all the current documents used by companies, organizations, institutions, etc, will be compatible with EuroOffice and the suite will have the best chances at adoption, especially by slow moving organizations like governments and the public sector. It is as simple as that. For the same reason, even the UI is incredibly similar to MS Office. For the same reason (adoption) the choice was made to be open source. Not because EU particularly loves open source ideologically, but because it gives the best starting point to create trust in the project and amass developers and contributions to the project quickly, to catch up with proprietary projects like MS Office. I don't understand how people don't realize it.
    • How old is this tip? Seems 15-20 years old? Processor states for the CPU under Windows power options has been a thing for a long, long time. It certainly isn't new or hidden... Also, with laptops it doesn't make any difference what OS you are running, all of them are configured for battery longevity over performance, for obvious reasons.
    • I can't believe Starmer is still there...his party lost so big. He's a stubborn coot, but this is largely unenforceable, so I would imagine he'll be resigning soon. A key here is for parents to buy their kids phones sans Internet access--and set up the Internet at home, where mom and day can, you know, act like parents instead expecting the government to raise their kids.
    • EA launches in-game advertising platform for brands to "connect with audiences" by Pulasthi Ariyasinghe The gaming giant Electronic Arts is exploring more ways to inject real-life brands into its games. Announced today as EA Advertising, the new platform is attempting to make it easier for brands to reach out for deals with the company and put their products inside titles like EA Sports FC, Madden, NHL, Skate, or The Sims. EA revealed that its EA Sports side of the company brings in "hundreds of millions of players across console, PC, and mobile" every year. Fan engagement of these titles was also touted as being "extraordinary," with 23,000 NFL seasons worth of games being played in Madden NFL daily, while EA Sports FC sees over a billion matches a day. “Players come to EA’s games and live experiences every day to play, watch, create and connect,” said David Tinson, Chief Experiences Officer at Electronic Arts. “That gives brands a meaningful opportunity to show up in ways that add value and respect the player experience, while maintaining authenticity in the worlds our teams are building. With EA Advertising, we’re helping brands become part of those moments in ways that are relevant and built for players.” Using the new program EA Advertising, brands will be able to inject their products into games in real-time via dynamic placement. EA says partners will have access to everything from stadium signage in sports games and targeted adverts to in-game content custom-made for the brands. These are described as additions designed to "enhance, not disrupt" experiences. "In these interactive gameplay environments, brands become part of the game itself, reflecting how players engage with advertising in real-world contexts," adds the company "Brands can activate across live environments, tailoring placements to meet campaign objectives, and update campaigns with ongoing optimization informed by aggregated engagement insights." Current real-world brand partnerships EA has built into its games include Visa (EA Sports FC and College Football), Lowe's (EA Sports FC, Madden NFL, and College Football), Red Bull (EA SPORTS FC), Xfinity and Peacock (EA SPORTS FC), and Mountain Dew’s (College Football).
    • Will be surprised if there isn't a new ver of youtube just for labelled educational content
  • Recent Achievements

    • Week One Done
      Jeroen Wilms earned a badge
      Week One Done
    • Week One Done
      rolfus earned a badge
      Week One Done
    • One Month Later
      Leroy Jethro Gibbs earned a badge
      One Month Later
    • Conversation Starter
      flexorcist earned a badge
      Conversation Starter
    • One Month Later
      AndreaB earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      512
    2. 2
      +Edouard
      205
    3. 3
      PsYcHoKiLLa
      136
    4. 4
      ATLien_0
      91
    5. 5
      Steven P.
      85
  • Tell a friend

    Love Neowin? Tell a friend!