Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / AccessibleTech / longhorn / Automation / Win32Providers / MS / Internal / AutomationProxies / SafeProcessHandle.cs / 1 / SafeProcessHandle.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // // History: // 10/04/2003 : [....] Created //--------------------------------------------------------------------------- using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using System.Windows.Automation; using Microsoft.Win32.SafeHandles; using MS.Win32; namespace MS.Internal.AutomationProxies { internal sealed class SafeProcessHandle : SafeHandleZeroOrMinusOneIsInvalid { // This constructor is used by the P/Invoke marshaling layer // to allocate a SafeHandle instance. P/Invoke then does the // appropriate method call, storing the handle in this class. private SafeProcessHandle() : base(true) {} internal SafeProcessHandle(IntPtr hwnd) : base(true) { uint processId; if (hwnd == IntPtr.Zero) { processId = UnsafeNativeMethods.GetCurrentProcessId(); } else { // Get process id... Misc.GetWindowThreadProcessId(hwnd, out processId); } // handle might be used to query for Wow64 information (_QUERY_), or to do cross-process allocs (VM_*) SetHandle(Misc.OpenProcess(NativeMethods.PROCESS_QUERY_INFORMATION | NativeMethods.PROCESS_VM_OPERATION | NativeMethods.PROCESS_VM_READ | NativeMethods.PROCESS_VM_WRITE, false, processId, hwnd)); } // Uncomment this if & only if we need a constructor // that takes a handle from external code //internal SafeProcessHandle(IntPtr preexistingHandle, bool ownsHandle) : base(ownsHandle) //{ // SetHandle(preexistingHandle); //} // protected override bool ReleaseHandle() { return Misc.CloseHandle(handle); } } } // 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
- LineInfo.cs
- SoapClientProtocol.cs
- EndOfStreamException.cs
- InputProviderSite.cs
- ProviderBase.cs
- StrongTypingException.cs
- StyleXamlParser.cs
- ConstraintManager.cs
- MappingSource.cs
- BuildProvider.cs
- ResourceAssociationType.cs
- UrlMapping.cs
- ProfileParameter.cs
- XhtmlBasicFormAdapter.cs
- QueryCacheKey.cs
- WebReferencesBuildProvider.cs
- CodeBinaryOperatorExpression.cs
- PrePostDescendentsWalker.cs
- AnnotationResourceCollection.cs
- WebPartVerbCollection.cs
- WebPartConnectionsEventArgs.cs
- TypeLibConverter.cs
- SafeMemoryMappedFileHandle.cs
- HtmlForm.cs
- DescendantBaseQuery.cs
- RawStylusActions.cs
- DBSqlParserTable.cs
- ColorConvertedBitmap.cs
- PartialCachingControl.cs
- CancellationTokenSource.cs
- ActivityDesignerResources.cs
- CodeSnippetExpression.cs
- COM2ColorConverter.cs
- HttpInputStream.cs
- MutableAssemblyCacheEntry.cs
- BitmapEffectDrawingContextWalker.cs
- DBCSCodePageEncoding.cs
- FillRuleValidation.cs
- SqlFormatter.cs
- ColumnResult.cs
- MaterialGroup.cs
- SmiGettersStream.cs
- XsdDateTime.cs
- Soap12ProtocolImporter.cs
- BulletedList.cs
- CodeDirectoryCompiler.cs
- RegexFCD.cs
- SmtpNtlmAuthenticationModule.cs
- InternalsVisibleToAttribute.cs
- EntityContainerEmitter.cs
- cryptoapiTransform.cs
- SafeRightsManagementPubHandle.cs
- OdbcConnectionHandle.cs
- AnnotationService.cs
- FileReader.cs
- CounterCreationDataConverter.cs
- DictionaryManager.cs
- ListViewSortEventArgs.cs
- __ConsoleStream.cs
- ColorTransformHelper.cs
- DataGridViewCellStyleChangedEventArgs.cs
- BasicHttpMessageSecurityElement.cs
- WindowsRegion.cs
- StateManagedCollection.cs
- MetadataItemEmitter.cs
- SMSvcHost.cs
- IndicFontClient.cs
- GridView.cs
- FixedSOMSemanticBox.cs
- BackgroundWorker.cs
- FormatterConverter.cs
- FreezableDefaultValueFactory.cs
- EventLogReader.cs
- GlyphRunDrawing.cs
- EditCommandColumn.cs
- DetailsViewCommandEventArgs.cs
- CodeCommentStatementCollection.cs
- CredentialCache.cs
- FrameworkContextData.cs
- TextDecorationUnitValidation.cs
- CompareInfo.cs
- unitconverter.cs
- XmlToDatasetMap.cs
- TransformValueSerializer.cs
- EncryptedKeyIdentifierClause.cs
- ParseChildrenAsPropertiesAttribute.cs
- _SpnDictionary.cs
- StorageEntityContainerMapping.cs
- BuildManager.cs
- NameValueFileSectionHandler.cs
- SelectedGridItemChangedEvent.cs
- TabRenderer.cs
- ValueUtilsSmi.cs
- ConsumerConnectionPointCollection.cs
- SEHException.cs
- SortDescriptionCollection.cs
- TreeNode.cs
- GlyphRunDrawing.cs
- IssuedTokenClientBehaviorsElement.cs
- ImageCollectionEditor.cs