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

    • "Samsung is shutting down yet another app used by millions" I will fix the clickbait title for you, free-of-charge: "Samsung shutting down it's Max VPN app"
    • Microsoft brings Planner Agent to all Microsoft 365 Copilot users by Ivan Jenic Image: Microsoft Microsoft has announced that Planner Agent in Microsoft 365 Copilot is now generally available to all users with a Microsoft 365 Copilot license. Planner Agent is the latest addition in the string of AI features that Microsoft is implementing across virtually all of its products. The agent lets you manage tasks through natural language prompts directly inside Microsoft 365 Copilot. You can create and update tasks, check priorities, and get insights about current entries without leaving the chat interface. The general availability release comes with a handful of new additions on top of what was available during the initial rollout. A new plan picker lets you search and filter your plans by name, then update task names, statuses, due dates, or priorities through the agent. There's also a goals bucket now, which lets you group tasks under specific goals. This builds on the Goals view, a feature that was introduced as part of the broader Planner refresh that rolled out earlier. Image: Microsoft | Planner Agent in Microsoft 365 Copilot All AI-generated plans and tasks are created in draft mode by default, so you can review and approve changes before anything goes through. This is actually a thoughtful safety feature, because trusting AI to handle all your tasks without a human in the loop is usually a recipe for disaster. Having tasks initially saved as drafts is the best possible middle ground. Microsoft also says that not all tasks are executed equally. Simple tasks get processed quickly, while more complex ones, like building a plan from a Word, Excel, or PowerPoint file, are handed to a more capable model. Microsoft says this approach delivers the best performance, but it could also help with usage management, as you won't have to waste tokens on performing simple tasks. Planner Agent is available now across Teams, Loop, SharePoint, and other Microsoft 365 apps for anyone on a Microsoft 365 Copilot subscription.
    • To be clear I'm anti trump, the bigger point is why review this game at all?
    • Trillion dollar Microsoft has to reduce spending by hurting more people. Good job Microsoft. Good Job Asha.
    • That's a shame. The big Xbox reset when Phil and Sarah left and then Asha came on and brought a new team of executives, and all the layoffs last year and saying that the ABK merger wouldn't result in redundancies I am surprised they are calling for yet another reset and yet more layoffs.
  • Recent Achievements

    • First Post
      Cosminus earned a badge
      First Post
    • One Year In
      ThatGuyOnline earned a badge
      One Year In
    • 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
  • Popular Contributors

    1. 1
      +primortal
      500
    2. 2
      +Edouard
      194
    3. 3
      PsYcHoKiLLa
      125
    4. 4
      Steven P.
      87
    5. 5
      neufuse
      73
  • Tell a friend

    Love Neowin? Tell a friend!