• View Communities
    • Citrix Developer Network
      The place for unfiltered straight talk on Citrix products. Blogs, code downloads, best practices, APIs, and more can all be found here.
    • Citrix Ready Community Verified
      Does it work with Citrix? Application compatibility questions are a thing of the past with the new Citrix Community Verified site.
    • Blogs
      Learn the latest from the Citrix employees who are building application delivery infrastructure technologies.
    • Blogosphere
      The Citrix Blogosphere is a window into the thousands of conversations taking place about Citrix and Application Delivery.
  •  Sign In
The Citrix Blog
Blogs for tags 'threat' and 'protection'

Permalink | Twitter Post to Twitter | Comments (0) | Views (1087) |

posted by Vinny Sosa

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (2818) |

posted by Peter Schulz

I'm pleased to announce that Workflow Studio 2.0 is now available:

Download Workflow Studio 2.0 (MyCitrix login required)

This release has a number of great new features and is a seamless upgrade from version 1.x. Here are some of the key new features:

  • Native XenApp activity libraries (and many other additional activities)
  • Remote runtimes
  • Simplified management interface
  • Enhanced security features
  • Simplified installation and configuration
  • Improved SDK
  • Simplified workflow Designer
  • Globalization support

I will post some more blogs over the next few days with more details on the above features and will also be updating the CDN site with many new articles, so subscribe to the Workflow Studio blog and head over to the Workflow Studio CDN site and subscribe for updates on CDN as well.

Feel free to leave feedback in comments or email me directly.

Workflow Studio will be included with XenApp Feature Pack 2

Learn more about Citrix XenApp 5 Feature Pack 2

Follow XenApp on | | |

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (4) | Views (4759) |

posted by Peter Blum

Since announcing Project Independence with Intel at the start of the year and announcing our XenClient local virtual desktop solution at our Synergy show in May, we have been absolutely bombarded with questions and interest in plans for this amazing new bare metal Local Virtual Desktop platform. So we built XenClient Central, a Citrix Community site dedicated to keeping you informed on the latest news, happenings, and developments around Citrix XenClient, our Local Virtual Desktop platform.  Come check it out!

XenClient Central

•             Subscribe to the XenClient Interest list

•             View the latest XenClient demos

•             Register for beta programs

•             Subscribe to feeds for news articles, blogs, and more

•             Join the XenClient Army twitter feed

Right now we're sharing code with a very limited set of close development partners and customers. But not to worry, later this year we plan to open up our beta program to a much broader audience so you can see firsthand the benefits of XenClient and how it connects into Citrix XenDesktop our virtual desktop delivery solution.  Be sure to visit XenClient Central and register with our XenClient Interest list and we'll make sure you're always in the know with the latest news and happenings.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1198) |

posted by Vinny Sosa

You might have seen my blog post on application virtualization with VM hosted apps and that of Harry Labana on the same topic. With this new technology planned for Citrix XenApp 5 Feature Pack 2, In previous versions on XenApp we've said we have "complete application compatibility" or the "broadest application compatibility" but as applications continue to evolve and change we need to introduce technology that continues to deliver on that promise. VM hosted apps lets us do that. If you haven't seen it, VM hosted apps let's you deliver virtual applications from centrally hosted Windows XP, Windows Vista or Windows 7 virtual machines.

What's interesting is that this feature makes XenApp the solution with the broadest number of options for delivering applications to users on any device in a seamless and high performance way. Check it out...

  • Way 1 & 2 - Deliver server-hosted apps from XenApp running on Windows Server 2003 and Windows Server 2008.
  • Way 3 - Deliver apps from XenApp directly to the user device via application streaming. This works great for Windows XP, Windows Vista and Windows 7 desktops.
  • Way 4, 5 & 6 - Deliver VM hosted apps from XenApp as hosted on centralized Windows XP, Windows Vista and Windows 7 desktops
  • Way 7 - Deliver server-hosted apps from XenApp running on Sun Solaris, IBM AIX and HP UX

Now you can certainly argue that we actually have 9 ways if you count the UNIX as 3 platforms. You can also argue that we have 4 or 3 depending on how you group them. But there is no arguing that XenApp gives you the most options for delivering applications to any user on any device in the most seamless and high performance way while ensuring the highest level of application compatibility. What's more if you consider the fact that we've already announced we're working on integrating App-V support into XenApp and the inevitable support for Windows Server 2008 R2, you can add 2 more ways to this stack. You might even say that since we also support the use of the RDP client as a fallback option for applications delivered via XenApp Web interface that adds another one. So, all in all I've mentioned 12 different ways of delivering apps via XenApp.

Now, you can argue that 100% application compatibility is a nice round number to use for marketing but you've at least got to agree that XenApp continues to remain pretty darned close. What's your opinion?

Check out the XenApp 5 Feature Pack 2 blog series

Follow XenApp on | | |

Download XenApp technology previews

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1158) |

posted by Jeff Gee

As more and more ISVs, IT organizations, resellers, integrators and consultants of all flavors become more aware and familiar with the new virtual appliance packaging capabilities in the DMTF VMAN initiative and the OVF capabilities Citrix is adding to its products, it is useful to identify some of the advanced capabilities of the Project Kensho OVF Tool.

New in the Project Kensho OVF Tool v1.3 is a variety of options aimed at making virtual appliance packages more feature rich.  As a packaged entity, the attributes of the virtual appliance are important. 

Attributes like encryption, compressing files, digitally signing and validating or verifying the content prior to import add tremendous value. 

For example, if an ISV wanted to offer his XenServer based virtual appliance as an OVF, and had concerns about tampering with the OVF xml, the ISV has the option to digitally sign the OVF file.  On import, the user can verify the signature, if the verification fails, this indicates a change to the file from what the ISV produced. ISVs also need to attach end user license agreement (EULA) information.  During import, EULA text is presented to the user to accept or reject.  The ISV has the ability to incorporate whatever text necessary to fulfill the EULA display requirement.

Another example is if an IT administrator must move a VM from one physical location to another and requires an export of the VM to do so.  The contents (virtual disks) of the VM are sensitive and the administrator must secure them.  The administrator can choose to create an OVF and encrypt the contents.  As part of the process, she would like the appliance in a single file format (OVA).  Using the Project Kensho OVF Tool, she has the flexibility to do this. 

On import, there are also a number of options for the end user.  Many are verification and validation whereas others enable the user with mapping the OVF's VM resources requirements (NIC, storage) to the resources available from the XenServer host.

Summing this up, we've produced an Advanced Features video to describe some of these options.

As we can see from these features, the world of advanced virtual appliance creation and consumption is quickly becoming very feature rich and enabling for all parties involved.   

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (906) |

posted by Robin Landes1

 


If desktop virtualization is not on your agenda yet, take a second look. CitrixLive! Secrets, Lies and VDI virtual event on October 13 now has the full agenda online. Citrix channel leader, Tom Flink will tell you why the desktop virtualization market is hot and how you can quickly capture this business in 2010. New opportunities are going to be announced that you don't want to miss - like how you can go from 15% penetration to 80% with one product sale and what that means in additional product and services revenue! Plus you'll receive access to a lot of new resources to make your desktop virtualization practice fast and easy to start, such as Best Practices, Key Plays, toolkits and more.

Sign up today for Secrets, Lies and VDI virtual event on October 13. Learn what you need to know about desktop virtualization and how you can capitalize on it now.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1542) |


Are you planning to attend Intel Developer Forum 2009 next week? If so, you will see Citrix in every corner of the event!

Stop by the Citrix booth (#501) next week at San Francisco's Moscone Center to see demos of our Citrix Delivery Center solutions. We will also showcase demos of Citrix XenClient, our joint collaboration with Intel to develop a local desktop virtualization platform.

In addition, Citrix will be featured in the Intel Virtualization Pavilion and Intel vPro Zone Communities. Within the Communities we'll showcase XenClient and also how Citrix XenServer leverages the benefits of Intel Xeon processors for Citrix XenApp and Citrix XenDesktop workloads. And as if that weren't enough, we will also have a demo of SR-IOV with Citrix XenServer at Intel's booth.

Citrix will also be featured within several breakout sessions at the event. Stop by the session "Hosted, Streamed, and Local Bare Metal Desktop Virtualization with Citrix XenDesktop and Citrix XenClient" on September 22nd from 3-3:50pm to hear Peter Blum introduce our desktop virtualization vision and discuss Citrix XenClient.

Also, Simon Crosby is participating in a cloud virtualization panel discussion alongside other industry-leading companies. This session is scheduled for September 22nd from 5-5:50pm.

In short...or maybe not that short...if you plan on attending the event, you'll have a lot of opportunities to meet with Citrix and learn how Citrix is working with Intel.

We look forward to seeing you there and we guarantee you won't be able to miss us! Learn more about Intel Developer Forum or register to attend here.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (1) | Views (2054) |

posted by Daniel Feller

Some of the questions I've received lately is how to design a large-scale, enterprise XenDesktop architecture.  We all can attest that most systems put into place become much more difficult to architect as the number of users increases.  I'm not talking about Citrix products, I'm talking about any product.  Which one do you think would be more difficult to design:

  • A 100 user (insert your own product here) environment
  • A 10,000 user (insert your own product here) environment
  • A 50,000 user (insert your own product here) environment

Most of you will probably agree that it gets quite a bit more difficult as the number of users increases.  And if we do a typical type of design, I would tend to agree, but I'm thinking we can simplify this so even the 10,000 and 50,000 user XenDesktop environment can be as easy as a 100 user deployment. 

Many of you are probably thinking, this guy is full of it, he is too pie-in-the-sky for me.  And when I first started thinking about this simplified architecture, I tended to agree. But as I've continued looking into this and discussing with other architects, I've come to the realization that I might be on to something here.  See for yourself in the following video.  I plan on posting additional videos around this concept in the future to show/demonstrate how it would work.  But for now, I bring to you the Pod concept (and don't forget to leave your comments) 

Daniel - Lead Architect

Follow my Blogs: http://community.citrix.com/blogs/citrite/danielf

Follow me on Twitter: @djfeller

Send Desktop Virtualization questions to: AskTheArchitect@Citrix.com

Watch previous Ask The Architect Videos at: http://www.citrix.com/tv/#video/1063 

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1389) |

posted by Rich Crusco

Citrix User Group Denmark session on Whats new in Provisioning Server. The Session was delivered by Henrik Poulsen from Citrix Consulting, and Henrik covered whats new and how does Provisioning Server fit into the scheme of a dynamic delivery center.

Dansk Citrix User Group Session om Whats new in Provisioning Server. Sessionen blev leveret af Henrik Poulsen fra Citrix Consulting, og Henrik afdækkede hvad der er nyt samt hvor Provisioning Server passer ind i det store dynamiske delivery center.

Click below to continue to Dansk Citrix User Group:
http://www.dkcug.dk

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (1) | Views (1275) |

posted by Rich Crusco

Citrix User Group Denmark session on XenApp Power and Capacity Management the feature with the upcoming feature pack two for XenApp 5.0. The session is delivered by Jacob Berg, Application delivery Consulting.

Dansk Citrix User Group session om XenApp Power and Capacity Management en kommende feature i XenApp 5.0 feature pack to. Sessionen blev leveret af Jacob Berg, Application delivery Consulting

Click below to continue to Dansk Citrix User Group:
http://www.dkcug.dk

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1041) |

posted by Rich Crusco

Citrix User Group Denmark GeekSpeak local at the first Meetup. The topic of the GeekSpeak was set to be Power management but we got around a bit. The Debate is in Danish.

Dansk Citrix User Group GeekSpeak Local ved det første Meetup. Emnet for debat var sat til at dreje sig om Power management men vi fik en god dialog og debat om omkringliggende teknologier.

Click below to continue to Dansk Citrix User Group:
http://www.dkcug.dk

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1340) |

posted by Jeff Gee

One of the more unique features about the Project Kensho OVF Tool v1.3 is its ability to manage Hyper-V servers. The Project Kensho OVF Tool can import OVF/VMDK from VMware products directly into Hyper-V servers as well as move content between Hyper-V and XenServer.

To assist with the understanding how quick and easy this is, we've produced a simple video that explains this process:

Some items to note with Hyper-V and XenServer compatibility:

  1. When moving Linux workloads around, if the XenServer derived Linux workload is paravirtualized (PV enabled), the workload will not function on Hyper-V. Use an HVM type of VM if the intent of the workload is for cross hypervisor compatibility between XenServer and Hyper-V.
  2. When moving Windows workloads around, Windows XP/Server 2003 and higher can be migrated between platforms without driver issues, e.g., one clobbering the other.

Share your experience and use cases on the forum.  Thanks for your interest in Project Kensho and the virtual appliance future of XenServer!

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1071) |

posted by Kyle Benson

Prove It!.... Didn't you hate hearing that as a kid?

Well, Prove It! is making a comeback as more IT shops want proof that virtualization tools work the way they are supposed to.

Now, we're making it easier for you to Prove It! to your customers. I've just posted up a couple of new Proof of Concept Guides that you'll want to have a look at.

Citrix Essentials brings advanced virtualization management and automation capabilities to both XenServer and Hyper-V environments, enabling customers to transform their datacenters into automated "delivery centers". These advanced management capabilities include automated high availability, dynamic workload balancing, Lab automation, dynamic provisioning for physical and virtual machines, and deep integration with leading storage platforms.

The Proof of Concept Guide for Lab Management provides an overview of how to successfully run a proof of concept involving the automated stage management component of Citrix Essentials for XenServer and Citrix Essentials for Microsoft ® Hyper-V™. With Citrix Stage Manager, customers can quickly provision and stage virtual environments enabling them to develop, test, and deploy applications with greater efficiency.

The Proof of Concept Guide for Automated Stage Management document provides an overview of how to successfully run a proof of concept involving the automated lab management component of Citrix Essentials for XenServer and Citrix Essentials for Microsoft ® Hyper-V™. With Citrix Lab Manager, customers can quickly provision virtual environments enabling them to develop test and deploy applications with greater efficiency.

Check them out at:

Lab Manager Proof of Concept: https://www.citrix.com/site/resources/dynamic/privateresource/Citrix_LabManager_PoC_Guide_5_5.pdf
Automated Stage Management Proof of Concept https://www.citrix.com/site/resources/dynamic/privateresource/Citrix_StageManager_PoC_Guide_5_5.pdf

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (1) | Views (1469) |

posted by Joseph Nord

I received an interesting inquiry recently.  Given my post on Never Deploy to XenApp Servers, how do you stop deploy from happening for hosted desktop?   Excellent question!

Here's the situation.  Happy XenApp Customer (they are all happy) who uses Application Streaming to deliver applications to their XenApp servers as well as stream to client, primarily for offline access.  The applications are published to the user as offline enabled and this works swell to trigger the deploy operation that is required to execute the application when disconnected from the corporate network and also works swell to not trigger Deploy in the XenApp hosted case.

Quick refresher on Deploy

The Deploy space is a COPY of all the needed stuff from the Application Hub, but it is local to the execution machine.  The Deploy space makes it possible for the streaming client to support application usage even when disconnected from the network.  The Deploy space is generally in \Program files\Citrix\Deploy and the execution cache space is generally in \Program files\Citrix\RadeCache. 

At runtime, the streaming client runtime fills the execution space as needed by copying content from the Application Hub - or if Deployed, from the Deploy space.  Other than one being remote and the other being local, the activity of the client is the same whether "offline" or "online".  Technically, "Deploy" enables streaming from one side of the hard disk to the other and this keeps life pretty simple from a programming standpoint.   I thought it up back in the Tarpon development and I'm still pretty happy with myself.

Deploy is automatically not done on XenApp Servers

It may seem like a good idea to Deploy to the XenApp Servers, but I have already squashed that myth and apparently did a good job there because the corollary, "Never Deploy to XenDesktop" has also been heard.

Back to the customer.  They have XenApp running good and are engaging XenDesktop.  Application Streaming is delivering the applications to the XenApp servers as well as to the end user machines (notebooks). 

Here's the thing that's not always obvious.  The streaming client KNOWS that Deploying to XenApp Servers is a bad idea.  If you publish an application to a bunch of users and offline enable the applications AND if you publish the applications to hosted execution, a single user can use both without triggering a Deploy on the XenApp server.  

If the user is running the application server side, the streaming client is still involved but it knows that it is running ON a XenApp Server, so it SKIPS the Deploy.  This is the right thing to do.  If the admin doesn't like that, they can still command a Deploy to occur on the server by directly calling the deploy utility, RadeDeploy.exe, but again, you shouldn't do that.

The problem

The customer is now engaging XenDesktop and have connected the hosted desktops to the App Streaming infrastructure from the existing XenApp configuration.  Here, the streaming client is running on the hosted desktop and ... when performing its app launch concludes that this is a client side execution and background copies down all the bits for offline execution. This is bad.

Here's a good write up on the percentage of space that is used for online vs. offline execution.

The point: Lots of disk writes start happening to copy the Deploy content down from the Application Hub to place them in the Deploy space where they will exist and get copied again into the RadeCache.  All of this is bad to the layers of cake.  We want to minimize disk WRITES.  Disk writes are backed up either by Xen/Other Virtual Machine manager or by Provisioning Services.  Either way, large writes by large numbers or users are bad.  Beyond being slow, these writes will occupy space in the per-user write back cache; which is discarded on logoff, so this whole thing will repeat on the next logon.  

The solution

The Deploy should not occur!  But it does.  In a "correct" world, the streaming client would be XenDestop aware as it is XenApp aware.  If running "hosted", don't Deploy!  We do not live in a correct world.  My initial guidance to the folks that asked me about this was "erase \program files\citrix\streaming client\radedeploy.exe".  All happy with myself because I KNOW that the streaming client shells to the utility to perform the deploy.

With the utility "missing", the streaming client will have no choice but to push on without the deploy.
Survey says.... didn't work. 

Instead of "pushing on", the streaming client declared failure and aborted the app launch.  Aargh.

Beautiful part of this is that I didn't have to actually try it.  Smart folks on the other side, all I had to do was keep coming up with ideas.  

Second round: Replace RadeDeploy.exe with a program that does nothing, but returns "success" return code.

Survey says.... Success!

The only utility I had handy to do this is one I wrote a very long time ago to use for remarking out RUN= statements from the Windows registry.  Source is included - please compile it yourself before putting in production.  For the programmers in the room, said program is "Hello world" minus the printf.  In the common image where the streaming client is installed, copy nop.exe to RadeDeploy.exe. 

Back to the Deploy activity

The streaming client "shells" to RadeDeploy.exe which is really "nop.exe", which returns 0 as RC.  With the Deploy "successful", the launch proceeds with no error, AND the Deploy never happens.  Perfect!

I see a future where the streaming client will be XenDesktop aware and skip the Deploy.  Until then, this technique may prove useful.  If you have other creative solutions to this problem, please share them here.

Next step is getting the RadeCache space available to everyone from a single source, read-only and fully populated at the get-go.

Joe Nord
Product Architect Application Streaming

Citrix Systems

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1270) |

posted by Rich Crusco

Registration is now open for this years Autumn 2009 CUGtech event in Geilo, Norway on Oct 7th through Oct 9th. It looks like there might also be a discount for the event by registering as a member.

Register here to participate at CUGtech Autumn 2009

  • You will have to pay directly to the hotel when checking out Friday, using creditcard or cash.
  • Register as a member now and get 50% discount for the membership valid thru 31/12-09.
  • Only members can attend Master Classes, and get the special member price for the conference.

Click below to continue to registration:
http://cug.no/cugtech-autumn-2009/register/

Here is a nice view of the Geek Wonderland where the event will be hosted.


Geilo, Norway

Click below to learn more about the event:

CUGtech Autumn 2009: http://cug.no/cugtech-autumn-2009/
Location: http://cug.no/cugtech-autumn-2009/location/
Transport: http://cug.no/cugtech-autumn-2009/transport/
Speakers: http://cug.no/cugtech-autumn-2009/speakers/
Agenda: http://cug.no/cugtech-autumn-2009/agenda/
Master Classes: http://cug.no/cugtech-autumn-2009/master-classes/
Register: http://cug.no/cugtech-autumn-2009/register

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (756) |

posted by Stephen Spector



The open source Xen.org community is proud to announce registration availability for the Xen Summit Asia 2009 event sponsored by Intel and Citrix China.
We are supporting 2 sites for this event - Chinese Registration (Chinese) and International Registration (English). All Chinese attendees should register at http://xen.linuxpk.com/and all International attendees should sign up at http://www.regonline.com/Checkin.asp?EventId=755219.
The Intel facility has a limit of 150 attendees so all Chinese attendees will register online and then be contacted at a later time for confirmation. International attendees will automatically be accepted to the event upon registration completion.
Event Details:

If you have any questions please contact me at stephen.spector@xen.org.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (1586) |

posted by Peter Blum

Thomas James (Intel) and I did a great podcast with Douglas Brown discussing how Citrix and Intel are working closely together to deliver Citrix XenClient the innovative Bare Metal Local Virtual Desktop platform. During this podcast we shared lots of great detail on the software and hardware technology behind XenClient and why people are so excited about this new Virtual Desktop technology. You can hear all about the collaboration with Intel and the Intel vPro technologies we are leveraging in the forthcoming product.

You can access the podcast on the DABCC site here.

Also you can always get the latest news on XenClient on our XenClient Central Community site.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (841) |

posted by Futoshi Baba

Motivation
I had an issue I have to investigate at the begining of 2009. Since W2K8 seems to have some enhancement regarding security consideration. This was an example in a case that WMI printer provider query, which is like "SELECT * FROM __InstanceCreation Event WITHIN 1 WHERE TargetInstance ISA 'Win32_Printer'" through WMI provider context from Application. This query led to perform SPOOLSS!EnumPrintersW() within spooler context with "NT AUTHORITY\SYSTEM". Unfortunately, As a resulf ot that, we came across the follwoing Event Log.
Implementation of TPrintProvider class introduced into win32spl.dll since W2K8 caused this.


EventSource: "SpoolerWin32SPL"
EventId: 4


Debug Log

THREAD 89b62710 Cid 0960.0b20 Teb: 7ffda000 Win32Thread: ff5dea50 WAIT: (UserRequest) UserMode Non-Alertable
898ba718 SynchronizationEvent
89a177b8 SynchronizationEvent
IRP List:
89a50310: (0006,0220) Flags: 00060000 Mdl: 00000000
Not impersonating
DeviceMap 832087c0
Owning Process 0 Image: <Unknown>
Attached Process 89becc80 Image: rscorsvc.exe
Wait Start TickCount 17687 Ticks: 40 (0:00:00:00.625)
Context Switch Count 1890
UserTime 00:00:00.093
KernelTime 00:00:00.093
Win32 Start Address ZCollect!_threadstartex (0x3304a4ec)
Stack Init 8ce63000 Current 8ce628c0 Base 8ce63000 Limit 8ce60000 Call 0
Priority 12 BasePriority 10 PriorityDecrement 0 IoPriority 2 PagePriority 5
ChildEBP RetAddr Args to Child
8ce628d8 816b83bf 89b62710 816f9920 89b62798 nt!KiSwapContext+0x26 (FPO: [Uses EBP] [0,0,4])
8ce6291c 816b53cf 89b62710 00000000 00000002 nt!KiSwapThread+0x44f
8ce62970 81819ed4 00000002 8ce62aa8 00000001 nt!KeWaitForMultipleObjects+0x53d
8ce62bfc 81819c43 00000002 00000001 00000000 nt!ObpWaitForMultipleObjects+0x256
8ce62d48 81658a7a 00000002 01c3f5ec 00000001 nt!NtWaitForMultipleObjects+0xcc
8ce62d48 77689a94 00000002 01c3f5ec 00000001 nt!KiFastCallEntry+0x12a (FPO: [0,3] TrapFrame @ 8ce62d64)
01c3f598 77689244 7607c3e4 00000002 01c3f5ec ntdll!KiFastSystemCallRet (FPO: [0,0,0])
01c3f59c 7607c3e4 00000002 01c3f5ec 00000001 ntdll!ZwWaitForMultipleObjects+0xc (FPO: [5,0,0])
01c3f638 777c0208 01c3f5ec 01c3f660 00000000 kernel32!WaitForMultipleObjectsEx+0x11d (FPO: [Non-Fpo])
01c3f68c 7720ab28 000002dc 01c3f6d4 ffffffff USER32!RealMsgWaitForMultipleObjectsEx+0x13c (FPO: [Non-Fpo])
01c3f6b4 7720ac88 01c3f6d4 ffffffff 01c3f6e4 ole32!CCliModalLoop::BlockFn+0x97 (FPO: [Non-Fpo])
01c3f6dc 77317b73 ffffffff 0020cdb0 01c3f7e8 ole32!ModalLoop+0x5b (FPO: [Non-Fpo])
01c3f6f8 77318b68 00000000 01c3f7fc 00000000 ole32!ThreadSendReceive+0x12c (FPO: [Non-Fpo])
01c3f720 773189d4 01c3f7e8 00243c28 01c3f844 ole32!CRpcChannelBuffer::SwitchAptAndDispatchCall+0x194 (FPO: [Non-Fpo])
01c3f800 7720ad2e 00243c28 01c3f928 01c3f90c ole32!CRpcChannelBuffer::SendReceive2+0xef (FPO: [Non-Fpo])
01c3f81c 7720ace0 01c3f928 01c3f90c 00243c28 ole32!CCliModalLoop::SendReceive+0x1e (FPO: [Non-Fpo])
01c3f894 7722e688 00243c28 01c3f928 01c3f90c ole32!CAptRpcChnl::SendReceive+0x73 (FPO: [Non-Fpo])
01c3f8e8 76e5364e 00243c28 01c3f928 01c3f90c ole32!CCtxComChnl::SendReceive+0x1c5 (FPO: [Non-Fpo])
01c3f900 76e536af 03ad7ecc 01c3f9c4 76e533e2 RPCRT4!NdrProxySendReceive+0x43
01c3f90c 76e533e2 81d96d3a 01c3fdc4 070001f3 RPCRT4!NdrpProxySendReceive+0xc (FPO: [0,0,0])
01c3fd84 76e535f4 718b2ba8 718b27de 01c3fdc4 RPCRT4!NdrClientCall2+0x5e9
01c3fdac 76dee20e 01c3fdc4 00000017 01c3fdfc RPCRT4!ObjectStublessClient+0x6f
01c3fdbc 718e6374 03ad7ecc 001e28fc 0020ed9c RPCRT4!ObjectStubless+0xf
01c3fdfc 3650cae8 001e28fc 0020ed9c 0020ed9c fastprox!CWbemSvcWrapper::XWbemServices::ExecNotificationQueryAsync+0x91 (FPO: [Non-Fpo])
01c3fe44 365050d5 00000001 029309e8 36505851 ctrx_ext!CPrinterTracker::DetectPrinterCreates+0x118 (FPO: [Non-Fpo]) (CONV: thiscall)
01c3fe50 36505851 00000005 00ed49fc 3650804d ctrx_ext!CCtrxExt::InitMonitoring+0xd5 (FPO: [Non-Fpo]) (CONV: thiscall)
01c3fe5c 3650804d 00000005 36505287 00000001 ctrx_ext!CCtrxExt::OnStartupPhase+0x141 (FPO: [Non-Fpo]) (CONV: thiscall)
01c3fe64 36505287 00000001 00000005 00ed4998 ctrx_ext!CCtrxExt::_NotifyEvent+0x2d (FPO: [Non-Fpo]) (CONV: thiscall)
01c3fe74 33009c29 029309e8 00000001 00000005 ctrx_ext!_IMPAExtensionImpl<CCtrxExt>::NotifyEvent+0x27 (FPO: [Non-Fpo]) (CONV: stdcall)
01c3fe98 33010f39 00000001 00000005 81d93690 ZCollect!MPACollector::NotifyEvent+0x53 (CONV: thiscall)
01c3fecc 3301443c 00000005 00000000 00ed0cb8 ZCollect!QThread::DoPhasedStartup+0x17a (CONV: thiscall)
01c3ff10 3302b6d2 00ed4698 81d93714 00000000 ZCollect!QThread::StartQueue+0x197 (CONV: thiscall)
01c3ff48 3304a4c6 00ed0cb8 81d937dc 00000000 ZCollect!StartQReader+0x30 (CONV: stdcall)
01c3ff80 3304a56b 00000000 76074911 00edbeb8 ZCollect!_callthreadstartex+0x1b (FPO: [Non-Fpo]) (CONV: cdecl)
01c3ff88 76074911 00edbeb8 01c3ffd4 7766e4b6 ZCollect!_threadstartex+0x7f (FPO: [Non-Fpo]) (CONV: stdcall)
01c3ff94 7766e4b6 00edbeb8 76ac79b1 00000000 kernel32!BaseThreadInitThunk+0xe (FPO: [Non-Fpo])
01c3ffd4 7766e489 3304a4ec 00edbeb8 ffffffff ntdll!__RtlUserThreadStart+0x23 (FPO: [Non-Fpo])
01c3ffec 00000000 3304a4ec 00edbeb8 00000000 ntdll!_RtlUserThreadStart+0x1b (FPO: [Non-Fpo])

kd> du 0020ed9c
0020ed9c "SELECT * FROM __InstanceCreation"
0020eddc "Event WITHIN 1 WHERE TargetInsta"
0020ee1c "nce ISA 'Win32_Printer'"

kd> !thread -1 7
THREAD 8a01f670 Cid 100c.1028 Teb: 7ffae000 Win32Thread: ffbede90 RUNNING on processor 0
Impersonation token: 8a59d3e8 (Level Impersonation)
Owning Process 0 Image: <Unknown>
Attached Process 8a016d90 Image: WmiPrvSE.exe
Wait Start TickCount 21220 Ticks: 0
Context Switch Count 1337
UserTime 00:00:01.937
KernelTime 00:00:02.312
Win32 Start Address RPCRT4!ThreadStartRoutine (0x76de4dfe)
Stack Init 8e7fa000 Current 8e7f9b48 Base 8e7fa000 Limit 8e7f7000 Call 0
Priority 9 BasePriority 8 PriorityDecrement 0 IoPriority 2 PagePriority 5
ChildEBP RetAddr Args to Child
014de74c 6ea2cc37 00000006 00000000 00000002 WINSPOOL!EnumPrintersW (FPO: [Non-Fpo])
014de7b8 6ea2cdf3 0130d320 00000000 014de7dc cimwin32!CWin32Printer::DynInstancePrinters+0xda (FPO: [Non-Fpo])
014de7c8 6ed5f3dd 0130d320 00000000 00000111 cimwin32!CWin32Printer::EnumerateInstances+0xf (FPO: [Non-Fpo])
014de7dc 6ed5f82f 0130d320 00000000 7fb9fbe8 framedynos!Provider::CreateInstanceEnum+0x21 (FPO: [Non-Fpo])
014decd0 00070ed5 0130f9b8 00292bc4 00000000 framedynos!CWbemProviderGlue::CreateInstanceEnumAsync+0x1cd (FPO: [Non-Fpo])
014ded10 00070d45 00000000 00288fc8 00000000 wmiprvse!CInterceptor_IWbemSyncProvider::Helper_CreateInstanceEnumAsync+0x159 (FPO: [Non-Fpo])
014ded54 76de31eb 0130f9b8 00292afc 00000000 wmiprvse!CInterceptor_IWbemSyncProvider::CreateInstanceEnumAsync+0xc1 (FPO: [Non-Fpo])
014ded7c 76e5184f 00070cbd 014def88 00000005 RPCRT4!Invoke+0x2a
014df1a8 76e52006 00279b30 002739c8 00264f68 RPCRT4!NdrStubCall2+0x27b
014df1f8 718eb35e 00279b30 00264f68 002739c8 RPCRT4!CStdStubBuffer_Invoke+0xa0 (FPO: [SEH])
014df20c 77319759 0128f354 00264f68 002739c8 FastProx!CBaseStublet::Invoke+0x29 (FPO: [Non-Fpo])
014df254 773196f3 00264f68 00275f78 0026b9a8 ole32!SyncStubInvoke+0x3c (FPO: [Non-Fpo])
014df2a0 77239d67 00264f68 00275e70 0128f354 ole32!StubInvoke+0xb9 (FPO: [Non-Fpo])
014df37c 77239c5c 002739c8 00000000 0128f354 ole32!CCtxComChnl::ContextInvoke+0xfa (FPO: [Non-Fpo])
014df398 773187a4 00264f68 00000001 0128f354 ole32!MTAInvoke+0x1a (FPO: [Non-Fpo])
014df3c8 77319498 d0908070 002739c8 0128f354 ole32!AppInvoke+0xaa (FPO: [Non-Fpo])
014df4a4 77318780 00264f10 00263100 00270f38 ole32!ComInvokeWithLockAndIPID+0x32c (FPO: [Non-Fpo])
014df4f0 76de3420 00270f38 7fdbaa13 00270f38 ole32!ThreadInvoke+0x2fd (FPO: [Non-Fpo])
014df52c 76de32ce 7731984e 00270f38 014df628 RPCRT4!DispatchToStubInCNoAvrf+0x41
014df5a0 76de4a8a 00000000 00000000 00000000 RPCRT4!RPC_INTERFACE::DispatchToStubWorker+0xdf
014df5c4 76de48b8 00270f38 00000000 014df628 RPCRT4!RPC_INTERFACE::DispatchToStub+0x67
014df5f8 76de3e6a 00270f9c 00000000 00000000 RPCRT4!RPC_INTERFACE::DispatchToStubWithObject+0x3e
014df638 76de3d78 00270ec8 014df674 00270ec8 RPCRT4!LRPC_SCALL::DispatchRequest+0x298
014df6a4 76de303a 00270ec8 00272268 0026f920 RPCRT4!LRPC_SCALL::HandleRequest+0x1d2
014df748 76e03617 00000000 014df7c4 76de1627 RPCRT4!LRPC_ADDRESS::ProcessIO+0x214
014df754 76de1627 00252d60 00000013 00000000 RPCRT4!ProcessLrpcComplete+0x20
014df7c4 76de4df0 014df7f0 76de4db7 00252d60 RPCRT4!LOADABLE_TRANSPORT::ProcessIOEvents+0x212
014df7cc 76de4db7 00252d60 00000000 00000000 RPCRT4!ProcessIOEventsWrapper+0xd
014df7f0 76de4e1c 0026f180 014df808 76074911 RPCRT4!BaseCachedThreadRoutine+0x5c
014df7fc 76074911 00270a68 014df848 7766e4b6 RPCRT4!ThreadStartRoutine+0x1e
014df808 7766e4b6 00270a68 762680c4 00000000 kernel32!BaseThreadInitThunk+0xe (FPO: [Non-Fpo])
014df848 7766e489 76de4dfe 00270a68 ffffffff ntdll!__RtlUserThreadStart+0x23 (FPO: [Non-Fpo])
014df860 00000000 76de4dfe 00270a68 00000000 ntdll!_RtlUserThreadStart+0x1b (FPO: [Non-Fpo])

kd> !thread -1 7
THREAD 898766e0 Cid 06d4.0c88 Teb: 7ffae000 Win32Thread: 00000000 RUNNING on processor 0
Impersonation token: 8a4c0950 (Level Impersonation)
Owning Process 0 Image: <Unknown>
Attached Process 89a88b68 Image: spoolsv.exe
Wait Start TickCount 17727 Ticks: 0
Context Switch Count 7
UserTime 00:00:00.000
KernelTime 00:00:00.000
Win32 Start Address RPCRT4!ThreadStartRoutine (0x76de4dfe)
Stack Init 9e5e0000 Current 9e5df7e8 Base 9e5e0000 Limit 9e5dd000 Call 0
Priority 8 BasePriority 8 PriorityDecrement 0 IoPriority 2 PagePriority 5
ChildEBP RetAddr Args to Child
028cef60 71fc7a1b 0227001c 00000002 00000000 ADVAPI32!ReportEventW+0x2 (FPO: [Non-Fpo])
028cefa0 71f9f2e0 00000002 00000000 c0000004 win32spl!NLOGLibrary::TEventLog::LogEvent+0x4a (FPO: [Non-Fpo])
028cf004 71f93956 00000002 00000c6c 021ce6e0 win32spl!TPrintOpen::RediscoverPrinterConnections+0x104 (FPO: [Non-Fpo])
028cf028 73747bb5 00000006 00000000 00000002 win32spl!TPrintProvider::ppEnumPrinters+0x29 (FPO: [Non-Fpo])
028cf074 00d4339d 00000006 00000000 00000002 SPOOLSS!EnumPrintersW+0xb4 (FPO: [Non-Fpo])
028cf0a8 00d43320 00000006 00000000 00000002 spoolsv!YEnumPrinters+0xd4 (FPO: [Non-Fpo])
028cf0d0 76de31eb 00000006 00000000 00000002 spoolsv!RpcEnumPrinters+0x21 (FPO: [Non-Fpo])
028cf100 76e5184f 00d432ff 028cf308 00000007 RPCRT4!Invoke+0x2a
028cf52c 76e4edb5 00000000 00000000 00104b00 RPCRT4!NdrStubCall2+0x27b
028cf548 76de3420 00104b00 65dc820e 00104b00 RPCRT4!NdrServerCall2+0x1e
028cf584 76de32ce 76e4ed97 00104b00 028cf628 RPCRT4!DispatchToStubInCNoAvrf+0x41
028cf5f8 76dd20dd 00000000 00000000 00000000 RPCRT4!RPC_INTERFACE::DispatchToStubWorker+0xdf
028cf638 76de3d78 00104a90 028cf674 00104a90 RPCRT4!LRPC_SCALL::DispatchRequest+0xa2
028cf6a4 76de303a 00104a90 000f9f48 00104bd8 RPCRT4!LRPC_SCALL::HandleRequest+0x1d2
028cf748 76e03617 00000000 028cf7c4 76de1627 RPCRT4!LRPC_ADDRESS::ProcessIO+0x214
028cf754 76de1627 00081528 00000013 00000000 RPCRT4!ProcessLrpcComplete+0x20
028cf7c4 76de4df0 028cf7f4 76de4db7 00081528 RPCRT4!LOADABLE_TRANSPORT::ProcessIOEvents+0x212
028cf7cc 76de4db7 00081528 00000000 00000000 RPCRT4!ProcessIOEventsWrapper+0xd
028cf7f4 76de4e1c 000f1540 028cf80c 76074911 RPCRT4!BaseCachedThreadRoutine+0x5c
028cf800 76074911 000ff818 028cf84c 7766e4b6 RPCRT4!ThreadStartRoutine+0x1e
028cf80c 7766e4b6 000ff818 75e327ee 00000000 kernel32!BaseThreadInitThunk+0xe (FPO: [Non-Fpo])
028cf84c 7766e489 76de4dfe 000ff818 ffffffff ntdll!__RtlUserThreadStart+0x23 (FPO: [Non-Fpo])
028cf864 00000000 76de4dfe 000ff818 00000000 ntdll!_RtlUserThreadStart+0x1b (FPO: [Non-Fpo])

kd> !token -n 8a4c0950
_TOKEN 8a4c0950
TS Session ID: 0
User: S-1-5-18 (Well Known Group: NT AUTHORITY\SYSTEM)
Groups:
00 S-1-16-16384 Unrecognized SID
Attributes - GroupIntegrity GroupIntegrityEnabled
01 S-1-1-0 (Well Known Group: localhost\Everyone)
Attributes - Mandatory Default Enabled
02 S-1-5-32-545 (Alias: BUILTIN\Users)
Attributes - Mandatory Default Enabled
03 S-1-5-6 (Well Known Group: NT AUTHORITY\SERVICE)
Attributes - Mandatory Default Enabled
04 S-1-5-11 (Well Known Group: NT AUTHORITY\Authenticated Users)
Attributes - Mandatory Default Enabled
05 S-1-5-15 (Well Known Group: NT AUTHORITY\This Organization)
Attributes - Mandatory Default Enabled
06 S-1-5-80-2402865663-3129190671-725286074-1860017563-2838182404 (no name mapped)
Attributes - Default Enabled Owner
07 S-1-5-5-0-112781 (no name mapped)
Attributes - Mandatory Default Enabled Owner LogonId
08 S-1-2-0 (Well Known Group: localhost\LOCAL)
Attributes - Mandatory Default Enabled
09 S-1-5-32-544 (Alias: BUILTIN\Administrators)
Attributes - Default Enabled Owner
Primary Group: S-1-5-18 (Well Known Group: NT AUTHORITY\SYSTEM)
Privs:
03 0x000000003 SeAssignPrimaryTokenPrivilege Attributes - Enabled
04 0x000000004 SeLockMemoryPrivilege Attributes - Enabled Default
05 0x000000005 SeIncreaseQuotaPrivilege Attributes - Enabled
07 0x000000007 SeTcbPrivilege Attributes - Enabled Default
08 0x000000008 SeSecurityPrivilege Attributes - Enabled
09 0x000000009 SeTakeOwnershipPrivilege Attributes - Enabled
10 0x00000000a SeLoadDriverPrivilege Attributes - Enabled
11 0x00000000b SeSystemProfilePrivilege Attributes - Enabled Default
12 0x00000000c SeSystemtimePrivilege Attributes - Enabled
13 0x00000000d SeProfileSingleProcessPrivilege Attributes - Enabled Default
14 0x00000000e SeIncreaseBasePriorityPrivilege Attributes - Enabled Default
15 0x00000000f SeCreatePagefilePrivilege Attributes - Enabled Default
16 0x000000010 SeCreatePermanentPrivilege Attributes - Enabled Default
17 0x000000011 SeBackupPrivilege Attributes - Enabled
18 0x000000012 SeRestorePrivilege Attributes - Enabled
19 0x000000013 SeShutdownPrivilege Attributes - Enabled
20 0x000000014 SeDebugPrivilege Attributes - Enabled Default
21 0x000000015 SeAuditPrivilege Attributes - Enabled Default
22 0x000000016 SeSystemEnvironmentPrivilege Attributes - Enabled
23 0x000000017 SeChangeNotifyPrivilege Attributes - Enabled Default
25 0x000000019 SeUndockPrivilege Attributes - Enabled
28 0x00000001c SeManageVolumePrivilege Attributes - Enabled
29 0x00000001d SeImpersonatePrivilege Attributes - Enabled Default
30 0x00000001e SeCreateGlobalPrivilege Attributes - Enabled Default
33 0x000000021 SeIncreaseWorkingSetPrivilege Attributes - Enabled Default
34 0x000000022 SeTimeZonePrivilege Attributes - Enabled Default
35 0x000000023 SeCreateSymbolicLinkPrivilege Attributes - Enabled Default
Authentication ID: (0,3e7)
Impersonation Level: Impersonation
TokenType: Impersonation
Source: Advapi TokenFlags: 0x0
Token ID: 37c91 ParentToken ID: 0
Modified ID: (0, 36e28)
RestrictedSidCount: 0 RestrictedSids: 00000000
OriginatingLogonSession: 3e7

kd> dc 028cef60
028cef60 00000014 71fc7a1b 0227001c 00000002 .....z.q..'.....
028cef70 00000000 c0000004 00000000 00000001 ................
028cef80 00000000 028cef94 00000000 00000000 ................
028cef90 80070002 025b00b0 00000000 00000000 ......[.........
028cefa0 028cf004 71f9f2e0 00000002 00000000 .......q........
028cefb0 c0000004 025b00b0 00000000 00000000 ......[.........
028cefc0 00000000 025c24c8 00000000 72e77820 .....$\..... x.r
028cefd0 72ef33d8 72e7bb7c 00000006 021bb318 .3.r|..r........
kd> dd 028cef94 L1
028cef94 025b00b0
kd> du 025b00b0
025b00b0 "S-1-5-18\Printers\Connections"

Global Escalation Manager Tokyo
-fb

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (13) | Views (2727) |

posted by Simon Crosby

Over the holiday weekend I had one of those "come to X" moments, where for X you may insert your deity of choice. Under my customary backlog of tasks to complete, and wanting to also spend time with my family, I was happily at work on Friday night fine tuning powerpoint for a presentation to the industry, when....

(You've all experienced this before) One profile change too many, one cookie too many, one slide too many, one keystroke too many.. or something, and my XP VM decided to toss its legs, feet & boots in the air. With daylight fading fast, spousal impatience on the rise and with a rapidly (Decibels are measured on a log scale) increasing din on the part of my children, I did something that no self respecting hypervisor zealot would do, namely take a leap of faith in another layer of virtualization - App Virtualization.

And the result is that it saved my weekend with my family, and the current state of my work, and enabled me to meet some tough deadlines this week. Here's what I did: First, the diagnosis was that my Windows XP client OS VM (on my Mac) was done for. I could still boot it. Not much else, and not for long. My key concern was how to rescue all of my files and other state in the VM.

This exercise allowed me to validate a theory that I have had in the area of virtualization, which I can now summarize: Lesson 1: Make your VMs stateless. Move all of your documents (more generally, any app specific storage/state) out of the virtual hard disk of the VM and into an appropriate storage layer external to the virtual hard drive of the VM. In my case, all state (every document I work on) is stored in the local file system of my Mac and is continually backed up to the cloud. So my XP VM was simply an operating context for some apps, divorced from the storage for the docs etc that I work on. The fact that my XP VM had become unstable was therefore not a threat to any of my documents/presentations - only to the execution of the apps. Nothing I value was stored in the virtual hard disk of the VM itself.

Now, fancying a challenge, I also chose to upgrade to Win7 in the process of fixing this problem. After all, why not test Win7 in the process? So I created a new Win7 VM (using the MSDN media). That took the expected amount of time, and I easily got to the point where I had a new Win7 OS booted, with access to all my storage, including all my documents. What next? Well, I needed my Apps. Not only the basics, but also Citrix specific apps - for example expense reporting...

I was tempted to send an email to my local Citrix colleagues requesting install media for all my apps. Then I realized that that would not be easy - since I had no email client! : All I needed to do (and did, after a glass of wine) was download Citrix Receiver, turn on "auto update", and enable the appropriate folder sharing to get my content back into the OS. Then I enjoyed the remainder of the weekend with my family.

When I started work this morning, XenApp App Streaming had delivered to me all the apps that I needed, ready to run at full performance, and appropriately configured for the enterprise network and other infrastructure. I had a brand new Win7 desktop, the latest apps, and everything I had ever created, all beautifully merged into a single runtime system.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (483) |

posted by Ron Bauman

Often it's the simple tasks infrequently performed that generate the most frustration.  Sometimes it takes longer to locate the tool or link than to complete the entire process from beginning to end.

With that in mind, we've created over 10 Instructional Guides to help you perform tasks associated with License Programs like How to Register your Customer for the Enterprise License Program to How to Manage Your Customers' Registration (like adding affiliates).

You can find the guides by using this link or the following path after logging into My Citrix:

Programs and Benefits - Citrix Licensing Programs - Citrix Licensing Programs - Commercial Sector Licensing Program - Resources Enterprise License Program

Expand Blog Post

<< Prev   5     6     7     8     9   10   11     12     13     14     15   Next >>