VirtualBox

source: vbox/trunk/include/VBox/com/com.h@ 2734

Last change on this file since 2734 was 2672, checked in by vboxsync, 18 years ago

Main: Ported latest dmik/exp branch changes (r21219:21226) into the trunk.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.7 KB
Line 
1/** @file
2 *
3 * MS COM / XPCOM Abstraction Layer:
4 * COM initialization / shutdown
5 */
6
7/*
8 * Copyright (C) 2006 InnoTek Systemberatung GmbH
9 *
10 * This file is part of VirtualBox Open Source Edition (OSE), as
11 * available from http://www.virtualbox.org. This file is free software;
12 * you can redistribute it and/or modify it under the terms of the GNU
13 * General Public License as published by the Free Software Foundation,
14 * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
15 * distribution. VirtualBox OSE is distributed in the hope that it will
16 * be useful, but WITHOUT ANY WARRANTY of any kind.
17 *
18 * If you received this file as part of a commercial VirtualBox
19 * distribution, then only the terms of your commercial VirtualBox
20 * license agreement apply instead of the previous paragraph.
21 */
22
23#ifndef __VBox_com_com_h__
24#define __VBox_com_com_h__
25
26#include "VBox/com/defs.h"
27
28namespace com
29{
30
31/**
32 * Initializes the COM runtime.
33 * Must be called on every thread that uses COM, before any COM activity.
34 *
35 * @return COM result code
36 */
37HRESULT Initialize();
38
39/**
40 * Shuts down the COM runtime.
41 * Must be called on every thread before termination.
42 * No COM calls may be made after this method returns.
43 */
44void Shutdown();
45
46/**
47 * Resolves a given interface ID to a string containing the interface name.
48 * If, for some reason, the given IID cannot be resolved to a name, a NULL
49 * string is returned. A non-NULL string returned by this funciton must be
50 * freed using SysFreeString().
51 *
52 * @param aIID ID of the interface to get a name for
53 * @param aName Resolved interface name or @c NULL on error
54 */
55void GetInterfaceNameByIID (const GUID &aIID, BSTR *aName);
56
57}; // namespace com
58
59#endif // __VBox_com_com_h__
60
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette