Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / SendAgentStatusRequest.cs / 1 / SendAgentStatusRequest.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.Collections; using System.IO; using System.Threading; using Microsoft.InfoCards.Diagnostics; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; // // Summary: // This class handles the request from the UI Agent to set the agent status. // class SendAgentStatusRequest : UIAgentRequest { // // Status must match that in the agent - SendAgentStatusRequest.h // public enum AgentStatusType { AGENT_INITIALIZING = 0, AGENT_DESKTOP_CREATED = 1, AGENT_DESKTOP_SWITCH_OUT = 2, AGENT_DESKTOP_SWITCH_IN = 3, AGENT_SHUTTING_DOWN = 4 }; AgentStatusType m_agentStatus; bool m_retVal; uint m_ATApplicationsFlags; // // Summary: // Constructs a new SendAgentStatusRequest instance. // // Parameters: // rpcHandle - Handle to the RPC call from the UI Agent // inArgs - Stream for the incoming information. Null in this case. // outArgs - Stream used to collect the outbound data. // public SendAgentStatusRequest( IntPtr rpcHandle, Stream inArgs, Stream outArgs, ClientUIRequest parentRequest ) : base( rpcHandle, inArgs, outArgs, parentRequest ) { } // // Summary // Event for marshalling the request information // protected override void OnMarshalInArgs() { IDT.Assert( InArgs.Length > 0, "The agent status must be specified" ); // // Get the current agent status from the InArgs stream // BinaryReader reader = new InfoCardBinaryReader( InArgs, System.Text.Encoding.Unicode ); m_agentStatus = (AgentStatusType) reader.ReadUInt32(); m_ATApplicationsFlags = reader.ReadUInt32(); } // // Summary // Event for processing the user request // protected override void OnProcess() { // // Determine the action based on the status change. // m_retVal = false; switch ( m_agentStatus ) { case AgentStatusType.AGENT_DESKTOP_CREATED: case AgentStatusType.AGENT_DESKTOP_SWITCH_IN: // // Start AT Applications as we know the private desktop is ready. // ParentRequest.StartAccessibilityApplications( m_ATApplicationsFlags ); break; case AgentStatusType.AGENT_DESKTOP_SWITCH_OUT: // // Start processing to kill the AT apps on private desktop and // start up apps on the user desktop. Note that if we get true // as the return value, on vista the agent has to start AT apps // using the WinKey + U sequence. // m_retVal = ParentRequest.RestartAccessibilityApplications(); break; } } // // Summary // Event for marshalling the response information // // Remarks // Nothing. // protected override void OnMarshalOutArgs() { BinaryWriter writer = new BinaryWriter( OutArgs, System.Text.Encoding.Unicode ); writer.Write( m_retVal ); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlSchemaInfo.cs
- GlyphShapingProperties.cs
- BindToObject.cs
- StrongNameIdentityPermission.cs
- HttpDebugHandler.cs
- GridViewDeletedEventArgs.cs
- IriParsingElement.cs
- Sentence.cs
- DataGridColumnStyleMappingNameEditor.cs
- RuleSettingsCollection.cs
- ProcessStartInfo.cs
- Stack.cs
- XmlNavigatorFilter.cs
- WindowPatternIdentifiers.cs
- Thickness.cs
- SafeFileMappingHandle.cs
- NativeMethods.cs
- XmlComplianceUtil.cs
- WebColorConverter.cs
- XmlKeywords.cs
- listitem.cs
- UIElementPropertyUndoUnit.cs
- SymmetricAlgorithm.cs
- PeerCollaborationPermission.cs
- InsufficientMemoryException.cs
- ToggleButtonAutomationPeer.cs
- WindowCollection.cs
- BamlTreeMap.cs
- MarshalByRefObject.cs
- EmptyElement.cs
- ClipboardProcessor.cs
- EntityObject.cs
- SqlConnectionHelper.cs
- bidPrivateBase.cs
- DecimalAnimationBase.cs
- ScriptHandlerFactory.cs
- TypedTableHandler.cs
- DuplicateWaitObjectException.cs
- ConstraintEnumerator.cs
- BrushMappingModeValidation.cs
- DeploymentSectionCache.cs
- LassoSelectionBehavior.cs
- XmlIlGenerator.cs
- CollectionViewGroupRoot.cs
- TearOffProxy.cs
- DictionaryChange.cs
- SafeSystemMetrics.cs
- UInt32.cs
- Timeline.cs
- HwndTarget.cs
- LinqMaximalSubtreeNominator.cs
- Evaluator.cs
- SafeNativeMethods.cs
- HttpContextServiceHost.cs
- WebPartExportVerb.cs
- XPathNodeList.cs
- RawUIStateInputReport.cs
- FolderLevelBuildProviderAppliesToAttribute.cs
- InvalidCardException.cs
- PrintPreviewGraphics.cs
- Operator.cs
- AudioFileOut.cs
- EditorPart.cs
- PasswordBox.cs
- MissingMemberException.cs
- Dictionary.cs
- DbParameterCollection.cs
- DataGridCaption.cs
- MenuAdapter.cs
- mda.cs
- FullTrustAssembly.cs
- FixedSOMTable.cs
- XPathAncestorIterator.cs
- EditingCommands.cs
- SyntaxCheck.cs
- ExceptionValidationRule.cs
- panel.cs
- BinaryObjectInfo.cs
- CodePageUtils.cs
- TypefaceMap.cs
- PassportIdentity.cs
- ToolStripSettings.cs
- SmtpMail.cs
- DataServiceProviderMethods.cs
- RegexReplacement.cs
- SettingsSavedEventArgs.cs
- BufferedGraphics.cs
- DocumentPaginator.cs
- ECDiffieHellmanPublicKey.cs
- LabelEditEvent.cs
- DocumentGridPage.cs
- SqlInternalConnectionSmi.cs
- wgx_sdk_version.cs
- SendingRequestEventArgs.cs
- UnmanagedMemoryStreamWrapper.cs
- TextWriter.cs
- HuffmanTree.cs
- _LocalDataStoreMgr.cs
- EntityViewGenerator.cs
- TableAdapterManagerGenerator.cs