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

    • Sandboxie Plus 1.17.8 / Classic 5.72.8 by Razvan Serea Run programs in a sandbox to prevent malware from making permanent changes to your PC. Sandboxie allows you to run your browser, or any other program, so that all changes that result from the usage are kept in a sandbox environment, which can then be deleted later. Sandboxie is a sandbox-based isolation software for 32- and 64-bit Windows NT-based operating systems. It is being developed by David Xanatos since it became open source, before that it was developed by Sophos (which acquired it from Invincea, which acquired it earlier from the original author Ronen Tzur). It creates a sandbox-like isolated operating environment in which applications can be run or installed without permanently modifying the local or mapped drive. An isolated virtual environment allows controlled testing of untrusted programs and web surfing. Sandboxie is available in two flavors Plus and Classic. Both have the same core components, this means they have the same level of security and compatibility. What's different is the user interface the Plus build has a modern Qt based UI which supports all new features that have been added since the project went open source. The Classic build has the old no longer developed MFC based UI, hence it lacks support for modern features, these features can however still be used when manually configured in the Sandboxie.ini. Sandboxie Plus 1.17.8 / Classic 5.72.8 release notes: Added added DisableCustomTitleOpt=[process,][y|n] to allow [#] sandboxie title markers on custom-titlebar windows (Delphi VCL, Qt, Electron) that were previously skipped to prevent DWM repaint CPU loops #5387 Changed updated bundled ImDisk driver to 3.0.2 #5419 Fixed fix Suppress logs for expected non-user SIDs #5422 SbieSvc.exe: SBIE2218/2219 error when run program as administrator #5417 fixed explorer.exe crashes in Application Compartment when Huorong Security is installed #5423 Download: Sandboxie Plus (64-bit) | 23.5 MB (Open Source) Download: Sandboxie Classic (64-bit) | 3.0 MB Links: Sandboxie Website | GitHub | ARM64 | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Hello, Christian Maas' XVI32 is a nice (and very small) hex editor. Speaking of hex editors, many years ago a colleague and I who both worked at Tribal Voice managed to edit a copy of the company's PowWow instant messaging client to make it behave better now that all of its lookup servers and other server-side tech was gone.  The program didn't support NAT (RFC-3022 was introduced in January 2001, the same time Tribal Voice was shuttered), but it still worked okay if you manually set up port-forwarding on your router.  The server at http://powwow.jazy.net/ hosts a copy (usual warnings about downloading and running untrusted code from random internet servers apply). I occasionally use some tools like Funduc Software's Search and Replace and Application Mover when I need to make mass-edits to text-based files or move programs with a hard-coded installation directories, respectively.  When I need to figure out the exact LCD panel inside of a laptop, EnTech Taiwan's Monitor Asset Manager is my go-to tool for that purpose. JD Design's website (now hosted on github.io) has a number of interesting freeware and shareware utilities.  I used to use their TouchPro utility to set the file timestamps on software I was mastering to match its version number (e.g., version 3.00 of a program had all of its files dates set to 3:00AM, and so forth). Karenware has a number of interesting freeware utilities, too. Regards, Aryeh Goretsky  
    • I still use HexChat! Not really as ancient as the 1994 AutoCAD above my post, but I have never found anything better to replace it. Yes we still operate an IRC server https://www.neowin.net/irc/ 😛 
    • At work we still have a couple of people that use a version of AutoCAD LT purchased in 1994. This predates Windows 95 and works fine on versions of Windows up to XP. Its long since run in an locked down isolated XP VM, accessible via RDP. I did install LibreCAD for them, however they said it was just too different to get to grips with. In all fairness one of them is now 75 and the other is almost 60.
    • On my music making (non internet) PC Sony Acid Pro 7.0 Adobe Audition 2015 Korg Legacy Collection Windows 7 SP1
  • 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
      509
    2. 2
      +Edouard
      198
    3. 3
      PsYcHoKiLLa
      138
    4. 4
      ATLien_0
      90
    5. 5
      Steven P.
      82
  • Tell a friend

    Love Neowin? Tell a friend!