Python COM Reference

Python Objects

  • Modules
  • Objects

    Overviews and other documentation

  • ASP and Python
  • MTS and Python for NT
  • Python, C++, and COM
  • win32com.shell and Windows Shell Links
  • ADSI and Python
  • Quick-Starts to Python and COM
  • win32com readme
  • Constants

    Help file built: 07/26/01


win32com.shell and Windows Shell Links

Following is documentation for the PyIShellLink object.

Example

To create a PyIShellLink object

from win32com.shell import shell

import pythoncom

shortcut = pythoncom.CoCreateInstance(

    shell.CLSID_ShellLink, None,

    pythoncom.CLSCTX_INPROC_SERVER, shell.IID_IShellLink

)
To load information from existing shortcut file

shortcut.QueryInterface( pythoncom.IID_IPersistFile ).Load( filename )
To save information to a file

shortcut.QueryInterface( pythoncom.IID_IPersistFile ).Save( filename, 0 )
This documentation class is based on: http://msdn.microsoft.com/isapi/msdnlib.idc?theURL=/library/sdkdoc/shellcc/shell/ifaces/ishelllink/ishelllink.htm With only minor alterations and notations by Mike Fletcher. Errors may be present, read at your own risk. See also: http://msdn.microsoft.com/isapi/msdnlib.idc?theURL=/library/books/win95ui/chpt09-01.htm A tutorial-like introduction, includes brief discussion of non-file linking, and a fairly simple C sample application for file-based linking.

class PyIShellLink( IPersistFile ):

    ''' Following is not a functional class, intended solely for documentation '''

    def GetArguments(self):

        '''Retrieves the command-line arguments associated with a shell link object. '''

    def SetArguments(self, argumentString):

        '''Sets the command-line arguments associated with a shell link object.'''

    def GetDescription(self):

        '''Retrieves the description string for a shell link object. '''

    def SetDescription(self, descriptionString):

        '''Sets the description string for a shell link object. '''

    def GetIconLocation(self):

        '''Retrieves the location (path and index) of the icon for a shell link object.

        Returns a tuple of string and integer'''

    def SetIconLocation(self, locationString, iconIndex):

        '''Sets the location (path and index) of the icon for a shell link object. '''

    def GetPath(self, flags):

        '''Retrieves the path and file name of a shell link object.

        Note: flags are available through shell.SLGP_*

            SLGP_SHORTPATH  Retrieves the standard short (8.3 format) file name.

            SLGP_UNCPRIORITY  Retrieves the Universal Naming Convention (UNC) path name

            of the file.

            SLGP_RAWPATH  Retrieves the raw path name. A raw path is something that might

            not exist and may include environment variables that need to be expanded.'''

    def SetPath(self, pathString):

        '''Sets the path and file name of a shell link object. '''

    def SetRelativePath(self, pathString):

        '''Sets the relative path for a shell link object.

        Note: This mechanism allows for moved link files

        to reestablish connection with relative files through

        similar-prefix comparisons'''

    def GetShowCmd(self):

        '''Retrieves the show (SW_) command for a shell link object.'''

    def SetShowCmd(self, constant):

        '''Sets the show (SW_) command for a shell link object.

        Note: constants are defined in win32con, ie. win32con.SW_*

            SW_SHOWNORMAL Activates and displays a window. If the window is minimized or

            maximized, the system restores it to its original size and position. An

            application should specify this flag when displaying the window for the first

            time.

            SW_SHOWMAXIMIZED Activates the window and displays it as a maximized window.

            SW_SHOWMINIMIZED Activates the window and displays it as a minimized window.

        '''

    def GetWorkingDirectory(self):

        '''Retrieves the name of the working directory for a shell link object. '''

    def SetWorkingDirectory(self, pathString):

        '''Sets the name of the working directory for a shell link object.'''

    def Resolve(self, window, flags):

        '''Resolves a shell link by searching for the shell link object and updating the

        shell link path and its list of identifiers (if necessary).

        Notes:

            window is the parent window of a dialog which will pop up if resolution fails

        flags:

            SLR_INVOKE_MSI  Call the Microsoft Windows Installer.

            SLR_NOLINKINFO  Disable distributed link tracking. By default, distributed

                link tracking tracks removable media across multiple devices based on the

                volume name. It also uses the UNC path to track remote file systems whose

                drive letter has changed. Setting SLR_NOLINKINFO disables both types of tracking.

            SLR_NO_UI       Do not display a dialog box if the link cannot be resolved. When

                SLR_NO_UI is set, the high-order word of fFlags can be set to a time-out value

                that specifies the maximum amount of time to be spent resolving the link. The

                function returns if the link cannot be resolved within the time-out duration.

                If the high-order word is set to zero, the time-out duration will be set to the

                default value of 3,000 milliseconds (3 seconds). To specify a value, set the high

                word of fFlags to the desired time-out duration, in milliseconds.

            SLR_NOUPDATE    Do not update the link information.

            SLR_NOSEARCH    Do not execute the search heuristics.

            SLR_NOTRACK     Do not use distributed link tracking.

            SLR_UPDATE      If the link object has changed, update its path and list of identifiers. If SLR_UPDATE is set, you do not need to call IPersistFile::IsDirty to determine whether or not the link object has changed.

        '''

    ### Problematic elements

    # The problems below are due primarily to structs used in the API

    def GetIDList(self):

        '''Retrieves the list of item identifiers for a shell link object.

        Note: I do not see how to manipulate these identifiers, they are C structs,

        so I suppose we might be able to unpack them with the struct module.

        However, when I attempt this, I seem to get messed up identifiers

        (lengths of 0 for the individual identifiers) (see malfunctioning code below)'''

    def SetIDList(self, IDList):

        '''Sets the list of item identifiers for a shell link object.

        Note: See comments on GetIDList'''

    def SetHotkey(self, Hotkey):

        '''Sets the hot key for a shell link object.

        Note: New hot key. The virtual key code is in the low-order byte, and the modifier

        flags are in the high-order byte. The modifier flags can be a combination of the

        values specified in the description of the IShellLink::GetHotkey method.

        Note: I cannot find these constants anywhere...

            HOTKEYF_ALT, HOTKEYF_CONTROL, HOTKEYF_EXT, HOTKEYF_SHIFT

        '''

    def GetHotkey (self):

        '''Retrieves the hot key for a shell link object.

        Note: My tests do not seem to be working. at least, the values returned

        seem not to match what the documentation says should be returned.

        I would expect with a Hotkey of CTRL-ALT-T, to get an integer where

        integer & 256 == ord('T'), i.e. 116 or 84, instead I get 1620

        '''

import struct

def readIDList (data):

    ''' unpack data into list of identifiers

    The following is not functional!'''

    result = []

    headersize = struct.calcsize('H')

    while data:

        count = struct.unpack('H', data[:headersize])[0]

        if count:

            result.append( data[:count] )

            data = data[count:]

        else:

            raise ValueError, ('ID item of length zero defined', data )


Overviews

  • ASP and Python
  • MTS and Python for NT
  • Python, C++, and COM
  • win32com.shell and Windows Shell Links
  • ADSI and Python
  • Quick-Starts to Python and COM
  • win32com readme


ASP and Python

How Python integrates w/ASP

Active Server Pages has been a useful addition to Microsoft's Web strategy. Because of the language neutral nature of COM, any language that is capable of "Active X" (meaning COM) scripting can integrate with it. Python, with it's excellent COM support, is one of those languages. When you install it, by default, it is not setup for the ASP enviroment with IIS. If you look at the html documentation in: C:\\Program Files\\Python\\win32com\\HTML\\index.html at the bottom of the page you'll see 'Active X Scripting Demos'. If you then click on that it will describe how to register the engire. Essentially, there is a program called pyscript.py in: C:\\Program Files\\Python\\win32comext\\axscript\\client and if you run that it should register python for the ASP environment.

Microsoft typically positions vbscript in the IIS role. Vbscript is adequate for many tasks, but is a very simplified language. Python is a very rich and powerful language offering things like true exception handleing, OOP style programming, excellent win32 access, easy persistence w/pickle, etc. And, being multi-platform, you can leverage the language in other web environments. You will also find many ASP code examples in Vbscript are easily converted into python. There is a slight difference with setting values with Application and Session Objects. In cases where you'd see: Session('Key')= TheValue, you'd translate to Session.SetValue('Key', TheValue) for python. This is because vbscript makes it look like you are assigning something to a function call which python does not support.

Another thing ASP allows you to do is to mix code and HTML. Thus, you need some way to tell the server that the following is code. Since python is not used by default, you need to set your page to use it. You can do that by having the first line say: <%@ LANGUAGE =Python%>. Then after that point, anything between '<%' and '%>' delimeters will run as python code. Everything else will be treated as HTML. It is important to note that a python loop ends in the python block -- they don't extend past intervening html to the next block. For me that normally isn't an issue, since I do not like mixing code and html. Prefering a clean split of code and html, I generally generate webpages using templates all in python w/HTMLgen. Take a look at: http://www.python.org/topics/web/HTML.html for available resources w/HTML. An very basic page would look like:

Example

Basic Python ASP page:

<%@ LANGUAGE = Python%>

<HTML>

<head></head>

<body>

<h1>Querying database</h1>

<%

#do some python stuff here

#import libraries, etc.

for i in query_database():

    Response.Write('output of results converted to a string')

%>

</body>

</html>
If you use HTMLgen's template, then it could look like:

<%@ LANGUAGE = Python%>

<%

#notice no raw HTML at all.  We instead use a template html file

#generated however you want (perhaps frontpage) that substitutes

#anything delimeted by {} for output from our python.  In this case

#text {mid} in the template is substituted for results.

import HTMLgen

import HTMLcolors

results='<h1>Querying database</h1>'

for i in query_database():

    results=results+str(i)

######################

#Here we are using a template dictionary

#to substitute the text {mid} found in the template file

#for results

T=HTMLgen.TemplateDocument(/path/template_file.html)

T.substitutions['mid']=results  # here is where our results went!!

webpage=str(T)

Response.Write(webpage)

%>
For one page this is overkill. However, for developing many pages, something like this allows you to ignore the grunt work of making pages and helps to keep them consistent. HTMLgen also gives you other useful tools worth looking into.

The ASP model has several 'collection' objects: Request, Response, Session, Application, and ObjectContext. The Request collection has things like data returned from web forms(GET or POST) and environment variables. The Response object is the opposite of the Request object it deals with sending data back to the client, since you cannot do a simple 'print'. Next, the Application collection allows programs to globally store/share information for your site. The Session object allows one to store per-user state. And, finally the Objectcontext object is for use with MTS. We'll focus on the basics, Request and Response.

Typically, you can treat these objects like simple versions of a python dictionary or list. A good way to get an idea of what they have is to print out their entire contents. Here is a simple function that converts your server (environment) variables into a python dictionary:

def getenv ():

    d_env={} #initialize dictionary

    for key in Request.ServerVariables:

        d_env[key]=str(Request.ServerVariables(key))

    return d_env
Request.ServerVariables responds to the python operator 'in' by returning a list. And, it can also take a key and return it's value. You notice the value is converted into a string, so it can be treated like a python string.

For a more complicated example, here is a python function that converts the Request.Form or Request.Querystring objects into a python dictionary. This would be a function you'd use to get back data from a form. It returns either the entire Request Collection as a python dictionary, a subset if you provide a list of keys, or a single value, if you provide a single key.

Get Request collection - 3 different ways to get Request data

def getdata (keys=''):

    '''

] possible ways to call this function:

    value=getdata('key')

    dict=getdata(('key1','key2')) #get subset

    dict=getdata() #return everything

    It assumes you don't have the same key for

    GET and POST methods

    '''

    import types

    key_type=type(keys)

    d_data={} #initialize dictionary

    if keys=='': #if they don't supply keys then return everything

        for key in Request.Form:

            d_data[key]=Request.Form(key)

        for key in Request.QueryString:

            d_data[key]=Request.QueryString(key)

        return d_data

    elif key_type == types.StringType: #if they provide a single string

        value=Request.Form(keys)

        if (value != 'None') and (str(value) == 'None'):

            return Request.QueryString(keys)

        else:

            return value

    #if they provide a list then return a dictionary with all the key/values

    elif key_type == types.TupleType or key_type == types.ListType:

        for key in keys:

            value=Request.Form(key)

            #now check if the data was empty, if so look at QueryString

            if (value != 'None') and (str(value) == 'None'):

                value=Request.QueryString(key)

            data[key]=value

        return d_data
To print out this data you will need to use the Response object which accepts python strings. A simple: Response.Write(str(d_data)) would suffice. A better looking way would be to do something like:

for pair in d_data.items():

    Response.Write(pair[0]+':'+pair[1]+'<br>')
Notice the adding of <br> to have a line break for each pair. If you want it more fancy you can convert it to table output.

HTMLgen can help with it's Table object:

Table=HTMLgen.Table('Key/Value pairs for Response object') #title

Table.heading=('Key','Value')

for pair in d_data.items() #get each key/val pair

  Table.body.append(list(pair))  #takes a list of lists

                 #[ [key1,val1], [key2,val2]]

                 #one pair for every table row

Response.Write(str(Table))
HTMLgen deserves an entire article to itself. You can use it to write web forms and manage other HTML elements. As a final example, here is a simple ASP application that uses the functions written above and a simple HTMLgen web form to spit data back. The typical idiom w/HTMLgen is to create a web object like a form and append things to it. In the code below, I append a textbox, radio buttons, and a checkbox.

<%@ LANGUAGE = Python%>

<%

from HTMLgen import *

from HTMLcolors import *

#import the file which has getenv and getdata from above

d_env=getenv() #get environment variables

#create a simple default document

webpage = SimpleDocument(title = 'Bedrock Housing')

#create form and append elements to it

F=Form(d_env['URL'])

F.append(Heading(1,'Rock Housing'))

F.append('What Street:',BR())

F.append( Input(type='text',name='street',size=30),BR())

F.append('Select your house type:',BR())

types=('limestone','granite','marble')

for i in types:

    F.append(Input(type='radio',name='house_type',rlabel=i,value=i),BR())

F.append('Select special features:',BR())

features=('stone roof','dishwasher','door bell')

for i in features:

    F.append(Input(type='checkbox',name='features',rlabel=i,value=i),BR())

#done with web form, now append it

webpage.append(F)

#get the data the user entered and return it

results=getdata() #get everything

webpage.append(str(results))

Response.Write(str(webpage))
Have a great time with programming with python!

John Nielsen   nielsenjf@my-deja.com


MTS and Python for NT

How to use python w/MTS on NT.

MTS represents microsoft's attempt to simplify computing for a distributed system. Where COM is all about identity, MTS manages state. It introduces new ideas and you'll find corresponding terminology like: object and state context, activity, causality. It also represents a push towards declarative programming -- where you declare how a class can exist and the operating system provides the services to handle that (instead of you having to deal with it). Windows 2000 offers a further set of refinements, though what's documented here will hopefully be backward compatible.

In this example, we'll specifically deal with a simple case that can show the transaction monitor in use. We have an active server page (using python of course) making calls to a python MTS component. The component then makes simple use of ObjectContext interfaces and decides whether or not the transaction is a success or failure.

To insert a python COM object into MTS, you want to register your COM object,setup an MTS package, and then add the python component to the package as a component that is already registered. After it is added, do not then register the component using python, as it will overwrite the changes MTS did. To create a package, open up the Transaction Server Explorer from the Option Pack, go to My Computer -> Packages Installed, right click and select new and create an empty package. From there you can call the package whatever you want and let it run as whomever. Then open up the package you created, right click on Components, select New Component, and finally select Import components that are already registered, from which you highlight your python component it provides in the list. You can also right click on Roles in your package to create a role you can put users or groups in. The last thing you need to do is right-click on your component in the package, select properties, and finally transaction. Then select the radio button next to: 'Requires a transaction'.

As stated before, this example is interested in ObjectContext. The ObjectContext interface is like a friend doing things on your behalf. You declare what you want, and it helps you with that, always acting as a buffer between you and the outside world. Many methods are available from this interface: CreateInstance, SetComplete, SetAbort, EnableCommit, DisableCommit, IsInTransaction, IsCallerInRole, etc.

In this example we will deal with: SetComplete and SetAbort, and IsCallerInRole. Invoking SetComplete will tell MTS that the object is done and it can go ahead and commit. In contrast, SetAbort means the object is done but for whatever the transaction must roll back. IsCallerInRole determines whether or not the client calling the object is in the role you created that has lists of users or groups.

Example

In python you setup the ObjectContext object in the following manner:

mtsobj = win32com.client.Dispatch("MTXAS.AppServer.1")

mts=mtsobj.GetObjectContext()
and can then make calls like:

if mts.IsCallerInRole('bedrock'):

    do_this()

<nl>Below is the active server page and python object that you can

watch at work using "Transaction Statistics" in the Transaction Server

Explorer. Anything but wilma and betty will cause the aborted list to

increment. If wila or betty are supplied from the ASP, you notice

Committed increasing.
Here is an extremely simple python active server page that calls the mts object:

<SCRIPT Language="Python" RunAt="Server">

import win32com

find_pebbles = win32com.client.dynamic.Dispatch("mts1")

a=find_pebbles('wilma')

Response.Write(a)

</SCRIPT>
Here is the mts COM object:

from win32com.server.exception import COMException

import win32com.server.util

import win32com.client.dynamic

#to generate guids use:

#import pythoncom

#print pythoncom.CreateGuid()

class Mts:

    # COM attributes.

    _reg_clsid_ = '{3D094770-B73E-11D3-99FC-00902776D585}'

               #guid for your class in registry

    _reg_desc_ = "test mts functions"

    _reg_progid_ = "mts1" #The progid for this class

    _reg_class_spec_ = "mts_test.Mts"

               #tells Python how to create the object: filename.class

    _public_methods_ = ['getkid' ]  #names of callable methods

    def __init__(self):

        pass

    def getkid(self, person):

        mtsobj = win32com.client.Dispatch("MTXAS.AppServer.1")

        mts=mtsobj.GetObjectContext()

        if mts is None:

            #com obj -- no mts

            result='error: mts not available'

        else:

            #mts is available

            #first check if they are in the right role

            if mts.IsCallerInRole('bedrock'):

                moms={'wilma':'bambam','betty':'pebbles'}

                person=str(person) #convert from unicode to string

                if moms.has_key(person):

                    mts.SetComplete()

                    result=moms[person]

                else:

                    result='not in bedrock'

                    mts.SetAbort()

            else:

                result='sorry can't let you know'

        return result

if __name__=='__main__':

    import win32com.server.register

    win32com.server.register.UseCommandLine(Mts)
Have a great time with programming with python!

John Nielsen   nielsenjf@my-deja.com


Python, C++, and COM

Python a helpful cousin to C++ COM development

Ever want to write your pseudo-code for C++ win32 or COM programming and be able to have it run? In many cases python offers just that.Python offers easy, fast development, yet is still close enough to C++ to be recognizable. For example, compare python's class mechanism and exception handeling. With the perspective of being a light overview, we'll look at some details of development of a raw C++ COM component and compare that to python development. What is interesting to focus on, is not how their different, but how they are similar, which is useful to leverage. For example, here's what abstract base classes (an idea used for COM interfaces) look like in python and C++.

Example

Abstract Base classes:

class IFlintstone

{

public:

  virtual TellWilma(long when)=0;

};

class IRubble

{

public:

  virtual AskBetty(long when)=0;

};

#Abtract Base classes for python

#not as formal as C++'s

class IFlintstone:

  def TellWilma(self,when=0):

    raise RuntimeError, 'virtual function'

class IRubble:

  def AskBetty(self,when=0):

    raise RuntimeError, 'virtual function'
Also, in the Win32 world, python and C++ are very similar. You'll notice that if you look at some of the other win32 examples in overviews. Python is capable of some sophisticated win32 programming allowing you to get the problem worked out before you have to write out the C++. For COM, like C++, python is multi-threaded and can live in any apartment. You even have at your disposal PyIUnknown.QueryInterface, pythoncom.CoInitializeEx, etc. much like in C++.. But don't have to worry about casting, reference counts, and such. Python has a translucent rather than black-box approach to COM.

Thus, in COM programming, you can quickly prototype a program, and then if necessary, work on a C++ solution. As already mentioned, a typical means in C++ to develop COM objects is with multiple inheritance. You create class that inherits whatever interfaces (abstract base classes), you want to expose. The only disadvantage to this is that it means that the interfaces can't have the same function names. These interfaces need to be defined using IDL to allow for proxies, resove any ambiguities C++ may have, and generate type libraries. A very simple IDL interface wouuld look like:

IDL interface:

import "unknwn.idl"

[object, uuid(11111111-2222-3333-4444-555555555555)]

interface IFlintstone : IUnknown

{

  HRESULT TellWilma([in] int when);

}

interface IRubble : IUnknown

{

  HRESULT AskBetty([in] int when);

}
After running it through the MIDL compiler, you include the header file created by MIDL and then inherit this just as with the class examples above. Then you define every method for each interface which includes IUnknown, as well as IFlintstone and IRubble. At this point, I'm ommitting some details like the metaclass which implements IClassFactory that creates Bedrock and errorhandeling , but from this class you can see the basic functions you'll have to write.

C++ definition:

#include "file_from_midl.h"

class BedRock : public IFlintstone, public IRubble {

    LONG m_references;

public:

   BedRock() : m_references(0){ } // constructor

   ~BedRock(void) { } //destructor

   // IUnknown Methods not shown in their entirety

   STDMETHODIMP QueryInterface(REFIID riid, void **ppv)

   STDMETHODIMP_(ULONG) AddRef(void)

   STDMETHODIMP_(ULONG) Release(void)

   // IBedRock Methods

   STDMETHODIMP TellWilma(long when)

   {

      write_to_cartoon(when,"Wilma!");

      return S_OK;

   }

   STDMETHODIMP AskBetty(long when)

   {

      write_to_cartoon(when,"Hey uh Betty!");

      return S_OK;

   }

};
How does python manage this? First of all, You do not bother to write IUnknown and IClassFactory (python, being a dynamic language, uses IDispatch to expose the methods you're interested in). Which also means there is no MIDL step you have to go through, if you change what interfaces are going to be used. Python's approach is for you to add attributes to your python class, defining the necessary COM specifics. For example, instead of defining the GUIDs in MIDL, you simply use the _reg_clsid_ attribute to define the class's GUID.

For the other methods, the basic idea is to create a python class and write class attributes that will expose what methods you want for COM. For interfaces which have native support you can include the list of interfaces in a _com_interfaces_ attribute for your class. And, for all interfaces, you simply add the interface's method calls to the list of in the _public_methods_ class attribute. In this case, neither IFlintstone nor IRubble have native support, so we don't bother with _com_interfaces_.

You'll notice the python COM class object is reasonably simple, but similar in spirit to the above.

Basic python COM code

##Abtract Base classes for python

class IFlintstone:

  def TellWilma(self,when=0):

    raise RuntimeError, 'virtual function'

class IRubble:

  def AskBetty(self,when=0):

    raise RuntimeError, 'virtual function'

class BedRock(IFlintstone, IRubble): #no need to use MIDL for these

    _public_methods_ = ['TellWilma', 'AskBetty']

    _reg_progid_ = "Python.Bedrock"

    _reg_clsid_ = "{12345678-1234-5678-1234-567812345678}"

    def __init__(self): #constructur

    pass #not doing anthing w/it

         #no need to keep track of reference counts

    def __del__(self): #destructor

    pass #not much going on here either

    def TellWilma(self,when=0):

    write_to_cartoon(when,"Wilma!")

    def AskBetty(self,when=0):

    write_to_cartoon(when,"Hey uh Betty")

if __name__=='__main__':

    UseCommandLine(BedRock)
Have a great time with programming with python!

John Nielsen   nielsenjf@my-deja.com


ADSI, Exchange, and Python

  • SUMMARY
    • Introduction
    • User Account Management
      • Adding a user
      • Getting/Modifying user info
      • Deleting a User
    • Distribution List
      • Adding to a list
      • Recursively listing all unique members
    • In Conclusion
  • Further Info
  • Author

SUMMARY

Python's adsi access works really well with Exchange (late or early binding since you can read microsoft's type library). To get started, you will need to download adsi from microsoft: Microsoft ADSI. Microsoft has documentation for using languages other than python in the sdk.

Introduction

Before doing anything else you need to go through the next two steps:
Acquiring ADSI object
Task | Description
Create Global Providers Object | adsi = win32com.client.Dispatch('ADsNameSpaces')
Create LDAP Provider Object | ldap = adsi.getobject("","LDAP:")

Now you have to decide how you want to access the exchange server.
I have chosen to authenticate, in which case you need to use OpenDSObject()
Method of access
Task | Description
Specify Login and Domain | logon_ex='cn=wilma, dc=bedrock'
Specify password | password='dino'
Login to Server | myDSObject = ldap.OpenDSObject(ex_path,logon_ex,password,0)

Note -- the fourth argument to opendsobject has various options for how to authenticate. For example, if you use 1 instead of zero, it should either use NTLM or Kerberos for authentication. For more information, check out: OpenDSObject

The ex_path in the above example specifies the resource you are trying to access. For example:

Types of paths
Task | Description
Specific User | ex_path="LDAP://server/cn=fredflintsone,cn=Recipients,ou=rubble,o=bedrock"
Mailing List | ex_path="LDAP://server/cn=bedrock,cn=Recipients,ou=rubble,o=bedrock"
All Recipients | ex_path="LDAP://server/cn=Recipients,ou=rubble,o=bedrock"

User Account Management

Adding a user to exchange

# Adding a new account to exchange is simple except for one thing.
# You need to associate an NT account with an exchange account.
# To do so at this point requires some c++ to produce some hex SID
# and trustee information that adsi can use.
# At this point assume we have C++ magic
#
# Note we are accessing Recipients directly now
ex_path="LDAP://server/cn=Recipients,ou=rubble,o=bedrock"
logon_ex='cn=wilma,dc=bedrock'
password='dino'
myDSObject = ldap.OpenDSObject(ex_path,logon_ex,password,0)

newobj = myDSObject.create("OrganizationalPerson", "cn=betty")
newobj.put('MailPreferenceOption', 0)
# etc . . . add whatever else you want. There are a few required fields.
# Now the part to get exchange associated with NT
# The Magic is here
import win32pipe
assoc_nt=win32pipe.popen('getsid bedrock\\fredflint')
nt_security=win32pipe.popen('gettrustee bedrock\\fredflint')
newobj.put('NT-Security-Descriptor',assoc_nt)
newobj.put('NT-Security-Descriptor',nt_security)

newobj.SetInfo

Getting/Modify user info

ex_path="LDAP://server/cn=fredflint,cn=Recipients,ou=rubble,o=bedrock"
myDSObject = ldap.OpenDSObject(ex_path,logon_ex,password,0)
myDSObject.Getinfo()
# To access a user's data try:
attribute = myDSObject.Get('Extension-Attribute-1')
print attribute
# To modify a user try:
myDSObject.Put('Extension-Attribute-1','barney was here')
myDSObject.Setinfo()
Comments

Note -- To make any changes permanent setinfo is required.

Deleting a user from exchange

#Here we connect to Recipients and then
#delete a user
#This is a more complete example.
#data is a dictionary that contains info
#that may be dynamic like the domain,
#admin login, or exchange server
#notice I am using a try/except clause here
#to catch any exceptions
try:
  #ADSI here
  # Create the Global Providers object
  logon_ex='cn='+data['NT_admin']+', dc='+data['NT_domain']+',cn=admin'
  ex_list_path="LDAP://"+data['EX_site_srv']+"/cn=Recipients,ou="\
  +data['ou']+",o="+data['o']
  adsi = win32com.client.Dispatch('ADsNameSpaces')
  #
  # Now get the LDAP Provider object
  ldap = adsi.getobject("","LDAP:")
  dsobj = ldap.OpenDSObject(ex_list_path,logon_ex,data['NT_password'],0);
  dsobj.Getinfo()
  dsobj.Delete("OrganizationalPerson", "cn="+login)
  dsobj.Setinfo()
except:
  print 'Error deleting '+login, sys.exc_type , sys.exc_value

Distribution List

Adding to a distribution list

# I used putex instead of put because it has more options
# The '3' value means append. The SDK has specific info on it
ex_list_path="LDAP://"+server+"/cn="+list+",cn=Recipients,ou="+ou+",o="+o
dsobj = ldap.OpenDSObject(ex_list_path,logon_ex,password,0);
dsobj.Getinfo()
list_member='cn='+user+',cn=Recipients,ou='+ou+',o='+o
append_list=[list_member]
dsobj.putEx(3,'Member',append_list);
dsobj.SetInfo()

Recursively listing all unique members of a distribution list

#This function looks for all Organizational persons to add to a dictionary
#If it gets a groupOfNames, it needs to parse that and call the function again
#to get the members of the groupOfNames
def getmembers(path=''):
  user_dict={}
  logon_ex='cn=fred, dc=bedrock'
  password='dino'
  server='flintstone'
  ldap = win32com.client.Dispatch('ADsNameSpaces').getobject("","LDAP:")
  dsobj = ldap.OpenDSObject(path,logon_ex,password,0)
  dsobj.Getinfo()
  if dsobj.Class=='organizationalPerson':
      user_dict[string.capitalize(dsobj.cn)]=dsobj.uid
  elif dsobj.Class=='groupOfNames':
      for i in dsobj.Members():
              if i.Class=='organizationalPerson':
                  user_dict[string.capitalize(i.cn)]=i.uid
              elif type(i.member)==types.TupleType:
                  for j in i.member:
                      newpath='LDAP://'+server+'/'+j
                      getmembers(newpath)
              elif type(i.member)==types.StringType:
                  newpath='LDAP://'+server+'/'+i.member
                  getmembers(newpath)
  elif dsobj.Class=='Remote-Address':
      User_dict[string.capitalize(dsobj.cn)]=dsobj.uid
  elif  dsobj.Class=='Public-Folder':
      pass
  else:
      print 'skipped',dsobj.Class,dsobj.uid
  return user_dict

In Conclusion

Microsoft's ADSI allows one to manage exchange w/out having to resort to the lower-level APIs. Python has no trouble accessing Microsoft's ADSI to help simplify user management.

Further Info

  • Microsoft MSDN references
  • Microsoft ADSI
  • Microsoft MSDN ADSI reference
  • Relevant Python libraries: win32com.client

Author

John Nielsen, jn@who.net
-- Have a great time with programming with python!

ADSI, Exchange, and Python


win32com Documentation Index

Python and COM - Blowing the others away

PythonCOM Documentation Index

The following documentation is available

A Quick Start to Client Side COM (including makepy)

A Quick Start to Server Side COM

Information on generated Python files (ie, what makepy generates)

A brief description of the win32com package structure

Python COM Implementation documentation

Misc stuff I don’t know where to put anywhere else

ActiveX Scripting

ActiveX Scripting Demos


win32com Readme

Python and COM - Blowing the others away

Python COM Extensions Readme

This is the readme for win32com. Please check out the win32com documentation index

The win32com\test directory contains some interesting scripts (and a new readme.txt). Although these are used for testing, they do show a variety of COM techniques.

Recent Changes

win32all-136/ActivePython 2.1

Universal gateway has arrived! You can now implement arbitrary vtable based interfaces, as long as they are defined in a type-library (and even if not if you bonkers :-). You simply add one extra statement to your COM server nominating the typelibrary with the interface. Your PythonCOM server then can list the interfaces in that typelibrary by name in _com_interfaces_. Note that you must still have _public_methods_, but it need not specify named vtable interface methods - ie, in most cases this list will be empty. See win32com\servers\test_pycomtest.py for an example. (Note the intent is for the list of interfaces passed to universal.RegisterInterfaces() will be optional)

win32all-133 changes

Bug fixes! We now have an option to honour the hidden attribute on objects. This currently defaults to off, so nothing should break.

win32all-130-132 changes

Bug fixes. Structures can be created quite simply, using win32com.client.Record() - see its docstring for details.

See also the older changes.

ActiveX Scripting

This release contains full support for Python as an ActiveX Scripting Engine and Host. Check out the ActiveX Scripting Demos (which includes information on registering the engine)

There is also support for Python as an ActiveX Scripting Host.

Active Debugging seems to be fully functional.

Known bugs and problems...

Certain servers may hang at shutdown if all COM client objects not released - notably, MSOffice. Eg, if a Python program that is talking to excel raises an exception and exits, the Python program will be hung. There are no known leaks in win32com, but there is also no attempt at automatic object cleanup. All standard Python caveats about references apply! Note this is a "feature" of COM, and not a bug in win32com. You can use the function pythoncom._GetInterfaceCount() to determine how many COM objects are held by Python as your program terminates - this should return zero.

Even Older Changes

win32all-129 changes

We now have complete support for COM structures. To take advantage of this, you need a late version of COM (Windows 2000, 98, Windows 95 with DCOM95 1.2, or Window NT 4.0 with Service Pack 4). You can receive structures from any COM object, and reference the structure's elements by name (eg, struct.int_val). Once you have a structure, you can pass it to any other function, but currently there is no simple way to create Record objects in Python. Records work with or without makepy support for an object.

We support demand-building of makepy files. When a makepy file is built in this way, instead of a single file being generated in the gencache, a Python package is created. In the package __init__ file is all the information you would normally find in a makepy file, except for the classes! As an object is needed at runtime, makepy is run again to generate only the specific class requested, into a separate file in the package. This has significant advantages when loading huge type libraries - you get all the benefits of makepy, but don't have to suffer the huge delay running makepy. Indeed, there are some type libraries that are too large to run makepy at all - this solves that problem.

This new demand-building feature is not enabled by default - you must run makepy -d, or specify the new bForDemand parameter to the gencache functions. It is expected that in the future the existing code will be dropped in favour of this package mechanism (although we will always retain the option to generate the entire package at the start, as makepy does now)

makepy generated code should be even faster now - many of the run-time type conversions that the previous version performed have been optimized away (makepy already knows the return type of many functions - there was no need for it to check these types at runtime)

win32all-128 changes

We now have events working pretty well. NOTE: This is still experimental – all feedback appreciated. See the docstring for win32com.client.DispatchWithEvents and win32com\test\testMSOfficeEvents.py for more details and samples.

Active Debugging support improved again.

win32all-127 fixes (includes win32all-126).

All Arrays of VARIANT's of type VT_UI1 are now converted to a buffer object rather than the previous list of integers. In addition, a buffer object can be passed to COM and an array of type VT_UI1 will be created. This type is often used when passing raw binary data, and this change is far more efficient for large data sets. For example, if you have a string or array.array object holding binary data, you can use the buffer() built-in on the object to create a buffer object that will force the new behaviour. Note: This may break some code that uses arrays of this type, but after much soul-searching it was decided this new behaviour is worth the pain.

A bug that caused the Active Scripting implementation to die has been fixed. (Specifically, the implementation of to IActiveScript::AddTypeLib() was buggy)

Active Scripting bug when using IE5 fixed (it has a method called "print" which messed us up)

Error handling when setting erroneous properties on COM objects fixed. There were cases where errors would not be reported.

Threading bug that was exposed when using MTS has been fixed. Minor (but regular) memory leak plugged. Can now run for (nearly :-) ever under MTS with huge thread numbers.

makepy has better support for objects that expose multiple IDispatch interfaces, Also sorts the list of type-libraries correctly, and hides libraries marked as hidden.

COM now supports byref date arguments.

win32all-125 fixes.

Better support for DCOM via win32com.client.DispathEx(progId, machineName=None, …). Small DCOM demo in win32com\test\testDCOM.py.

Registration of COM servers has been made a little simpler, and the QuickStart has been changed to reflect this. Classes no longer need _reg_class_spec_ or _reg_desc_ attributes - the registration process now provides sensible defaults. Also note that if _reg_class_spec_ is not specified, the PythonPath will also be modified when your server is loaded - this prevents the common problem of not having your COM server on the PythonPath. Note that if _reg_class_spec_ is specified, the original behaviour remains - you must ensure the path is correct yourself.

Type information has been upgraded. The Pythoncom core is now capable of creating COM Type Libraries. All left remaining is some Python programming, so expect this soon.

Robin Becker has dramatically increased the speed of COM accessing certain objects (notably MSOffice) when not using makepy.

Build 123 and earlier changes.

Active Debugging should now be nearly capable of debugging stand-alone Python scripts.
Note that to use this feature you will need an Active Scripting debugger installed. Visual Interdev version 6 is one such debugger, or a free debugger can be found at http://msdn.microsoft.com/scripting
To debug Python scripts, use the following commands:

from win32com.axscript import debugger
debugger.Break()

This currently has some problems – most notable is that modules imported after debugging has commenced does not work. It also occasionally crashes :-( So maybe using it isn't such a good idea after all :-)

Even older Changes

Active Debugging support has been improved greatly, and some bugs in Active Scripting have been resolved. Python scripts are fully debugging from MSIE, WSH, etc (havent tested ASP :-( Please let me know of any problems.)

Couple of minor interfaces added. win32com.shell.shell has been filled out some more.

pythoncom.CoUninitialize() is no longer called automatically at shutdown. This seems to fix more problems than it causes, but if your COM program is hanging at shutdown, try adding an explicit call to this method just before you exit.

Regressed back to the default COM threading model being "Apartment", as defaulting to "Free Threading" seems to break so many clients. sys.coinit_flags still allows you to dictate the behaviour before pythoncom is imported for the first time.

makepy generated files now have much better support for default values for arguments. Also attempted to remove some hacks related to "interface" descriptions in IDL file. Nothing should break, and my (now comprehensive) test suite runs to completion, but let me know of any problems with weird, custom IDL files.

More changes to makepy to better support COM Constants. All external COM constants (eg, MSWord related constants) should now be available in win32com.client.constants. No old code should break, but in the future the "old style" of using COM constants will be removed. This is all documented in the Client Side Quick Start documentation. Also made a few minor changes to the bGuiProgress param.


Modules

  • axcontrol
  • axdebug
  • axscript
  • exchange
  • exchdapi
  • IADsContainer
  • IADsUser
  • IDirectoryObject
  • internet
  • mapi
  • pythoncom
  • shell


IADsContainer

Module IADsContainer

A COM interface to ADSI's IADsContainer interface.

Methods

get_Count

get_Filter

put_Filter

get_Hints

put_Hints


IADsContainer.get_Count

int = get_Count()


IADsContainer.get_Filter

object = get_Filter()


IADsContainer.get_Hints

object = get_Hints()


IADsContainer.put_Filter

put_Filter(val)

Parameters

val : object


IADsContainer.put_Hints

put_Hints(val)

Parameters

val : object


IADsUser

Module IADsUser

A COM interface to ADSI's IADsUser interface.

Methods

get_AccountDisabled

put_AccountDisabled

get_AccountExpirationDate

put_AccountExpirationDate

get_BadLoginAddress

get_BadLoginCount

get_Department

put_Department

get_Description

put_Description

get_Division

put_Division

get_EmailAddress

put_EmailAddress

get_EmployeeID

put_EmployeeID

get_FirstName

put_FirstName

get_FullName

put_FullName

get_HomeDirectory

put_HomeDirectory

get_HomePage

put_HomePage

get_LoginScript

put_LoginScript


IADsUser.get_AccountDisabled

int = get_AccountDisabled()


IADsUser.get_AccountExpirationDate

int = get_AccountExpirationDate()


IADsUser.get_BadLoginAddress

unicode = get_BadLoginAddress()


IADsUser.get_BadLoginCount

int = get_BadLoginCount()


IADsUser.get_Department

unicode = get_Department()


IADsUser.get_Description

unicode = get_Description()


IADsUser.get_Division

unicode = get_Division()


IADsUser.get_EmailAddress

unicode = get_EmailAddress()


IADsUser.get_EmployeeID

unicode = get_EmployeeID()


IADsUser.get_FirstName

unicode = get_FirstName()


IADsUser.get_FullName

unicode = get_FullName()


IADsUser.get_HomeDirectory

unicode = get_HomeDirectory()


IADsUser.get_HomePage

unicode = get_HomePage()


IADsUser.get_LoginScript

unicode = get_LoginScript()


IADsUser.put_AccountDisabled

put_AccountDisabled(val)

Parameters

val : int


IADsUser.put_AccountExpirationDate

put_AccountExpirationDate(val)

Parameters

val : PyTime


IADsUser.put_Department

put_Department(val)

Parameters

val : unicode


IADsUser.put_Description

put_Description(val)

Parameters

val : unicode


IADsUser.put_Division

put_Division(val)

Parameters

val : unicode


IADsUser.put_EmailAddress

put_EmailAddress(val)

Parameters

val : unicode


IADsUser.put_EmployeeID

put_EmployeeID(val)

Parameters

val : unicode


IADsUser.put_FirstName

put_FirstName(val)

Parameters

val : unicode


IADsUser.put_FullName

put_FullName(val)

Parameters

val : unicode


IADsUser.put_HomeDirectory

put_HomeDirectory(val)

Parameters

val : unicode


IADsUser.put_HomePage

put_HomePage(val)

Parameters

val : unicode


IADsUser.put_LoginScript

put_LoginScript(val)

Parameters

val : unicode


IDirectoryObject

Module IDirectoryObject

A COM interface to ADSI's IDirectoryObject interface.

Methods

GetObjectInformation
Retrieves an PyADS_OBJECT_INFO object that contains information about the identity and location of a directory service object.

GetObjectAttributes
Gets one or more specified attributes of the directory service object, as defined in the PyADS_ATTR_INFO structure.

SetObjectAttributes
Sets one or more specified attributes of the directory service object, as defined in the PyADS_ATTR_INFO structure.


IDirectoryObject.GetObjectAttributes

PyADS_OBJECT_INFO = GetObjectAttributes()

Gets one or more specified attributes of the directory service object, as defined in the PyADS_ATTR_INFO structure.


IDirectoryObject.GetObjectInformation

PyADS_OBJECT_INFO = GetObjectInformation()

Retrieves an PyADS_OBJECT_INFO object that contains information about the identity and location of a directory service object.


IDirectoryObject.SetObjectAttributes

int = SetObjectAttributes()

Sets one or more specified attributes of the directory service object, as defined in the PyADS_ATTR_INFO structure.


axcontrol

Module axcontrol

A module, encapsulating the ActiveX Control interfaces

Methods

OleCreate
Creates a new embedded object identified by a CLSID.


axcontrol.OleCreate

PyIOleObject = OleCreate(clsid, clsid , obCLSID , obIID , renderopt , obFormatEtc , obOleClientSite , obStorage )

Creates a new embedded object identified by a CLSID.

Parameters

clsid : IID

A CLSID in string or native format

clsid : IID

A IID in string or native format

obCLSID : PyIID

The PyIID CLSID for the OLE object to create.

obIID : PyIID

The PyIID for the interface to return.

renderopt : DWORD

The DWORD renderopt for redering the Display.

obFormatEtc : FORMATETC

The FORMATETC structure.

obOleClientSite : PyIOleClientSite

The PyIOleClientSite interface to the container.

obStorage : PyIStorage

The PyIStorage interface.


axdebug

Module axdebug

A module, encapsulating the ActiveX Debugging


APPBREAKFLAG_DEBUGGER_BLOCK

const axdebug.APPBREAKFLAG_DEBUGGER_BLOCK;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Languages should break immediately with BREAKREASON_DEBUGGER_BLOCK


APPBREAKFLAG_DEBUGGER_HALT

const axdebug.APPBREAKFLAG_DEBUGGER_HALT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Languages should break immediately with BREAKREASON_DEBUGGER_HALT


APPBREAKFLAG_STEP

const axdebug.APPBREAKFLAG_STEP;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

ADD_CONSTANT(APPBREAKFLAG_APPBREAKFLAG_NESTED);


BREAKPOINT_DELETED

const axdebug.BREAKPOINT_DELETED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


BREAKPOINT_DISABLED

const axdebug.BREAKPOINT_DISABLED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


BREAKPOINT_ENABLED

const axdebug.BREAKPOINT_ENABLED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


BREAKREASON_BREAKPOINT

const axdebug.BREAKREASON_BREAKPOINT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Caused by an explicit breakpoint


BREAKREASON_DEBUGGER_BLOCK

const axdebug.BREAKREASON_DEBUGGER_BLOCK;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Caused by another thread breaking


BREAKREASON_DEBUGGER_HALT

const axdebug.BREAKREASON_DEBUGGER_HALT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Caused by debugger IDE requested break


BREAKREASON_ERROR

const axdebug.BREAKREASON_ERROR;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Caused by an execution error


BREAKREASON_HOST_INITIATED

const axdebug.BREAKREASON_HOST_INITIATED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Caused by host requested break


BREAKREASON_LANGUAGE_INITIATED

const axdebug.BREAKREASON_LANGUAGE_INITIATED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Caused by a scripted break


BREAKREASON_STEP

const axdebug.BREAKREASON_STEP;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Caused by the stepping mode


BREAKRESUMEACTION_ABORT

const axdebug.BREAKRESUMEACTION_ABORT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Abort the application


BREAKRESUMEACTION_CONTINUE

const axdebug.BREAKRESUMEACTION_CONTINUE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Continue running


BREAKRESUMEACTION_STEP_INTO

const axdebug.BREAKRESUMEACTION_STEP_INTO;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Step into a procedure


BREAKRESUMEACTION_STEP_OUT

const axdebug.BREAKRESUMEACTION_STEP_OUT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Step out of the current procedure


BREAKRESUMEACTION_STEP_OVER

const axdebug.BREAKRESUMEACTION_STEP_OVER;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Step over a procedure


CLSID_DefaultDebugSessionProvider

const axdebug.CLSID_DefaultDebugSessionProvider;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

An IID object


CLSID_MachineDebugManager

const axdebug.CLSID_MachineDebugManager;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

An IID object


CLSID_ProcessDebugManager

const axdebug.CLSID_ProcessDebugManager;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

An IID object


DBGPROP_ATTRIB_ACCESS_FINAL

const axdebug.DBGPROP_ATTRIB_ACCESS_FINAL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_ACCESS_PRIVATE

const axdebug.DBGPROP_ATTRIB_ACCESS_PRIVATE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_ACCESS_PROTECTED

const axdebug.DBGPROP_ATTRIB_ACCESS_PROTECTED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_ACCESS_PUBLIC

const axdebug.DBGPROP_ATTRIB_ACCESS_PUBLIC;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_HAS_EXTENDED_ATTRIBS

const axdebug.DBGPROP_ATTRIB_HAS_EXTENDED_ATTRIBS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_NO_ATTRIB

const axdebug.DBGPROP_ATTRIB_NO_ATTRIB;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_STORAGE_FIELD

const axdebug.DBGPROP_ATTRIB_STORAGE_FIELD;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_STORAGE_GLOBAL

const axdebug.DBGPROP_ATTRIB_STORAGE_GLOBAL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_STORAGE_STATIC

const axdebug.DBGPROP_ATTRIB_STORAGE_STATIC;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_STORAGE_VIRTUAL

const axdebug.DBGPROP_ATTRIB_STORAGE_VIRTUAL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_TYPE_IS_CONSTANT

const axdebug.DBGPROP_ATTRIB_TYPE_IS_CONSTANT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_TYPE_IS_SYNCHRONIZED

const axdebug.DBGPROP_ATTRIB_TYPE_IS_SYNCHRONIZED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_TYPE_IS_VOLATILE

const axdebug.DBGPROP_ATTRIB_TYPE_IS_VOLATILE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_VALUE_IS_EXPANDABLE

const axdebug.DBGPROP_ATTRIB_VALUE_IS_EXPANDABLE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_VALUE_IS_INVALID

const axdebug.DBGPROP_ATTRIB_VALUE_IS_INVALID;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_ATTRIB_VALUE_READONLY

const axdebug.DBGPROP_ATTRIB_VALUE_READONLY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_INFO_ATTRIBUTES

const axdebug.DBGPROP_INFO_ATTRIBUTES;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_INFO_AUTOEXPAND

const axdebug.DBGPROP_INFO_AUTOEXPAND;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_INFO_DEBUGPROP

const axdebug.DBGPROP_INFO_DEBUGPROP;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_INFO_FULLNAME

const axdebug.DBGPROP_INFO_FULLNAME;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_INFO_NAME

const axdebug.DBGPROP_INFO_NAME;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_INFO_TYPE

const axdebug.DBGPROP_INFO_TYPE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DBGPROP_INFO_VALUE

const axdebug.DBGPROP_INFO_VALUE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


DEBUG_TEXT_ALLOWBREAKPOINTS

const axdebug.DEBUG_TEXT_ALLOWBREAKPOINTS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Allow breakpoints during the evaluation of the text. If this flag is not set then breakpoints will be ignored during the evaluation of the text.


DEBUG_TEXT_ISEXPRESSION

const axdebug.DEBUG_TEXT_ISEXPRESSION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Indicates that the text is an expression as opposed to a statement. This flag may affect the way in which the text is parsed by some languages.


DOCUMENTNAMETYPE_APPNODE

const axdebug.DOCUMENTNAMETYPE_APPNODE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Gets the name as it appears in the app tree


DOCUMENTNAMETYPE_FILE_TAIL

const axdebug.DOCUMENTNAMETYPE_FILE_TAIL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Gets the filename without a path (for save as...)


DOCUMENTNAMETYPE_TITLE

const axdebug.DOCUMENTNAMETYPE_TITLE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Gets the name as it appears on the doc viewer title bar


DOCUMENTNAMETYPE_URL

const axdebug.DOCUMENTNAMETYPE_URL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Gets the URL of the document, if any


ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller

const axdebug.ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


ERRORRESUMEACTION_ReexecuteErrorStatement

const axdebug.ERRORRESUMEACTION_ReexecuteErrorStatement;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


ERRORRESUMEACTION_SkipErrorStatement

const axdebug.ERRORRESUMEACTION_SkipErrorStatement;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


EX_DBGPROP_INFO_DEBUGEXTPROP

const axdebug.EX_DBGPROP_INFO_DEBUGEXTPROP;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


EX_DBGPROP_INFO_ID

const axdebug.EX_DBGPROP_INFO_ID;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


EX_DBGPROP_INFO_LOCKBYTES

const axdebug.EX_DBGPROP_INFO_LOCKBYTES;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


EX_DBGPROP_INFO_NTYPE

const axdebug.EX_DBGPROP_INFO_NTYPE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


EX_DBGPROP_INFO_NVALUE

const axdebug.EX_DBGPROP_INFO_NVALUE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


SOURCETEXT_ATTR_COMMENT

const axdebug.SOURCETEXT_ATTR_COMMENT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


SOURCETEXT_ATTR_FUNCTION_START

const axdebug.SOURCETEXT_ATTR_FUNCTION_START;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


SOURCETEXT_ATTR_KEYWORD

const axdebug.SOURCETEXT_ATTR_KEYWORD;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


SOURCETEXT_ATTR_NONSOURCE

const axdebug.SOURCETEXT_ATTR_NONSOURCE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


SOURCETEXT_ATTR_NUMBER

const axdebug.SOURCETEXT_ATTR_NUMBER;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


SOURCETEXT_ATTR_OPERATOR

const axdebug.SOURCETEXT_ATTR_OPERATOR;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


SOURCETEXT_ATTR_STRING

const axdebug.SOURCETEXT_ATTR_STRING;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP


TEXT_DOC_ATTR_READONLY

const axdebug.TEXT_DOC_ATTR_READONLY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXDEBUG/SRC/AXDEBUG.CPP

Indicates that the document is read-only.


axscript

Module axscript

A module, encapsulating the ActiveX Scripting interfaces


exchange

Module exchange

A COM interface to Exchange's API

Methods

HrGetExchangeStatus
Obtains the current state of the server on a computer.

HrGetMailboxDN
Retrieves the distinguished name (DN) for a mailbox

HrGetServerDN
Retrieves the distinguished name (DN) for a server

HrMAPIFindDefaultMsgStore
Retrieves the entry identifier of the default information store.

HrMAPIFindIPMSubtree
Retrieves the entry ID of the IPM (interpersonal message) subtree folder

HrMAPIFindInbox
Retrieves the Entry ID of the IPM inbox folder

HrMAPIFindSubfolderEx
Retrieves a subfolder in an information store using the hierarchical path name of the folder.

HrMAPIFindFolder
Retrieves the entry ID for a folder in an information store using the hierarchical path name of the folder.

HrMAPIFindFolderEx
Retrieves the entry ID of a folder in an information store using the hierarchical path name of the folder.

HrMAPIFindStore
Retrieves a pointer to the entry identifier of an information store from the display name of the store.

HrCreateProfileName
Creates a profile with the specified name

HrCreateDirEntryIdEx
Creates a directory identifier for a MAPI object, given the address of the object in the directory

HrFindExchangeGlobalAddressList
Retrieves the entry identifier of the global address list (GAL) container in the address book.

HrMailboxLogon
Logs on a server and mailbox.

HrMailboxLogoff
Logs off a server and mailbox.

HrMAPIOpenFolderEx
Opens a folder in the information store from the hierarchical path name of the folder.

HrMAPISetPropBoolean
Sets a boolean property.

HrMAPISetPropLong
Sets a long property.

HrOpenExchangePublicStore
Retrieves an interface to the public information store provider.

HrOpenExchangePrivateStore
Locates the primary user information store provider.

HrOpenExchangePublicFolders
Opens the root of the public folder hierarchy in the public information store.

HrOpenSessionObject
Retrieves a MAPI PyIMAPIProp object for the current session object.

HrOpenSiteContainer
Retrieves a MAPI PyIMAPIProp object for a site object.

HrOpenSiteContainerAddressing
Retrieves a MAPI PyIMAPIProp object for a site-addressing object.


exchange.HrCreateDirEntryIdEx

string = HrCreateDirEntryIdEx(addrBook, distinguishedName )

Creates a directory identifier for a MAPI object, given the address of the object in the directory

Parameters

addrBook : PyIAddrBook

The address book interface

distinguishedName : string

The dn of the object to obtain the entry ID for.


exchange.HrCreateProfileName

PyUnicode = HrCreateProfileName(profPrefix)

Creates a profile with the specified name

Parameters

profPrefix : string/PyUnicode

A prefix for the new profile.


exchange.HrFindExchangeGlobalAddressList

string = HrFindExchangeGlobalAddressList(addrBook)

Retrieves the entry identifier of the global address list (GAL) container in the address book.

Parameters

addrBook : PyIAddrBook

The interface containing the address book


exchange.HrGetExchangeStatus

int, int = HrGetExchangeStatus(server)

Obtains the current state of the server on a computer.

Parameters

server : string/PyUnicode

The name of the server to query.

Return Value

The result is a tuple of serviceState, serverState


exchange.HrGetMailboxDN

string = HrGetMailboxDN(session)

Retrieves the distinguished name (DN) for a mailbox

Parameters

session : IMAPISession

The root folder.


exchange.HrGetServerDN

string = HrGetServerDN(session)

Retrieves the distinguished name (DN) for a server

Parameters

session : IMAPISession

The root folder.


exchange.HrMAPIFindDefaultMsgStore

string = HrMAPIFindDefaultMsgStore(session)

Retrieves the entry identifier of the default information store.

Parameters

session : PyIMAPISession


exchange.HrMAPIFindFolder

string = HrMAPIFindFolder(folder, name )

Retrieves the entry ID for a folder in an information store using the hierarchical path name of the folder.

Parameters

folder : PyIMAPIFolder

The folder to search

name : string

Name of the folder


exchange.HrMAPIFindFolderEx

string = HrMAPIFindFolderEx(msgStore, sepString , path )

Retrieves the entry ID of a folder in an information store using the hierarchical path name of the folder.

Parameters

msgStore : PyIMsgStore

The folder to search

sepString : string

The character seperating the folder names - eg '\\'

path : string

Path to the folder


exchange.HrMAPIFindIPMSubtree

string = HrMAPIFindIPMSubtree(msgStore)

Retrieves the entry ID of the IPM (interpersonal message) subtree folder

Parameters

msgStore : PyIMsgStore


exchange.HrMAPIFindInbox

string = HrMAPIFindInbox(msgStore)

Retrieves the Entry ID of the IPM inbox folder

Parameters

msgStore : PyIMsgStore


exchange.HrMAPIFindStore

PyIMsgStore = HrMAPIFindStore(session, name )

Retrieves a pointer to the entry identifier of an information store from the display name of the store.

Parameters

session : PyIMAPISession

name : string


exchange.HrMAPIFindSubfolderEx

PyIMsgStore = HrMAPIFindSubfolderEx(rootFolder, sep , name )

Retrieves a subfolder in an information store using the hierarchical path name of the folder.

Parameters

rootFolder : PyIMAPIFolder

The root folder.

sep : string/PyUnicode

The folder seperator character.

name : string/PyUnicode

The folder name


exchange.HrMAPIOpenFolderEx

PyIMAPIFolder = HrMAPIOpenFolderEx(msgStore, sep , name )

Opens a folder in the information store from the hierarchical path name of the folder.

Parameters

msgStore : PyIMsgStore

sep : string/PyUnicode

The folder seperator character.

name : string/PyUnicode

The folder name


exchange.HrMAPISetPropBoolean

HrMAPISetPropBoolean(obj, tag)

Sets a boolean property.

Parameters

obj : PyIMAPIProp

The object to set

tag : int

The property tag


exchange.HrMAPISetPropLong

HrMAPISetPropLong(obj, tag)

Sets a long property.

Parameters

obj : PyIMAPIProp

The object to set

tag : int

The property tag


exchange.HrMailboxLogoff

HrMailboxLogoff(inbox)

Logs off a server and mailbox.

Parameters

inbox : PyIMsgStore

The open inbox.


exchange.HrMailboxLogon

PyIMsgStore = HrMailboxLogon(session, msgStore , msgStoreDN , mailboxDN )

Logs on a server and mailbox.

Parameters

session : PyIMAPISession

The session object

msgStore : PyIMsgStore

msgStoreDN : string/PyUnicode

mailboxDN : string/PyUnicode


exchange.HrOpenExchangePrivateStore

PyIMsgStore = HrOpenExchangePrivateStore(session)

Locates the primary user information store provider.

Parameters

session : PyIMAPISession

The MAPI session object


exchange.HrOpenExchangePublicFolders

PyIMAPIFolder = HrOpenExchangePublicFolders(store)

Opens the root of the public folder hierarchy in the public information store.

Parameters

store : PyIMsgStore


exchange.HrOpenExchangePublicStore

PyIMsgStore = HrOpenExchangePublicStore(session)

Retrieves an interface to the public information store provider.

Parameters

session : PyIMAPISession

The MAPI session object


exchange.HrOpenSessionObject

PyIMAPIProp = HrOpenSessionObject(session)

Retrieves a MAPI PyIMAPIProp object for the current session object.

Parameters

session : PyIMAPISession

The MAPI session object


exchange.HrOpenSiteContainer

PyIMAPIProp = HrOpenSiteContainer(session)

Retrieves a MAPI PyIMAPIProp object for a site object.

Parameters

session : PyIMAPISession

The MAPI session object


exchange.HrOpenSiteContainerAddressing

PyIMAPIProp = HrOpenSiteContainerAddressing(session)

Retrieves a MAPI PyIMAPIProp object for a site-addressing object.

Parameters

session : PyIMAPISession

The MAPI session object


exchdapi

Module exchdapi

An COM interface to Exchange's DAPI

Methods

HrInstallService

HrInstallMailboxAgent

HrCreateMailboxAgentProfile

HrCreateGatewayProfile

HrMailboxAgentExists

HrAdminProgramExists

HrRemoveMailboxAgent
Removes a Mailbox Agent

HrRemoveProfile
Removes a profile

HrEnumOrganizations
Lists the names of the organizations on the server.

HrEnumSites
Lists the names of the sites in an organization.

HrEnumContainers
Lists the names of the containers on the server

HrEnumSiteAdmins
Lists the administrators for a site.

HrGetServiceAccountName
Obtains the account name for a service.


exchdapi.HrAdminProgramExists

HrAdminProgramExists()


exchdapi.HrCreateGatewayProfile

HrCreateGatewayProfile(serviceName, profile)

Parameters

serviceName : string

The name of the service.

profile : string

The profile.


exchdapi.HrCreateMailboxAgentProfile

HrCreateMailboxAgentProfile(serviceName, profile)

Parameters

serviceName : string

The name of the service.

profile : string

The profile.


exchdapi.HrEnumContainers

[string, ...] = HrEnumContainers(server, siteDN , fSubtree )

Lists the names of the containers on the server

Parameters

server : string

The name of the server

siteDN : string

Distinguished name (DN) of the site.

fSubtree : int


exchdapi.HrEnumOrganizations

[string, ...] = HrEnumOrganizations(rootDN, server )

Lists the names of the organizations on the server.

Parameters

rootDN : string

Contains the distinguished name (DN) of the directory information tree (DIT) root.

server : string

The name of the server


exchdapi.HrEnumSiteAdmins

[string, ...] = HrEnumSiteAdmins(server, siteDN )

Lists the administrators for a site.

Parameters

server : string

The name of the server

siteDN : string

Distinguished name (DN) of the site.


exchdapi.HrEnumSites

[string, ...] = HrEnumSites(server, organizationDN )

Lists the names of the sites in an organization.

Parameters

server : string

The name of the server

organizationDN : string

Contains the distinguished name (DN) of the organization.


exchdapi.HrGetServiceAccountName

string = HrGetServiceAccountName(serviceName, serviceName )

Obtains the account name for a service.

Parameters

serviceName : string

The name of the service

serviceName : string

The name of the service


exchdapi.HrInstallMailboxAgent

HrInstallMailboxAgent()


exchdapi.HrInstallService

HrInstallService()


exchdapi.HrMailboxAgentExists

HrMailboxAgentExists(server, siteDN, rdn)

Parameters

server : string

The name of the server

siteDN : string

Contains the distinguished name (DN) of the site.

rdn : string

RDN of the site where the mailbox agent might exist.


exchdapi.HrRemoveMailboxAgent

HrRemoveMailboxAgent(server, siteDN, rdn)

Removes a Mailbox Agent

Parameters

server : string

The name of the server

siteDN : string

Contains the distinguished name (DN) of the site.

rdn : string

RDN of the site where the mailbox agent exists.


exchdapi.HrRemoveProfile

HrRemoveProfile(profile)

Removes a profile

Parameters

profile : string

The profile to delete.


internet

Module internet

A module, encapsulating the ActiveX Internet interfaces


mapi

Module mapi

A COM interface to MAPI

Methods

HexFromBin
converts a binary number into a string representation of a hexadecimal number.

BinFromHex
converts a hexadecimal number into a binary string

MAPIUninitialize
Decrements the reference count, cleans up, and deletes per-instance global data for the MAPI DLL.

MAPIInitialize
Increments the MAPI subsystem reference count and initializes global data for the MAPI DLL.

MAPILogonEx

MAPIAdminProfiles

HrQueryAllRows

RTFSync

OpenIMsgSession

CloseIMsgSession

OpenIMsgOnIStg
Builds a new IMessage object on top of an existing OLE IStorage object, to be used within a message session.


mapi.BinFromHex

PyUnicode = BinFromHex(val)

converts a hexadecimal number into a binary string

Parameters

val : string/PyUnicode

The string to be converted.


mapi.CloseIMsgSession

CloseIMsgSession()


mapi.HexFromBin

PyUnicode = HexFromBin(val)

converts a binary number into a string representation of a hexadecimal number.

Parameters

val : string

Converts an EntryID into a hex string representation.

Comments

Note: This function may not be supported in future versions of MAPI.


mapi.HrQueryAllRows

SRowSet = HrQueryAllRows(table, properties , restrictions , sortOrderSet , rowsMax )

Parameters

table : PyIMAPITable

properties : PySPropTagArray

A sequence of property tags indicating table columns. These tags are used to select the specific columns to be retrieved. If this parameter is None, HrQueryAllRows retrieves the entire column set of the current table view passed in the table parameter.

restrictions : PySRestriction

Defines the retrieval restrictions. If this parameter is None, HrQueryAllRows makes no restrictions.

sortOrderSet : PySSortOrderSet

Identifies the sort order of the columns to be retrieved. If this parameter is None, the default sort order for the table is used.

rowsMax : int

Maximum number of rows to be retrieved. If the value of the rowsMax parameter is zero, no limit on the number of rows retrieved is set.


mapi.MAPIAdminProfiles

PyIProfAdmin = MAPIAdminProfiles(fFlags)

Parameters

fFlags : int


mapi.MAPIInitialize

MAPIInitialize(init)

Increments the MAPI subsystem reference count and initializes global data for the MAPI DLL.

Parameters

init : MAPIINIT_0

MAPI Initialization flags.


mapi.MAPILogonEx

PyIMAPISession = MAPILogonEx(hWnd, profileName , password , uiFlags )

Parameters

hWnd : int

Handle to the window to which the logon dialog box is modal. If no dialog box is displayed during the call, the hWnd parameter is ignored. This parameter can be zero.

profileName : PyUnicode

A string containing the name of the profile to use when logging on. This string is limited to 64 characters.

password : PyUnicode

A string containing the password of the profile. This parameter can be None whether or not the profileName parameter is None. This string is limited to 64 characters.

uiFlags : int

Bitmask of flags used to control how logon is performed. See the MAPI documentation for details.


mapi.MAPIUninitialize

MAPIUninitialize()

Decrements the reference count, cleans up, and deletes per-instance global data for the MAPI DLL.


mapi.OpenIMsgOnIStg

PyIMessage = OpenIMsgOnIStg(session, support , storage , callback , callbackData , flags )

Builds a new IMessage object on top of an existing OLE IStorage object, to be used within a message session.

Parameters

session : object

support : PyIMAPISupport

May be None

storage : PyIStorage

A PyIStorage object that is open and has read-only or read/write access. Because IMessage does not support write-only access, OpenIMsgOnIStg does not accept a storage object opened in write-only mode.

callback=None : object

Only None is supported.

callbackData=0 : int

flags=0 : int


mapi.OpenIMsgSession

object = OpenIMsgSession()


mapi.RTFSync

int = RTFSync(message, flags )

Parameters

message : PyIMessage

The message.

flags : int


pythoncom

Module pythoncom

A module, encapsulating the OLE automation API

Methods

_GetInterfaceCount
Retrieves the number of interface objects currently in existance

_GetInterfaceCount
Retrieves the number of gateway objects currently in existance

CoCreateFreeThreadedMarshaler
Creates an aggregatable object capable of context-dependent marshaling.

CoCreateInstanceEx
Create a new instance of an OLE automation server possibly on a remote machine. MS_WINCE

CoCreateInstance
Create a new instance of an OLE automation server.

CoFreeUnusedLibraries
Unloads any DLLs that are no longer in use and that, when loaded, were specified to be freed automatically.

CoInitialize
Initialize the COM libraries for the calling thread.

CoInitializeEx
Initialize the COM libraries for the calling thread.

CoInitializeSecurity
Registers security and sets the default security values.

CoGetInterfaceAndReleaseStream
Unmarshals a buffer containing an interface pointer and releases the stream when an interface pointer has been marshaled from another thread to the calling thread.

CoMarshalInterThreadInterfaceInStream
Marshals an interface pointer from one thread to another thread in the same process. MS_WINCE

CoUninitialize
Uninitialize the COM libraries.

CoRegisterClassObject
Registers an EXE class object with OLE so other applications can connect to it.

CoResumeClassObjects
Called by a server that can register multiple class objects to inform the OLE SCM about all registered classes, and permits activation requests for those class objects.

CoRevokeClassObject
Informs OLE that a class object, previously registered with the pythoncom::CoRegisterClassObject method, is no longer available for use.

CoTreatAsClass
Establishes or removes an emulation, in which objects of one class are treated as objects of a different class.

Connect
Connects to a running instance of an OLE automation server.

CreateGuid
Creates a new, unique GUIID.

CreateBindCtx
Obtains a PyIBindCtx object.

CreateFileMoniker
Creates a file moniker given a file name.

CreatePointerMoniker
Creates a pointer moniker based on a pointer to an object.

CreateTypeLib
Provides access to a new object instance that supports the ICreateTypeLib interface. MS_WINCE

EnableQuitMessage
Indicates the thread PythonCOM should post a WM_QUIT message to.

FUNCDESC
Returns a new FUNCDESC object.

GetActiveObject
Retrieves an object representing a running object registered with OLE

GetClassFile
Supplies the CLSID associated with the given filename. MS_WINCE

GetFacilityString
Returns the facility string, given an OLE scode.

GetRecordFromGuids
Creates a new record object from the given GUIDs

GetRunningObjectTable
Obtains a PyIRunningObjectTable object. MS_WINCE

GetScodeString
Returns the string for an OLE scode.

GetScodeRangeString
Returns the scode range string, given an OLE scode.

GetSeverityString
Returns the severity string, given an OLE scode.

IsGatewayRegistered
Returns 1 if the given IID has a registered gateway object.

LoadRegTypeLib
Loads a registered type library by CLSID

LoadTypeLib
Loads a type library by name

MakeIID
Makes an IID object from a string.

MakeTime
Makes a time object from the argument. Argument can be an integer/float or a tuple (as returned by time module functions).

MakePyFactory
Creates a new PyIClassFactory object wrapping a PythonCOM Class Factory object.

MkParseDisplayName
Parses a moniker display name into a moniker object. The inverse of IMoniker::GetDisplayName. MS_WINCE

New
Create a new instance of an OLE automation server.

ProgIDFromCLSID
Converts a CLSID string to a progID. MS_WINCE

PumpWaitingMessages
Pumps all waiting messages for the current thread.

PumpMessages
Pumps all messages for the current thread until a WM_QUIT message.

QueryPathOfRegTypeLib
Retrieves the path of a registered type library MS_WINCE

ReadClassStg
Reads a CLSID from a storage object

RegisterTypeLib
Adds information about a type library to the system registry.

RegisterActiveObject
Register an object as the active object for its class

RevokeActiveObject
Ends an object’s status as active. MS_WINCE

StgCreateDocfile
Creates a new compound file storage object using the OLE-provided compound file implementation for the PyIStorage interface.

StgCreateDocfileOnILockBytes
Creates a new compound file storage object using the OLE-provided compound file implementation for the PyIStorage interface.

StgIsStorageFile
Indicates whether a particular disk file contains a storage object. MS_WINCE

StgOpenStorage
Opens an existing root storage object in the file system.

TYPEATTR
Returns a new TYPEATTR object.

VARDESC
Returns a new VARDESC object.

WrapObject
Wraps an object in a gateway.

WriteClassStg
Stores a CLSID from a storage object

UnwrapObject
Unwraps a Python instance in a gateway object.

Unicode
Converts a string into a PyUnicode object.

Properties

int frozen
1 if the host is a frozen program, else 0

int dcom
1 if the system is DCOM aware, else 0. Only Win95 without DCOM extensions should return 0


pythoncom._GetGatewayCount

int = _GetGatewayCount()

Retrieves the number of gateway objects currently in existance

Comments

This is the number of Python object that implement COM servers which are still alive (ie, serving a client). The only way to reduce this count is to have the process which uses these PythonCOM servers release its references.


pythoncom.CoCreateFreeThreadedMarshaler

PyIUnknown = CoCreateFreeThreadedMarshaler(unk)

Creates an aggregatable object capable of context-dependent marshaling.

Parameters

unk : PyIUnknown

The unknown object to marshal.


pythoncom.CoCreateInstance

PyIUnknown = CoCreateInstance(clsid, unkOuter , context , iid )

Create a new instance of an OLE automation server.

Parameters

clsid : PyIID

Class identifier (CLSID) of the object

unkOuter : PyIUnknown

The outer unknown, or None

context : int

The create context for the object

iid : PyIID

The IID required from the object


pythoncom.CoCreateInstanceEx

PyIUnknown = CoCreateInstanceEx(clsid, unkOuter , context , serverInfo , iids )

Create a new instance of an OLE automation server possibly on a remote machine.

Parameters

clsid : PyIID

Class identifier (CLSID) of the object

unkOuter : PyIUnknown

The outer unknown, or None

context : int

The create context for the object

serverInfo : (server, authino=None, reserved1=0,reserved2=0)

May be None, or describes the remote server to execute on.

iids : [PyIID , ...]

A list of IIDs required from the object


pythoncom.CoFreeUnusedLibraries

CoFreeUnusedLibraries()

Unloads any DLLs that are no longer in use and that, when loaded, were specified to be freed automatically.


pythoncom.CoGetInterfaceAndReleaseStream

PyIUnknown = CoGetInterfaceAndReleaseStream(stream, iid )

Unmarshals a buffer containing an interface pointer and releases the stream when an interface pointer has been marshaled from another thread to the calling thread.

Parameters

stream : PyIStream

The stream to unmarshal the object from.

iid : PyIID

The IID if the interface to unmarshal.


pythoncom.CoInitialize

CoInitialize()

Initialize the COM libraries for the calling thread.

Comments

Equivilent to pythoncom::CoInitializeEx(pythoncom.COINIT_APARTMENTTHREADED). See pythoncom::CoInitializeEx for a description.


pythoncom.CoInitializeEx

CoInitializeEx(flags)

Initialize the COM libraries for the calling thread.

Parameters

flags : int

Flags for the initialization.

Comments

There is no need to call this for the main Python thread, as it is called automatically by pythoncom (using sys.co_initflags as the param, or COINIT_APARTMENTTHREADED if sys.coinit_flags does not exist).
You must call this manually if you create a thread which wishes to use COM.


pythoncom.CoInitializeSecurity

CoInitializeSecurity(sd, authInfo, reserved1, authnLevel, impLevel, authInfo, capabilities, reserved2)

Registers security and sets the default security values.

Parameters

sd : PySECURITY_DESCRIPTOR

authInfo : object

A value of None tells COM to choose which authentication services to use. An empty list means use no services.

reserved1 : object

Must be None

authnLevel : int

The default authentication level for proxies. On the server side, COM will fail calls that arrive at a lower level. All calls to AddRef and Release are made at this level.

impLevel : int

The default impersonation level for proxies. This value is not checked on the server side. AddRef and Release calls are made with this impersonation level so even security aware apps should set this carefully. Setting IUnknown security only affects calls to QueryInterface, not AddRef or Release.

authInfo : object

Must be None

capabilities : int

Additional client and/or server-side capabilities. Any set of EOAC flags may be passed. Currently only EOAC_MUTUAL_AUTH, EOAC_SECURE_REFS, and EOAC_NONE are defined

reserved2 : object

Must be None


pythoncom.CoMarshalInterThreadInterfaceInStream

PyIStream = CoMarshalInterThreadInterfaceInStream(iid, unk )

Marshals an interface pointer from one thread to another thread in the same process.

Parameters

iid : PyIID

The IID of the interface to marshal.

unk : PyIUnknown

The interface to marshal.


pythoncom.CoRegisterClassObject

int = CoRegisterClassObject(iid, factory , context , flags )

Registers an EXE class object with OLE so other applications can connect to it.

Parameters

iid : PyIID

The IID of the object to register

factory : PyIUnknown

The class factory object. It is the Python programmers responsibility to ensure this object remains alive until the class is unregistered.

context : int

The create context for the server. Must be a combination of the CLSCTX_* flags.

flags : int

Create flags.

Comments

The class factory object should be PyIClassFactory object, but as per the COM documentation, only PyIUnknown is checked.

Return Value

The result is a handle which should be revoked using pythoncom::CoRevokeClassObject


pythoncom.CoResumeClassObjects

CoResumeClassObjects()

Called by a server that can register multiple class objects to inform the OLE SCM about all registered classes, and permits activation requests for those class objects.

Comments

This is not available on Window95. If it is called on that platform, a E_NOTIMPLEMENTED com_error is raised.


pythoncom.CoRevokeClassObject

CoRevokeClassObject(reg)

Informs OLE that a class object, previously registered with the pythoncom::CoRegisterClassObject method, is no longer available for use.

Parameters

reg : int

The value returned from pythoncom::CoRegisterClassObject


pythoncom.CoTreatAsClass

CoTreatAsClass(clsidold, clsidnew)

Establishes or removes an emulation, in which objects of one class are treated as objects of a different class.

Parameters

clsidold : PyIID

CLSID of the object to be emulated.

clsidnew=CLSID_NULL : PyIID

CLSID of the object that should emulate the original object. This replaces any existing emulation for clsidOld. Can be ommitted or CLSID_NULL, in which case any existing emulation for clsidOld is removed.


pythoncom.CoUninitialize

CoUninitialize()

Uninitialize the COM libraries for the calling thread.


pythoncom.Connect

PyIDispatch = Connect(cls)

Connect to an already running OLE automation server.

Parameters

cls : CLSID

An identifier for the program. Usually "program.item"

Comments

This function is equivilent to pythoncom::GetActiveObject(clsid).pythoncom::QueryInterace (pythoncom.IID_IDispatch)


pythoncom.CreateBindCtx

PyIBindCtx = CreateBindCtx()

Creates a new PyIBindCtx object.


pythoncom.CreateFileMoniker

PyIMoniker = CreateFileMoniker(filename)

Creates a new PyIMoniker object.

Parameters

filename : string

The name of the file.


pythoncom.CreateGuid

PyIID = CreateGuid()

Creates a new, unique GUIID.

Comments

Use the CreateGuid function when you need an absolutely unique number that you will use as a persistent identifier in a distributed environment.To a very high degree of certainty, this function returns a unique value – no other invocation, on the same or any other system (networked or not), should return the same value.


pythoncom.CreatePointerMoniker

PyIMoniker = CreatePointerMoniker(IUnknown)

Creates a new PyIMoniker object.

Parameters

IUnknown : PyIUnknown

The interface for the moniker.


pythoncom.CreateTypeLib

ICreateTypeLib = CreateTypeLib()

Provides access to a new object instance that supports the ICreateTypeLib interface.


pythoncom.EnableQuitMessage

EnableQuitMessage(threadId)

Indicates the thread PythonCOM should post a WM_QUIT message to.

Parameters

threadId : int

The thread ID.


pythoncom.FUNCDESC

FUNCDESC = FUNCDESC()

Creates a new FUNCDESC object


pythoncom.GetActiveObject

PyIUnknown = GetActiveObject(cls)

Retrieves an object representing a running object registered with OLE

Parameters

cls : CLSID

The IID for the program. As for all CLSID's in Python, a "program.name" or IID format string may be used, or a real PyIID object.


pythoncom.GetClassFile

PyIID = GetClassFile(fileName)

Supplies the CLSID associated with the given filename.

Parameters

fileName : string

The filename for which you are requesting the associated CLSID.


pythoncom.GetFacilityString

string = GetFacilityString(scode)

Returns the facility string, given an OLE scode.

Parameters

scode : int

The OLE error code for the facility string requested.


pythoncom.GetRecordFromGuids

PyRecord = GetRecordFromGuids(iid, verMajor , verMinor , lcid , infoIID )

Creates a new record object from the given GUIDs

Parameters

iid : PyIID

The GUID of the type library

verMajor : int

The major version number of the type lib.

verMinor : int

The minor version number of the type lib.

lcid : int

The LCID of the type lib.

infoIID : PyIID

The GUID of the record info in the library


pythoncom.GetRunningObjectTable

PyIRunningObjectTable = GetRunningObjectTable(reserved)

Creates a new PyIRunningObjectTable object.

Parameters

reserved=0 : int

A reserved parameter. Should be zero unless you have inside information that I don't!


pythoncom.GetScodeRangeString

string = GetScodeRangeString(scode)

Returns the scode range string, given an OLE scode.

Parameters

scode : int

An OLE error code to return the scode range string for.


pythoncom.GetScodeString

string = GetScodeString(scode)

Returns the string for an OLE scode (HRESULT)

Parameters

scode : int

The OLE error code for the scode string requested.

Comments

This will obtain the COM Error message for a given HRESULT. Internally, PythonCOM uses this function to obtain the description when a com_error COM Exception is raised.


pythoncom.GetSeverityString

string = GetSeverityString(scode)

Returns the severity string, given an OLE scode.

Parameters

scode : int

The OLE error code for the severity string requested.


pythoncom.IsGatewayRegistered

int = IsGatewayRegistered(iid)

Returns true if a gateway has been registered for the given IID

Parameters

iid : PyIID

IID of the interface.


pythoncom.LoadRegTypeLib

PyITypeLib = LoadRegTypeLib(iid, versionMajor , versionMinor , lcid )

Loads a registered type library.

Parameters

iid : PyIID

The IID of the type library.

versionMajor : int

The major version number of the library

versionMinor : int

The minor version number of the library

lcid=LOCALE_USER_DEFAULT : int

The locale ID to use.

Comments

LoadRegTypeLib compares the requested version numbers against those found in the system registry, and takes one of the following actions:
If one of the registered libraries exactly matches both the requested major and minor version numbers, then that type library is loaded.
If one or more registered type libraries exactly match the requested major version number, and has a greater minor version number than that requested, the one with the greatest minor version number is loaded.
If none of the registered type libraries exactly match the requested major version number (or if none of those that do exactly match the major version number also have a minor version number greater than or equal to the requested minor version number), then LoadRegTypeLib returns an error.


pythoncom.LoadTypeLib

PyITypeLib = LoadTypeLib(libFileName)

Loads a registered type library.

Parameters

libFileName : string

The path to the file containing the type information.


pythoncom.MakeIID

PyIID = MakeIID()

Creates a new IID object.

Comments

This is simply an alias for pywintypes::IID . Please see that method for details.


pythoncom.MakePyFactory

PyIClassFactory = MakePyFactory(iid)

Creates a new PyIClassFactory object wrapping a PythonCOM Class Factory object.

Parameters

iid : PyIID

The IID of the object the class factory provides.


pythoncom.MakeTime

PyTime = MakeTime()

Creates a new time object.

Comments

This is simply an alias for pywintypes::Time . Please see that method for details.


pythoncom.MkParseDisplayName

PyIMoniker,int,PyIBindCtx = MkParseDisplayName(displayName, bindCtx )

Parses a moniker display name into a moniker object. The inverse of PyIMoniker::GetDisplayName

Parameters

displayName : string

The display name to parse

bindCtx=None : PyIBindCtx

The bind context object to use.

Comments

If a binding context is not provided, then one will be created. Any binding context created or passed in will be returned to the caller.


pythoncom.new

PyIDispatch = new(cls)

Create a new instance of an OLE automation server.

Parameters

cls : CLSID

An identifier for the program. Usually "program.item"

Comments

This is just a wrapper for the CoCreateInstance method. Specifically, this call is identical to:
pythoncom.CoCreateInstance(cls, None, pythoncom.CLSCTX_SERVER, pythoncom.IID_IDispatch)


pythoncom.ProgIDFromCLSID

string = ProgIDFromCLSID(clsid)

Converts a CLSID to a progID.

Parameters

clsid : IID

A CLSID (either in a string, or in an PyIID object)


pythoncom.PumpMessages

PumpMessages()

Pumps all messages for the current thread until a WM_QUIT message.


pythoncom.PumpWaitingMessages

int = PumpWaitingMessages()

Pumps all waiting messages for the current thread.

Comments

It is sometimes necessary for a COM thread to have a message loop. This function can be used with win32event::MsgWaitForMultipleObjects to pump all messages when necessary. Please see the COM documentation for more details.

Win32 API References

PeekMessage and DispatchMessage

Return Value

Returns 1 if a WM_QUIT message was received, else 0


pythoncom.QueryPathOfRegTypeLib

PyUnicode = QueryPathOfRegTypeLib(iid, versionMajor , versionMinor , lcid )

Retrieves the path of a registered type library.

Parameters

iid : PyIID

The IID of the type library.

versionMajor : int

The major version number of the library

versionMinor : int

The minor version number of the library

lcid=LOCALE_USER_DEFAULT : int

The locale ID to use.


pythoncom.ReadClassStg

PyIID = ReadClassStg(storage)

Reads a CLSID from a storage object.

Parameters

storage : PyIStorage

The storage to read the CLSID from.


pythoncom.RegisterActiveObject

int = RegisterActiveObject(obUnknown, clsid , flags )

Register an object as the active object for its class

Parameters

obUnknown : PyIUnknown

The object to register.

clsid : PyIID

The CLSID for the object

flags : int

Flags to use.

Return Value

The result is a handle which should be pass to pythoncom::RevokeActiveObject


pythoncom.RegisterTypeLib

RegisterTypeLib(typelib, fullPath, helpDir, lcid)

Adds information about a type library to the system registry.

Parameters

typelib : PyITypeLib

The type library being registered.

fullPath : string

Fully qualified path specification for the type library being registered

helpDir=None : string

Directory in which the Help file for the library being registered can be found. Can be None.

lcid=LOCALE_USER_DEFAULT : int

The locale ID to use.

Comments

This function can be used during application initialization to register the application's type library correctly. When RegisterTypeLib is called to register a type library, both the minor and major version numbers are registered in hexadecimal.
In addition to filling in a complete registry entry under the type library key, RegisterTypeLib adds entries for each of the dispinterfaces and Automation-compatible interfaces, including dual interfaces. This information is required to create instances of these interfaces. Coclasses are not registered (that is, RegisterTypeLib does not write any values to the CLSID key of the coclass).


pythoncom.RevokeActiveObject

RevokeActiveObject(handle)

Ends an object’s status as active.

Parameters

handle : int

A handle obtained from pythoncom::RegisterActiveObject


pythoncom.StgCreateDocfile

PyIStorage = StgCreateDocfile(name, mode , reserved )

Creates a new compound file storage object using the OLE-provided compound file implementation for the PyIStorage interface.

Parameters

name : string

the path of the compound file to create. It is passed uninterpreted to the file system. This can be a relative name or None. If None, a temporary stream is created.

mode : int

Specifies the access mode used to open the storage.

reserved=0 : int

A reserved value


pythoncom.StgCreateDocfileOnILockBytes

PyIStorage = StgCreateDocfileOnILockBytes(lockBytes, mode , reserved )

Creates a new compound file storage object using the OLE-provided compound file implementation for the PyIStorage interface.

Parameters

lockBytes : PyILockBytes

The PyILockBytes interface on the underlying byte array object on which to create a compound file.

mode : int

Specifies the access mode used to open the storage.

reserved=0 : int

A reserved value


pythoncom.StgIsStorageFile

int = StgIsStorageFile(name)

Indicates whether a particular disk file contains a storage object.

Parameters

name : string

The path to the file to check.

Return Value

The return value is 1 if a storage file, else 0


pythoncom.StgOpenStorage

PyIStorage = StgOpenStorage(name, other , mode , snbExclude , reserved )

Opens an existing root storage object in the file system.

Parameters

name : string

Name of the stream, or possibly None if storageOther is non None.

other : PyIStorage

Usually None, or another parent storage.

mode : int

Specifies the access mode used to open the storage. A combination of the storagecon.STGM_* constants.

snbExclude=None : object

Not yet supported - must be None

reserved=0 : int

A reserved value


pythoncom.TYPEATTR

TYPEATTR = TYPEATTR()

Creates a new TYPEATTR object


pythoncom.Unicode

PyUnicode = Unicode(s)

Converts a string into a PyUnicode object.

Parameters

s : string

The string to convert into a Unicode object

Comments

As Python itself becomes Unicode aware, this function will not be necessary.


pythoncom.UnwrapObject

PyIDispatch = UnwrapObject(ob)

Unwraps a Python instance in a gateway object.

Parameters

ob : PyIUnknown

The object to unwrap.

Comments

If the object is not a PythonCOM object, then ValueError is raised.


pythoncom.VARDESC

VARDESC = VARDESC()

Creates a new VARDESC object


pythoncom.WrapObject

PyIUnknown = WrapObject(ob, gatewayIID , interfaceIID )

Wraps a Python instance in a gateway object.

Parameters

ob : object

The object to wrap.

gatewayIID=IID_IDispatch : PyIID

The IID of the gateway object to create (ie, the interface of the server object wrapped by the return value)

interfaceIID=IID_IDispatch : PyIID

The IID of the interface object to create (ie, the interface of the returned object)

Return Value

Note that there are 2 objects created by this call - a gateway (server) object, suitable for use by other external COM clients/hosts, as well as the returned Python interface (client) object, which maps to the new gateway.
There are some unusual cases where the 2 IID parameters will not be identical. If you need to do this, you should know exactly what you are doing, and why!


pythoncom.WriteClassStg

WriteClassStg(storage, iid)

Writes a CLSID to a storage.

Parameters

storage : PyIStorage

The storage to read the CLSID from.

iid : PyIID

The IID to write


pythoncom._GetInterfaceCount

int = _GetInterfaceCount()

Retrieves the number of interface objects currently in existance

Comments

If is occasionally a good idea to call this function before your Python program terminates. If this function returns non-zero, then you still have PythonCOM objects alive in your program (possibly in global variables).


pythoncom.dcom

pythoncom.dcom property

Data Type

int

Description

1 if the system is DCOM aware, else 0. Only Win95 without DCOM extensions should return 0

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYTHONCOM.CPP


pythoncom.frozen

pythoncom.frozen property

Data Type

int

Description

1 if the host is a frozen program, else 0

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYTHONCOM.CPP


shell

Module shell

A module, encapsulating the ActiveX Control interfaces

Methods

SHGetPathFromIDList
Converts an PyIDL to a path.

SHBrowseForFolder
Displays a dialog box that enables the user to select a shell folder.

SHGetFolderPath
Retrieves the path of a folder.

SHGetFolderLocation
Retrieves the PyIDL of a folder.

SHGetSpecialFolderPath
Retrieves the path of a special folder.

SHGetSpecialFolderLocation
Retrieves the PyIDL of a special folder.

SHAddToRecentDocs
Adds a document to the shell's list of recently used documents or clears all documents from the list. The user gains access to the list through the Start menu of the Windows taskbar.

SHChangeNotify
Notifies the system of an event that an application has performed. An application should use this function if it performs an action that may affect the shell.

SHEmptyRecycleBin
Empties the recycle bin on the specified drive.


shell.SHAddToRecentDocs

SHAddToRecentDocs(flags, whatever)

Adds a document to the shell's list of recently used documents or clears all documents from the list. The user gains access to the list through the Start menu of the Windows taskbar.

Parameters

flags : int

Flag that indicates the meaning of the whatever parameter

whatever : string

A path or PyIDL


shell.SHBrowseForFolder

(PyIDL, string displayName, iImage) = SHBrowseForFolder(hwndOwner, pidlRoot , title , flags , callback , callbackParam )

Displays a dialog box that enables the user to select a shell folder.

Parameters

hwndOwner=0 : int

pidlRoot=None : PyIDL

title=None : Unicode /string

flags=0 : int

callback : object

Not yet supported - must be None

callbackParam=0 : int

Return Value

The result is ALWAYS a tuple of 3 items. If the user cancels the dialog, all items are None. If the dialog is closed normally, the result is a tuple of (PIDL, DisplayName, iImageList)


shell.SHChangeNotify

PyIDL = SHChangeNotify(eventId, flags , whatever , whatever )

Notifies the system of an event that an application has performed. An application should use this function if it performs an action that may affect the shell.

Parameters

eventId : int

Describes the event that has occurred. One of the SHCNE_* constants.

flags : int

Flags that indicate the meaning of the other params.

whatever : string

A path or PyIDL

whatever : string

A path or PyIDL

To Do

This function does not support integers


shell.SHEmptyRecycleBin

PyIDL = SHEmptyRecycleBin(hwnd, path , flags )

Empties the recycle bin on the specified drive.

Parameters

hwnd : int

path : string

A NULL-terminated string that contains the path of the root drive on which the recycle bin is located. This parameter can contain the address of a string formatted with the drive, folder, and subfolder names (c:\\windows\\system . . .). It can also contain an empty string or NULL. If this value is an empty string or NULL, all recycle bins on all drives will be emptied.

flags : int

One of the SHERB_* values.

Comments

This method is only available in shell version 4.71. If the function is not available, a COM Exception with HRESULT=E_NOTIMPL will be raised.


shell.SHGetFolderLocation

PyIDL = SHGetFolderLocation(hwndOwner, nFolder , handle , reserved )

Retrieves the PIDL of a folder.

Parameters

hwndOwner : int

nFolder : int

One of the CSIDL_* constants specifying the path.

handle : PyHANDLE

An access token that can be used to represent a particular user, or None

reserved : int

Must be 0

Comments

This method is only available if you have a late version of shfolder.dll installed, included with certain shell updates.


shell.SHGetFolderPath

string/PyUnicode = SHGetFolderPath(hwndOwner, nFolder , handle , flags )

Retrieves the path of a folder.

Parameters

hwndOwner : int

nFolder : int

One of the CSIDL_* constants specifying the path.

handle : PyHANDLE

An access token that can be used to represent a particular user, or None

flags : int

Controls which path is returned. May be SHGFP_TYPE_CURRENT or SHGFP_TYPE_DEFAULT

Comments

This method is only available if you have shfolder.dll installed, included with certain shell updates.


shell.SHGetPathFromIDList

string/PyUnicode = SHGetPathFromIDList(idl)

Converts an IDLIST to a path.

Parameters

idl : PyIDL

The ITEMIDLIST


shell.SHGetSpecialFolderLocation

PyIDL = SHGetSpecialFolderLocation(hwndOwner, nFolder )

Retrieves the PIDL of a special folder.

Parameters

hwndOwner : int

nFolder : int

One of the CSIDL_* constants specifying the path.


shell.SHGetSpecialFolderPath

string/PyUnicode = SHGetSpecialFolderPath(hwndOwner, nFolder , bCreate )

Retrieves the path of a special folder.

Parameters

hwndOwner : int

nFolder : int

One of the CSIDL_* constants specifying the path.

bCreate=0 : int

Should the path be created.

Comments

This method is only available in shell version 4.71. If the function is not available, a COM Exception with HRESULT=E_NOTIMPL will be raised.


Objects

  • ELEMDESC
  • FUNCDESC
  • IDLDESC
  • MAPIINIT_0
  • PyADS_ATTR_INFO
  • PyADS_OBJECT_INFO
  • PyIABContainer
  • PyIActiveScriptDebug
  • PyIActiveScriptError
  • PyIActiveScriptErrorDebug
  • PyIActiveScriptParseProcedure
  • PyIActiveScriptSite
  • PyIActiveScriptSiteDebug
  • PyIAddrBook
  • PyIApplicationDebugger
  • PyIAttach
  • PyIBindCtx
  • PyICatInformation
  • PyICatRegister
  • PyIClassFactory
  • PyIConnectionPoint
  • PyIConnectionPointContainer
  • PyICreateTypeInfo
  • PyICreateTypeLib
  • PyIDebugApplication
  • PyIDebugApplicationNode
  • PyIDebugApplicationNodeEvents
  • PyIDebugApplicationThread
  • PyIDebugCodeContext
  • PyIDebugDocument
  • PyIDebugDocumentContext
  • PyIDebugDocumentHelper
  • PyIDebugDocumentHost
  • PyIDebugDocumentInfo
  • PyIDebugDocumentProvider
  • PyIDebugDocumentText
  • PyIDebugDocumentTextAuthor
  • PyIDebugDocumentTextEvents
  • PyIDebugDocumentTextExternalAuthor
  • PyIDebugExpression
  • PyIDebugExpressionCallBack
  • PyIDebugExpressionContext
  • PyIDebugProperty
  • PyIDebugSessionProvider
  • PyIDebugStackFrame
  • PyIDebugStackFrameSniffer
  • PyIDebugStackFrameSnifferEx
  • PyIDebugSyncOperation
  • PyIDispatch
  • PyIDispatchEx
  • PyIDistList
  • PyIDL
  • PyIEnumCATEGORYINFO
  • PyIEnumConnectionPoints
  • PyIEnumConnections
  • PyIEnumDebugApplicationNodes
  • PyIEnumDebugCodeContexts
  • PyIEnumDebugExpressionContexts
  • PyIEnumDebugPropertyInfo
  • PyIEnumDebugStackFrames
  • PyIEnumGUID
  • PyIEnumMoniker
  • PyIEnumRemoteDebugApplications
  • PyIEnumRemoteDebugApplicationThreads
  • PyIEnumSTATPROPSTG
  • PyIEnumSTATSTG
  • PyIErrorLog
  • PyIExternalConnection
  • PyIInternetBindInfo
  • PyIInternetPriority
  • PyIInternetProtocol
  • PyIInternetProtocolInfo
  • PyIInternetProtocolRoot
  • PyIInternetProtocolSink
  • PyILockBytes
  • PyIMachineDebugManager
  • PyIMachineDebugManagerEvents
  • PyIMailUser
  • PyIMAPIContainer
  • PyIMAPIFolder
  • PyIMAPIProp
  • PyIMAPISession
  • PyIMAPITable
  • PyIMessage
  • PyIMoniker
  • PyIMsgServiceAdmin
  • PyIMsgStore
  • PyIOleClientSite
  • PyIOleControl
  • PyIOleInPlaceObject
  • PyIOleInPlaceSite
  • PyIOleInPlaceSiteEx
  • PyIOleInPlaceSiteWindowless
  • PyIOleObject
  • PyIOleWindow
  • PyIPersist
  • PyIPersistFile
  • PyIPersistPropertyBag
  • PyIPersistStorage
  • PyIPersistStream
  • PyIPersistStreamInit
  • PyIProcessDebugManager
  • PyIProfAdmin
  • PyIProfSect
  • PyIPropertyBag
  • PyIPropertySetStorage
  • PyIPropertyStorage
  • PyIProvideClassInfo
  • PyIProvideClassInfo2
  • PyIProvideExpressionContexts
  • PyIRemoteDebugApplication
  • PyIRemoteDebugApplicationEvents
  • PyIRemoteDebugApplicationThread
  • PyIRunningObjectTable
  • PyIServiceProvider
  • PyIShellLink
  • PyISpecifyPropertyPages
  • PyIStorage
  • PyIStream
  • PyITypeComp
  • PyITypeInfo
  • PyITypeLib
  • PyIUnknown
  • PyIViewObject
  • PyIViewObject2
  • PyMAPINAMEIDArray
  • PyRecord
  • PySAndRestriction
  • PySBinaryArray
  • PySBitMaskRestriction
  • PySContentRestriction
  • PySExistRestriction
  • PySNotRestriction
  • PySOrRestriction
  • PySPropertyRestriction
  • PySPropTagArray
  • PySPropValue
  • PySPropValueArray
  • PySRestriction
  • PySRow
  • PySRowSet
  • PySSortOrderItem
  • PySSortOrderSet
  • STATSTG
  • TLIBATTR
  • TYPEATTR
  • TYPEDESC
  • VARDESC


ELEMDESC

ELEMDESC Object

An ELEMDESC is respresented as a tuple of

Items

[0] TYPEDESC : typeDesc

The type description.

[1] int : idlFlags

[2] object : default

If PARAMFLAG_FHASDEFAULT are set, then this is the default value.


FUNCDESC

FUNCDESC Object

A FUNCDESC object represents a COM TYPEATTR structure.

Properties

integer memid

(int, ...) scodeArray

(ELEMDESC, ...) args

int funckind

int invkind

int callconv

int cParamsOpt

int oVft

ELEMDESC rettype

int wFuncFlags

Items

[0] int : memid

[1] (int, ...) : scodeArray

[2] (ELEMDESC, ...) : args

[3] int : funckind

[4] int : invkind

[5] int : callconv

[6] int : cParamsOpt

[7] int : oVft

[8] ELEMDESC : rettype

[9] int : wFuncFlags


IDLDESC

IDLDESC Object

An IDLDESC is respresented as

Items

[0] int : reserved

A reserved value!

[1] int : flags

IDL flags.


MAPIINIT_0

MAPIINIT_0 Object

A MAPIINIT_0 is represented as a tuple of:

Items

[0] int : version

This must be MAPI_INIT_VERSION.

[1] int : flags

MAPI initlization flags.

Value | Meaning
MAPI_MULTITHREAD_NOTIFICATIONS | MAPI should generate notifications using a thread dedicated to notification handling rather than the first thread used to call mapi::MAPIInitialize.
MAPI_NT_SERVICE | The caller is running as a NT service. Callers that are not running in a Windows NT service should not set this flag; callers that are running as a service must set this flag.

Comments

Multithreaded clients should set MAPI_MULTITHREAD_NOTIFICATIONS flag so that they can receive notifications on threads other than the first thread to call mapi::MAPIInitialize.


PyADS_ATTR_INFO

PyADS_ATTR_INFO Object

Represents a ADS_ATTR_INFO structure.

Properties

unicode AttrName
The name

integer ControlCode

integer ADsType


PyADS_OBJECT_INFO

PyADS_OBJECT_INFO Object

Represents a ADS_OBJECT_INFO structure.

Properties

unicode RDN
The name

unicode ObjectDN

unicode ParentDN

unicode ClassName


PyIABContainer

PyIABContainer Object

An COM interface to MAPI
Derived from PyIMAPIContainer


PyIActiveScriptDebug

PyIActiveScriptDebug Object

Description of the interface

Methods

GetScriptTextAttributes
Description of GetScriptTextAttributes

GetScriptletTextAttributes
Description of GetScriptletTextAttributes

EnumCodeContextsOfPosition
Description of EnumCodeContextsOfPosition


PyIActiveScriptDebug.EnumCodeContextsOfPosition

EnumCodeContextsOfPosition(dwSourceContext, uCharacterOffset, uNumChars)

Description of EnumCodeContextsOfPosition.

Parameters

dwSourceContext : int

Description for dwSourceContext

uCharacterOffset : int

Description for uCharacterOffset

uNumChars : int

Description for uNumChars


PyIActiveScriptDebug.GetScriptTextAttributes

(int,...) = GetScriptTextAttributes(pstrCode, pstrDelimiter , dwFlags )

Returns the text attributes for an arbitrary block of script text.

Parameters

pstrCode : string

The script block text.

pstrDelimiter : string

See PyIActiveScriptParse::ParseScriptText for a description of this argument.

dwFlags : int

See PyIActiveScriptParse::ParseScriptText for a description of this argument.

Comments

Smart hosts use this call to delegate GetText calls made on their axscript::PyIDebugDocumentText


PyIActiveScriptDebug.GetScriptletTextAttributes

GetScriptletTextAttributes(pstrCode, pstrDelimiter, dwFlags)

Description of GetScriptletTextAttributes.

Parameters

pstrCode : string

The script block text.

pstrDelimiter : string

See PyIActiveScriptParse::ParseScriptText for a description of this argument.

dwFlags : int

See PyIActiveScriptParse::ParseScriptText for a description of this argument.


PyIActiveScriptError

PyIActiveScriptError Object

Description of the interface

Methods

GetExceptionInfo
Description of GetExceptionInfo

GetSourcePosition
Description of GetSourcePosition

GetSourceLineText
Description of GetSourceLineText


PyIActiveScriptError.GetExceptionInfo

GetExceptionInfo()

Description of GetExceptionInfo.


PyIActiveScriptError.GetSourceLineText

GetSourceLineText()

Description of GetSourceLineText.


PyIActiveScriptError.GetSourcePosition

GetSourcePosition()

Description of GetSourcePosition.


PyIActiveScriptErrorDebug

PyIActiveScriptErrorDebug Object

Description of the interface

Methods

GetDocumentContext
Description of GetDocumentContext

GetStackFrame
Description of GetStackFrame


PyIActiveScriptErrorDebug.GetDocumentContext

GetDocumentContext()

Description of GetDocumentContext.


PyIActiveScriptErrorDebug.GetStackFrame

GetStackFrame()

Description of GetStackFrame.


PyIActiveScriptParseProcedure

PyIActiveScriptParseProcedure Object

Description of the interface

Methods

ParseProcedureText
Description of ParseProcedureText


PyIActiveScriptParseProcedure.ParseProcedureText

ParseProcedureText(pstrCode, pstrFormalParams, pstrProcedureName, pstrItemName, punkContext, pstrDelimiter, dwSourceContextCookie, ulStartingLineNumber, dwFlags)

Description of ParseProcedureText.

Parameters

pstrCode : unicode

Description for pstrCode

pstrFormalParams : unicode

Description for pstrFormalParams

pstrProcedureName : unicode

Description for pstrProcedureName

pstrItemName : unicode

Description for pstrItemName

punkContext : PyIUnknown

Description for punkContext

pstrDelimiter : unicode

Description for pstrDelimiter

dwSourceContextCookie : int

Description for dwSourceContextCookie

ulStartingLineNumber : int

Description for ulStartingLineNumber

dwFlags : int

Description for dwFlags


PyIActiveScriptSite

PyIActiveScriptSite Object

An object providing the IActiveScriptSite interface

Methods

GetLCID

GetItemInfo

GetDocVersionString

OnStateChange

OnEnterScript

OnLeaveScript

OnScriptError

OnScriptTerminate


PyIActiveScriptSite.GetDocVersionString

int = GetDocVersionString()


PyIActiveScriptSite.GetItemInfo

int = GetItemInfo()


PyIActiveScriptSite.GetLCID

int = GetLCID()


PyIActiveScriptSite.OnEnterScript

int = OnEnterScript()


PyIActiveScriptSite.OnLeaveScript

int = OnLeaveScript()


PyIActiveScriptSite.OnScriptError

int = OnScriptError()


PyIActiveScriptSite.OnScriptTerminate

int = OnScriptTerminate()


PyIActiveScriptSite.OnStateChange

int = OnStateChange()


PyIActiveScriptSiteDebug

PyIActiveScriptSiteDebug Object

Description of the interface

Methods

GetDocumentContextFromPosition
Description of GetDocumentContextFromPosition

GetApplication
Description of GetApplication

GetRootApplicationNode
Description of GetRootApplicationNode

OnScriptErrorDebug
Allows a smart host to control the handling of runtime errors


PyIActiveScriptSiteDebug.GetApplication

GetApplication()

Description of GetApplication.


PyIActiveScriptSiteDebug.GetDocumentContextFromPosition

GetDocumentContextFromPosition(dwSourceContext, uCharacterOffset, uNumChars)

Description of GetDocumentContextFromPosition.

Parameters

dwSourceContext : int

Description for dwSourceContext

uCharacterOffset : int

Description for uCharacterOffset

uNumChars : int

Description for uNumChars


PyIActiveScriptSiteDebug.GetRootApplicationNode

GetRootApplicationNode()

Description of GetRootApplicationNode.


PyIActiveScriptSiteDebug.OnScriptErrorDebug

int, int = OnScriptErrorDebug()

Allows a smart host to control the handling of runtime errors

Return Value

The result is a tuple of (bCallDebugger, bCallOnScriptErrorWhenContinuing)


PyIAddrBook

PyIAddrBook Object

An COM interface to MAPI's IAddrBook interface.
Derived from PyIMAPIProp

Methods

ResolveName
Performs name resolution, assigning entry identifiers to recipients in a recipient list.

OpenEntry
Opens a folder or message and returns an interface object for further access.

CompareEntryIDs
Compares two entry identifiers belonging to a particular address book provider to determine if they refer to the same address book object


PyIAddrBook.CompareEntryIDs

int = CompareEntryIDs(entryId, entryId , flags )

Compares two entry identifiers belonging to a particular address book provider to determine if they refer to the same address book object

Parameters

entryId : string

The first entry ID to be compared

entryId : string

The second entry ID to be compared

flags=0 : int

Reserved - must be zero.

Return Value

The result is set to TRUE if the two entry identifiers refer to the same object, and FALSE otherwise.


PyIAddrBook.OpenEntry

PyIInterface = OpenEntry(entryId, iid , flags )

Opens a folder or message and returns an interface object for further access.

Parameters

entryId : string

The entryID of the object

iid : PyIID

The IID of the object to return, or None for the default IID

flags : int

Bitmask of flags that controls how the object is opened.


PyIAddrBook.ResolveName

ResolveName(uiParm, flags, entryTitle, ADRLIST)

Performs name resolution, assigning entry identifiers to recipients in a recipient list.

Parameters

uiParm : int

hwnd of a dialogs parent.

flags : int

Bitmask of flags that controls whether a dialog box can be displayed.

entryTitle : string

ADRLIST : PyADRLIST

Partial addresses to resolve.


PyIApplicationDebugger

PyIApplicationDebugger Object

Description of the interface

Methods

QueryAlive
Returns true if alive, else false.

CreateInstanceAtDebugger
Create objects in the application process address space.

onDebugOutput
Called when PyIDebugApplication::DebugOutput is called.

onHandleBreakPoint
Called when a breakpoint is hit.

onClose
Called when PyIDebugApplication::Close is called.

onDebuggerEvent
Handle a custom event.


PyIApplicationDebugger.CreateInstanceAtDebugger

CreateInstanceAtDebugger(rclsid, pUnkOuter, dwClsContext, riid)

Create objects in the application process address space.

Parameters

rclsid : PyIID

Description for rclsid

pUnkOuter : PyIUnknown

Description for pUnkOuter

dwClsContext : int

Description for dwClsContext

riid : PyIID

Description for riid

Comments

Provides a mechanism for the debugger IDE, running out-of-process to the application, to create objects in the application process. This method simply delegates to CoCreateInstance.


PyIApplicationDebugger.QueryAlive

QueryAlive()

Returns true if alive, else false.


PyIApplicationDebugger.onClose

onClose()

Called when PyIDebugApplication::Close is called.


PyIApplicationDebugger.onDebugOutput

onDebugOutput(pstr)

Called when PyIDebugApplication::DebugOutput is called.

Parameters

pstr : unicode

Description for pstr

Comments

The debugger can use this to display the string in an output window.


PyIApplicationDebugger.onDebuggerEvent

onDebuggerEvent(guid, uUnknown)

Description of onDebuggerEvent.

Parameters

guid : PyIID

uUnknown : PyIUnknown

Comments

The semantics of guid and unknown are entirely application/debugger defined
This method may return E_NOTIMPL.


PyIApplicationDebugger.onHandleBreakPoint

onHandleBreakPoint(prpt, br, pError)

Called when a breakpoint is hit.

Parameters

prpt : PyIRemoteDebugApplicationThread

Description for prpt

br : int

Description for br

pError : IActiveScriptErrorDebug

Description for pError

Comments

The application will remain suspended until the debugger IDE calls PyIDebugApplication::ResumeFromBreakPoint .


PyIAttach

PyIAttach Object

An COM interface to MAPI
Derived from PyIMAPIProp


PyIBindCtx

PyIBindCtx Object

A Python interface to IBindCtx. Derived from PyIUnknown

Methods

GetRunningObjectTable
Retrieves the running object table.


PyIBindCtx.GetRunningObjectTable

PyIRunningObjectTable = GetRunningObjectTable()

Retrieves an object interfacing to the Running Object Table.


PyICatInformation

PyICatInformation Object

A Python interface to ICatInformation

Methods

EnumCategories
Returns an enumerator for the component categories registered on the system.

GetCategoryDesc
Retrieves the localized description string for a specific category ID.

EnumClassesOfCategories
Returns an enumerator over the classes that implement one or more interfaces.


PyICatInformation.EnumCategories

PyIEnumCATEGORYINFO = EnumCategories(lcid)

Returns an enumerator for the component categories registered on the system.

Parameters

lcid=0 : int

lcid


PyICatInformation.EnumClassesOfCategories

PyIEnumGUID = EnumClassesOfCategories(listIIdImplemented, listIIdRequired )

Returns an enumerator over the classes that implement one or more interfaces.

Parameters

listIIdImplemented=None : [PyIID , ...]

A sequence of PyIID objects, or None.

listIIdRequired=None : list iid

A sequence of PyIID objects, or None.


PyICatInformation.GetCategoryDesc

string = GetCategoryDesc(lcid)

Retrieves the localized description string for a specific category ID.

Parameters

lcid=0 : int

lcid

Comments

The return type is a true PyString, not a Uniocode object.

To Do

Upgrade the return type to be Unicode. Should wait until Python has Unicode support.


PyICatRegister

PyICatRegister Object

An interface to a COM ICatRegister interface.

Methods

RegisterCategories
Registers one or more component categories. Each component category consists of a CATID and a list of locale-dependent description strings.

UnRegisterCategories
Unregister one or more previously registered categories.

RegisterClassImplCategories
Registers the class as implementing one or more component categories.

UnRegisterClassImplCategories
Unregisters the class as implementing one or more component categories.

RegisterClassReqCategories
Registers the class as requiring one or more component categories.

UnRegisterClassReqCategories
Unregisters the class as requiring one or more component categories.


PyICatRegister.RegisterCategories

RegisterCategories([ (catId, lcid, description), ...])

Registers one or more component categories. Each component category consists of a CATID and a list of locale-dependent description strings.

Parameters

[ (catId, lcid, description), ...] : [ (PyIID , int, string), ...]

A sequence of category descriptions.


PyICatRegister.RegisterClassImplCategories

RegisterClassImplCategories(clsid, [catId, ...])

Registers the class as implementing one or more component categories.

Parameters

clsid : PyIID

Class ID of the relevent class

[catId, ...] : [PyIID , ...]

A sequence of category IDs to be associated with the class.


PyICatRegister.RegisterClassReqCategories

RegisterClassReqCategories(clsid, [catId, ...])

Registers the class as requiring one or more component categories.

Parameters

clsid : PyIID

Class ID of the relevent class

[catId, ...] : [PyIID , ...]

A sequence of category IDs to be associated with the class.


PyICatRegister.UnregisterCategories

UnregisterCategories([catId, ...])

Unregister one or more previously registered categories.

Parameters

[catId, ...] : [PyIID , ...]

The list of category IDs to be unregistered.


PyICatRegister.UnRegisterClassImplCategories

UnRegisterClassImplCategories(clsid, [catId, ...])

Unregisters the class as implementing one or more component categories.

Parameters

clsid : PyIID

Class ID of the relevent class

[catId, ...] : [PyIID , ...]

A sequence of category IDs to be unregistered from the class.


PyICatRegister.UnRegisterClassReqCategories

UnRegisterClassReqCategories(clsid, [catId, ...])

Unregisters the class as requiring one or more component categories.

Parameters

clsid : PyIID

Class ID of the relevent class

[catId, ...] : [PyIID , ...]

A sequence of category IDs to be unregistered for the class.


PyIClassFactory

PyIClassFactory Object

An object which represents the IClassFactory interface. Derived from PyIUnknown

Methods

CreateInstance
Creates an uninitialized object.

LockServer
Called by the client of a class object to keep a server open in memory, allowing instances to be created more quickly.


PyIClassFactory.CreateInstance

PyIUnknown = CreateInstance(outerUnknown, iid )

Creates an uninitialized object.

Parameters

outerUnknown : PyIUnknown

Usually None, otherwise the outer unknown if the object is being created as part of an aggregate.

iid : PyIID

The IID of the resultant object.

Return Value

The result object will always be derived from PyIUnknown, but will be of the type specified by iid.


PyIClassFactory.LockServer

LockServer(bInc)

Called by the client of a class object to keep a server open in memory, allowing instances to be created more quickly.

Parameters

bInc : int

1 of the server should be locked, 0 if the server should be unlocked.


PyIConnectionPoint

PyIConnectionPoint Object

A Python wrapper of a COM IConnectionPoint interface.

Methods

GetConnectionInterface
Retrieves the IID of the interface represented by the connection point.

GetConnectionPointContainer
Gets the connection point container for the object.

Advise
Establishes a connection between the connection point object and the client's sink.

Unadvise
Terminates an advisory connection previously established through PyIConnectionPoint::Advise.

EnumConnections
Creates an enumerator to iterate through the connections for the connection point


PyIConnectionPoint.Advise

int = Advise(unk)

Establishes a connection between the connection point object and the client's sink.

Parameters

unk : PyIUnknown

The client's advise sink

Return Value

The result is the connection point identifier used by PyIConnectionPoint::Unadvise


PyIConnectionPoint.EnumConnections

PyIEnumConnections = EnumConnections()

Creates an enumerator to iterate through the connections for the connection point


PyIConnectionPoint.GetConnectionInterface

PyIID = GetConnectionInterface()

Retrieves the IID of the interface represented by the connection point.


PyIConnectionPoint.GetConnectionPointContainer

PyIConnectionPointContainer = GetConnectionPointContainer()

Gets the connection point container for the object.


PyIConnectionPoint.Unadvise

Unadvise(cookie)

Terminates an advisory connection previously established through IConnectionPoint::Advise. The dwCookie parameter identifies the connection to terminate.

Parameters

cookie : int

The connection token


PyIConnectionPointContainer

PyIConnectionPointContainer Object

A Python wrapper of a COM IConnectionPointContainer interface.

Methods

EnumConnectionPoints
Creates an enumerator object to iterate through all the connection points supported in the connectable object, one connection point per outgoing IID.

FindConnectionPoint
Finds a connection point for the given IID.


PyIConnectionPointContainer.EnumConnectionPoints

PyIEnumConnectionPoints = EnumConnectionPoints()

Creates an enumerator object to iterate through all the connection points supported in the connectable object, one connection point per outgoing IID.


PyIConnectionPointContainer.FindConnectionPoint

PyIConnectionPoint = FindConnectionPoint(iid)

Finds a connection point for the given IID

Parameters

iid : PyIID

The IID of the requested connection.


PyICreateTypeInfo

PyICreateTypeInfo Object

Description of the interface

Methods

SetGuid
Description of SetGuid

SetTypeFlags
Description of SetTypeFlags

SetDocString
Description of SetDocString

SetHelpContext
Description of SetHelpContext

SetVersion
Description of SetVersion

AddRefTypeInfo
Description of AddRefTypeInfo

AddFuncDesc
Description of AddFuncDesc

AddImplType
Description of AddImplType

SetImplTypeFlags
Description of SetImplTypeFlags

SetAlignment
Description of SetAlignment

SetSchema
Description of SetSchema

AddVarDesc
Description of AddVarDesc

SetFuncAndParamNames
Description of SetFuncAndParamNames

SetVarName
Description of SetVarName

SetTypeDescAlias
Description of SetTypeDescAlias

DefineFuncAsDllEntry
Description of DefineFuncAsDllEntry

SetFuncDocString
Description of SetFuncDocString

SetVarDocString
Description of SetVarDocString

SetFuncHelpContext
Description of SetFuncHelpContext

SetVarHelpContext
Description of SetVarHelpContext

SetMops
Description of SetMops

LayOut
Description of LayOut


PyICreateTypeInfo.AddFuncDesc

AddFuncDesc(index)

Description of AddFuncDesc.

Parameters

index : int

Description for index


PyICreateTypeInfo.AddImplType

AddImplType(index, hRefType)

Description of AddImplType.

Parameters

index : int

Description for index

hRefType : int

A hRefType


PyICreateTypeInfo.AddRefTypeInfo

AddRefTypeInfo(pTInfo)

Description of AddRefTypeInfo.

Parameters

pTInfo : PyITypeInfo

Description for pTInfo


PyICreateTypeInfo.AddVarDesc

AddVarDesc(index)

Description of AddVarDesc.

Parameters

index : int

Description for index


PyICreateTypeInfo.DefineFuncAsDllEntry

DefineFuncAsDllEntry(index, szDllName, szProcName)

Description of DefineFuncAsDllEntry.

Parameters

index : int

Description for index

szDllName : unicode

Description for szDllName

szProcName : unicode

Description for szProcName


PyICreateTypeInfo.LayOut

LayOut()

Description of LayOut.


PyICreateTypeInfo.SetAlignment

SetAlignment(cbAlignment)

Description of SetAlignment.

Parameters

cbAlignment : int

Description for cbAlignment


PyICreateTypeInfo.SetDocString

SetDocString(pStrDoc)

Description of SetDocString.

Parameters

pStrDoc : unicode

Description for pStrDoc


PyICreateTypeInfo.SetFuncAndParamNames

SetFuncAndParamNames(index, rgszNames)

Description of SetFuncAndParamNames.

Parameters

index : int

Index of the item to set.

rgszNames : (unicode , ...)

A sequence of unicode or String objects.


PyICreateTypeInfo.SetFuncDocString

SetFuncDocString(index, szDocString)

Description of SetFuncDocString.

Parameters

index : int

Description for index

szDocString : unicode

Description for szDocString


PyICreateTypeInfo.SetFuncHelpContext

SetFuncHelpContext(index, dwHelpContext)

Description of SetFuncHelpContext.

Parameters

index : int

Description for index

dwHelpContext : int

Description for dwHelpContext


PyICreateTypeInfo.SetGuid

SetGuid(guid)

Description of SetGuid.

Parameters

guid : PyIID

Description for guid


PyICreateTypeInfo.SetHelpContext

SetHelpContext(dwHelpContext)

Description of SetHelpContext.

Parameters

dwHelpContext : int

Description for dwHelpContext


PyICreateTypeInfo.SetImplTypeFlags

SetImplTypeFlags(index, implTypeFlags)

Description of SetImplTypeFlags.

Parameters

index : int

Description for index

implTypeFlags : int

Description for implTypeFlags


PyICreateTypeInfo.SetMops

SetMops(index, bstrMops)

Description of SetMops.

Parameters

index : int

Description for index

bstrMops : unicode

Description for bstrMops


PyICreateTypeInfo.SetSchema

SetSchema(pStrSchema)

Description of SetSchema.

Parameters

pStrSchema : unicode

Description for pStrSchema


PyICreateTypeInfo.SetTypeDescAlias

SetTypeDescAlias()

Description of SetTypeDescAlias.


PyICreateTypeInfo.SetTypeFlags

SetTypeFlags(uTypeFlags)

Description of SetTypeFlags.

Parameters

uTypeFlags : int

Description for uTypeFlags


PyICreateTypeInfo.SetVarDocString

SetVarDocString(index, szDocString)

Description of SetVarDocString.

Parameters

index : int

Description for index

szDocString : unicode

Description for szDocString


PyICreateTypeInfo.SetVarHelpContext

SetVarHelpContext(index, dwHelpContext)

Description of SetVarHelpContext.

Parameters

index : int

Description for index

dwHelpContext : int

Description for dwHelpContext


PyICreateTypeInfo.SetVarName

SetVarName(index, szName)

Description of SetVarName.

Parameters

index : int

Description for index

szName : unicode

Description for szName


PyICreateTypeInfo.SetVersion

SetVersion(wMajorVerNum, wMinorVerNum)

Description of SetVersion.

Parameters

wMajorVerNum : int

Description for wMajorVerNum

wMinorVerNum : int

Description for wMinorVerNum


PyICreateTypeLib

PyICreateTypeLib Object

Description of the interface

Methods

CreateTypeInfo
Description of CreateTypeInfo

SetName
Description of SetName

SetVersion
Description of SetVersion

SetGuid
Description of SetGuid

SetDocString
Description of SetDocString

SetHelpFileName
Description of SetHelpFileName

SetHelpContext
Description of SetHelpContext

SetLcid
Description of SetLcid

SetLibFlags
Description of SetLibFlags

SaveAllChanges
Description of SaveAllChanges


PyICreateTypeLib.CreateTypeInfo

CreateTypeInfo(szName)

Description of CreateTypeInfo.

Parameters

szName : unicode

Description for szName


PyICreateTypeLib.SaveAllChanges

SaveAllChanges()

Description of SaveAllChanges.


PyICreateTypeLib.SetDocString

SetDocString(szDoc)

Description of SetDocString.

Parameters

szDoc : unicode

Description for szDoc


PyICreateTypeLib.SetGuid

SetGuid(guid)

Description of SetGuid.

Parameters

guid : PyIID

Description for guid


PyICreateTypeLib.SetHelpContext

SetHelpContext(dwHelpContext)

Description of SetHelpContext.

Parameters

dwHelpContext : int

Description for dwHelpContext


PyICreateTypeLib.SetHelpFileName

SetHelpFileName(szHelpFileName)

Description of SetHelpFileName.

Parameters

szHelpFileName : unicode

Description for szHelpFileName


PyICreateTypeLib.SetLcid

SetLcid()

Description of SetLcid.


PyICreateTypeLib.SetLibFlags

SetLibFlags(uLibFlags)

Description of SetLibFlags.

Parameters

uLibFlags : int

Description for uLibFlags


PyICreateTypeLib.SetName

SetName(szName)

Description of SetName.

Parameters

szName : unicode

Description for szName


PyICreateTypeLib.SetVersion

SetVersion(wMajorVerNum, wMinorVerNum)

Description of SetVersion.

Parameters

wMajorVerNum : int

Description for wMajorVerNum

wMinorVerNum : int

Description for wMinorVerNum


PyIDL

PyIDL Object

A Python representation of an IDL. Implemented as a Python string.

Return Value

The return value is a list of tuples, in the same format as the WIN32_FIND_DATA structure:

Items

[0] int : attributes

File Attributes. A combination of the win32com.FILE_ATTRIBUTE_* flags.

[1] PyTime : createTime

File creation time.

[2] PyTime : accessTime

File access time.

[3] PyTime : writeTime

Time of last file write

[4] int : nFileSizeHigh

high order word of file size.

[5] int : nFileSizeLow

low order word of file size.

[6] int : reserved0

Reserved.

[7] int : reserved1

Reserved.

[8] string : fileName

The name of the file.

[9] string : alternateFilename

Alternative name of the file, expressed in 8.3 format.


PyIDebugApplication

PyIDebugApplication Object

This interface is an extension of PyIRemoteDebugApplication, exposing non-remotable methods for use by language engines and hosts.

Methods

SetName
Sets the name of the application.

StepOutComplete
Called by language engines, in single step mode, just before they return to their caller.

DebugOutput
Causes the given string to be displayed by the debugger IDE.

StartDebugSession
Causes a default debugger IDE to be started.

HandleBreakPoint
Called by the language engine in the context of a thread that has hit a breakpoint.

Close
Causes this application to release all references and enter a zombie state.

GetBreakFlags
Returns the current break flags for the application.

GetCurrentThread
Returns the application thread object associated with the currently running thread.

CreateAsyncDebugOperation
Creates an IDebugAsyncOperation object to wrap a provided PyIDebugSyncOperation object.

AddStackFrameSniffer
Adds a stack frame sniffer to this application.

RemoveStackFrameSniffer
Removes a stack frame sniffer from this application.

QueryCurrentThreadIsDebuggerThread
Determines if the current running thread is the debugger thread.

SynchronousCallInDebuggerThread
Provides a mechanism for the caller to run code in the debugger thread.

CreateApplicationNode
Creates a new application node which is associated with a specific document provider.

FireDebuggerEvent
Fire a generic event to the IApplicationDebugger (if any)

HandleRuntimeError
Description of HandleRuntimeError

FCanJitDebug
Description of FCanJitDebug

FIsAutoJitDebugEnabled
Description of FIsAutoJitDebugEnabled

AddGlobalExpressionContextProvider
Description of AddGlobalExpressionContextProvider

RemoveGlobalExpressionContextProvider
Description of RemoveGlobalExpressionContextProvider


PyIDebugApplication.AddGlobalExpressionContextProvider

AddGlobalExpressionContextProvider(pdsfs)

Description of AddGlobalExpressionContextProvider.

Parameters

pdsfs : PyIProvideExpressionContexts

Description for pdsfs


PyIDebugApplication.AddStackFrameSniffer

int = AddStackFrameSniffer(pdsfs)

Adds a stack frame sniffer to this application.

Parameters

pdsfs : PyIDebugStackFrameSniffer

Description for pdsfs

Comments

Generally called by a language engine to expose its stack frames to the debugger. It is possible for other entities to expose stack frames.

Return Value

The result is an integer cookie, to be passed to PyIDebugApplication::RemoveStackFrameSniffer


PyIDebugApplication.Close

Close()

Causes this application to release all references and enter a zombie state.

Comments

Called by the owner of the application generally on shut down.


PyIDebugApplication.CreateApplicationNode

PyIDebugApplicationNode = CreateApplicationNode()

Creates a new application node which is associated with a specific document provider.

Comments

Before it is visible, the new node must be attached to a parent node.


PyIDebugApplication.CreateAsyncDebugOperation

CreateAsyncDebugOperation(psdo)

Creates an IDebugAsyncOperation object to wrap a provided PyIDebugSyncOperation object.

Parameters

psdo : PyIDebugSyncOperation

Description for psdo

Comments

This provides a mechanism for language engines to implement asynchronous expression and evaluation, etc. without having to know the details of synchronization with the debugger thread. See the descriptions for PyIDebugSyncOperation and PyIDebugAsyncOperation for more details.


PyIDebugApplication.DebugOutput

DebugOutput(pstr)

Causes the given string to be displayed by the debugger IDE, normally in an output window.

Parameters

pstr : unicode

Description for pstr

Comments

This mechanism provides the means for a language engine to implement language specific debugging output support. Example: Debug.writeln("Help") in JavaScript.


PyIDebugApplication.FCanJitDebug

FCanJitDebug()

Description of FCanJitDebug.


PyIDebugApplication.FIsAutoJitDebugEnabled

FIsAutoJitDebugEnabled()

Description of FIsAutoJitDebugEnabled.


PyIDebugApplication.FireDebuggerEvent

FireDebuggerEvent(guid, unknown)

Fire a generic event to the IApplicationDebugger (if any)

Parameters

guid : PyIIID

A GUID.

unknown : PyIUnknown

An unknown object.


PyIDebugApplication.GetBreakFlags

int = GetBreakFlags()

Returns the current break flags for the application.


PyIDebugApplication.GetCurrentThread

PyIDebugApplicationThread = GetCurrentThread()

Returns the application thread object associated with the currently running thread.


PyIDebugApplication.HandleBreakPoint

int = HandleBreakPoint(br)

Called by the language engine in the context of a thread that has hit a breakpoint.

Parameters

br : int

Break reason - one of the BREAKREASON_* constants.

Comments

This method causes the current thread to block and a notification of the breakpoint to be sent to the debugger IDE. When the debugger IDE resumes the application this method returns with the action to be taken.

Note: While in the breakpoint the language engine may be called in this thread to do various things such as enumerating stack frames or evaluating expressions.

Return Value

The result is the break resume action - one of the BREAKRESUMEACTION contsants.


PyIDebugApplication.HandleRuntimeError

HandleRuntimeError(pErrorDebug, pScriptSite)

Description of HandleRuntimeError.

Parameters

pErrorDebug : PyIActiveScriptErrorDebug

Description for pErrorDebug

pScriptSite : PyIActiveScriptSite

Description for pScriptSite


PyIDebugApplication.QueryCurrentThreadIsDebuggerThread

QueryCurrentThreadIsDebuggerThread()

Determines if the current running thread is the debugger thread.

Return Value

Returns S_OK if the current running thread is the debugger thread. Otherwise, returns S_FALSE.


PyIDebugApplication.RemoveGlobalExpressionContextProvider

RemoveGlobalExpressionContextProvider(dwCookie)

Description of RemoveGlobalExpressionContextProvider.

Parameters

dwCookie : int

Description for dwCookie


PyIDebugApplication.RemoveStackFrameSniffer

RemoveStackFrameSniffer(dwCookie)

Removes a stack frame sniffer from this application.

Parameters

dwCookie : int

A cookie obtained from PyIDebugApplication::AddStackFrameSniffer


PyIDebugApplication.SetName

SetName(pstrName)

Sets the name of the application.

Parameters

pstrName : unicode

The name of the application.

Comments

The provided name will be returned in subsequent calls to >om PyIRemoteDebugApplication.GetName>.


PyIDebugApplication.StartDebugSession

StartDebugSession()

Causes a default debugger IDE to be started and a debug session to be attached to this application if one does not already exist.

Comments

This is used to implement just-in-time debugging.


PyIDebugApplication.StepOutComplete

StepOutComplete()

Called by language engines, in single step mode, just before they return to their caller.

Comments

The process debug manager uses this opportunity to notify all other script engines that they should break at the first opportunity. This is how cross language step modes are implemented.


PyIDebugApplication.SynchronousCallInDebuggerThread

SynchronousCallInDebuggerThread(pptc, dwParam1, dwParam2, dwParam3)

Provides a mechanism for the caller to run code in the debugger thread.

Parameters

pptc : PyIDebugThreadCall

Description for pptc

dwParam1 : int

Description for dwParam1

dwParam2 : int

Description for dwParam2

dwParam3 : int

Description for dwParam3

Comments

This is generally used so that language engines and hosts can implement free threaded objects on top of their single threaded implementations.


PyIDebugApplicationNode

PyIDebugApplicationNode Object

Provides the functionality of IDebugDocumentProvider, plus a context within a project tree. Derived from PyIDebugDocumentProvider

Methods

EnumChildren
Description of EnumChildren

GetParent
Description of GetParent

SetDocumentProvider
Description of SetDocumentProvider

Close
Description of Close

Attach
Attach a node to its parent.

Detach
Detach a node from its parent.


PyIDebugApplicationNode.Attach

Attach(pdanParent)

Attach a node to its parent.

Parameters

pdanParent : PyIDebugApplicationNode

The parent node. None is not acceptable.


PyIDebugApplicationNode.Close

Close()

Description of Close.


PyIDebugApplicationNode.Detach

Detach()

Detach a node from its parent.


PyIDebugApplicationNode.EnumChildren

EnumChildren()

Description of EnumChildren.


PyIDebugApplicationNode.GetParent

PyIDebugApplicationNode = GetParent()

Returns the parent node.


PyIDebugApplicationNode.SetDocumentProvider

SetDocumentProvider(pddp)

Description of SetDocumentProvider.

Parameters

pddp : PyIDebugDocumentProvider

Description for pddp


PyIDebugApplicationNodeEvents

PyIDebugApplicationNodeEvents Object

Description of the interface

Methods

onAddChild
Description of onAddChild

onRemoveChild
Description of onRemoveChild

onDetach
Description of onDetach

onAttach
Description of onAttach


PyIDebugApplicationNodeEvents.onAddChild

onAddChild(prddpChild)

Description of onAddChild.

Parameters

prddpChild : PyIDebugApplicationNode

Description for prddpChild


PyIDebugApplicationNodeEvents.onAttach

onAttach(prddpParent)

Description of onAttach.

Parameters

prddpParent : PyIDebugApplicationNode

Description for prddpParent


PyIDebugApplicationNodeEvents.onDetach

onDetach()

Description of onDetach.


PyIDebugApplicationNodeEvents.onRemoveChild

onRemoveChild(prddpChild)

Description of onRemoveChild.

Parameters

prddpChild : PyIDebugApplicationNode

Description for prddpChild


PyIDebugApplicationThread

PyIDebugApplicationThread Object

Description of the interface

Methods

SynchronousCallIntoThread
Description of SynchronousCallIntoThread

QueryIsCurrentThread
Description of QueryIsCurrentThread

QueryIsDebuggerThread
Description of QueryIsDebuggerThread

QueryIsDebuggerThread
Description of SetDescription

QueryIsDebuggerThread
Description of SetStateString


PyIDebugApplicationThread.QueryIsCurrentThread

QueryIsCurrentThread()

Description of QueryIsCurrentThread.


PyIDebugApplicationThread.QueryIsDebuggerThread

QueryIsDebuggerThread()

Description of QueryIsDebuggerThread.


PyIDebugApplicationThread.SynchronousCallIntoThread

SynchronousCallIntoThread(pstcb, dwParam1, dwParam2, dwParam3)

Description of SynchronousCallIntoThread.

Parameters

pstcb : PyIDebugThreadCall

Description for pstcb

dwParam1 : int

Description for dwParam1

dwParam2 : int

Description for dwParam2

dwParam3 : int

Description for dwParam3


PyIDebugCodeContext

PyIDebugCodeContext Object

Description of the interface

Methods

GetDocumentContext
Description of GetDocumentContext

SetBreakPoint
Description of SetBreakPoint


PyIDebugCodeContext.GetDocumentContext

GetDocumentContext()

Description of GetDocumentContext.


PyIDebugCodeContext.SetBreakPoint

SetBreakPoint(bps)

Description of SetBreakPoint.

Parameters

bps : int

Description for bps


PyIDebugDocument

PyIDebugDocument Object

The base interface to all debug documents. Derived from PyIDebugDocumentInfo


PyIDebugDocumentContext

PyIDebugDocumentContext Object

Description of the interface

Methods

GetDocument
Description of GetDocument

EnumCodeContexts
Description of EnumCodeContexts


PyIDebugDocumentContext.EnumCodeContexts

EnumCodeContexts()

Description of EnumCodeContexts.


PyIDebugDocumentContext.GetDocument

GetDocument()

Description of GetDocument.


PyIDebugDocumentHelper

PyIDebugDocumentHelper Object

Description of the interface

Methods

Init
Description of Init

Attach
Add the document to the doc tree

Detach
Description of Detach

AddUnicodeText
Description of AddUnicodeText

AddDBCSText
Description of AddDBCSText

SetDebugDocumentHost
Description of SetDebugDocumentHost

AddDeferredText
Description of AddDeferredText

DefineScriptBlock
Description of DefineScriptBlock

SetDefaultTextAttr
Description of SetDefaultTextAttr

SetTextAttributes
Description of SetTextAttributes

SetLongName
Description of SetLongName

SetShortName
Description of SetShortName

SetDocumentAttr
Description of SetDocumentAttr

GetDebugApplicationNode
Description of GetDebugApplicationNode

GetScriptBlockInfo
Description of GetScriptBlockInfo

CreateDebugDocumentContext
Description of CreateDebugDocumentContext

BringDocumentToTop
Description of BringDocumentToTop

BringDocumentContextToTop
Description of BringDocumentContextToTop


PyIDebugDocumentHelper.AddDBCSText

AddDBCSText()

Description of AddDBCSText.


PyIDebugDocumentHelper.AddDeferredText

AddDeferredText(cChars, dwTextStartCookie)

Description of AddDeferredText.

Parameters

cChars : int

Description for cChars

dwTextStartCookie : int

Description for dwTextStartCookie


PyIDebugDocumentHelper.AddUnicodeText

AddUnicodeText(pszText)

Description of AddUnicodeText.

Parameters

pszText : unicode

Description for pszText


PyIDebugDocumentHelper.Attach

Attach(pddhParent)

Add the document to the doc tree

Parameters

pddhParent : PyIDebugDocumentHelper

Parent item. If none, this item is top level.


PyIDebugDocumentHelper.BringDocumentContextToTop

BringDocumentContextToTop(pddc)

Description of BringDocumentContextToTop.

Parameters

pddc : PyIDebugDocumentContext

Description for pddc


PyIDebugDocumentHelper.BringDocumentToTop

BringDocumentToTop()

Description of BringDocumentToTop.


PyIDebugDocumentHelper.CreateDebugDocumentContext

CreateDebugDocumentContext(iCharPos, cChars)

Description of CreateDebugDocumentContext.

Parameters

iCharPos : int

Description for iCharPos

cChars : int

Description for cChars


PyIDebugDocumentHelper.DefineScriptBlock

DefineScriptBlock(ulCharOffset, cChars, pas, fScriptlet)

Description of DefineScriptBlock.

Parameters

ulCharOffset : int

Description for ulCharOffset

cChars : int

Description for cChars

pas : PyIActiveScript

Description for pas

fScriptlet : int

Description for fScriptlet


PyIDebugDocumentHelper.Detach

Detach()

Description of Detach.


PyIDebugDocumentHelper.GetDebugApplicationNode

GetDebugApplicationNode()

Description of GetDebugApplicationNode.


PyIDebugDocumentHelper.GetScriptBlockInfo

GetScriptBlockInfo(dwSourceContext)

Description of GetScriptBlockInfo.

Parameters

dwSourceContext : int

Description for dwSourceContext


PyIDebugDocumentHelper.Init

Init(pda, pszShortName, pszLongName, docAttr)

Description of Init.

Parameters

pda : PyIDebugApplication

Description for pda

pszShortName : unicode

Description for pszShortName

pszLongName : unicode

Description for pszLongName

docAttr : int

Description for docAttr


PyIDebugDocumentHelper.SetDebugDocumentHost

SetDebugDocumentHost(pddh)

Description of SetDebugDocumentHost.

Parameters

pddh : PyIDebugDocumentHost

Description for pddh


PyIDebugDocumentHelper.SetDefaultTextAttr

SetDefaultTextAttr(staTextAttr)

Description of SetDefaultTextAttr.

Parameters

staTextAttr : int

Description for staTextAttr


PyIDebugDocumentHelper.SetDocumentAttr

SetDocumentAttr(pszAttributes)

Description of SetDocumentAttr.

Parameters

pszAttributes : int

Description for pszAttributes


PyIDebugDocumentHelper.SetLongName

SetLongName(pszLongName)

Description of SetLongName.

Parameters

pszLongName : unicode

Description for pszLongName


PyIDebugDocumentHelper.SetShortName

SetShortName(pszShortName)

Description of SetShortName.

Parameters

pszShortName : unicode

Description for pszShortName


PyIDebugDocumentHelper.SetTextAttributes

SetTextAttributes(ulCharOffset, obAttr)

Description of SetTextAttributes.

Parameters

ulCharOffset : int

Description for ulCharOffset

obAttr : object

A sequence of attributes.


PyIDebugDocumentHost

PyIDebugDocumentHost Object

Description of the interface

Methods

GetDeferredText
Description of GetDeferredText

GetScriptTextAttributes
Description of GetScriptTextAttributes

OnCreateDocumentContext
Description of OnCreateDocumentContext

GetPathName
Description of GetPathName

GetFileName
Description of GetFileName

NotifyChanged
Description of NotifyChanged


PyIDebugDocumentHost.GetDeferredText

GetDeferredText(dwTextStartCookie, cMaxChars)

Description of GetDeferredText.

Parameters

dwTextStartCookie : int

Description for dwTextStartCookie

cMaxChars : int

Description for cMaxChars


PyIDebugDocumentHost.GetFileName

GetFileName()

Description of GetFileName.


PyIDebugDocumentHost.GetPathName

GetPathName()

Description of GetPathName.


PyIDebugDocumentHost.GetScriptTextAttributes

GetScriptTextAttributes(pstrCode, pstrDelimiter, dwFlags)

Description of GetScriptTextAttributes.

Parameters

pstrCode : unicode

Description for pstrCode

pstrDelimiter : unicode

Description for pstrDelimiter

dwFlags : int

Description for dwFlags


PyIDebugDocumentHost.NotifyChanged

NotifyChanged()

Description of NotifyChanged.


PyIDebugDocumentHost.OnCreateDocumentContext

OnCreateDocumentContext()

Description of OnCreateDocumentContext.


PyIDebugDocumentInfo

PyIDebugDocumentInfo Object

Provides information on a document, which may or may not be instantiated.

Methods

GetName
Returns the specified name for the document.

GetDocumentClassId
Returns a CLSID describing the document type.


PyIDebugDocumentInfo.GetDocumentClassId

PyIID = GetDocumentClassId()

Returns a CLSID describing the document type.


PyIDebugDocumentInfo.GetName

GetName()

Returns the specified name for the document.


PyIDebugDocumentProvider

PyIDebugDocumentProvider Object

Provides the means for instanciating a document on demand. Derived from PyIDebugDocumentInfo.

Methods

GetDocument
Causes the document to be instantiated if it does not already exist.


PyIDebugDocumentProvider.GetDocument

PyIDebugDocument = GetDocument()

Causes the document to be instantiated if it does not already exist.


PyIDebugDocumentText

PyIDebugDocumentText Object

The interface to a text only debug document. Derived from PyIDebugDocument

Methods

GetDocumentAttributes
Description of GetDocumentAttributes

GetSize
Description of GetSize

GetPositionOfLine
Description of GetPositionOfLine

GetLineOfPosition
Description of GetLineOfPosition

GetText
Description of GetText

GetPositionOfContext
Description of GetPositionOfContext

GetContextOfPosition
Description of GetContextOfPosition


PyIDebugDocumentText.GetContextOfPosition

GetContextOfPosition(cCharacterPosition, cNumChars)

Description of GetContextOfPosition.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumChars : int

Description for cNumChars


PyIDebugDocumentText.GetDocumentAttributes

GetDocumentAttributes()

Description of GetDocumentAttributes.


PyIDebugDocumentText.GetLineOfPosition

GetLineOfPosition(cCharacterPosition)

Description of GetLineOfPosition.

Parameters

cCharacterPosition : int

Description for cCharacterPosition


PyIDebugDocumentText.GetPositionOfContext

GetPositionOfContext(psc)

Description of GetPositionOfContext.

Parameters

psc : PyIDebugDocumentContext

Description for psc


PyIDebugDocumentText.GetPositionOfLine

GetPositionOfLine(cLineNumber)

Description of GetPositionOfLine.

Parameters

cLineNumber : int

Description for cLineNumber


PyIDebugDocumentText.GetSize

GetSize()

Description of GetSize.


PyIDebugDocumentText.GetText

GetText(cCharacterPosition, cMaxChars, bWantAttr)

Description of GetText.

Parameters

cCharacterPosition : int

cMaxChars : int

Max chars to return

bWantAttr=1 : int

Should the attributes be returned?


PyIDebugDocumentTextAuthor

PyIDebugDocumentTextAuthor Object

This preliminary interface is provided by text documents that support editing. Derived from PyIDebugDocumentText

Methods

InsertText
Description of InsertText

RemoveText
Description of RemoveText

ReplaceText
Description of ReplaceText


PyIDebugDocumentTextAuthor.InsertText

InsertText(cCharacterPosition, cNumToInsert, pcharText)

Description of InsertText.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumToInsert : int

Description for cNumToInsert

pcharText : unicode

Description for pcharText


PyIDebugDocumentTextAuthor.RemoveText

RemoveText(cCharacterPosition, cNumToRemove)

Description of RemoveText.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumToRemove : int

Description for cNumToRemove


PyIDebugDocumentTextAuthor.ReplaceText

ReplaceText(cCharacterPosition, cNumToReplace, pcharText)

Description of ReplaceText.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumToReplace : int

Description for cNumToReplace

pcharText : unicode

Description for pcharText


PyIDebugDocumentTextEvents

PyIDebugDocumentTextEvents Object

Description of the interface

Methods

onDestroy
Description of onDestroy

onInsertText
Description of onInsertText

onRemoveText
Description of onRemoveText

onReplaceText
Description of onReplaceText

onUpdateTextAttributes
Description of onUpdateTextAttributes

onUpdateDocumentAttributes
Description of onUpdateDocumentAttributes


PyIDebugDocumentTextEvents.onDestroy

onDestroy()

Description of onDestroy.


PyIDebugDocumentTextEvents.onInsertText

onInsertText(cCharacterPosition, cNumToInsert)

Description of onInsertText.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumToInsert : int

Description for cNumToInsert


PyIDebugDocumentTextEvents.onRemoveText

onRemoveText(cCharacterPosition, cNumToRemove)

Description of onRemoveText.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumToRemove : int

Description for cNumToRemove


PyIDebugDocumentTextEvents.onReplaceText

onReplaceText(cCharacterPosition, cNumToReplace)

Description of onReplaceText.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumToReplace : int

Description for cNumToReplace


PyIDebugDocumentTextEvents.onUpdateDocumentAttributes

onUpdateDocumentAttributes(textdocattr)

Description of onUpdateDocumentAttributes.

Parameters

textdocattr : int

Description for textdocattr


PyIDebugDocumentTextEvents.onUpdateTextAttributes

onUpdateTextAttributes(cCharacterPosition, cNumToUpdate)

Description of onUpdateTextAttributes.

Parameters

cCharacterPosition : int

Description for cCharacterPosition

cNumToUpdate : int

Description for cNumToUpdate


PyIDebugDocumentTextExternalAuthor

PyIDebugDocumentTextExternalAuthor Object

Description of the interface

Methods

GetPathName
Description of GetPathName

GetFileName
Description of GetFileName

NotifyChanged
Description of NotifyChanged


PyIDebugDocumentTextExternalAuthor.GetFileName

GetFileName()

Description of GetFileName.


PyIDebugDocumentTextExternalAuthor.GetPathName

GetPathName()

Description of GetPathName.


PyIDebugDocumentTextExternalAuthor.NotifyChanged

NotifyChanged()

Description of NotifyChanged.


PyIDebugExpression

PyIDebugExpression Object

Description of the interface

Methods

Start
Description of Start

Abort
Description of Abort

QueryIsComplete
Description of QueryIsComplete

GetResultAsString
Description of GetResultAsString

GetResultAsDebugProperties
Description of GetResultAsDebugProperties


PyIDebugExpression.Abort

Abort()

Description of Abort.


PyIDebugExpression.GetResultAsDebugProperties

GetResultAsDebugProperties()

Description of GetResultAsDebugProperty.


PyIDebugExpression.GetResultAsString

GetResultAsString()

Description of GetResultAsString.


PyIDebugExpression.QueryIsComplete

QueryIsComplete()

Description of QueryIsComplete.


PyIDebugExpression.Start

Start(pdecb)

Description of Start.

Parameters

pdecb : PyIDebugExpressionCallBack

Description for pdecb


PyIDebugExpressionCallBack

PyIDebugExpressionCallBack Object

Description of the interface

Methods

onComplete
Description of onComplete


PyIDebugExpressionCallBack.onComplete

onComplete()

Description of onComplete.


PyIDebugExpressionContext

PyIDebugExpressionContext Object

Description of the interface

Methods

ParseLanguageText
Description of ParseLanguageText

GetLanguageInfo
Description of GetLanguageInfo


PyIDebugExpressionContext.GetLanguageInfo

GetLanguageInfo()

Description of GetLanguageInfo.


PyIDebugExpressionContext.ParseLanguageText

ParseLanguageText(pstrCode, nRadix, pstrDelimiter, dwFlags)

Description of ParseLanguageText.

Parameters

pstrCode : unicode

Description for pstrCode

nRadix : int

Description for nRadix

pstrDelimiter : unicode

Description for pstrDelimiter

dwFlags : int

Description for dwFlags


PyIDebugProperty

PyIDebugProperty Object

Description of the interface

Methods

GetPropertyInfo
Description of GetPropertyInfo

GetExtendedInfo
Description of GetExtendedInfo

SetValueAsString
Description of SetValueAsString

EnumMembers
Description of EnumMembers

GetParent
Description of GetParent


PyIDebugProperty.EnumMembers

EnumMembers(dwFieldSpec, nRadix, refiid)

Description of EnumMembers.

Parameters

dwFieldSpec : int

Description for dwFieldSpec

nRadix : int

Description for nRadix

refiid : PyIID

Description for refiid


PyIDebugProperty.GetExtendedInfo

GetExtendedInfo()

Description of GetExtendedInfo.


PyIDebugProperty.GetParent

GetParent()

Description of GetParent.


PyIDebugProperty.GetPropertyInfo

GetPropertyInfo(dwFieldSpec, nRadix)

Description of GetPropertyInfo.

Parameters

dwFieldSpec : int

Description for dwFieldSpec

nRadix : int

Description for nRadix


PyIDebugProperty.SetValueAsString

SetValueAsString(pszValue, nRadix)

Description of SetValueAsString.

Parameters

pszValue : unicode

Description for pszValue

nRadix : int

Description for nRadix


PyIDebugSessionProvider

PyIDebugSessionProvider Object

Description of the interface

Methods

StartDebugSession
Description of StartDebugSession


PyIDebugSessionProvider.StartDebugSession

StartDebugSession(pda)

Description of StartDebugSession.

Parameters

pda : PyIRemoteDebugApplication

Description for pda


PyIDebugStackFrame

PyIDebugStackFrame Object

Description of the interface

Methods

GetCodeContext
Returns the current code context associated with the stack frame.

GetDescriptionString
Returns a short or long textual description of the stack frame.

GetLanguageString
Returns a short or long textual description of the language.

GetThread
Returns the thread associated with this stack frame.

GetThread
Returns the debug property object associated with this stack frame.


PyIDebugStackFrame.GetCodeContext

GetCodeContext()

Returns the current code context associated with the stack frame.


PyIDebugStackFrame.GetDescriptionString

unicode = GetDescriptionString(fLong)

Returns a short or long textual description of the stack frame.

Parameters

fLong : int

If false, provide only the name of the function associated with the stack frame. When true it may also provide the parameter(s) to the function or whatever else is relevant.


PyIDebugStackFrame.GetLanguageString

unicode = GetLanguageString(fLong)

Returns a short or long textual description of the language.

Parameters

fLong : int

If False, just the language name should be provided, eg, "Python". If True a full product description may be provided (eg, "Python 1.4 ActiveX Debugging Host")


PyIDebugStackFrame.GetThread

PyIDebugApplicationThread = GetThread()

Returns the thread associated with this stack frame.


PyIDebugStackFrameSniffer

PyIDebugStackFrameSniffer Object

Description of the interface

Methods

EnumStackFrames
Description of EnumStackFrames


PyIDebugStackFrameSniffer.EnumStackFrames

EnumStackFrames()

Description of EnumStackFrames.


PyIDebugStackFrameSnifferEx

PyIDebugStackFrameSnifferEx Object

Derived from PyIDebugStackFrameSniffer

Methods

EnumStackFramesEx
Description of EnumStackFramesEx


PyIDebugStackFrameSnifferEx.EnumStackFramesEx

EnumStackFramesEx()

Description of EnumStackFrames.


PyIDebugSyncOperation

PyIDebugSyncOperation Object

Description of the interface

Methods

GetTargetThread
Description of GetTargetThread

Execute
Description of Execute

InProgressAbort
Description of InProgressAbort


PyIDebugSyncOperation.Execute

Execute()

Description of Execute.


PyIDebugSyncOperation.GetTargetThread

GetTargetThread()

Description of GetTargetThread.


PyIDebugSyncOperation.InProgressAbort

InProgressAbort()

Description of InProgressAbort.


PyIDispatch

PyIDispatch Object

A OLE automation client object.

Methods

Invoke
Invokes a DISPID, using the passed arguments.

InvokeTypes
Invokes a DISPID, using the passed arguments and type descriptions.

GetIDsOfNames
Get the DISPID for the passed names.

GetTypeInfo
Get type information for the object.

GetTypeInfoCount
Retrieves the number of PyITypeInfos the object provides.


PyIDispatch.GetIDsOfNames

(int, ...)/int = GetIDsOfNames(name)

Get the DISPID for the passed names.

Parameters

name : string

A name to query for

Alternative Parameters

[name, ...]

A sequence of string names to query

Comments

Currently the LCID can not be specified, and LOCALE_SYSTEM_DEFAULT is used.

Return Value

If the first parameter is a sequence, the result will be a tuple of integers for each name in the sequence. If the first parameter is a single string, the result is a single integer with the ID of requested item.


PyIDispatch.GetTypeInfo

PyITypeInfo = GetTypeInfo(locale)

Get type information for the object.

Parameters

locale=LOCALE_USER_DEFAULT : int

The locale to use.


PyIDispatch.GetTypeInfoCount

int = GetTypeInfoCount()

Retrieves the number of PyITypeInfos the object provides.


PyIDispatch.Invoke

object = Invoke(dispid, lcid , flags , bResultWanted , params, ... )

Invokes a DISPID, using the passed arguments.

Parameters

dispid : int

The dispid to use. Typically this value will come from PyIDispatch::GetIDsOfNames or from a type library.

lcid : int

The locale id to use.

flags : int

The flags for the call. The following flags can be used.

Flag | Description
DISPATCH_METHOD | The member is invoked as a method. If a property has the same name, both this and the DISPATCH_PROPERTYGET flag may be set.
DISPATCH_PROPERTYGET | The member is retrieved as a property or data member.
DISPATCH_PROPERTYPUT | The member is changed as a property or data member.
DISPATCH_PROPERTYPUTREF | The member is changed by a reference assignment, rather than a value assignment. This flag is valid only when the property accepts a reference to an object.

bResultWanted : int

Indicates if the result of the call should be requested.

params, ... : object, ...

The parameters to pass.

Return Value

If the bResultWanted parameter is False, then the result will be None. Otherwise, the result is determined by the COM object itself (and may still be None)


PyIDispatch.InvokeTypes

object = InvokeTypes(dispid, lcid , wFlags , typeDesc , resultTypeDesc , args )

Invokes a DISPID, using the passed arguments and type descriptions.

Parameters

dispid : int

The dispid to use. Please see PyIDispatch::Invoke.

lcid : int

The locale ID. Please see PyIDispatch::Invoke.

wFlags : int

Flags for the call. Please see PyIDispatch::Invoke.

typeDesc : (tuple, ...)

A sequence of tuples describing the types of the parameters for the function.

resultTypeDesc : tuple

A tuple describing the type of the result.

args : object, ...

The args to the function.


PyIDispatchEx

PyIDispatchEx Object

A OLE automation client object that uses the IDispatchEx scripting interface..

Methods

GetDispID

InvokeEx
Provides access to properties and methods exposed by a PyIDispatchEx object.

DeleteMemberByName

DeleteMemberByDispID

GetMemberProperties

GetMemberName

GetNextDispID


PyIDispatchEx::DeleteMemberByDispID

PyIDispatchEx::DeleteMemberByDispID method

DeleteMemberByDispID()

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIDISPATCH.CPP

Parameters

dispid : int


PyIDispatchEx::DeleteMemberByName

PyIDispatchEx::DeleteMemberByName method

DeleteMemberByName()

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIDISPATCH.CPP

Parameters

name : PyUnicode

Passed in name to be mapped

fdex : int

Determines the options


PyIDispatchEx::GetDispID

PyIDispatchEx::GetDispID method

int GetDispID()

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIDISPATCH.CPP

Parameters

name : PyUnicode

Passed in name to be mapped

fdex : int

Determines the options for obtaining the member identifier. This can be a combination of the fdex* constants:


PyIDispatchEx::GetMemberName

PyIDispatchEx::GetMemberName method

int GetMemberName()

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIDISPATCH.CPP

Parameters

dispid : int

fdex : int

Determines the options


PyIDispatchEx::GetMemberProperties

PyIDispatchEx::GetMemberProperties method

int GetMemberProperties()

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIDISPATCH.CPP

Parameters

dispid : int

fdex : int

Determines the options


PyIDispatchEx::GetNextDispID

PyIDispatchEx::GetNextDispID method

int GetNextDispID()

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIDISPATCH.CPP

Parameters

fdex : int

Determines the options

dispid : int

Identifies the current member. GetNextDispID will retrieve the item in the enumeration after this one.


PyIDispatchEx::InvokeEx

PyIDispatchEx::InvokeEx method

object InvokeEx()

Provides access to properties and methods exposed by a PyIDispatchEx object.

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIDISPATCH.CPP

Parameters

dispid : int

lcid : int

flags : int

args : [object, ...]

The arguments.

types=None : [object, ...]

A tuple of type description object, or None if type descriptions are not available.

returnDesc=1 : object|int

If types==None, should be a BOOL indicating if the result is needed. If types is a tuple, then should a be type description.

serviceProvider=None : PyIServiceProvider

A service provider object supplied by the caller which allows the object to obtain services from the caller. Can be None.


PyIDistList

PyIDistList Object

An COM interface to MAPI
Derived from PyIMAPIProp


PyIEnumCATEGORYINFO

PyIEnumCATEGORYINFO Object

A Python interface to IEnumCATEGORYINFO

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumCATEGORYINFO.Clone

PyIEnumCATEGORYINFO = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumCATEGORYINFO.Next

( (PyIID , int, string), ...) = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.

Return Value

The result is a tuple of (IID object, LCID, string description) tuples, one for each element returned.


PyIEnumCATEGORYINFO.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumCATEGORYINFO.Skip

Skip(num)

Skips over the next specified elementes.

Parameters

num : int

The number of elements being requested.


PyIEnumConnectionPoints

PyIEnumConnectionPoints Object

A Python interface to IEnumConnectionPoints

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumConnectionPoints.Clone

PyIEnumConnectionPoints = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumConnectionPoints.Next

(PyIConnectionPoint, ...) = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumConnectionPoints.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumConnectionPoints.Skip

Skip()

Skips over the next specified elementes.


PyIEnumConnections

PyIEnumConnections Object

A Python interface to IEnumConnections

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumConnections.Clone

PyIEnumConnections = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumConnections.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumConnections.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumConnections.Skip

Skip()

Skips over the next specified elementes.


PyIEnumDebugApplicationNodes

PyIEnumDebugApplicationNodes Object

A Python interface to IEnumDebugApplicationNodes

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumDebugApplicationNodes.Clone

PyIEnumDebugApplicationNodes = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumDebugApplicationNodes.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumDebugApplicationNodes.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumDebugApplicationNodes.Skip

Skip()

Skips over the next specified elementes.


PyIEnumDebugCodeContexts

PyIEnumDebugCodeContexts Object

A Python interface to IEnumDebugCodeContexts

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumDebugCodeContexts.Clone

PyIEnumDebugCodeContexts = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumDebugCodeContexts.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumDebugCodeContexts.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumDebugCodeContexts.Skip

Skip()

Skips over the next specified elementes.


PyIEnumDebugExpressionContexts

PyIEnumDebugExpressionContexts Object

A Python interface to IEnumDebugExpressionContexts

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumDebugExpressionContexts.Clone

PyIEnumDebugExpressionContexts = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumDebugExpressionContexts.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumDebugExpressionContexts.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumDebugExpressionContexts.Skip

Skip()

Skips over the next specified elementes.


PyIEnumDebugPropertyInfo

PyIEnumDebugPropertyInfo Object

A Python interface to IEnumDebugPropertyInfo

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.

GetCount
Obtains the number of items


PyIEnumDebugPropertyInfo.Clone

PyIEnumDebugPropertyInfo = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumDebugPropertyInfo.GetCount

int = GetCount()

Obtains the number of items


PyIEnumDebugPropertyInfo.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumDebugPropertyInfo.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumDebugPropertyInfo.Skip

Skip()

Skips over the next specified elementes.


PyIEnumDebugStackFrames

PyIEnumDebugStackFrames Object

A Python interface to IEnumDebugStackFrames

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumDebugStackFrames.Clone

PyIEnumDebugStackFrames = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumDebugStackFrames.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumDebugStackFrames.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumDebugStackFrames.Skip

Skip()

Skips over the next specified elementes.


PyIEnumGUID

PyIEnumGUID Object

A Python interface to IEnumGUID

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumGUID.Clone

PyIEnumGUID = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumGUID.Next

(PyIID , ...) = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.

Return Value

The result is a tuple of PyIID objects, one for each element returned. Note that if zero elements are returned, it is not considered an error condition - an empty tuple is simply returned.


PyIEnumGUID.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumGUID.Skip

Skip(num)

Skips over the next specified elementes.

Parameters

num : int

The number of elements being requested.


PyIEnumMoniker

PyIEnumMoniker Object

A Python interface to IEnumMoniker

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumMoniker.Clone

PyIEnumMoniker = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumMoniker.Next

PyIMoniker = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.

Return Value

The result is a tuple of PyIID objects, one for each element returned. Note that if zero elements are returned, it is not considered an error condition - an empty tuple is simply returned.


PyIEnumMoniker.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumMoniker.Skip

Skip(num)

Skips over the next specified elementes.

Parameters

num : int

The number of elements being requested.


PyIEnumRemoteDebugApplicationThreads

PyIEnumRemoteDebugApplicationThreads Object

A Python interface to IEnumRemoteDebugApplicationThreads

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumRemoteDebugApplicationThreads.Clone

PyIEnumRemoteDebugApplicationThreads = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumRemoteDebugApplicationThreads.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumRemoteDebugApplicationThreads.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumRemoteDebugApplicationThreads.Skip

Skip()

Skips over the next specified elementes.


PyIEnumRemoteDebugApplications

PyIEnumRemoteDebugApplications Object

A Python interface to IEnumRemoteDebugApplications

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumRemoteDebugApplications.Clone

PyIEnumRemoteDebugApplications = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumRemoteDebugApplications.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumRemoteDebugApplications.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumRemoteDebugApplications.Skip

Skip()

Skips over the next specified elementes.


PyIEnumSTATPROPSTG

PyIEnumSTATPROPSTG Object

A Python interface to IEnumSTATPROPSTG

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumSTATPROPSTG.Clone

PyIEnumSTATPROPSTG = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumSTATPROPSTG.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumSTATPROPSTG.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumSTATPROPSTG.Skip

Skip()

Skips over the next specified elementes.


PyIEnumSTATSTG

PyIEnumSTATSTG Object

A Python interface to IEnumVARIANT

Methods

Next
Retrieves a specified number of items in the enumeration sequence.

Skip
Skips over the next specified elementes.

Reset
Resets the enumeration sequence to the beginning.

Clone
Creates another enumerator that contains the same enumeration state as the current one.


PyIEnumSTATSTG.Clone

PyIEnumSTATSTG = Clone()

Creates another enumerator that contains the same enumeration state as the current one


PyIEnumSTATSTG.Next

object = Next(num)

Retrieves a specified number of items in the enumeration sequence.

Parameters

num=1 : int

Number of items to retrieve.


PyIEnumSTATSTG.Reset

Reset()

Resets the enumeration sequence to the beginning.


PyIEnumSTATSTG.Skip

Skip()

Skips over the next specified elementes.


PyIErrorLog

PyIErrorLog Object

A Python wrapper for a COM IErrorLog interface.

Comments

The IErrorLog interface is an abstraction for an error log that is used to communicate detailed error information between a client and an object. The caller of the single interface method, PyIErrorLog::AddError, simply logs an error where the error is an EXCEPINFO structure related to a specific property. The implementer of the interface is responsible for handling the error in whatever way it desires.
IErrorLog is used in the protocol between a client that implements PyIPropertyBag and an object that implements PyIPersistPropertyBag.

Methods

AddError
Adds an error to the error log.


PyIErrorLog.AddError

AddError(propName, excepInfo)

Adds an error to the error log.

Parameters

propName : string

The name of the error

excepInfo=None : exception

A COM exception. Must be a complete COM exception (ie, pythoncom.com_error, or win32com.server.exceptions.COMException())


PyIExternalConnection

PyIExternalConnection Object

A Python wrapper for a COM IExternalConnection interface.

Comments

The IExternalConnection interface manages a server object's count of marshaled, or external, connections. A server that maintains such a count can detect when it has no external connections and shut itself down in an orderly fashion.

Methods

AddConnection
Increments an object's count of its strong external connections (links).

ReleaseConnection
Decrements an object's count of its strong external connections (references).


PyIExternalConnection.AddConnection

int = AddConnection(extconn, reserved )

Increments an object's count of its strong external connections (links).

Parameters

extconn : int

Type of external connection to the object. The only type of external connection currently supported by this interface is strong, which means that the object must remain alive as long as this external connection exists. Strong external connections are represented by the value EXTCONN_STRONG = 0x0001, which is defined in the enumeration EXTCON

reserved=0 : int

A reserved parameter

Return Value

The result is the number of reference counts on the object; used for debugging purposes only.


PyIExternalConnection.ReleaseConnection

int = ReleaseConnection(extconn, reserved , fLastReleaseCloses )

Decrements an object's count of its strong external connections (references).

Parameters

extconn : int

Type of external connection

reserved : int

A reserved parameter.

fLastReleaseCloses : int

TRUE specifies that if the connection being released is the last external lock on the object, the object should close. FALSE specifies that the object should remain open until closed by the user or another process.

Return Value

The result is the number of reference counts on the object; used for debugging purposes only.


PyIInternetBindInfo

PyIInternetBindInfo Object

Description of the interface

Methods

GetBindInfo
Description of GetBindInfo

GetBindString
Description of GetBindString


PyIInternetBindInfo.GetBindInfo

GetBindInfo()

Description of GetBindInfo.


PyIInternetBindInfo.GetBindString

GetBindString()

Description of GetBindString.


PyIInternetPriority

PyIInternetPriority Object

Description of the interface

Methods

SetPriority
Description of SetPriority

GetPriority
Description of GetPriority


PyIInternetPriority.GetPriority

GetPriority()

Description of GetPriority.


PyIInternetPriority.SetPriority

SetPriority(nPriority)

Description of SetPriority.

Parameters

nPriority : int

Description for nPriority


PyIInternetProtocol

PyIInternetProtocol Object

Description of the interface

Methods

Read
Description of Read

Seek
Description of Seek

LockRequest
Description of LockRequest

UnlockRequest
Description of UnlockRequest


PyIInternetProtocol.LockRequest

LockRequest(dwOptions)

Description of LockRequest.

Parameters

dwOptions : int

Description for dwOptions


PyIInternetProtocol.Read

Read(cb)

Description of Read.

Parameters

cb : int

Description for cb


PyIInternetProtocol.Seek

Seek(dlibMove, dwOrigin)

Description of Seek.

Parameters

dlibMove : LARGE_INTEGER

Description for dlibMove

dwOrigin : int

Description for dwOrigin


PyIInternetProtocol.UnlockRequest

UnlockRequest()

Description of UnlockRequest.


PyIInternetProtocolInfo

PyIInternetProtocolInfo Object

Description of the interface

Methods

ParseUrl
Description of ParseUrl

CombineUrl
Description of CombineUrl

CompareUrl
Description of CompareUrl

QueryInfo
Description of QueryInfo


PyIInternetProtocolInfo.CombineUrl

CombineUrl(pwzBaseUrl, pwzRelativeUrl, dwCombineFlags, cchResult, dwReserved)

Description of CombineUrl.

Parameters

pwzBaseUrl : unicode

Description for pwzBaseUrl

pwzRelativeUrl : unicode

Description for pwzRelativeUrl

dwCombineFlags : int

Description for dwCombineFlags

cchResult : int

Description for cchResult

dwReserved : int

Description for dwReserved


PyIInternetProtocolInfo.CompareUrl

CompareUrl(pwzUrl1, pwzUrl2, dwCompareFlags)

Description of CompareUrl.

Parameters

pwzUrl1 : unicode

Description for pwzUrl1

pwzUrl2 : unicode

Description for pwzUrl2

dwCompareFlags : int

Description for dwCompareFlags


PyIInternetProtocolInfo.ParseUrl

ParseUrl(pwzUrl, ParseAction, dwParseFlags, cchResult, dwReserved)

Description of ParseUrl.

Parameters

pwzUrl : unicode

Description for pwzUrl

ParseAction : int

Description for ParseAction

dwParseFlags : int

Description for dwParseFlags

cchResult : int

Description for cchResult

dwReserved : int

Description for dwReserved


PyIInternetProtocolInfo.QueryInfo

int|string = QueryInfo(pwzUrl, OueryOption , dwQueryFlags , cbBuffer , dwReserved )

Description of QueryInfo.

Parameters

pwzUrl : unicode

Description for pwzUrl

OueryOption : int

Description for OueryOption

dwQueryFlags : int

Description for dwQueryFlags

cbBuffer : int

Description for cbBuffer

dwReserved : int

Description for dwReserved

Comments

If the buffer size is the size of an integer, an integer will be returned, otherwise a string.


PyIInternetProtocolRoot

PyIInternetProtocolRoot Object

Description of the interface

Methods

Start
Description of Start

Continue
Description of Continue

Abort
Description of Abort

Terminate
Description of Terminate

Suspend
Description of Suspend

Resume
Description of Resume


PyIInternetProtocolRoot.Abort

Abort(hrReason, dwOptions)

Description of Abort.

Parameters

hrReason : int

Description for hrReason

dwOptions : int

Description for dwOptions


PyIInternetProtocolRoot.Continue

Continue()

Description of Continue.


PyIInternetProtocolRoot.Resume

Resume()

Description of Resume.


PyIInternetProtocolRoot.Start

Start(szUrl, pOIProtSink, pOIBindInfo, grfPI, dwReserved)

Description of Start.

Parameters

szUrl : unicode

Description for szUrl

pOIProtSink : PyIInternetProtocolSink

Description for pOIProtSink

pOIBindInfo : PyIInternetBindInfo

Description for pOIBindInfo

grfPI : int

Description for grfPI

dwReserved : int

Description for dwReserved


PyIInternetProtocolRoot.Suspend

Suspend()

Description of Suspend.


PyIInternetProtocolRoot.Terminate

Terminate(dwOptions)

Description of Terminate.

Parameters

dwOptions : int

Description for dwOptions


PyIInternetProtocolSink

PyIInternetProtocolSink Object

Description of the interface

Methods

Switch
Description of Switch

ReportProgress
Description of ReportProgress

ReportData
Description of ReportData

ReportResult
Description of ReportResult


PyIInternetProtocolSink.ReportData

ReportData(grfBSCF, ulProgress, ulProgressMax)

Description of ReportData.

Parameters

grfBSCF : int

Description for grfBSCF

ulProgress : int

Description for ulProgress

ulProgressMax : int

Description for ulProgressMax


PyIInternetProtocolSink.ReportProgress

ReportProgress(ulStatusCode, szStatusText)

Description of ReportProgress.

Parameters

ulStatusCode : int

Description for ulStatusCode

szStatusText : unicode

Description for szStatusText


PyIInternetProtocolSink.ReportResult

ReportResult(hrResult, dwError, szResult)

Description of ReportResult.

Parameters

hrResult : int

Description for hrResult

dwError : int

Description for dwError

szResult : unicode

Description for szResult


PyIInternetProtocolSink.Switch

Switch()

Description of Switch.


PyILockBytes

PyILockBytes Object

Description of the interface

Methods

ReadAt
Reads a specified number of bytes starting at a specified offset from the beginning of the byte array object.

WriteAt
Writes the specified number of bytes starting at a specified offset from the beginning of the byte array.

Flush
Ensures that any internal buffers maintained by the byte array object are written out to the backing storage.

SetSize
Changes the size of the byte array.

LockRegion
Restricts access to a specified range of bytes in the byte array.

UnlockRegion
Removes the access restriction on a range of bytes previously restricted with PyILockBytes::LockRegion.

Stat
Retrieves a STATSTG structure for this byte array object.


PyILockBytes.Flush

Flush()

Ensures that any internal buffers maintained by the byte array object are written out to the backing storage.


PyILockBytes.LockRegion

LockRegion(libOffset, cb, dwLockType)

Restricts access to a specified range of bytes in the byte array.

Parameters

libOffset : ULARGE_INTEGER

The beginning of the region to lock.

cb : ULARGE_INTEGER

The number of bytes to lock.

dwLockType : int

Specifies the restrictions being requested on accessing the range.


PyILockBytes.ReadAt

string = ReadAt(ulOffset, cb )

Reads a specified number of bytes starting at a specified offset from the beginning of the byte array object.

Parameters

ulOffset : ULARGE_INTEGER

Offset to start reading

cb : int

Number of bytes to read

Comments

The result is a binary buffer returned in a string.


PyILockBytes.SetSize

SetSize(cb)

Changes the size of the byte array.

Parameters

cb : ULARGE_INTEGER

The new size.


PyILockBytes.Stat

STATSTG = Stat(grfStatFlag)

Retrieves a STATSTG structure for this byte array object.

Parameters

grfStatFlag : int

Specifies that this method does not return some of the fields in the STATSTG structure, thus saving a memory allocation operation. Values are taken from the STATFLAG enumerationg


PyILockBytes.UnlockRegion

UnlockRegion(libOffset, cb, dwLockType)

Removes the access restriction on a range of bytes previously restricted with PyILockBytes::LockRegion.

Parameters

libOffset : ULARGE_INTEGER

The beginning of the region to unlock.

cb : ULARGE_INTEGER

The number of bytes to lock.

dwLockType : int

Specifies the restrictions being requested on accessing the range.


PyILockBytes.WriteAt

int = WriteAt(ulOffset, data )

Writes the specified number of bytes starting at a specified offset from the beginning of the byte array.

Parameters

ulOffset : ULARGE_INTEGER

Offset to write at.

data : string

Data to write

Return Value

The result is the number of bytes actually written.


PyIMAPIContainer

PyIMAPIContainer Object

An COM interface to MAPI's IMAPIContainer interface.
Derived from PyIMAPIProp

Methods

OpenEntry
Opens an object and returns an interface object for further access.

GetContentsTable
Returns an object representing the container's contents table.

GetHierarchyTable
Returns an object representing the container's hierarchy table.


PyIMAPIContainer.GetContentsTable

PyIMAPITable = GetContentsTable(flags)

Returns an object representing the container's contents table.

Parameters

flags : int

The flags to use.


PyIMAPIContainer.GetHierarchyTable

PyIMAPITable = GetHierarchyTable(flags)

Returns an object representing the container's hierarchy table.

Parameters

flags : int

The flags to use.


PyIMAPIContainer.OpenEntry

PyIInterface = OpenEntry(entryId, iid , flags )

Opens an object and returns an interface object for further access.

Parameters

entryId : string

The EntryID to open.

iid : PyIID

The IID of the returned interface, or None for the default interface.

flags : int

Flags for the call. May include MAPI_BEST_ACCESS, MAPI_DEFERRED_ERRORS, MAPI_MODIFY and possibly others (see the MAPI documentation)


PyIMAPIFolder

PyIMAPIFolder Object

An COM interface to MAPI
Derived from PyIMAPIProp

Methods

GetLastError
Returns the last error associated with this object

CreateFolder
Creates a folder object.

CreateMessage
Creates a message in a folder

CopyMessages
Copies the specified messages

DeleteMessages
Deletes the specified messages.

EmptyFolder
deletes all messages and subfolders from a folder without deleting the folder itself.


PyIMAPIFolder.CopyMessages

CopyMessages()

Copies the specified messages


PyIMAPIFolder.CreateFolder

PyIMAPIFolder = CreateFolder(folderType, folderName , folderComment , iid , flags )

Creates a folder object.

Parameters

folderType : int

The type of folder to create

folderName : string

The name of the folder.

folderComment : string

A comment for the folder or None

iid : PyIID

The IID of the object to return. Should usually be None.

flags : int


PyIMAPIFolder.CreateMessage

PyIMessage = CreateMessage(iid, flags )

Creates a message in a folder

Parameters

iid : PyIID

The IID of the object to return. Should usually be None.

flags : int


PyIMAPIFolder.DeleteMessages

DeleteMessages(msgs, uiParam, progress, flags)

Deletes the specified messages.

Parameters

msgs : SBinaryArray

uiParam : int

A HWND for the progress

progress : PyIMAPIProgress

A progress object, or None

flags : int


PyIMAPIFolder.EmptyFolder

EmptyFolder(uiParam, progress, flags)

deletes all messages and subfolders from a folder without deleting the folder itself.

Parameters

uiParam : int

A HWND for the progress

progress : PyIMAPIProgress

A progress object, or None

flags : int


PyIMAPIFolder.GetLastError

PyMAPIError = GetLastError(hr, flags )

Returns the last error associated with this object

Parameters

hr : int

The HRESULT

flags : int


PyIMAPIProp

PyIMAPIProp Object

An COM interface to MAPI
Derived from PyIUnknown

Methods

GetProps
Returns a list of property values.

DeleteProps
Deletes a set of properties.

SetProps
Sets a set of properties.

CopyTo
Copies an object to another

CopyProps
Copies a set of properties to another object

OpenProperty
Returns an interface object to be used to access a property.

GetIDsFromNames
Determines property IDs

GetNamesFromIDs
Determines property names

GetLastError
Returns the last error code for the object.

SaveChanges
Saves pending changes to the object

GetPropList
Gets a list of properties


PyIMAPIProp.CopyProps

int, [problems, ] = CopyProps(propTags, uiFlags , progress , resultIID , dest , flags )

Copies a set of properties to another object

Parameters

propTags : PySPropTagArray

The property tags to copy

uiFlags : int

Flags for the progress object

progress : None

Reserved - must pass None

resultIID : PyIID

IID of the destination object

dest : PyIMAPIProp

The destination object

flags : int

flags


PyIMAPIProp.CopyTo

int, [problems, ] = CopyTo(IIDExcludeList, propTags , uiFlags , progress , resultIID , dest , flags )

Copies an object to another

Parameters

IIDExcludeList : [PyIID , ]

A sequence of IIDs to exclude.

propTags : PySPropTagArray

The property tags to copy

uiFlags : int

Flags for the progress object

progress : None

Reserved - must pass None

resultIID : PyIID

IID of the destination object

dest : PyIMAPIProp

The destination object

flags : int

flags


PyIMAPIProp.DeleteProps

int, [problems, ] = DeleteProps(propList)

Deletes a set of properties.

Parameters

propList : PySPropTagArray

The list of properties


PyIMAPIProp.GetIDsFromNames

PySPropTagArray = GetIDsFromNames(nameIds, flags )

Determines property IDs

Parameters

nameIds : PyMAPINAMEIDArray

Sequence of name ids

flags=0 : int


PyIMAPIProp.GetLastError

MAPIERROR = GetLastError(hr, flags )

Returns the last error code for the object.

Parameters

hr : int

Contains the error code generated in the previous method call.

flags : int

Indicates for format for the output.


PyIMAPIProp.GetNamesFromIDs

HRESULT, PySPropTagArray, PyMAPINAMEIDArray = GetNamesFromIDs(propTags, propSetGuid , flags )

Determines property names

Parameters

propTags : PySPropTagArray

Sequence of property tags, or None

propSetGuid=None : PyIID

a globally unique identifier, identifying a property set, or None

flags=0 : int


PyIMAPIProp.GetPropList

PySPropTagArray = GetPropList(flags)

Gets a list of properties

Parameters

flags : int

flags


PyIMAPIProp.GetProps

int, [items, ] = GetProps(propList, flags )

Returns a list of property values.

Parameters

propList : PySPropTagArray

The list of properties

flags=0 : int


PyIMAPIProp.OpenProperty

PyIUnknown = OpenProperty(propTag, iid , interfaceOptions , flags )

Returns an interface object to be used to access a property.

Parameters

propTag : int

The property tag to open

iid : PyIID

The IID of the resulting interface.

interfaceOptions : int

Data that relates to the interface identified by the lpiid parameter.

flags : int

flags


PyIMAPIProp.SaveChanges

SaveChanges(flags)

Saves pending changes to the object

Parameters

flags : int

flags


PyIMAPIProp.SetProps

int, [problems, ] = SetProps(propList)

Sets a set of properties.

Parameters

propList : [PySPropValue, ]

The list of properties


PyIMAPISession

PyIMAPISession Object

An COM interface to MAPI's ISession interface.
Derived from PyIUnknown

Methods

OpenEntry
Opens an object and returns an interface object for further access.

OpenMsgStore
Opens a message store.

QueryIdentity
Returns the entry identifier of the object that provides the primary identity for the session.

CompareEntryIDs
Compares two entry identifiers belonging to a particular address book provider to determine if they refer to the same address book object

GetMsgStoresTable
Provides access to the message store table - a table with information about all of the message stores in the session profile.

Logoff
Ends a MAPI session.

OpenAddressBook
Opens the integrated address book.

OpenProfileSection
Opens a section of the current profile and returns an object for futher access


PyIMAPISession.CompareEntryIDs

int = CompareEntryIDs(entryId, entryId , flags )

Compares two entry identifiers belonging to a particular address book provider to determine if they refer to the same address book object

Parameters

entryId : string

The first entry ID to be compared

entryId : string

The second entry ID to be compared

flags=0 : int

Reserved - must be zero.

Return Value

The result is set to TRUE if the two entry identifiers refer to the same object, and FALSE otherwise.


PyIMAPISession.GetMsgStoresTable

PyIMAPITable = GetMsgStoresTable(flags)

Provides access to the message store table - a table with information about all of the message stores in the session profile.

Parameters

flags : int

Flags that control the opening.


PyIMAPISession.Logoff

Logoff(uiParm, flags, reserved)

Ends a MAPI session.

Parameters

uiParm : int

hwnd of a dialog is to be displayed.

flags : int

Bitmask of flags that control the logoff operation.

reserved : int

Reserved; must be zero.


PyIMAPISession.OpenAddressBook

PyIAddrBook = OpenAddressBook(uiParm, iid , flags )

Opens the integrated address book.

Parameters

uiParm : int

hwnd of a dialog is to be displayed.

iid : PyIID

The IID of the interface, or None.

flags : int

Flags that control the opening - AB_NO_DIALOG.


PyIMAPISession.OpenEntry

PyIInterface = OpenEntry(entryId, iid , flags )

Opens an object and returns an interface object for further access.

Parameters

entryId : string

The EntryID to open.

iid : PyIID

The IID of the returned interface, or None for the default interface.

flags : int

Flags for the call. May include MAPI_BEST_ACCESS, MAPI_DEFERRED_ERRORS, MAPI_MODIFY and possibly others (see the MAPI documentation)


PyIMAPISession.OpenMsgStore

PyIUnknown = OpenMsgStore(uiParam, entryId , iid , flags )

Opens a message store.

Parameters

uiParam : int

Handle to the parent window for dialogs.

entryId : string

The entry ID of the message store to open.

iid : PyIID

The IID of the interface returned, or None

flags : int

Options for the call.

Comments

The result is the interface specified by the IID, or IID_IMsgStore if None is used.


PyIMAPISession.OpenProfileSection

PyIProfSection = OpenProfileSection(iidSection, iid , flags )

Opens a section of the current profile and returns an object for futher access

Parameters

iidSection : PyIID

The MAPIIID of the profile section

iid : PyIID

The IID of the interface, or None.

flags : int

Flags that control the opening.


PyIMAPISession.QueryIdentity

string = QueryIdentity()

Returns the entry identifier of the object that provides the primary identity for the session.


PyIMAPITable

PyIMAPITable Object

An COM interface to MAPI
Derived from PyIUnknown

Methods

Advise
Registers to receive notification of specified events affecting the table.

SeekRow
Moves the cursor to a specific position in the table.

SeekRowApprox
Moves the cursor to an approximate fractional position in the table.

GetRowCount
Returns the total number of rows in the table.

QueryRows
Returns one or more rows from a table, beginning at the current cursor position.

SetColumns
Defines the particular properties and order of properties to appear as columns in the table.

GetStatus
Returns the table's status and type.

QueryPosition
Retrieves the current table row position of the cursor, based on a fractional value.

QueryColumns
Returns a list of columns for the table.

Abort
Stops any asynchronous operations currently in progress for the table.

FreeBookmark
Releases the memory associated with a bookmark.

CreateBookmark
Marks the table's current position.

Restrict
Applies a filter to a table, reducing the row set to only those rows matching the specified criteria.

FindRow
Finds the next row in a table that matches specific search criteria.

SortTable
Orders the rows of the table based on sort criteria.


PyIMAPITable.Abort

Abort()

Stops any asynchronous operations currently in progress for the table.


PyIMAPITable.Advise

int = Advise(eventMask, adviseSink )

Registers to receive notification of specified events affecting the table.

Parameters

eventMask : int

adviseSink : PyIMAPIAdviseSink


PyIMAPITable.CreateBookmark

int = CreateBookmark()

Marks the table's current position.


PyIMAPITable.FindRow

FindRow(restriction, bookmarkOrigin, flags)

Finds the next row in a table that matches specific search criteria.

Parameters

restriction : PySRestriction

bookmarkOrigin : int

flags : int


PyIMAPITable.FreeBookmark

FreeBookmark(bookmark)

Releases the memory associated with a bookmark.

Parameters

bookmark : int


PyIMAPITable.GetRowCount

int = GetRowCount(flags)

Returns the total number of rows in the table.

Parameters

flags : int

Reserved - must be zero


PyIMAPITable.GetStatus

GetStatus()

Returns the table's status and type.

Return Value

Result is a tuple of (tableStatus, tableType)


PyIMAPITable.QueryColumns

SPropTagArray = QueryColumns(flags)

Returns a list of columns for the table.

Parameters

flags : int


PyIMAPITable.QueryPosition

QueryPosition()

Retrieves the current table row position of the cursor, based on a fractional value.

Return Value

Result is a tuple of (row, numerator, denominator)


PyIMAPITable.QueryRows

SRowSet = QueryRows(rowCount, flags )

Returns one or more rows from a table, beginning at the current cursor position.

Parameters

rowCount : int

Number of rows to retrieve

flags : int

Flags.


PyIMAPITable.Restrict

Restrict(restriction, flags)

Applies a filter to a table, reducing the row set to only those rows matching the specified criteria.

Parameters

restriction : PySRestriction

flags : int


PyIMAPITable.SeekRow

int = SeekRow(bookmark, rowCount )

Moves the cursor to a specific position in the table.

Parameters

bookmark : int

The bookmark.

rowCount : int

Return Value

The result is the number of rows processed.


PyIMAPITable.SeekRowApprox

SeekRowApprox(numerator, denominator)

Moves the cursor to an approximate fractional position in the table.

Parameters

numerator : int

The numerator of the fraction representing the table position

denominator : int

The denominator of the fraction representing the table position. This must not be zero.


PyIMAPITable.SetColumns

SetColumns(propTags, flags)

Defines the particular properties and order of properties to appear as columns in the table.

Parameters

propTags : SPropTagArray

Sequence of property tags identifying properties to be included as columns in the table.

flags : int


PyIMAPITable.SortTable

SortTable(sortOrderSet, flags)

Orders the rows of the table based on sort criteria.

Parameters

sortOrderSet : PySSortOrderSet

flags : int


PyIMachineDebugManager

PyIMachineDebugManager Object

Description of the interface

Methods

AddApplication
Description of AddApplication

RemoveApplication
Description of RemoveApplication

EnumApplications
Description of EnumApplications


PyIMachineDebugManager.AddApplication

AddApplication(pda)

Description of AddApplication.

Parameters

pda : PyIRemoteDebugApplication

Description for pda


PyIMachineDebugManager.EnumApplications

EnumApplications()

Description of EnumApplications.


PyIMachineDebugManager.RemoveApplication

RemoveApplication(dwAppCookie)

Description of RemoveApplication.

Parameters

dwAppCookie : int

Description for dwAppCookie


PyIMachineDebugManagerEvents

PyIMachineDebugManagerEvents Object

Description of the interface

Methods

onAddApplication
Description of onAddApplication

onRemoveApplication
Description of onRemoveApplication


PyIMachineDebugManagerEvents.onAddApplication

onAddApplication(pda, dwAppCookie)

Description of onAddApplication.

Parameters

pda : PyIRemoteDebugApplication

Description for pda

dwAppCookie : int

Description for dwAppCookie


PyIMachineDebugManagerEvents.onRemoveApplication

onRemoveApplication(pda, dwAppCookie)

Description of onRemoveApplication.

Parameters

pda : PyIRemoteDebugApplication

Description for pda

dwAppCookie : int

Description for dwAppCookie


PyIMailUser

PyIMailUser Object

An COM interface to MAPI
Derived from PyIMAPIContainer


PyIMessage

PyIMessage Object

An COM interface to MAPI
Derived from PyIMAPIProp

Methods

SetReadFlag
Sets the read flags for a message

GetAttachmentTable
Returns the message's attachment table.

OpenAttach
Opens an attachment

CreateAttach
Creates an attachment

DeleteAttach
Deletes an attachment

ModifyRecipients
adds, deletes, or modifies message recipients.

GetRecipientTable
Returns the message's recipient table.

SubmitMessage
Saves all of the message's properties and marks the message as ready to be sent.


PyIMessage.CreateAttach

int, PyIAttach = CreateAttach(interface, flags )

Creates an attachment

Parameters

interface : PyIID

The interface to use, or None

flags : int

Bitmask of flags that controls how the attachment is created.

Return Value

The result is a tuple of (attachmentNum, attachmentObject)


PyIMessage.DeleteAttach

DeleteAttach(attachmentNum, ulUIParam, interface, flags)

Deletes an attachment

Parameters

attachmentNum : int

ulUIParam : int

interface : PyIMAPIProgress

The interface to use, or None

flags : int

Bitmask of flags that controls the display of a user interface.


PyIMessage.GetAttachmentTable

PyIMAPITable = GetAttachmentTable(flags)

Returns the message's attachment table.

Parameters

flags : int

Bitmask of flags that relate to the creation of the table.


PyIMessage.GetRecipientTable

PyIMAPITable = GetRecipientTable(flags)

Returns the message's recipient table.

Parameters

flags : int

Bitmask of flags that relate to the creation of the table.


PyIMessage.ModifyRecipients

ModifyRecipients(flags, mods)

adds, deletes, or modifies message recipients.

Parameters

flags : int

Bitmask of flags that controls the recipient changes. If zero is passed for the ulFlags parameter, ModifyRecipients replaces all existing recipients with the recipient list in the mods parameter.

mods : object

The list of recipients.


PyIMessage.OpenAttach

PyIAttach = OpenAttach(attachmentNum, interface , flags )

Opens an attachment

Parameters

attachmentNum : int

interface : PyIID

The interface to use, or None

flags : int

Bitmask of flags that controls how the attachment is opened.


PyIMessage.SetReadFlag

SetReadFlag(flag)

Sets the read flags for a message

Parameters

flag : int

Bitmask of flags that controls the setting of a message's read flag - that is, the message's MSGFLAG_READ flag in its PR_MESSAGE_FLAGS property and the processing of read reports.


PyIMessage.SubmitMessage

SubmitMessage(flags)

Saves all of the message's properties and marks the message as ready to be sent.

Parameters

flags : int

Flags which specify how the message is submitted.


PyIMoniker

PyIMoniker Object

A Python interface to IMoniker

Methods

BindToObject
Uses the moniker to bind to the object it identifies.

BindToStorage
Retrieves an interface object to the storage that contains the object identified by the moniker.

GetDisplayName
Gets the display name , which is a user-readable representation of this moniker.

ComposeWith
Combines the current moniker with another moniker, creating a new composite moniker.

Enum
Supplies an enumerator that can enumerate the components of a composite moniker.

IsEqual
Compares this moniker with a specified moniker and indicates whether they are identical.

IsSystemMoniker
Indicates whether this moniker is of one of the system-supplied moniker classes.

Hash
Calculates a 32-bit integer using the internal state of the moniker.


PyIMoniker.BindToObject

PyIUnknown = BindToObject(bindCtx, moniker , iidResult )

Uses the moniker to bind to the object it identifies.

Parameters

bindCtx : PyIBindCtx

bind context object to be used.

moniker : PyIMoniker

If the moniker is part of a composite moniker, otherwise None

iidResult : IID

IID of the result object.


PyIMoniker.BindToStorage

PyIUnknown = BindToStorage(bindCtx, moniker , iidResult )

Retrieves an interface object to the storage that contains the object identified by the moniker.

Parameters

bindCtx : PyIBindCtx

bind context object to be used.

moniker : PyIMoniker

If the moniker is part of a composite moniker, otherwise None

iidResult : IID

IID of the result object.


PyIMoniker.ComposeWith

PyIMoniker = ComposeWith(mkRight, fOnlyIfNotGeneric )

Combines the current moniker with another moniker, creating a new composite moniker.

Parameters

mkRight : PyIMoniker

The IMoniker interface on the moniker to compose onto the end of this moniker.

fOnlyIfNotGeneric : int

If TRUE, the caller requires a non-generic composition, so the operation should proceed only if pmkRight is a moniker class that this moniker can compose with in some way other than forming a generic composite. If FALSE, the method can create a generic composite if necessary.


PyIMoniker.Enum

PyIEnumMoniker = Enum(fForward)

Supplies an enumerator that can enumerate the components of a composite moniker.

Parameters

fForward : int

If TRUE, enumerates the monikers from left to right. If FALSE, enumerates from right to left.


PyIMoniker.GetDisplayName

string = GetDisplayName(bindCtx, moniker )

Gets the display name , which is a user-readable representation of this moniker.

Parameters

bindCtx : PyIBindCtx

bind context object to be used.

moniker : PyIMoniker

If the moniker is part of a composite moniker, otherwise None


PyIMoniker.Hash

int = Hash()

Calculates a 32-bit integer using the internal state of the moniker.


PyIMoniker.IsEqual

int = IsEqual(other)

Compares this moniker with a specified moniker and indicates whether they are identical.

Parameters

other : PyIMoniker

The moniker to compare


PyIMoniker.IsSystemMoniker

int = IsSystemMoniker()

Indicates whether this moniker is of one of the system-supplied moniker classes.


PyIMsgServiceAdmin

PyIMsgServiceAdmin Object

An COM interface to MAPI's IMsgServiceAdmin interface.
Derived from PyIUnknown

Methods

CreateMsgService
Creates a message service.

ConfigureMsgService
Reconfigures a message service.

GetMsgServiceTable
Retrieves a table of services.

GetProviderTable
Retrieves a table of service providers.

DeleteMsgService
Deletes the specified service

RenameMsgService
Renames the specified service

OpenProfileSection
Opens a profile section


PyIMsgServiceAdmin.ConfigureMsgService

ConfigureMsgService(iid, ulUIParam, ulFlags, [SPropValue, ...])

Reconfigures a message service.

Parameters

iid : PyIID

The unique identifier for the message service to configure.

ulUIParam : int

Handle of the parent window for the configuration property sheet.

ulFlags : int

Bitmask of flags that controls the display of the property sheet.

[SPropValue, ...] : [values, ...]

Property values describing the properties to display in the property sheet. Should not be None if the service is to be configured without a message service.


PyIMsgServiceAdmin.CreateMsgService

CreateMsgService(serviceName, displayName, ulUIParam, ulFlags)

Creates a message service.

Parameters

serviceName : string

The name of the service.

displayName : string

Display name of the service, or None

ulUIParam : int

Handle of the parent window for the configuration property sheet.

ulFlags : int

Bitmask of flags that controls the display of the property sheet.


PyIMsgServiceAdmin.DeleteMsgService

DeleteMsgService(uuid)

Deletes the specified service

Parameters

uuid : PyIID

The ID of the service


PyIMsgServiceAdmin.GetMsgServiceTable

PyIMAPITable = GetMsgServiceTable(flags)

Retrieves a table of services.

Parameters

flags : int


PyIMsgServiceAdmin.GetProviderTable

PyIMAPITable = GetProviderTable(flags)

Retrieves a table of service providers.

Parameters

flags : int


PyIMsgServiceAdmin.OpenProfileSection

PyIProfSect = OpenProfileSection(uuid, iid , flags )

Opens a profile section

Parameters

uuid : PyIID

The ID of the service

iid : PyIID

The IID of the resulting object, or None for the default

flags : int


PyIMsgServiceAdmin.RenameMsgService

RenameMsgService(uuid, flags, newName)

Renames the specified service

Parameters

uuid : PyIID

The ID of the service

flags : int

newName : string

The new name for the service.


PyIMsgStore

PyIMsgStore Object

An COM interface to MAPI
Derived from PyIMAPIProp

Methods

OpenEntry
Opens a folder or message and returns an interface object for further access.

CompareEntryIDs
Compares two entry identifiers belonging to a particular address book provider to determine if they refer to the same address book object

GetLastError
Returns the last error associated with this object


PyIMsgStore.CompareEntryIDs

int = CompareEntryIDs(entryId, entryId , flags )

Compares two entry identifiers belonging to a particular address book provider to determine if they refer to the same address book object

Parameters

entryId : string

The first entry ID to be compared

entryId : string

The second entry ID to be compared

flags=0 : int

Reserved - must be zero.

Return Value

The result is set to TRUE if the two entry identifiers refer to the same object, and FALSE otherwise.


PyIMsgStore.GetLastError

PyMAPIError = GetLastError(hr, flags )

Returns the last error associated with this object

Parameters

hr : int

The HRESULT

flags : int


PyIMsgStore.OpenEntry

PyIInterface = OpenEntry(entryId, iid , flags )

Opens a folder or message and returns an interface object for further access.

Parameters

entryId : string

The entryID of the object

iid : PyIID

The IID of the object to return, or None for the default IID

flags : int

Bitmask of flags that controls how the object is opened.


PyIOleClientSite

PyIOleClientSite Object

Description of the interface

Methods

SaveObject
Description of SaveObject

GetMoniker
Description of GetMoniker

GetContainer
Description of GetContainer

ShowObject
Description of ShowObject

OnShowWindow
Description of OnShowWindow

RequestNewObjectLayout
Description of RequestNewObjectLayout


PyIOleClientSite.GetContainer

GetContainer()

Description of GetContainer.


PyIOleClientSite.GetMoniker

GetMoniker(dwAssign, dwWhichMoniker)

Description of GetMoniker.

Parameters

dwAssign : int

Description for dwAssign

dwWhichMoniker : int

Description for dwWhichMoniker


PyIOleClientSite.OnShowWindow

OnShowWindow(fShow)

Description of OnShowWindow.

Parameters

fShow : int

Description for fShow


PyIOleClientSite.RequestNewObjectLayout

RequestNewObjectLayout()

Description of RequestNewObjectLayout.


PyIOleClientSite.SaveObject

SaveObject()

Description of SaveObject.


PyIOleClientSite.ShowObject

ShowObject()

Description of ShowObject.


PyIOleControl

PyIOleControl Object

Description of the interface

Methods

GetControlInfo
Description of GetControlInfo

OnMnemonic
Description of OnMnemonic

OnAmbientPropertyChange
Description of OnAmbientPropertyChange

FreezeEvents
Description of FreezeEvents


PyIOleControl.FreezeEvents

FreezeEvents(bFreeze)

Description of FreezeEvents.

Parameters

bFreeze : int

Description for bFreeze


PyIOleControl.GetControlInfo

GetControlInfo()

Description of GetControlInfo.


PyIOleControl.OnAmbientPropertyChange

OnAmbientPropertyChange(dispID)

Description of OnAmbientPropertyChange.

Parameters

dispID : long

Description for dispID


PyIOleControl.OnMnemonic

OnMnemonic(msg)

Description of OnMnemonic.

Parameters

msg : iiiii(ii)

A tuple representing a MSG structure.


PyIOleInPlaceObject

PyIOleInPlaceObject Object

Description of the interface

Methods

InPlaceDeactivate
Description of InPlaceDeactivate

UIDeactivate
Description of UIDeactivate

SetObjectRects
Description of SetObjectRects

ReactivateAndUndo
Description of ReactivateAndUndo


PyIOleInPlaceObject.InPlaceDeactivate

InPlaceDeactivate()

Description of InPlaceDeactivate.


PyIOleInPlaceObject.ReactivateAndUndo

ReactivateAndUndo()

Description of ReactivateAndUndo.


PyIOleInPlaceObject.SetObjectRects

SetObjectRects()

Description of SetObjectRects.


PyIOleInPlaceObject.UIDeactivate

UIDeactivate()

Description of UIDeactivate.


PyIOleInPlaceSite

PyIOleInPlaceSite Object

Description of the interface

Methods

CanInPlaceActivate
Description of CanInPlaceActivate

OnInPlaceActivate
Description of OnInPlaceActivate

OnUIActivate
Description of OnUIActivate

GetWindowContext
Description of GetWindowContext

Scroll
Description of Scroll

OnUIDeactivate
Description of OnUIDeactivate

OnInPlaceDeactivate
Description of OnInPlaceDeactivate

DiscardUndoState
Description of DiscardUndoState

DeactivateAndUndo
Description of DeactivateAndUndo

OnPosRectChange
Description of OnPosRectChange


PyIOleInPlaceSite.CanInPlaceActivate

CanInPlaceActivate()

Description of CanInPlaceActivate.


PyIOleInPlaceSite.DeactivateAndUndo

DeactivateAndUndo()

Description of DeactivateAndUndo.


PyIOleInPlaceSite.DiscardUndoState

DiscardUndoState()

Description of DiscardUndoState.


PyIOleInPlaceSite.GetWindowContext

GetWindowContext()

Description of GetWindowContext.


PyIOleInPlaceSite.OnInPlaceActivate

OnInPlaceActivate()

Description of OnInPlaceActivate.


PyIOleInPlaceSite.OnInPlaceDeactivate

OnInPlaceDeactivate()

Description of OnInPlaceDeactivate.


PyIOleInPlaceSite.OnPosRectChange

OnPosRectChange()

Description of OnPosRectChange.


PyIOleInPlaceSite.OnUIActivate

OnUIActivate()

Description of OnUIActivate.


PyIOleInPlaceSite.OnUIDeactivate

OnUIDeactivate(fUndoable)

Description of OnUIDeactivate.

Parameters

fUndoable : int

Description for fUndoable


PyIOleInPlaceSite.Scroll

Scroll()

Description of Scroll.


PyIOleInPlaceSiteEx

PyIOleInPlaceSiteEx Object

Description of the interface

Methods

OnInPlaceActivateEx
Description of OnInPlaceActivateEx

OnInPlaceDeactivateEx
Description of OnInPlaceDeactivateEx

RequestUIActivate
Description of RequestUIActivate


PyIOleInPlaceSiteEx.OnInPlaceActivateEx

OnInPlaceActivateEx(dwFlags)

Description of OnInPlaceActivateEx.

Parameters

dwFlags : int

Description for dwFlags


PyIOleInPlaceSiteEx.OnInPlaceDeactivateEx

OnInPlaceDeactivateEx(fNoRedraw)

Description of OnInPlaceDeactivateEx.

Parameters

fNoRedraw : int

Description for fNoRedraw


PyIOleInPlaceSiteEx.RequestUIActivate

RequestUIActivate()

Description of RequestUIActivate.


PyIOleInPlaceSiteWindowless

PyIOleInPlaceSiteWindowless Object

Description of the interface

Methods

CanWindowlessActivate
Description of CanWindowlessActivate

GetCapture
Description of GetCapture

SetCapture
Description of SetCapture

GetFocus
Description of GetFocus

SetFocus
Description of SetFocus

GetDC
Description of GetDC

ReleaseDC
Description of ReleaseDC

InvalidateRect
Description of InvalidateRect

InvalidateRgn
Description of InvalidateRgn

ScrollRect
Description of ScrollRect

AdjustRect
Description of AdjustRect

OnDefWindowMessage
Description of OnDefWindowMessage


PyIOleInPlaceSiteWindowless.AdjustRect

AdjustRect()

Description of AdjustRect.


PyIOleInPlaceSiteWindowless.CanWindowlessActivate

CanWindowlessActivate()

Description of CanWindowlessActivate.


PyIOleInPlaceSiteWindowless.GetCapture

GetCapture()

Description of GetCapture.


PyIOleInPlaceSiteWindowless.GetDC

GetDC(grfFlags, rect)

Description of GetDC.

Parameters

grfFlags : int

Description for grfFlags

rect : (int, int, int, int)


PyIOleInPlaceSiteWindowless.GetFocus

GetFocus()

Description of GetFocus.


PyIOleInPlaceSiteWindowless.InvalidateRect

InvalidateRect(rect, fErase)

Description of InvalidateRect.

Parameters

rect : (int, int, int, int)

fErase : int

Description for fErase


PyIOleInPlaceSiteWindowless.InvalidateRgn

InvalidateRgn(hRgn, fErase)

Description of InvalidateRgn.

Parameters

hRgn : int

Handle to a region

fErase : int

Description for fErase


PyIOleInPlaceSiteWindowless.OnDefWindowMessage

OnDefWindowMessage(msg, wParam, lParam)

Description of OnDefWindowMessage.

Parameters

msg : int

Description for msg

wParam : int

Description for wParam

lParam : long

Description for lParam


PyIOleInPlaceSiteWindowless.ReleaseDC

ReleaseDC(hDC)

Description of ReleaseDC.

Parameters

hDC : HDC

Description for hDC


PyIOleInPlaceSiteWindowless.ScrollRect

ScrollRect(dx, dy)

Description of ScrollRect.

Parameters

dx : int

Description for dx

dy : int

Description for dy


PyIOleInPlaceSiteWindowless.SetCapture

SetCapture(fCapture)

Description of SetCapture.

Parameters

fCapture : int

Description for fCapture


PyIOleInPlaceSiteWindowless.SetFocus

SetFocus(fFocus)

Description of SetFocus.

Parameters

fFocus : int

Description for fFocus


PyIOleObject

PyIOleObject Object

Description of the interface

Methods

SetClientSite
Description of SetClientSite

GetClientSite
Description of GetClientSite

SetHostNames
Description of SetHostNames

Close
Description of Close

SetMoniker
Description of SetMoniker

GetMoniker
Description of GetMoniker

InitFromData
Description of InitFromData

GetClipboardData
Description of GetClipboardData

DoVerb
Description of DoVerb

EnumVerbs
Description of EnumVerbs

Update
Description of Update

IsUpToDate
Description of IsUpToDate

GetUserClassID
Description of GetUserClassID

GetUserType
Description of GetUserType

SetExtent
Description of SetExtent

GetExtent
Description of GetExtent

Advise
Description of Advise

Unadvise
Description of Unadvise

EnumAdvise
Description of EnumAdvise

GetMiscStatus
Description of GetMiscStatus

SetColorScheme
Description of SetColorScheme


PyIOleObject.Advise

Advise(pAdvSink)

Description of Advise.

Parameters

pAdvSink : PyIAdviseSink

Description for pAdvSink


PyIOleObject.Close

Close(dwSaveOption)

Description of Close.

Parameters

dwSaveOption : int

Description for dwSaveOption


PyIOleObject.DoVerb

DoVerb(iVerb, pActiveSite, lindex, hwndParent)

Description of DoVerb.

Parameters

iVerb : int

Description for iVerb The input argument lpmsg of type "LPMSG" was not processed *** The type 'LPMSG' (lpmsg) is unknown.

pActiveSite : PyIOleClientSite

Description for pActiveSite

lindex : int

Description for lindex

hwndParent : HWND

Description for hwndParent The input argument lprcPosRect of type "LPCRECT" was not processed *** The type 'LPCRECT' (lprcPosRect) is unknown.


PyIOleObject.EnumAdvise

EnumAdvise()

Description of EnumAdvise.


PyIOleObject.EnumVerbs

EnumVerbs()

Description of EnumVerbs.


PyIOleObject.GetClientSite

GetClientSite()

Description of GetClientSite.


PyIOleObject.GetClipboardData

GetClipboardData(dwReserved)

Description of GetClipboardData.

Parameters

dwReserved : int

Description for dwReserved


PyIOleObject.GetExtent

GetExtent(dwDrawAspect, size)

Description of GetExtent.

Parameters

dwDrawAspect : int

Description for dwDrawAspect

size : (int, int)

Size limit for the object.


PyIOleObject.GetMiscStatus

GetMiscStatus(dwAspect)

Description of GetMiscStatus.

Parameters

dwAspect : int

Description for dwAspect


PyIOleObject.GetMoniker

GetMoniker(dwAssign, dwWhichMoniker)

Description of GetMoniker.

Parameters

dwAssign : int

Description for dwAssign

dwWhichMoniker : int

Description for dwWhichMoniker


PyIOleObject.GetUserClassID

GetUserClassID()

Description of GetUserClassID.


PyIOleObject.GetUserType

GetUserType(dwFormOfType)

Description of GetUserType.

Parameters

dwFormOfType : int

Description for dwFormOfType


PyIOleObject.InitFromData

InitFromData(pDataObject, fCreation, dwReserved)

Description of InitFromData.

Parameters

pDataObject : PyIDataObject

Description for pDataObject

fCreation : int

Description for fCreation

dwReserved : int

Description for dwReserved


PyIOleObject.IsUpToDate

IsUpToDate()

Description of IsUpToDate.


PyIOleObject.SetClientSite

SetClientSite(pClientSite)

Description of SetClientSite.

Parameters

pClientSite : PyIOleClientSite

Description for pClientSite


PyIOleObject.SetColorScheme

SetColorScheme()

Description of SetColorScheme.


PyIOleObject.SetExtent

SetExtent(dwDrawAspect, size)

Description of SetExtent.

Parameters

dwDrawAspect : int

Description for dwDrawAspect

size : (int, int)

Size limit for the object.


PyIOleObject.SetHostNames

SetHostNames(szContainerApp, szContainerObj)

Description of SetHostNames.

Parameters

szContainerApp : unicode

Description for szContainerApp

szContainerObj : unicode

Description for szContainerObj


PyIOleObject.SetMoniker

SetMoniker(dwWhichMoniker, pmk)

Description of SetMoniker.

Parameters

dwWhichMoniker : int

Description for dwWhichMoniker

pmk : PyIMoniker

Description for pmk


PyIOleObject.Unadvise

Unadvise(dwConnection)

Description of Unadvise.

Parameters

dwConnection : int

Description for dwConnection


PyIOleObject.Update

Update()

Description of Update.


PyIOleWindow

PyIOleWindow Object

Description of the interface

Methods

GetWindow
Description of GetWindow

ContextSensitiveHelp
Description of ContextSensitiveHelp


PyIOleWindow.ContextSensitiveHelp

ContextSensitiveHelp(fEnterMode)

Description of ContextSensitiveHelp.

Parameters

fEnterMode : int

Description for fEnterMode


PyIOleWindow.GetWindow

GetWindow()

Description of GetWindow.


PyIPersist

PyIPersist Object

A Python interface to IPersist

Methods

GetClassID
Returns the class identifier (CLSID) for the component object.


PyIPersist.GetClassID

PyIID = GetClassID()

Returns the class identifier (CLSID) for the component object.


PyIPersistFile

PyIPersistFile Object

Description of the interface

Methods

IsDirty
Checks an object for changes since it was last saved to its current file.

Load
Opens the specified file and initializes an object from the file contents.

Save
Saves the object into the specified file.

SaveCompleted
Notifies the object that it can revert from NoScribble mode to Normal mode.

GetCurFile
Gets the current name of the file associated with the object.


PyIPersistFile.GetCurFile

unicode = GetCurFile()

Gets the current name of the file associated with the object.


PyIPersistFile.IsDirty

IsDirty()

Checks an object for changes since it was last saved to its current file.

Return Value

This method returns the raw COM error code without raising the normal COM exception. You should treat any error return codes as an indication that the object has changed. Unless this method explicitly returns S_FALSE, assume that the object must be saved.


PyIPersistFile.Load

Load(pszFileName, dwMode)

Opens the specified file and initializes an object from the file contents.

Parameters

pszFileName : unicode

Absolute path of the file to open

dwMode=STGM_READ : int

Specifies the access mode from the STGM enumeration.


PyIPersistFile.Save

Save(pszFileName, fRemember)

Saves the object into the specified file.

Parameters

pszFileName : unicode

absolute path of the file where the object is saved.

fRemember : int

Specifies whether the file is to be the current working file or not.


PyIPersistFile.SaveCompleted

SaveCompleted(pszFileName)

Notifies the object that it can revert from NoScribble mode to Normal mode.

Parameters

pszFileName : unicode

Absolute path of the file where the object was saved.


PyIPersistPropertyBag

PyIPersistPropertyBag Object

A Python wrapper for a COM IPersistPropertyBag interface.

Methods

InitNew
Called by the container when the control is initialized to initialize the property bag.

Load
Called by the container to load the control's properties.

Save
Called by the container to save the object's properties.


PyIPersistPropertyBag.InitNew

InitNew()

Called by the container when the control is initialized to initialize the property bag.


PyIPersistPropertyBag.Load

Load(bag, log)

Called by the container to load the control's properties.

Parameters

bag : PyIPropertyBag

the caller's property bag.

log=None : PyIErrorLog

the caller's error log, or None


PyIPersistPropertyBag.Save

Save(bag, clearDirty, saveProperties)

Called by the container to save the object's properties.

Parameters

bag : PyIPropertyBag

the caller's property bag.

clearDirty : int

Specifies whether to clear the dirty flag.

saveProperties : int

Specifies whether to save all properties or just those that have changed


PyIPersistStorage

PyIPersistStorage Object

A Python wrapper of a COM IPersistStorage interface.

Comments

The IPersistStorage interface defines methods that enable a container application to pass a storage object to one of its contained objects and to load and save the storage object. This interface supports the structured storage model, in which each contained object has its own storage that is nested within the container's storage.

Methods

IsDirty
Checks the object for changes since it was last saved.

InitNew
Initializes a new object, providing a storage object to be used for the object.

Load
Loads an object from its existing storage.

Save
Saves an object, and any nested objects that it contains, into the specified storage.

SaveCompleted
Notifies the object that it can revert from NoScribble or HandsOff mode.

HandsOffStorage
Instructs the object to release all storage objects that have been passed to it by its container and to enter HandsOff mode.


PyIPersistStorage.HandsOffStorage

HandsOffStorage()

Instructs the object to release all storage objects that have been passed to it by its container and to enter HandsOff mode, in which the object cannot do anything and the only operation that works is a close operation.


PyIPersistStorage.InitNew

InitNew(PyIStorage)

Initializes a new object, providing a storage object to be used for the object.

Parameters

PyIStorage : PyIStorage

PyIStorage for the new storage object to be initialized. The container creates a nested storage object in its storage object (see PyIStorage::CreateStorage). Then, the container calls the PyIPersistStorage::WriteClassStg function to initialize the new storage object with the object class identifier (CLSID).


PyIPersistStorage.IsDirty

int = IsDirty()

Checks the object for changes since it was last saved.

Return Value | Description
S_OK (ie, 0) | The object has changed since it was last saved.
S_FALSE (ie, 1) | The object has not changed since the last save.


PyIPersistStorage.Load

Load(storage)

Loads an object from its existing storage.

Parameters

storage : PyIStorage

Existing storage for the object.


PyIPersistStorage.Save

Save(PyIStorage, int)

Saves an object, and any nested objects that it contains, into the specified storage. The object is placed in NoScribble mode, and it must not write to the specified storage until it receives a call to its PyIPersistStorage::SaveCompleted method.

Parameters

PyIStorage : PyIStorage

Storage for the object

int : fSameAsLoad

Indicates whether the specified storage object is the current one.
This parameter is set to FALSE when performing a Save As or Save A Copy To operation or when performing a full save. In the latter case, this method saves to a temporary file, deletes the original file, and renames the temporary file.
This parameter is set to TRUE to perform a full save in a low-memory situation or to perform a fast incremental save in which only the dirty components are saved.


PyIPersistStorage.SaveCompleted

SaveCompleted(PyIStorage)

Notifies the object that it can revert from NoScribble or HandsOff mode, in which it must not write to its storage object, to Normal mode, in which it can. The object enters NoScribble mode when it receives an PyIPersistStorage::Save call.

Parameters

PyIStorage : PyIStorage

The current storage object


PyIPersistStream

PyIPersistStream Object

A Python interface to IPersistStream

Methods

IsDirty
Checks the object for changes since it was last saved.

Load
Initializes an object from the stream where it was previously saved.

Save
Saves an object to the specified stream.

GetSizeMax
Returns the size in bytes of the stream needed to save the object.


PyIPersistStream.GetSizeMax

ULARGE_INTEGER = GetSizeMax()

Returns the size in bytes of the stream needed to save the object.


PyIPersistStream.IsDirty

int = IsDirty()

Checks the object for changes since it was last saved.

Return Value | Description
S_OK (ie, 0) | The object has changed since it was last saved.
S_FALSE (ie, 1) | The object has not changed since the last save.


PyIPersistStream.Load

Load(stream)

Initializes an object from the stream where it was previously saved.

Parameters

stream : PyIStream

Stream object to load from.

Comments

This method loads an object from its associated stream. The seek pointer is set as it was in the most recent PyIPersistStream::Save method. This method can seek and read from the stream, but cannot write to it.

On exit, the seek pointer must be in the same position it was in on entry, immediately past the end of the data.


PyIPersistStream.Save

Save(stream, bClearDirty)

Saves an object to the specified stream.

Parameters

stream : PyIStream

The stream to save to.

bClearDirty : int

Indicates whether to clear the dirty flag after the save is complete


PyIPersistStreamInit

PyIPersistStreamInit Object

A Python interface to IPersistStreamInit

Methods

InitNew
Initializes the object to a default state.


PyIPersistStreamInit.InitNew

InitNew()

Initializes the object to a default state.


PyIProcessDebugManager

PyIProcessDebugManager Object

Description of the interface

Methods

CreateApplication
Description of CreateApplication

GetDefaultApplication
Description of GetDefaultApplication

AddApplication
Description of AddApplication

RemoveApplication
Description of RemoveApplication

CreateDebugDocumentHelper
Description of CreateDebugDocumentHelper.


PyIProcessDebugManager.AddApplication

AddApplication(pda)

Description of AddApplication.

Parameters

pda : PyIDebugApplication

Description for pda


PyIProcessDebugManager.CreateApplication

CreateApplication()

Description of CreateApplication.


PyIProcessDebugManager.CreateDebugDocumentHelper

CreateDebugDocumentHelper(unkOuter)

Description of CreateDebugDocumentHelper.

Parameters

unkOuter : PyIIUnknown

The outer object for aggregation, or (usually!) None


PyIProcessDebugManager.GetDefaultApplication

GetDefaultApplication()

Description of GetDefaultApplication.


PyIProcessDebugManager.RemoveApplication

RemoveApplication(dwAppCookie)

Description of RemoveApplication.

Parameters

dwAppCookie : int

Description for dwAppCookie


PyIProfAdmin

PyIProfAdmin Object

An COM interface to MAPI
Derived from PyIUnknown


PyIProfSect

PyIProfSect Object

An interface for accessing profile sections
Derived from PyIMAPIProp


PyIPropertyBag

PyIPropertyBag Object

A Python wrapper for a COM IPropertyBag interface.

Comments

The IPropertyBag interface provides an object with a property bag in which the object can persistently save its properties.
When a client wishes to have exact control over how individually named properties of an object are saved, it would attempt to use an object's IPersistPropertyBag interface as a persistence mechanism. In that case the client supplies a property bag to the object in the form of an IPropertyBag interface.

Methods

Read
Called by the control to read a property from the storage provided by the container.

Write
Called by the control to write each property in turn to the storage provided by the container.


PyIPropertyBag.Read

object = Read(propName, propType , errorLog )

Called by the control to read a property from the storage provided by the container.

Parameters

propName : string

Name of the property to read.

propType : int

The type of the object to read. Must be a VT_* Variant Type constant.

errorLog=None : PyIErrorLog

The caller's PyIErrorLog object in which the property bag stores any errors that occur during reads. Can be None in which case the caller is not interested in errors.

Comments

The result is a Python object, mapped from a COM VARIANT of type as specified in the propType parameter.


PyIPropertyBag.Write

Write(propName, value)

Called by the control to write each property in turn to the storage provided by the container.

Parameters

propName : string

Name of the property to read.

value : object

The value for the property. The value must be able to be converted to a COM VARIANT.


PyIPropertySetStorage

PyIPropertySetStorage Object

Description of the interface

Methods

Create
Description of Create

Open
Description of Open

Delete
Description of Delete

Enum
Description of Enum


PyIPropertySetStorage.Create

Create(fmtid, clsid>, grfFlags, grfMode)

Description of Create.

Parameters

fmtid : PyIID

Description for fmtid

clsid> : PyIID

Description for clsid

grfFlags : int

Description for grfFlags

grfMode : int

Description for grfMode


PyIPropertySetStorage.Delete

Delete(fmtid)

Description of Delete.

Parameters

fmtid : PyIID

Description for fmtid


PyIPropertySetStorage.Enum

Enum()

Description of Enum.


PyIPropertySetStorage.Open

Open(fmtid, grfMode)

Description of Open.

Parameters

fmtid : PyIID

Description for fmtid

grfMode=STGM_READ | STGM_SHARE_EXCLUSIVE : int

Description for grfMode


PyIPropertyStorage

PyIPropertyStorage Object

Description of the interface

Methods

ReadMultiple
Reads specified properties from the current property set.

WriteMultiple
Description of WriteMultiple

DeleteMultiple
Description of DeleteMultiple

ReadPropertyNames
Retrieves any existing string names for the specified property identifiers.

WritePropertyNames
Assigns string names to a specified array of property IDs in the current property set.

DeletePropertyNames
Description of DeletePropertyNames

Commit
Description of Commit

Revert
Description of Revert

Enum
Description of Enum

SetTimes
Description of SetTimes

SetClass
Description of SetClass

Stat
Description of Stat


PyIPropertyStorage.Commit

Commit(grfCommitFlags)

Description of Commit.

Parameters

grfCommitFlags : int

Description for grfCommitFlags


PyIPropertyStorage.DeleteMultiple

DeleteMultiple(props)

Description of DeleteMultiple.

Parameters

props : (PROPSPEC , ...)

The property IDs.


PyIPropertyStorage.DeletePropertyNames

DeletePropertyNames(props)

Description of DeletePropertyNames.

Parameters

props : (PROPSPEC , ...)

The property IDs.


PyIPropertyStorage.Enum

Enum()

Description of Enum.


PyIPropertyStorage.ReadMultiple

ReadMultiple(props)

Reads specified properties from the current property set.

Parameters

props : (PROPSPEC , ...)

The property IDs.


PyIPropertyStorage.ReadPropertyNames

ReadPropertyNames(props)

Retrieves any existing string names for the specified property identifiers.

Parameters

props : (PROPSPEC , ...)

The property IDs.


PyIPropertyStorage.Revert

Revert()

Description of Revert.


PyIPropertyStorage.SetClass

SetClass(clsid)

Description of SetClass.

Parameters

clsid : PyIID

Description for clsid


PyIPropertyStorage.SetTimes

SetTimes(pctime, patime, pmtime)

Description of SetTimes.

Parameters

pctime : PyTime

Description for pctime

patime : PyTime

Description for patime

pmtime : PyTime

Description for pmtime


PyIPropertyStorage.Stat

Stat()

Description of Stat.


PyIPropertyStorage.WriteMultiple

WriteMultiple(props, values)

Description of WriteMultiple.

Parameters

props : (PROPSPEC , ...)

The property IDs.

values : (PROPVARIANT , ...)

The values for the properties.


PyIPropertyStorage.WritePropertyNames

WritePropertyNames(props, names)

Assigns string names to a specified array of property IDs in the current property set.

Parameters

props : (PROPSPEC , ...)

The property IDs.

names : (string, ...)

The property names.


PyIProvideClassInfo

PyIProvideClassInfo Object

A Python interface to IProvideClassInfo

Methods

GetClassInfo
Gets information about the CO_CLASS.


PyIProvideClassInfo.GetClassInfo

PyITypeInfo = GetClassInfo()

Gets information about the CO_CLASS.


PyIProvideClassInfo2

PyIProvideClassInfo2 Object

Methods

GetGUID
Gets the default event sink IID for the object (if any).


PyIProvideClassInfo2.GetGUID

PyIID = GetGUID(flags)

Gets the GUID for the object.

Parameters

flags : int

The flags for the GUID.


PyIProvideExpressionContexts

PyIProvideExpressionContexts Object

Description of the interface

Methods

EnumExpressionContexts
Description of EnumExpressionContexts


PyIProvideExpressionContexts.EnumExpressionContexts

EnumExpressionContexts()

Description of EnumStackFrames.


PyIRemoteDebugApplication

PyIRemoteDebugApplication Object

Description of the interface

Methods

ResumeFromBreakPoint
Continue an application which is currently in a breakpoint.

CauseBreak
Causes the application to break into the debugger at the earliest opportunity.

ConnectDebugger
Connects a debugger to the application.

DisconnectDebugger
Disconnects the current debugger from the application.

GetDebugger
Returns the current debugger connected to the application.

CreateInstanceAtApplication
Create objects in the application process address space.

QueryAlive
Indicates if the application is alive.

EnumThreads
Enumerates all threads known to be associated with the application.

GetName
Description of GetName

GetRootNode
Returns the application node under which all nodes associated with the application are added.

EnumGlobalExpressionContexts
Enumerates all global expression contexts.


PyIRemoteDebugApplication.CauseBreak

CauseBreak()

Causes the application to break into the debugger at the earliest opportunity.

Comments

Note that a long time may elapse before the application actually breaks, particularly if the application is not currently executing script code.


PyIRemoteDebugApplication.ConnectDebugger

ConnectDebugger(pad)

Connects a debugger to the application.

Parameters

pad : PyIApplicationDebugger

Description for pad

Comments

Only one debugger may be connected at a time; this method fails if there is already a debugger connected.


PyIRemoteDebugApplication.CreateInstanceAtApplication

PyIUnknown = CreateInstanceAtApplication(rclsid, pUnkOuter , dwClsContext , riid )

Create objects in the application process address space.

Parameters

rclsid : PyIID

Description for rclsid

pUnkOuter : PyIUnknown

Description for pUnkOuter

dwClsContext : int

Description for dwClsContext

riid : PyIID

Description for riid

Comments

Provides a mechanism for the debugger IDE, running out-of-process to the application, to create objects in the application process. This method simply delegates to CoCreateInstance.


PyIRemoteDebugApplication.DisconnectDebugger

DisconnectDebugger()

Disconnects the current debugger from the application.


PyIRemoteDebugApplication.EnumGlobalExpressionContexts

IEnumDebugExpressionContexts = EnumGlobalExpressionContexts()

Enumerates all global expression contexts


PyIRemoteDebugApplication.EnumThreads

PyIEnumRemoteDebugApplicationThreads = EnumThreads()

Enumerates all threads known to be associated with the application.

Comments

New threads may be added at any time.


PyIRemoteDebugApplication.GetDebugger

PyIApplicationDebugger = GetDebugger()

Returns the current debugger connected to the application.


PyIRemoteDebugApplication.GetName

GetName()

Description of GetName.


PyIRemoteDebugApplication.GetRootNode

PyIDebugApplicationNode = GetRootNode()

Returns the application node under which all nodes associated with the application are added.


PyIRemoteDebugApplication.QueryAlive

QueryAlive()

Returns True if alive, else False.


PyIRemoteDebugApplication.ResumeFromBreakPoint

ResumeFromBreakPoint(prptFocus, bra, era)

Continue an application which is currently in a breakpoint.

Parameters

prptFocus : PyIRemoteDebugApplicationThread

Description for prptFocus

bra : int

Break resume action

era : int

Error resume action


PyIRemoteDebugApplicationEvents

PyIRemoteDebugApplicationEvents Object

Description of the interface

Methods

OnConnectDebugger
Description of OnConnectDebugger

OnDisconnectDebugger
Description of OnDisconnectDebugger

OnSetName
Description of OnSetName

OnDebugOutput
Description of OnDebugOutput

OnClose
Description of OnClose

OnEnterBreakPoint
Description of OnEnterBreakPoint

OnLeaveBreakPoint
Description of OnLeaveBreakPoint

OnCreateThread
Description of OnCreateThread

OnDestroyThread
Description of OnDestroyThread

OnBreakFlagChange
Description of OnBreakFlagChange


PyIRemoteDebugApplicationEvents.OnBreakFlagChange

OnBreakFlagChange(abf, prdatSteppingThread)

Description of OnBreakFlagChange.

Parameters

abf : int

Description for abf

prdatSteppingThread : PyIRemoteDebugApplicationThread

Description for prdatSteppingThread


PyIRemoteDebugApplicationEvents.OnClose

OnClose()

Description of OnClose.


PyIRemoteDebugApplicationEvents.OnConnectDebugger

OnConnectDebugger(pad)

Description of OnConnectDebugger.

Parameters

pad : PyIApplicationDebugger

Description for pad


PyIRemoteDebugApplicationEvents.OnCreateThread

OnCreateThread(prdat)

Description of OnCreateThread.

Parameters

prdat : PyIRemoteDebugApplicationThread

Description for prdat


PyIRemoteDebugApplicationEvents.OnDebugOutput

OnDebugOutput(pstr)

Description of OnDebugOutput.

Parameters

pstr : unicode

Description for pstr


PyIRemoteDebugApplicationEvents.OnDestroyThread

OnDestroyThread(prdat)

Description of OnDestroyThread.

Parameters

prdat : PyIRemoteDebugApplicationThread

Description for prdat


PyIRemoteDebugApplicationEvents.OnDisconnectDebugger

OnDisconnectDebugger()

Description of OnDisconnectDebugger.


PyIRemoteDebugApplicationEvents.OnEnterBreakPoint

OnEnterBreakPoint(prdat)

Description of OnEnterBreakPoint.

Parameters

prdat : PyIRemoteDebugApplicationThread

Description for prdat


PyIRemoteDebugApplicationEvents.OnLeaveBreakPoint

OnLeaveBreakPoint(prdat)

Description of OnLeaveBreakPoint.

Parameters

prdat : PyIRemoteDebugApplicationThread

Description for prdat


PyIRemoteDebugApplicationEvents.OnSetName

OnSetName(pstrName)

Description of OnSetName.

Parameters

pstrName : unicode

Description for pstrName


PyIRemoteDebugApplicationThread

PyIRemoteDebugApplicationThread Object

Description of the interface

Methods

GetSystemThreadId
Description of GetSystemThreadId

GetApplication
Description of GetApplication

EnumStackFrames
Description of EnumStackFrames

GetDescription
Description of GetDescription

SetNextStatement
Description of SetNextStatement

GetState
Description of GetState

Suspend
Description of Suspend

Resume
Description of Resume

GetSuspendCount
Description of GetSuspendCount


PyIRemoteDebugApplicationThread.EnumStackFrames

EnumStackFrames()

Description of EnumStackFrames.


PyIRemoteDebugApplicationThread.GetApplication

GetApplication()

Description of GetApplication.


PyIRemoteDebugApplicationThread.GetDescription

GetDescription()

Description of GetDescription.


PyIRemoteDebugApplicationThread.GetState

GetState()

Description of GetState.


PyIRemoteDebugApplicationThread.GetSuspendCount

GetSuspendCount()

Description of GetSuspendCount.


PyIRemoteDebugApplicationThread.GetSystemThreadId

GetSystemThreadId()

Description of GetSystemThreadId.


PyIRemoteDebugApplicationThread.Resume

Resume()

Description of Resume.


PyIRemoteDebugApplicationThread.SetNextStatement

SetNextStatement(pStackFrame, pCodeContext)

Description of SetNextStatement.

Parameters

pStackFrame : PyIDebugStackFrame

Description for pStackFrame

pCodeContext : PyIDebugCodeContext

Description for pCodeContext


PyIRemoteDebugApplicationThread.Suspend

Suspend()

Description of Suspend.


PyIRunningObjectTable

PyIRunningObjectTable Object

A Python interface to IRunningObjectTable

Methods

IsRunning
Checks whether an object is running.

GetObject
Checks whether an object is running.

EnumRunning
Creates an enumerator that can list the monikers of all the objects currently registered in the Running Object Table (ROT).


PyIRunningObjectTable.EnumRunning

PyIEnumMoniker = EnumRunning()

Creates an enumerator that can list the monikers of all the objects currently registered in the Running Object Table (ROT).


PyIRunningObjectTable.GetObject

PyIUnknown = GetObject(objectName)

Checks whether an object is running.

Parameters

objectName : PyIMoniker

The PyIMoniker interface on the moniker to search for in the Running Object Table.


PyIRunningObjectTable.IsRunning

int = IsRunning(objectName)

Checks whether an object is running.

Parameters

objectName : PyIMoniker

The PyIMoniker interface on the moniker to search for in the Running Object Table.

Return Value | Description
S_OK (ie, 0) | The object identified by objectName is running.
S_FALSE (ie, 1) | There is no entry for objectName in the ROT, or that the object it identifies is no longer running (in which case, the entry is revoked).


PyIServiceProvider

PyIServiceProvider Object

A Python interface to IServiceProvider

Methods

QueryService
Creates or accesses the specified service and returns an interface object to the specified interface for the service.


PyIServiceProvider.QueryService

PyIUnknown = QueryService(clsid, iid )

Creates or accesses the specified service and returns an interface object to the specified interface for the service.

Parameters

clsid : PyIID

Unique identifier for the requested service.

iid : PyIID

Unique identifier for the requested interface on the service.


PyIShellLink

PyIShellLink Object

Description of the interface

Methods

GetPath
Retrieves the path and file name of a shell link object.

GetIDList
Retrieves the list of item identifiers for a shell link object.

SetIDList
Sets the list of item identifiers for a shell link object.

GetDescription
Description of GetDescription

SetDescription
Description of SetDescription

GetWorkingDirectory
Description of GetWorkingDirectory

SetWorkingDirectory
Description of SetWorkingDirectory

GetArguments
Retrieves the command-line arguments associated with a shell link object.

SetArguments
Sets the command-line arguments associated with a shell link object.

GetHotkey
Retrieves the hot key for a shell link object.

SetHotkey
Sets the hot key for a shell link object.

GetShowCmd
Retrieves the show (SW_) command for a shell link object.

SetShowCmd
Sets the show (SW_) command for a shell link object.

GetIconLocation
Retrieves the location (path and index) of the icon for a shell link object.

SetIconLocation
Sets the location (path and index) of the icon for a shell link object.

SetRelativePath
Sets the relative path for a shell link object.

Resolve
Resolves a shell link

SetPath
Sets the path and file name of a shell link object.


PyIShellLink.GetArguments

string = GetArguments(cchMaxName)

Retrieves the command-line arguments associated with a shell link object.

Parameters

cchMaxName=1024 : int

Number of characters to fetch.


PyIShellLink.GetDescription

GetDescription(cchMaxName)

Description of GetDescription.

Parameters

cchMaxName=1024 : int

Description for cchMaxName


PyIShellLink.GetHotkey

int = GetHotkey()

Retrieves the hot key for a shell link object.

Comments

Note: My tests do not seem to be working. at least, the values returned seem not to match what the documentation says should be returned. I would expect with a Hotkey of CTRL-ALT-T, to get an integer where integer & 256 == ord('T'), i.e. 116 or 84, instead I get 1620


PyIShellLink.GetIDList

string = GetIDList()

Retrieves the list of item identifiers for a shell link object.


PyIShellLink.GetIconLocation

string = GetIconLocation(cchMaxPath)

Retrieves the location (path and index) of the icon for a shell link object.

Parameters

cchMaxPath=_MAX_PATH : int

Number of characters to allocate for the result string.


PyIShellLink.GetPath

name, WIN32_FIND_DATA = GetPath(fFlags, cchMaxPath )

Retrieves the path and file name of a shell link object.

Parameters

fFlags : int

One of the following values:

Value | Description
SLGP_SHORTPATH | Retrieves the standard short (8.3 format) file name.
SLGP_UNCPRIORITY | Retrieves the Universal Naming Convention (UNC) path name of the file.
SLGP_RAWPATH | Retrieves the raw path name. A raw path is something that might not exist and may include environment variables that need to be expanded.

cchMaxPath=_MAX_PATH : int

Description for cchMaxPath


PyIShellLink.GetShowCmd

int = GetShowCmd()

Retrieves the show (SW_) command for a shell link object.


PyIShellLink.GetWorkingDirectory

GetWorkingDirectory(cchMaxName)

Description of GetWorkingDirectory.

Parameters

cchMaxName=1024 : int

Description for cchMaxName


PyIShellLink.Resolve

Resolve(hwnd, fFlags)

Resolves a shell link by searching for the shell link object and updating the shell link path and its list of identifiers (if necessary)

Parameters

hwnd : HWND

The parent window of a dialog which will pop up if resolution fails.

fFlags : int

One of the following constants:

Value | Description
SLR_INVOKE_MSI | Call the Microsoft Windows Installer.
SLR_NOLINKINFO | Disable distributed link tracking. By default, distributed link tracking tracks removable media across multiple devices based on the volume name. It also uses the UNC path to track remote file systems whose drive letter has changed. Setting SLR_NOLINKINFO disables both types of tracking.
SLR_NO_UI | Do not display a dialog box if the link cannot be resolved. When SLR_NO_UI is set, the high-order word of fFlags can be set to a time-out value that specifies the maximum amount of time to be spent resolving the link. The function returns if the link cannot be resolved within the time-out duration. If the high-order word is set to zero, the time-out duration will be set to the default value of 3,000 milliseconds (3 seconds). To specify a value, set the high word of fFlags to the desired time-out duration, in milliseconds.
SLR_NOUPDATE | Do not update the link information.
SLR_NOSEARCH | Do not execute the search heuristics.
SLR_NOTRACK | Do not use distributed link tracking.
SLR_UPDATE | If the link object has changed, update its path and list of identifiers. If SLR_UPDATE is set, you do not need to call IPersistFile::IsDirty to determine whether or not the link object has changed.


PyIShellLink.SetArguments

SetArguments(args)

Sets the command-line arguments associated with a shell link object.

Parameters

args : string

The new arguments.


PyIShellLink.SetDescription

SetDescription()

Description of SetDescription.


PyIShellLink.SetHotkey

SetHotkey(wHotkey)

Sets the hot key for a shell link object.

Parameters

wHotkey : int

The virtual key code is in the low-order byte, and the modifier flags are in the high-order byte. The modifier flags can be a combination of the values specified in the description of the PyIShellLink::GetHotkey method.


PyIShellLink.SetIDList

SetIDList()

Sets the list of item identifiers for a shell link object.


PyIShellLink.SetIconLocation

SetIconLocation(iconPath, iIcon)

Sets the location (path and index) of the icon for a shell link object.

Parameters

iconPath : string

Path to the file with the icon.

iIcon : int

Index of the icon.


PyIShellLink.SetPath

SetPath(path)

Sets the path and file name of a shell link object.

Parameters

path : string

The path and filename of the link.


PyIShellLink.SetRelativePath

SetRelativePath(relPath, reserved)

Sets the relative path for a shell link object.

Parameters

relPath : string

The relative path.

reserved=0 : int

Reserved - must be zero.

Comments

This mechanism allows for moved link files to reestablish connection with relative files through similar-prefix comparisons


PyIShellLink.SetShowCmd

SetShowCmd(iShowCmd)

Sets the show (SW_) command for a shell link object.

Parameters

iShowCmd : int

The new show command value.


PyIShellLink.SetWorkingDirectory

SetWorkingDirectory()

Description of SetWorkingDirectory.


PyISpecifyPropertyPages

PyISpecifyPropertyPages Object

Description of the interface

Methods

GetPages
Description of GetPages


PyISpecifyPropertyPages.GetPages

GetPages()

Description of GetPages.


PyIStorage

PyIStorage Object

Description of the interface

Methods

CreateStream
Creates and opens a stream object with the specified name contained in this storage object.

OpenStream
Opens an existing stream object.

CreateStorage
Creates and opens a new storage object nested within this storage object.

OpenStorage
Opens an existing storage object with the specified name in the specified access mode.

CopyTo
Copies the entire contents of an open storage object to another storage object.

MoveElementTo
Copies or moves a substorage or stream from this storage object to another storage object.

Commit
Ensures that any changes made to a storage object open in transacted mode are reflected in the parent storage.

Revert
Discards all changes that have been made to the storage object since the last commit.

EnumElements
Retrieves an enumerator object that can be used to enumerate the storage and stream objects contained within this storage object.

DestroyElement
Removes the specified storage or stream from this storage object.

RenameElement
Renames the specified substorage or stream in this storage object.

SetElementTimes
Sets the modification, access, and creation times of the specified storage element, if supported by the underlying file system.

SetClass
Assigns the specified CLSID to this storage object.

SetStateBits
Stores up to 32 bits of state information in this storage object.

Stat
Retrieves the STATSTG structure for this open storage object.


PyIStorage.Commit

Commit(grfCommitFlags)

Ensures that any changes made to a storage object open in transacted mode are reflected in the parent storage; for a root storage, reflects the changes in the actual device, for example, a file on disk. For a root storage object opened in direct mode, this method has no effect except to flush all memory buffers to the disk. For non-root storage objects in direct mode, this method has no effect.

Parameters

grfCommitFlags : int

Controls how the changes are committed to the storage object. See the STGC enumeration for a definition of these values.


PyIStorage.CopyTo

CopyTo(rgiidExclude, snbExclude, stgDest)

Copies the entire contents of an open storage object to another storage object.

Parameters

rgiidExclude : [PyIID ,]

List of IID's to be excluded.

snbExclude : SNB

Reserved for later - Must be None

stgDest : PyIStorage

The open storage object into which this storage object is to be copied. The destination storage object can be a different implementation of the PyIStorage interface from the source storage object. Thus, IStorage::CopyTo can only use publicly available methods of the destination storage object. If stgDest is open in transacted mode, it can be reverted by calling its PyIStorage::Revert method.


PyIStorage.CreateStorage

PyIStorage = CreateStorage(pwcsName, grfMode , dwStgFmt , reserved2 )

Creates and opens a new storage object nested within this storage object.

Parameters

pwcsName : string

The name of the newly created stream.

grfMode : int

Specifies the access mode to use when opening the newly created storage object.

dwStgFmt : int

Documented as "reserved"!

reserved2=0 : int

Description for reserved2


PyIStorage.CreateStream

PyIStream = CreateStream(pwcsName, grfMode , reserved1 , reserved2 )

Creates and opens a stream object with the specified name contained in this storage object. All elements within a storage object — both streams and other storage objects — are kept in the same name space.

Parameters

pwcsName : string

Name of the new stream

grfMode : int

Specifies the access mode to use when opening the newly created stream.

reserved1=0 : int

Reserved - must be zero.

reserved2=0 : int

Reserved - must be zero.


PyIStorage.DestroyElement

DestroyElement(name)

Removes the specified storage or stream from this storage object.

Parameters

name : string

The name of the element to be removed.


PyIStorage.EnumElements

PyIEnumSTATSTG = EnumElements(reserved1, reserved2 , reserved3 )

Retrieves an enumerator object that can be used to enumerate the storage and stream objects contained within this storage object.

Parameters

reserved1=0 : int

Reserved - must be zero.

reserved2=None : object

A reserved param. Always pass None. NULL is always passed to the COM function

reserved3=0 : int

Reserved - must be zero.


PyIStorage.MoveElementTo

MoveElementTo(name, stgDest, newName, grfFlags)

Copies or moves a substorage or stream from this storage object to another storage object.

Parameters

name : string

A string that contains the name of the element in this storage object to be moved or copied.

stgDest : PyIStorage

PyIStorage for the destination storage object.

newName : string

A string that contains the new name for the element in its new storage object.

grfFlags : int

Specifies whether the operation should be a move (STGMOVE_MOVE) or a copy (STGMOVE_COPY). See the STGMOVE enumeration.


PyIStorage.OpenStorage

PyIStorage = OpenStorage(pwcsName, pstgPriority , grfMode , snbExclude , reserved )

Opens an existing storage object with the specified name in the specified access mode.

Parameters

pwcsName : string

Name of the storage, or None.

pstgPriority : PyIStorage

If the pstgPriority parameter is not None, it is a PyIStorage object to a previous opening of an element of the storage object, usually one that was opened in priority mode. The storage object should be closed and re-opened according to grfMode. When the PyIStorage::OpenStorage method returns, pstgPriority is no longer valid - use the result value. If the pstgPriority parameter is None, it is ignored.

grfMode : int

Specifies the access mode to use when opening the storage object. See the STGM enumeration values for descriptions of the possible values. Whatever other modes you may choose, you must at least specify STGM_SHARE_EXCLUSIVE when calling this method.

snbExclude : SNB

Reserved for later - Must be None

reserved=0 : int

Reserved integer param.


PyIStorage.OpenStream

PyIStream = OpenStream(pwcsName, reserved1 , grfMode , reserved2 )

Opens an existing stream object within this storage object in the specified access mode.

Parameters

pwcsName : string

Description for pwcsName

reserved1 : object

A reserved param. Always pass None. NULL is always passed to the COM function

grfMode : int

Specifies the access mode to be assigned to the open stream. See the STGM enumeration values for descriptions of the possible values. . Whatever other modes you may choose, you must at least specify STGM_SHARE_EXCLUSIVE when calling this method.

reserved2=0 : int

Reserved - must be zero.


PyIStorage.RenameElement

RenameElement(oldName, newName)

Renames the specified substorage or stream in this storage object.

Parameters

oldName : string

The name of the substorage or stream to be changed.

newName : string

The new name for the specified sustorage or stream.


PyIStorage.Revert

Revert()

Discards all changes that have been made to the storage object since the last commit.


PyIStorage.SetClass

SetClass(clsid)

Assigns the specified CLSID to this storage object.

Parameters

clsid : PyIID

The class identifier (CLSID) that is to be associated with the storage object.


PyIStorage.SetElementTimes

SetElementTimes(name, ctime, atime, mtime)

Sets the modification, access, and creation times of the specified storage element, if supported by the underlying file system.

Parameters

name : string

The name of the storage object element whose times are to be modified. If NULL, the time is set on the root storage rather than one of its elements.

ctime : PyTime

Either the new creation time for the element or None if the creation time is not to be modified.

atime : PyTime

Either the new access time for the element or None if the access time is not to be modified.

mtime : PyTime

Either the new modification time for the element or None if the modification time is not to be modified.


PyIStorage.SetStateBits

SetStateBits(grfStateBits, grfMask)

Stores up to 32 bits of state information in this storage object.

Parameters

grfStateBits : int

Specifies the new values of the bits to set. No legal values are defined for these bits; they are all reserved for future use and must not be used by applications.

grfMask : int

A binary mask indicating which bits in grfStateBits are significant in this call.


PyIStorage.Stat

STATSTG = Stat(grfStatFlag)

Retrieves the STATSTG structure for this open storage object.

Parameters

grfStatFlag : int

Specifies that some of the fields in the STATSTG structure are not returned, thus saving a memory allocation operation. Values are taken from the STATFLAG enumeration.


PyIStream

PyIStream Object

A Python interface to IStream

Methods

Read
Read the specified number of bytes from the string.

read
Alias for PyIStream::Read

Write
Write data from a stream.

write
Alias for PyIStream::Write

Seek
Changes the seek pointer to a new location.

SetSize
Changes the size of the stream object.

CopyTo
Copies a specified number of bytes from the current seek pointer in the stream to the current seek pointer in another stream.

Commit
Ensures that any changes made to a stream object open in transacted mode are reflected in the parent storage.

Revert
Discards all changes that have been made to a transacted stream since the last PyIStream::Commit call.

LockRegion
Restricts access to a specified range of bytes in the stream.

UnLockRegion
Removes the access restriction on a range of bytes previously restricted with PyIStream::LockRegion.

Clone
Creates a new stream object with its own seek pointer that references the same bytes as the original stream.

Stat
Returns information about a stream


PyIStream.Clone

PyIStream = Clone()

Creates a new stream object with its own seek pointer that references the same bytes as the original stream.


PyIStream.Commit

Commit(flags)

Ensures that any changes made to a stream object open in transacted mode are reflected in the parent storage.

Parameters

flags=STGC_DEFAULT : int

Controls how changes are performed.


PyIStream.CopyTo

ULARGE_INTEGER = CopyTo(stream, cb )

Copies a specified number of bytes from the current seek pointer in the stream to the current seek pointer in another stream.

Parameters

stream : PyIStream

The stream to write to.

cb : ULARGE_INTEGER

The number of bytes to write.

Return Value

The return value is the number of bytes actually written.


PyIStream.LockRegion

LockRegion(offset, cb, lockType)

Restricts access to a specified range of bytes in the stream.

Parameters

offset : ULARGE_INTEGER

Integer that specifies the byte offset for the beginning of the range.

cb : ULARGE_INTEGER

The number of bytes to restrict.

lockType : int

Restrictions requested.


PyIStream.Read

string = Read(numBytes)

Read the specified number of bytes from the string.

Parameters

numBytes : int

The number of bytes to read from the stream. Must not be zero.

Return Value

The result is a string containing binary data.


PyIStream.Revert

Revert()

Discards all changes that have been made to a transacted stream since the last PyIStream::Commit call.


PyIStream.Seek

ULARGE_INTEGER = Seek(offset, origin )

Changes the seek pointer to a new location.

Parameters

offset : int

The new location

origin : int

Relative to where?


PyIStream.SetSize

SetSize(newSize)

Changes the size of the stream object.

Parameters

newSize : ULARGE_INTEGER

The new size


PyIStream.Stat

STATSTG = Stat(grfStatFlag)

Returns information about the stream

Parameters

grfStatFlag=0 : int

Flags.


PyIStream.UnlockRegion

UnlockRegion(offset, cb, lockType)

Removes the access restriction on a range of bytes previously restricted with PyIStream::LockRegion.

Parameters

offset : ULARGE_INTEGER

Integer that specifies the byte offset for the beginning of the range.

cb : ULARGE_INTEGER

The number of bytes to restrict.

lockType : int

Restrictions requested.


PyIStream.Write

Write(data)

Write data to a stream

Parameters

data : string

The binary data to write.


PyITypeComp

PyITypeComp Object

An object that implements the ITypeComp interface.

Methods

Bind
Retrieves specified binding description.

BindType
Retrieves specified binding description for a type sentinel


PyITypeComp.Bind

DESCKIND = Bind(szName, wflags )

binds to a variable/type

Parameters

szName : string

The name to bind to

wflags=0 : int

the bind flags


PyITypeComp.BindType

DESCKIND = BindType(szName)

binds to a type

Parameters

szName : string

The name to bind to


PyITypeInfo

PyITypeInfo Object

An OLE automation type info object. Derived from PyIUnknown

Methods

GetContainingTypeLib
Retrieves the containing type library and the index of the type description within that type library.

GetDocumentation
Retrieves the documentation string, the complete Help file name and path, and the context ID for the Help topic for a specified type description.

GetFuncDesc
Retrieves the FUNCDESC object that contains information about a specified function.

GetImplTypeFlags
Retrieves the IMPLTYPEFLAGS enumeration for one implemented interface or base interface in a type description.

GetIDsOfNames
Maps between member names and member IDs, and parameter names and parameter IDs.

GetNames
Retrieves the variable with the specified member ID (or the name of the property or method and its parameters) that correspond to the specified function ID.

GetTypeAttr
Retrieves a TYPEATTR object that contains the attributes of the type description.

GetRefTypeInfo
If a type description references other type descriptions, it retrieves the referenced type descriptions.

GetRefTypeOfImplType
Retrieves the type description of the implemented interface types.

GetVarDesc
Retrieves a VARDESC object that describes the specified variable.

GetTypeComp
Retrieves a ITypeComp object for Name to VARDESC/FUNCDESC mapping.


PyITypeInfo.GetContainingTypeLib

PyITypeLib, int = GetContainingTypeLib()

Retrieves the containing type library and the index of the type description within that type library.


PyITypeInfo.GetDocumentation

(name, docstring, helpContext, helpFile) = GetDocumentation(memberId)

Retrieves the documentation string, the complete Help file name and path, and the context ID for the Help topic for a specified type description.

Parameters

memberId : int


PyITypeInfo.GetFuncDesc

FUNCDESC = GetFuncDesc(memberId)

Retrieves the FUNCDESC object that contains information about a specified function.

Parameters

memberId : int


PyITypeInfo.GetIDsOfNames

int = GetIDsOfNames()

Maps between member names and member IDs, and parameter names and parameter IDs.


PyITypeInfo.GetImplTypeFlags

int = GetImplTypeFlags(index)

Retrieves the IMPLTYPEFLAGS enumeration for one implemented interface or base interface in a type description.

Parameters

index : int


PyITypeInfo.GetNames

(tuple of strings) = GetNames(memberId)

Retrieves the variable with the specified member ID (or the name of the property or method and its parameters) that correspond to the specified function ID.

Parameters

memberId : int


PyITypeInfo.GetRefTypeInfo

PyITypeInfo = GetRefTypeInfo(hRefType)

If a type description references other type descriptions, it retrieves the referenced type descriptions.

Parameters

hRefType : int


PyITypeInfo.GetRefTypeOfImplType

int = GetRefTypeOfImplType(hRefType)

Retrieves the type description of the implemented interface types.

Parameters

hRefType : int

Comments

If a type description describes a COM class, it retrieves the type description of the implemented interface types. For an interface, GetRefTypeOfImplType returns the type information for inherited interfaces, if any exist.


PyITypeInfo.GetTypeAttr

TYPEATTR = GetTypeAttr()

Retrieves a TYPEATTR object that contains the attributes of the type description.


PyITypeInfo.GetTypeComp

PyITypeComp = GetTypeComp()

Retrieves a ITypeComp object for Name to VARDESC/FUNCDESC mapping.


PyITypeInfo.GetVarDesc

VARDESC = GetVarDesc(memberId)

Retrieves a VARDESC object that describes the specified variable.

Parameters

memberId : int


PyITypeLib

PyITypeLib Object

An object that implements the ITypeLib interface.

Methods

GetDocumentation
Retrieves documentation information about the library.

GetLibAttr
Retrieves the libraries attributes

GetTypeComp
Retrieves a ITypeComp object for Name to VARDESC/FUNCDESC mapping.

GetTypeInfo
Retrieves the specified type description in the library.

GetTypeInfoCount
Retrieves the number of PyITypeInfos in the type library.

GetTypeInfoOfGuid
Retrieves the type info of the specified GUID.

GetTypeInfoType
Retrieves the type of a type description. sentinel


PyITypeLib.GetDocumentation

tuple = GetDocumentation(index)

Retrieves documentation information about the library.

Parameters

index : int

The index of the type description within the library

Return Value

The return type is a tuple of (name of item, documentation string, help context integer, help file name)


PyITypeLib.GetLibAttr

TLIBATTR = GetLibAttr()

Retrieves the libraries attributes


PyITypeLib.GetTypeComp

PyITypeComp = GetTypeComp()

Retrieves a ITypeComp object for Name to VARDESC/FUNCDESC mapping.


PyITypeLib.GetTypeInfo

PyITypeInfo = GetTypeInfo(index)

Retrieves the specified type description in the library.

Parameters

index : int

The index of the type description within the library


PyITypeLib.GetTypeInfoCount

int = GetTypeInfoCount()

Retrieves the number of PyITypeInfos in the type library.


PyITypeLib.GetTypeInfoOfGuid

PyITypeInfo = GetTypeInfoOfGuid(iid)

Retrieves the type info of the specified GUID.

Parameters

iid : PyIID

GUID of the type description.


PyITypeLib.GetTypeInfoType

TYPEKIND = GetTypeInfoType(index)

Retrieves the type of a type description.

Parameters

index : int

The index of the type description within the library


PyIUnknown

PyIUnknown Object

The base object for all PythonCOM objects. Wraps a COM IUnknown object.

Methods

QueryInterface
Queries the object for an interface.

Comments

Note that there are no reference counting functions that are typically exposed via COM. This is because COM reference counts are automatically handled by PythonCOM - each interface object keeps exactly one COM reference, regardless of how many Python references. When the Python object destructs due to its reference count hitting zero, the COM reference is then released. It is not possible for force the closure of a PythonCOM object - the only way to ensure cleanup is to remove all Python references.


PyIUnknown.__cmp__

int = __cmp__()

Implements COM rules for object identity.

Comments

As per the COM rules for object identity, both objects are queried for IUnknown, and these values compared. The only meaningful test is for equality - the result of other comparisons is undefined (ie, determined by the object's relative addresses in memory.


PyIUnknown::__repr__

PyIUnknown::__repr__ method

string __repr__()

Called to create a representation of a PyIUnknown object

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COM/SRC/PYIUNKNOWN.CPP

Comments

The repr of this object displays both the object's address, and its attached IUnknown's address


PyIUnknown.QueryInterface

PyIUnknown = QueryInterface(iid, useIID )

Queries an object for a specific interface.

Parameters

iid : IID

The IID requested.

useIID=None : IID

If provided and not None, will return an interface for the specified IID if (and only if) a native interface can not be supported. If the interface specified by iid is natively supported, this option is ignored.

Comments

The useIID parameter is a very dangerous option, and should only be used when you are sure you need it! By specifying this parameter, you are telling the COM framework that regardless of the true type of the result (as specified by iid), a Python wrapper of type useIID will be created. If iid does not derive from useIID, then it is almost certain that using the object will cause an Access Violation.
For example, this option can be used to obtain a PyIUnknown object if pythoncom does not natively support the interface. Another example might be to return an unsupported persistence interface as a PyIPersist instance.
For backwards compatibility: the integer 0 implies None, and the integer 1 implies IID_IUnknown.

Return Value

The result is always an object derived from PyIUnknown. Any error (including E_NOINTERFACE) will generate a com_error exception.


PyIViewObject

PyIViewObject Object

Description of the interface

Methods

Draw
Description of Draw

GetColorSet
Description of GetColorSet

Freeze
Description of Freeze

Unfreeze
Description of Unfreeze

SetAdvise
Description of SetAdvise

GetAdvise
Description of GetAdvise


PyIViewObject.Draw

Draw(dwDrawAspect, lindex, aspectFlags, hdcTargetDev, hdcDraw, left, top, right, bottom, left, top, right, bottom, funcContinue, obContinue)

Description of Draw.

Parameters

dwDrawAspect : int

Description for dwDrawAspect

lindex : int

Description for lindex

aspectFlags : int

Integer value for the dwFlags item of the DVASPECTINFO structure.

hdcTargetDev : HDC

Description for hdcTargetDev

hdcDraw : HDC

Description for hdcDraw

left, top, right, bottom : int, int, int, int

Bounds rectangle.

left, top, right, bottom : int, int, int, int

WBounds rectangle.

funcContinue : object

A continue function.

obContinue : object

Value passed to the function.


PyIViewObject.Freeze

Freeze(dwDrawAspect, lindex, aspectFlags)

Description of Freeze.

Parameters

dwDrawAspect : int

Description for dwDrawAspect

lindex : int

Description for lindex

aspectFlags : int

Integer value for the dwFlags item of the DVASPECTINFO structure.


PyIViewObject.GetAdvise

GetAdvise()

Description of GetAdvise.


PyIViewObject.GetColorSet

GetColorSet(dwDrawAspect, lindex, aspectFlags, hicTargetDev)

Description of GetColorSet.

Parameters

dwDrawAspect : int

Description for dwDrawAspect

lindex : int

Description for lindex

aspectFlags : int

Integer value for the dwFlags item of the DVASPECTINFO structure.

hicTargetDev : HDC

Description for hicTargetDev


PyIViewObject.SetAdvise

SetAdvise(aspects, advf, pAdvSink)

Description of SetAdvise.

Parameters

aspects : int

Description for aspects

advf : int

Description for advf

pAdvSink : PyIAdviseSink

Description for pAdvSink


PyIViewObject.Unfreeze

Unfreeze(dwFreeze)

Description of Unfreeze.

Parameters

dwFreeze : int

Description for dwFreeze


PyIViewObject2

PyIViewObject2 Object

Description of the interface

Methods

GetExtent
Description of GetExtent


PyIViewObject2.GetExtent

GetExtent(dwDrawAspect, lindex, targetDevice)

Description of GetExtent.

Parameters

dwDrawAspect : int

Description for dwDrawAspect

lindex : int

Description for lindex

targetDevice : PyDVTARGETDEVICE

Description for lindex


PyMAPINAMEIDArray

PyMAPINAMEIDArray Object

A sequence (PyIID , string/int) objects FALSE*/ )


PyRecord

PyRecord Object

An object that represents a COM User Defined Type.

Comments

Once created or obtained from other methods, you can simply get and set attributes.


PySAndRestriction

PySAndRestriction Object

Parameters

restriction : [PySRestriction, ...]

A sequence of PySRestriction objects.


PySBinaryArray

PySBinaryArray Object

A sequence of strings containing binary data.


PySBitMaskRestriction

PySBitMaskRestriction Object

Parameters

relBMR : int

propTag : int

The property ID.

ulMask=0 : int


PySContentRestriction

PySContentRestriction Object

Parameters

fuzzyLevel : int

propTag : int

The property ID.

propertyValue : PySPropValue


PySExistRestriction

PySExistRestriction Object

Parameters

propTag : int

The property ID to check for existance.

reserved1=0 : int

reserved2=0 : int


PySNotRestriction

PySNotRestriction Object

Parameters

restriction : PySRestriction

reserved=0 : int


PySOrRestriction

PySOrRestriction Object

Parameters

restriction : [PySRestriction, ...]

A sequence of PySRestriction objects.


PySPropTagArray

PySPropTagArray Object

A sequence of integers


PySPropValue

PySPropValue Object

A MAPI property value. Property values can either be passed from python into MAPI functions, or returned from MAPI functions to Python.

Parameters

propType : int

The type of the MAPI property

value : object

The property value

Comments

The parameters can be one of the following pairs of values.

propType | value
PT_I2 | An integer case PT_SHORT:
PT_MV_I2 | A sequence of integers
PT_I4 | An integer case PT_LONG:
PT_MV_I4 | A sequence of integers
PT_R4 | A float case PT_FLOAT:
PT_MV_R4 | A sequence of floats
PT_R8 | A float case PT_DOUBLE:
PT_MV_R8 | A sequence of floats
PT_BOOLEAN | An integer
PT_APPTIME | A PyTime object
PT_MV_APPTIME | An sequence of PyTime object
PT_SYSTIME | A PyTime object
PT_MV_APPTIME | An sequence of PyTime object
PT_STRING8 | A string or PyUnicode
PT_STRING8 | A sequence of string or PyUnicode objects.
PT_UNICODE | A string or PyUnicode
PT_MV_UNICODE | A sequence of string or PyUnicode
PT_BINARY | A string containing binary data
PT_MV_BINARY | A sequence of strings containing binary data
PT_CLSID | A PyIID
PT_MV_CLSID | A sequence of PyIID objects
PT_I8 | A PyLARGE_INTEGER
PT_MV_I8 | A sequence of PyLARGE_INTEGER
PT_ERROR | An integer error code.
PT_NULL | Anything!


PySPropValueArray

PySPropValueArray Object

A sequence of PySPropValue, as passed to many MAPI functions.


PySPropertyRestriction

PySPropertyRestriction Object

Parameters

relOp : int

propTag : int

The property ID.

propertyValue : PySPropValue


PySRestriction

PySRestriction Object

Parameters

restrictionType : int

An integer describing the contents of the second parameter.

restriction : object

An object in one of the formats describe below.

Comments

The parameters can be one of the following pairs of values.

restrictionType | restrictionValue
RES_AND | PySAndRestriction
RES_OR | PySOrRestriction
RES_PROPERTY | PySPropertyRestriction
RES_EXIST | PySExistRestriction
RES_NOT | PySNotRestriction
RES_CONTENT | PySContentRestriction
RES_BITMASK | PySBitMaskRestriction


PySRow

PySRow Object

Identical to a PySValue object


PySRowSet

PySRowSet Object

A sequence of PySRow objects, as passed to many MAPI functions.


PySSortOrderItem

PySSortOrderItem Object

An item in a SortOrderSet.

Parameters

propTag : int

A property tag.

order : int


PySSortOrderSet

PySSortOrderSet Object

An object describing a SortOrderSet.

Parameters

sortItems : ( PySSortOrderItem, ...)

The items to sort by

cCategories=0 : int

cExpanded=0 : int

TRUE */)


STATSTG

STATSTG Object

A tuple representing a STATSTG structure

Items

[0] string : name

The name of the storage object

[1] int : type

Indicates the type of storage object. This is one of the values from the storagecon.STGTY_* values.

[2] ULARGE_INTEGER : size

Specifies the size in bytes of the stream or byte array.

[3] PyTime : modificationTime

Indicates the last modification time for this storage, stream, or byte array.

[4] PyTime : creationTime

Indicates the creation time for this storage, stream, or byte array.

[5] PyTime : accessTime

Indicates the last access time for this storage, stream or byte array.

[6] int : mode

Indicates the access mode specified when the object was opened. This member is only valid in calls to Stat methods.

[7] int : locksSupported

Indicates the types of region locking supported by the stream or byte array. See the storagecon.LOCKTYPES_* constants for the values available. This member is not used for storage objects.

[8] PyIID : clsid

Indicates the class identifier for the storage object; set to CLSID_NULL for new storage objects. This member is not used for streams or byte arrays.

[9] int : stateBits

Indicates the current state bits of the storage object, that is, the value most recently set by the PyIStorage::SetStateBits method. This member is not valid for streams or byte arrays.

[10] int : storageFormat

Indicates the format of the storage object. This is one of the values from the STGFMT_* constants. In some Win32 API documentation, this member is known as 'reserved'


TLIBATTR

TLIBATTR Object

Type library attributes are represented as a tuple of:

Items

[0] PyIID : IID

The IID for the library

[1] int : lcid

The default locale ID for the library

[2] int : syskind

Identifies the target operating system platform

[3] int : majorVersion

The major version number of the library

[4] int : minorVersion

The minor version number of the library

[5] int : flags

Flags for the library.


TYPEATTR

TYPEATTR Object

A TYPEATTR object represents a COM TYPEATTR structure.

Properties

PyIID IID
The IID

int lcid
The lcid

int memidConstructor
ID of constructor

int memidDestructor
ID of destructor

int cbSizeInstance
The size of an instance of this type

int typekind
The kind of type this information describes. One of the win32con.TKIND_* constants.

int cFuncs
Number of functions.

int cVars
Number of variables/data members.

int cImplTypes
Number of implemented interfaces.

int cbSizeVft
The size of this type's VTBL

int cbAlignment
Byte alignment for an instance of this type.

int wTypeFlags
One of the pythoncom TYPEFLAG_

int wMajorVerNum
Major version number.

int wMinorVerNum
Minor version number.

TYPEDESC obDescAlias
If TypeKind == pythoncom.TKIND_ALIAS, specifies the type for which this type is an alias.

IDLDESC obIDLDesc
IDL attributes of the described type.

Items

[0] PyIID : IID

The IID

[1] int : lcid

The lcid

[2] int : memidConstructor

ID of constructor

[3] int : memidDestructor

ID of destructor,

[4] int : cbSizeInstance

The size of an instance of this type

[5] int : typekind

The kind of type this information describes. One of the win32con.TKIND_* constants.

[6] int : cFuncs

Number of functions.

[7] int : cVars

Number of variables/data members.

[8] int : cImplTypes

Number of implemented interfaces.

[9] int : cbSizeVft

The size of this type's VTBL

[10] int : cbAlignment

Byte alignment for an instance of this type.

[11] int : wTypeFlags

One of the pythoncom TYPEFLAG_* constants

[12] int : wMajorVerNum

Major version number.

[13] int : wMinorVerNum

Minor version number.

[14] TYPEDESC : obDescAlias

If TypeKind == pythoncom.TKIND_ALIAS, specifies the type for which this type is an alias.

[15] IDLDESC : obIDLDesc

IDL attributes of the described type.


TYPEDESC

TYPEDESC Object

A typedesc is a complicated, recursive object, It may be either a simple Python type, or a tuple of (indirectType, object), where object may be a simple Python type, or a tuple of etc ...


VARDESC

VARDESC Object

A VARDESC object represents a COM VARDESC structure.

Properties

int memid
The dispid of the member

int/object value
A value for the variant. If PERINSTANCE then an offset into the instance, otherwise a variant converted to a Python object.

ELEMDESC elemdescVar
Object describing the member.

int varFlags
Variable flags

int varkind
Kind flags.

Items

[0] int : memid

The id of the member

[1] int/object : value

A value for the variant. If PERINSTANCE then an offset into the instance, otherwise a variant converted to a Python object.

[2] ELEMDESC : elemdescVar

Object describing the member.

[3] int : varFlags

Variable flags

[4] int : varKind

Kind flags.


Constants

  • AB_NO_DIALOG
  • APPBREAKFLAG_DEBUGGER_BLOCK
  • APPBREAKFLAG_DEBUGGER_HALT
  • APPBREAKFLAG_STEP
  • ATTACH_BY_REF_ONLY
  • ATTACH_BY_REF_RESOLVE
  • ATTACH_BY_REFERENCE
  • ATTACH_BY_VALUE
  • ATTACH_EMBEDDED_MSG
  • ATTACH_OLE
  • BMR_EQZ
  • BMR_NEZ
  • BOOKMARK_BEGINNING
  • BOOKMARK_CURRENT
  • BOOKMARK_END
  • BREAKPOINT_DELETED
  • BREAKPOINT_DISABLED
  • BREAKPOINT_ENABLED
  • BREAKREASON_BREAKPOINT
  • BREAKREASON_DEBUGGER_BLOCK
  • BREAKREASON_DEBUGGER_HALT
  • BREAKREASON_ERROR
  • BREAKREASON_HOST_INITIATED
  • BREAKREASON_LANGUAGE_INITIATED
  • BREAKREASON_STEP
  • BREAKRESUMEACTION_ABORT
  • BREAKRESUMEACTION_CONTINUE
  • BREAKRESUMEACTION_STEP_INTO
  • BREAKRESUMEACTION_STEP_OUT
  • BREAKRESUMEACTION_STEP_OVER
  • CLSID_DefaultDebugSessionProvider
  • CLSID_MachineDebugManager
  • CLSID_ProcessDebugManager
  • CONVENIENT_DEPTH
  • DBGPROP_ATTRIB_ACCESS_FINAL
  • DBGPROP_ATTRIB_ACCESS_PRIVATE
  • DBGPROP_ATTRIB_ACCESS_PROTECTED
  • DBGPROP_ATTRIB_ACCESS_PUBLIC
  • DBGPROP_ATTRIB_HAS_EXTENDED_ATTRIBS
  • DBGPROP_ATTRIB_NO_ATTRIB
  • DBGPROP_ATTRIB_STORAGE_FIELD
  • DBGPROP_ATTRIB_STORAGE_GLOBAL
  • DBGPROP_ATTRIB_STORAGE_STATIC
  • DBGPROP_ATTRIB_STORAGE_VIRTUAL
  • DBGPROP_ATTRIB_TYPE_IS_CONSTANT
  • DBGPROP_ATTRIB_TYPE_IS_SYNCHRONIZED
  • DBGPROP_ATTRIB_TYPE_IS_VOLATILE
  • DBGPROP_ATTRIB_VALUE_IS_EXPANDABLE
  • DBGPROP_ATTRIB_VALUE_IS_INVALID
  • DBGPROP_ATTRIB_VALUE_READONLY
  • DBGPROP_INFO_ATTRIBUTES
  • DBGPROP_INFO_AUTOEXPAND
  • DBGPROP_INFO_DEBUGPROP
  • DBGPROP_INFO_FULLNAME
  • DBGPROP_INFO_NAME
  • DBGPROP_INFO_TYPE
  • DBGPROP_INFO_VALUE
  • DEBUG_TEXT_ALLOWBREAKPOINTS
  • DEBUG_TEXT_ISEXPRESSION
  • DIR_BACKWARD
  • DOCUMENTNAMETYPE_APPNODE
  • DOCUMENTNAMETYPE_FILE_TAIL
  • DOCUMENTNAMETYPE_TITLE
  • DOCUMENTNAMETYPE_URL
  • ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller
  • ERRORRESUMEACTION_ReexecuteErrorStatement
  • ERRORRESUMEACTION_SkipErrorStatement
  • EX_DBGPROP_INFO_DEBUGEXTPROP
  • EX_DBGPROP_INFO_ID
  • EX_DBGPROP_INFO_LOCKBYTES
  • EX_DBGPROP_INFO_NTYPE
  • EX_DBGPROP_INFO_NVALUE
  • FL_FULLSTRING
  • FL_IGNORECASE
  • FL_IGNORENONSPACE
  • FL_LOOSE
  • FL_PREFIX
  • FL_SUBSTRING
  • FOLDER_GENERIC
  • FOLDER_SEARCH
  • FORCE_SAVE
  • KEEP_OPEN_READONLY
  • KEEP_OPEN_READWRITE
  • MAPI_ALLOW_OTHERS
  • MAPI_ASSOCIATED
  • MAPI_BCC
  • MAPI_BEST_ACCESS
  • MAPI_CC
  • MAPI_CREATE
  • MAPI_DEFAULT_SERVICES
  • MAPI_DEFERRED_ERRORS
  • MAPI_DIALOG
  • MAPI_E_ACCOUNT_DISABLED
  • MAPI_E_AMBIGUOUS_RECIP
  • MAPI_E_BAD_CHARWIDTH
  • MAPI_E_BAD_COLUMN
  • MAPI_E_BAD_VALUE
  • MAPI_E_BUSY
  • MAPI_E_CALL_FAILED
  • MAPI_E_CANCEL
  • MAPI_E_COLLISION
  • MAPI_E_COMPUTED
  • MAPI_E_CORRUPT_DATA
  • MAPI_E_CORRUPT_STORE
  • MAPI_E_DECLINE_COPY
  • MAPI_E_DISK_ERROR
  • MAPI_E_END_OF_SESSION
  • MAPI_E_EXTENDED_ERROR
  • MAPI_E_FAILONEPROVIDER
  • MAPI_E_FOLDER_CYCLE
  • MAPI_E_HAS_FOLDERS
  • MAPI_E_HAS_MESSAGES
  • MAPI_E_INTERFACE_NOT_SUPPORTED
  • MAPI_E_INVALID_ACCESS_TIME
  • MAPI_E_INVALID_BOOKMARK
  • MAPI_E_INVALID_ENTRYID
  • MAPI_E_INVALID_OBJECT
  • MAPI_E_INVALID_PARAMETER
  • MAPI_E_INVALID_TYPE
  • MAPI_E_INVALID_WORKSTATION_ACCOUNT
  • MAPI_E_LOGON_FAILED
  • MAPI_E_MISSING_REQUIRED_COLUMN
  • MAPI_E_NETWORK_ERROR
  • MAPI_E_NO_ACCESS
  • MAPI_E_NO_RECIPIENTS
  • MAPI_E_NO_SUPPORT
  • MAPI_E_NO_SUPPRESS
  • MAPI_E_NON_STANDARD
  • MAPI_E_NOT_ENOUGH_DISK
  • MAPI_E_NOT_ENOUGH_MEMORY
  • MAPI_E_NOT_ENOUGH_RESOURCES
  • MAPI_E_NOT_FOUND
  • MAPI_E_NOT_IN_QUEUE
  • MAPI_E_NOT_INITIALIZED
  • MAPI_E_NOT_ME
  • MAPI_E_OBJECT_CHANGED
  • MAPI_E_OBJECT_DELETED
  • MAPI_E_PASSWORD_CHANGE_REQUIRED
  • MAPI_E_PASSWORD_EXPIRED
  • MAPI_E_SESSION_LIMIT
  • MAPI_E_STRING_TOO_LONG
  • MAPI_E_SUBMITTED
  • MAPI_E_TABLE_EMPTY
  • MAPI_E_TABLE_TOO_BIG
  • MAPI_E_TIMEOUT
  • MAPI_E_TOO_BIG
  • MAPI_E_TOO_COMPLEX
  • MAPI_E_TYPE_NO_SUPPORT
  • MAPI_E_UNABLE_TO_ABORT
  • MAPI_E_UNABLE_TO_COMPLETE
  • MAPI_E_UNCONFIGURED
  • MAPI_E_UNEXPECTED_ID
  • MAPI_E_UNEXPECTED_TYPE
  • MAPI_E_UNKNOWN_CPID
  • MAPI_E_UNKNOWN_ENTRYID
  • MAPI_E_UNKNOWN_FLAGS
  • MAPI_E_UNKNOWN_LCID
  • MAPI_E_USER_CANCEL
  • MAPI_E_VERSION
  • MAPI_E_WAIT
  • MAPI_EXPLICIT_PROFILE
  • MAPI_EXTENDED
  • MAPI_FORCE_DOWNLOAD
  • MAPI_INIT_VERSION
  • MAPI_LOGON_UI
  • MAPI_MODIFY
  • MAPI_MULTITHREAD_NOTIFICATIONS
  • MAPI_NEW_SESSION
  • MAPI_NO_IDS
  • MAPI_NO_MAIL
  • MAPI_NO_STRINGS
  • MAPI_NT_SERVICE
  • MAPI_P1
  • MAPI_PASSWORD_UI
  • MAPI_SERVICE_UI_ALWAYS
  • MAPI_SUBMITTED
  • MAPI_TIMEOUT_SHORT
  • MAPI_TO
  • MAPI_UNICODE
  • MAPI_USE_DEFAULT
  • MAPI_W_APPROX_COUNT
  • MAPI_W_CANCEL_MESSAGE
  • MAPI_W_ERRORS_RETURNED
  • MAPI_W_NO_SERVICE
  • MAPI_W_PARTIAL_COMPLETION
  • MAPI_W_POSITION_CHANGED
  • MDB_NO_DIALOG
  • MDB_NO_MAIL
  • MDB_TEMPORARY
  • MDB_WRITE
  • MODRECIP_ADD
  • MODRECIP_MODIFY
  • MODRECIP_REMOVE
  • NO_ATTACHMENT
  • OLECLOSE_NOSAVE
  • OLECLOSE_PROMPTSAVE
  • OLECLOSE_SAVEIFDIRTY
  • OPEN_IF_EXISTS
  • RELOP_EQ
  • RELOP_GE
  • RELOP_GT
  • RELOP_LE
  • RELOP_LT
  • RELOP_NE
  • RELOP_RE
  • RES_AND
  • RES_BITMASK
  • RES_COMMENT
  • RES_COMPAREPROPS
  • RES_CONTENT
  • RES_EXIST
  • RES_NOT
  • RES_OR
  • RES_PROPERTY
  • RES_SIZE
  • RES_SUBRESTRICTION
  • RTF_SYNC_BODY_CHANGED
  • RTF_SYNC_RTF_CHANGED
  • SERVICE_UI_ALLOWED
  • SERVICE_UI_ALWAYS
  • SOURCETEXT_ATTR_COMMENT
  • SOURCETEXT_ATTR_FUNCTION_START
  • SOURCETEXT_ATTR_KEYWORD
  • SOURCETEXT_ATTR_NONSOURCE
  • SOURCETEXT_ATTR_NUMBER
  • SOURCETEXT_ATTR_OPERATOR
  • SOURCETEXT_ATTR_STRING
  • STATUS_DEFAULT_STORE
  • TABLE_SORT_ASCEND
  • TABLE_SORT_COMBINE
  • TABLE_SORT_DESCEND
  • TBL_ASYNC
  • TBL_BATCH
  • TEXT_DOC_ATTR_READONLY


OLECLOSE_NOSAVE

const axcontrol.OLECLOSE_NOSAVE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXCONTROL/SRC/AXCONTROL.CPP

The object should not be saved, even if it is dirty. This flag is typically used when an object is being deleted.


OLECLOSE_PROMPTSAVE

const axcontrol.OLECLOSE_PROMPTSAVE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXCONTROL/SRC/AXCONTROL.CPP

If the object is dirty, the PyIOleObject::Close implementation should display a dialog box to let the end user determine whether to save the object. However, if the object is in the running state but its user interface is invisible, the end user should not be prompted, and the close should be handled as if OLECLOSE_SAVEIFDIRTY had been specified.


OLECLOSE_SAVEIFDIRTY

const axcontrol.OLECLOSE_SAVEIFDIRTY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/COM/WIN32COMEXT/AXCONTROL/SRC/AXCONTROL.CPP

The object should be saved if it is dirty.


AB_NO_DIALOG

const mapi.AB_NO_DIALOG;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


ATTACH_BY_REF_ONLY

const mapi.ATTACH_BY_REF_ONLY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The PR_ATTACH_PATHNAME or PR_ATTACH_LONG_PATHNAME property contains a fully qualified path identifying the attachment.


ATTACH_BY_REF_RESOLVE

const mapi.ATTACH_BY_REF_RESOLVE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The PR_ATTACH_PATHNAME or PR_ATTACH_LONG_PATHNAME property contains a fully qualified path identifying the attachment.


ATTACH_BY_REFERENCE

const mapi.ATTACH_BY_REFERENCE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The PR_ATTACH_PATHNAME or PR_ATTACH_LONG_PATHNAME property contains a fully qualified path identifying the attachment to recipients with access to a common file server.


ATTACH_BY_VALUE

const mapi.ATTACH_BY_VALUE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The PR_ATTACH_DATA_BIN property contains the attachment data.


ATTACH_EMBEDDED_MSG

const mapi.ATTACH_EMBEDDED_MSG;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The PR_ATTACH_DATA_OBJ property contains an embedded object that supports the IMessage interface.


ATTACH_OLE

const mapi.ATTACH_OLE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The attachment is an embedded OLE object


BMR_EQZ

const mapi.BMR_EQZ;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Perform a bitwise AND operation of the mask in the ulMask member with the property represented by the ulPropTag member and test for being equal to zero.


BMR_NEZ

const mapi.BMR_NEZ;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Perform a bitwise AND operation of the mask in the ulMask member with the property represented by the ulPropTag member and test for being not equal to zero.


BOOKMARK_BEGINNING

const mapi.BOOKMARK_BEGINNING;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Starts the seek operation from the beginning of the table.


BOOKMARK_CURRENT

const mapi.BOOKMARK_CURRENT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Starts the seek operation from the row in the table where the cursor is located.


BOOKMARK_END

const mapi.BOOKMARK_END;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Starts the seek operation from the end of the table.


CONVENIENT_DEPTH

const mapi.CONVENIENT_DEPTH;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Fills the hierarchy table with containers from multiple levels. If CONVENIENT_DEPTH is not set, the hierarchy table contains only the container's immediate child containers.


DIR_BACKWARD

const mapi.DIR_BACKWARD;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Searches backward from the row identified by the bookmark.


FL_FULLSTRING

const mapi.FL_FULLSTRING;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

To match, the lpProp search string must be completely contained in the property identified by ulPropTag.


FL_IGNORECASE

const mapi.FL_IGNORECASE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison should be made without considering case.


FL_IGNORENONSPACE

const mapi.FL_IGNORENONSPACE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison should ignore Unicode-defined nonspacing characters such as diacritical marks.


FL_LOOSE

const mapi.FL_LOOSE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison should result in a match whenever possible, ignoring case and nonspacing characters


FL_PREFIX

const mapi.FL_PREFIX;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

To match, the lpProp search string must appear at the beginning of the property identified by ulPropTag. The two strings should be compared only up to the length of the search string indicated by lpProp.


FL_SUBSTRING

const mapi.FL_SUBSTRING;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

To match, the lpProp search string must be contained anywhere within the property identified by ulPropTag.


FOLDER_GENERIC

const mapi.FOLDER_GENERIC;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

A generic folder should be created.


FOLDER_SEARCH

const mapi.FOLDER_SEARCH;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

A search-results folder should be created.


FORCE_SAVE

const mapi.FORCE_SAVE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Changes should be written to the object, overriding any previous changes made to the object, and the object closed. Read/write access must have been set for the operation to succeed. The FORCE_SAVE flag is used after a previous call to SaveChanges returned MAPI_E_OBJECT_CHANGED.


KEEP_OPEN_READONLY

const mapi.KEEP_OPEN_READONLY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Changes should be committed and the object should be kept open for reading. No further changes will be made.


KEEP_OPEN_READWRITE

const mapi.KEEP_OPEN_READWRITE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Changes should be committed and the object should be kept open for read/write access. This flag is usually set when the object was initially opened for read/write access. Subsequent changes to the object are allowed.


MAPI_ALLOW_OTHERS

const mapi.MAPI_ALLOW_OTHERS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The shared session should be returned, allowing subsequent clients to acquire the session without providing any user credentials.


MAPI_ASSOCIATED

const mapi.MAPI_ASSOCIATED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The container's associated contents table should be returned rather than the standard contents table. This flag is used only with folders. The messages that are included in the associated contents table were created with the MAPI_ASSOCIATED flag set in the call to IMAPIFolder::CreateMessage. Clients typically use the associated contents table to retrieve forms and views.


MAPI_BCC

const mapi.MAPI_BCC;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The recipient is a blind carbon copy (BCC) recipient. Primary and carbon copy recipients are unaware of the existence of BCC recipients.


MAPI_BEST_ACCESS

const mapi.MAPI_BEST_ACCESS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_CC

const mapi.MAPI_CC;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The recipient is a carbon copy (CC) recipient, a recipient that receives a message in addition to the primary recipients.


MAPI_CREATE

const mapi.MAPI_CREATE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The object will be created if necessary.


MAPI_DEFAULT_SERVICES

const mapi.MAPI_DEFAULT_SERVICES;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

MAPI should populate the new profile with the message services that are included in the [Default Services] section of the MAPISVC.INF file.


MAPI_DEFERRED_ERRORS

const mapi.MAPI_DEFERRED_ERRORS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Allows a method to return successfully, possibly before the changes have been fully committed.


MAPI_DIALOG

const mapi.MAPI_DIALOG;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_ACCOUNT_DISABLED

const mapi.MAPI_E_ACCOUNT_DISABLED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_AMBIGUOUS_RECIP

const mapi.MAPI_E_AMBIGUOUS_RECIP;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_BAD_CHARWIDTH

const mapi.MAPI_E_BAD_CHARWIDTH;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_BAD_COLUMN

const mapi.MAPI_E_BAD_COLUMN;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_BAD_VALUE

const mapi.MAPI_E_BAD_VALUE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_BUSY

const mapi.MAPI_E_BUSY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_CALL_FAILED

const mapi.MAPI_E_CALL_FAILED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_CANCEL

const mapi.MAPI_E_CANCEL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_COLLISION

const mapi.MAPI_E_COLLISION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_COMPUTED

const mapi.MAPI_E_COMPUTED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_CORRUPT_DATA

const mapi.MAPI_E_CORRUPT_DATA;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_CORRUPT_STORE

const mapi.MAPI_E_CORRUPT_STORE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_DECLINE_COPY

const mapi.MAPI_E_DECLINE_COPY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_DISK_ERROR

const mapi.MAPI_E_DISK_ERROR;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_END_OF_SESSION

const mapi.MAPI_E_END_OF_SESSION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_EXTENDED_ERROR

const mapi.MAPI_E_EXTENDED_ERROR;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_FAILONEPROVIDER

const mapi.MAPI_E_FAILONEPROVIDER;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_FOLDER_CYCLE

const mapi.MAPI_E_FOLDER_CYCLE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_HAS_FOLDERS

const mapi.MAPI_E_HAS_FOLDERS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_HAS_MESSAGES

const mapi.MAPI_E_HAS_MESSAGES;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INTERFACE_NOT_SUPPORTED

const mapi.MAPI_E_INTERFACE_NOT_SUPPORTED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INVALID_ACCESS_TIME

const mapi.MAPI_E_INVALID_ACCESS_TIME;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INVALID_BOOKMARK

const mapi.MAPI_E_INVALID_BOOKMARK;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INVALID_ENTRYID

const mapi.MAPI_E_INVALID_ENTRYID;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INVALID_OBJECT

const mapi.MAPI_E_INVALID_OBJECT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INVALID_PARAMETER

const mapi.MAPI_E_INVALID_PARAMETER;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INVALID_TYPE

const mapi.MAPI_E_INVALID_TYPE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_INVALID_WORKSTATION_ACCOUNT

const mapi.MAPI_E_INVALID_WORKSTATION_ACCOUNT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_LOGON_FAILED

const mapi.MAPI_E_LOGON_FAILED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_MISSING_REQUIRED_COLUMN

const mapi.MAPI_E_MISSING_REQUIRED_COLUMN;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NETWORK_ERROR

const mapi.MAPI_E_NETWORK_ERROR;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NO_ACCESS

const mapi.MAPI_E_NO_ACCESS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NO_RECIPIENTS

const mapi.MAPI_E_NO_RECIPIENTS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NO_SUPPORT

const mapi.MAPI_E_NO_SUPPORT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NO_SUPPRESS

const mapi.MAPI_E_NO_SUPPRESS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NON_STANDARD

const mapi.MAPI_E_NON_STANDARD;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NOT_ENOUGH_DISK

const mapi.MAPI_E_NOT_ENOUGH_DISK;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NOT_ENOUGH_MEMORY

const mapi.MAPI_E_NOT_ENOUGH_MEMORY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NOT_ENOUGH_RESOURCES

const mapi.MAPI_E_NOT_ENOUGH_RESOURCES;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NOT_FOUND

const mapi.MAPI_E_NOT_FOUND;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NOT_IN_QUEUE

const mapi.MAPI_E_NOT_IN_QUEUE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NOT_INITIALIZED

const mapi.MAPI_E_NOT_INITIALIZED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_NOT_ME

const mapi.MAPI_E_NOT_ME;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_OBJECT_CHANGED

const mapi.MAPI_E_OBJECT_CHANGED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_OBJECT_DELETED

const mapi.MAPI_E_OBJECT_DELETED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_PASSWORD_CHANGE_REQUIRED

const mapi.MAPI_E_PASSWORD_CHANGE_REQUIRED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_PASSWORD_EXPIRED

const mapi.MAPI_E_PASSWORD_EXPIRED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_SESSION_LIMIT

const mapi.MAPI_E_SESSION_LIMIT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_STRING_TOO_LONG

const mapi.MAPI_E_STRING_TOO_LONG;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_SUBMITTED

const mapi.MAPI_E_SUBMITTED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_TABLE_EMPTY

const mapi.MAPI_E_TABLE_EMPTY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_TABLE_TOO_BIG

const mapi.MAPI_E_TABLE_TOO_BIG;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_TIMEOUT

const mapi.MAPI_E_TIMEOUT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_TOO_BIG

const mapi.MAPI_E_TOO_BIG;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_TOO_COMPLEX

const mapi.MAPI_E_TOO_COMPLEX;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_TYPE_NO_SUPPORT

const mapi.MAPI_E_TYPE_NO_SUPPORT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNABLE_TO_ABORT

const mapi.MAPI_E_UNABLE_TO_ABORT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNABLE_TO_COMPLETE

const mapi.MAPI_E_UNABLE_TO_COMPLETE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNCONFIGURED

const mapi.MAPI_E_UNCONFIGURED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNEXPECTED_ID

const mapi.MAPI_E_UNEXPECTED_ID;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNEXPECTED_TYPE

const mapi.MAPI_E_UNEXPECTED_TYPE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNKNOWN_CPID

const mapi.MAPI_E_UNKNOWN_CPID;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNKNOWN_ENTRYID

const mapi.MAPI_E_UNKNOWN_ENTRYID;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNKNOWN_FLAGS

const mapi.MAPI_E_UNKNOWN_FLAGS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_UNKNOWN_LCID

const mapi.MAPI_E_UNKNOWN_LCID;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_USER_CANCEL

const mapi.MAPI_E_USER_CANCEL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_VERSION

const mapi.MAPI_E_VERSION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_E_WAIT

const mapi.MAPI_E_WAIT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_EXPLICIT_PROFILE

const mapi.MAPI_EXPLICIT_PROFILE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The default profile should not be used, and the user should be required to supply a profile.


MAPI_EXTENDED

const mapi.MAPI_EXTENDED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Log on with extended capabilities. This flag should always be set. The older MAPILogon function is no longer available.


MAPI_FORCE_DOWNLOAD

const mapi.MAPI_FORCE_DOWNLOAD;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

An attempt should be made to download all of the user's messages before returning. If the MAPI_FORCE_DOWNLOAD flag is not set, messages can be downloaded in the background after the call to MAPILogonEx returns.


MAPI_INIT_VERSION

const mapi.MAPI_INIT_VERSION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_LOGON_UI

const mapi.MAPI_LOGON_UI;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

A dialog box should be displayed to prompt the user for logon information if required. When the MAPI_LOGON_UI flag is not set, the calling client does not display a logon dialog box and returns an error value if the user is not logged on. MAPI_LOGON_UI and MAPI_PASSWORD_UI are mutually exclusive.


MAPI_MODIFY

const mapi.MAPI_MODIFY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_MULTITHREAD_NOTIFICATIONS

const mapi.MAPI_MULTITHREAD_NOTIFICATIONS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

MAPI should generate notifications using a thread dedicated to notification handling rather than the first thread used to call mapi::MAPIInitialize.


MAPI_NEW_SESSION

const mapi.MAPI_NEW_SESSION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

An attempt should be made to create a new MAPI session rather than acquire the shared session. If the MAPI_NEW_SESSION flag is not set, MAPILogonEx uses an existing shared session even if the lpszprofileName parameter is not NULL.


MAPI_NO_IDS

const mapi.MAPI_NO_IDS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Requests that only names stored as Unicode strings be returned.


MAPI_NO_MAIL

const mapi.MAPI_NO_MAIL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

MAPI should not inform the MAPI spooler of the session's existence. The result is that no messages can be sent or received within the session except through a tightly coupled store and transport pair. A calling client sets this flag if it is acting as an agent, if configuration work must be done, or if the client is browsing the available message stores.


MAPI_NO_STRINGS

const mapi.MAPI_NO_STRINGS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Requests that only names stored as numeric identifiers be returned.


MAPI_NT_SERVICE

const mapi.MAPI_NT_SERVICE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The caller is running as a Windows NT service. Callers that are not running as a Windows NT service should not set this flag; callers that are running as a service must set this flag.


MAPI_P1

const mapi.MAPI_P1;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The recipient did not successfully receive the message on the previous attempt. This is a resend of an earlier transmission.


MAPI_PASSWORD_UI

const mapi.MAPI_PASSWORD_UI;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

A dialog box should be displayed to prompt the user for the profile password. MAPI_PASSWORD_UI cannot be set if MAPI_LOGON_UI is set because the calling client can only present one of the two dialog boxes. This dialog box does not allow the profile name to be changed; the lpszProfileName parameter must be non-NULL.


MAPI_SERVICE_UI_ALWAYS

const mapi.MAPI_SERVICE_UI_ALWAYS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

MAPILogonEx should display a configuration dialog box for each message service in the profile. The dialog boxes are displayed after the profile has been chosen but before any message service is logged on. The MAPI common dialog box for logon also contains a check box that requests the same operation.


MAPI_SUBMITTED

const mapi.MAPI_SUBMITTED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The recipient has already received the message and does not need to receive it again. This is a resend of an earlier transmission. This flag is set in conjunction with the MAPI_TO, MAPI_CC, and MAPI_BCC values.


MAPI_TIMEOUT_SHORT

const mapi.MAPI_TIMEOUT_SHORT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The logon should fail if blocked for more than a few seconds.


MAPI_TO

const mapi.MAPI_TO;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The recipient is a primary (To) recipient. Clients are required to handle primary recipients; all other types are optional.


MAPI_UNICODE

const mapi.MAPI_UNICODE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The passed-in strings are in Unicode format. If the MAPI_UNICODE flag is not set, the strings are in ANSI format.


MAPI_USE_DEFAULT

const mapi.MAPI_USE_DEFAULT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The messaging subsystem should substitute the profile name of the default profile for the lpszProfileName parameter. The MAPI_EXPLICIT_PROFILE flag is ignored unless lpszProfileName is NULL or empty.


MAPI_W_APPROX_COUNT

const mapi.MAPI_W_APPROX_COUNT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_W_CANCEL_MESSAGE

const mapi.MAPI_W_CANCEL_MESSAGE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_W_ERRORS_RETURNED

const mapi.MAPI_W_ERRORS_RETURNED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_W_NO_SERVICE

const mapi.MAPI_W_NO_SERVICE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_W_PARTIAL_COMPLETION

const mapi.MAPI_W_PARTIAL_COMPLETION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MAPI_W_POSITION_CHANGED

const mapi.MAPI_W_POSITION_CHANGED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


MDB_NO_DIALOG

const mapi.MDB_NO_DIALOG;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Prevents the display of logon dialog boxes. If this flag is set, and OpenMsgStore does not have enough configuration information to open the message store without the user's help, it returns MAPI_E_LOGON_FAILED. If this flag is not set, the message store provider can prompt the user to correct a name or password, to insert a disk, or to perform other actions necessary to establish connection to the message store.


MDB_NO_MAIL

const mapi.MDB_NO_MAIL;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The message store should not be used for sending or receiving mail. When this flag is set, MAPI does not notify the MAPI spooler that this message store is being opened.


MDB_TEMPORARY

const mapi.MDB_TEMPORARY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Instructs MAPI that the message store is not permanent and should not be added to the message store table. This flag is used to log on the message store so that information can be retrieved programmatically from the profile section.


MDB_WRITE

const mapi.MDB_WRITE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Requests read/write access to the message store.


MODRECIP_ADD

const mapi.MODRECIP_ADD;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The recipients should be added to the recipient list.


MODRECIP_MODIFY

const mapi.MODRECIP_MODIFY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The recipients should replace existing recipients. All of the existing properties are replaced by those in the corresponding ADRENTRY structure.


MODRECIP_REMOVE

const mapi.MODRECIP_REMOVE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Existing recipients should be removed from the recipient list using as an index the PR_ROWID property included in the property value array of each recipient entry in the mods parameter.


NO_ATTACHMENT

const mapi.NO_ATTACHMENT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The attachment has just been created.


OPEN_IF_EXISTS

const mapi.OPEN_IF_EXISTS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Does not fail if the specified folder already exists.


RELOP_EQ

const mapi.RELOP_EQ;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison is made based on equal values.


RELOP_GE

const mapi.RELOP_GE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison is made based on a greater or equal first value.


RELOP_GT

const mapi.RELOP_GT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison is made based on a greater first value.


RELOP_LE

const mapi.RELOP_LE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison is made based on a lesser or equal first value.


RELOP_LT

const mapi.RELOP_LT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison is made based on a lesser first value.


RELOP_NE

const mapi.RELOP_NE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison is made based on unequal values.


RELOP_RE

const mapi.RELOP_RE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The comparison is made based on LIKE (regular expression) values.


RES_AND

const mapi.RES_AND;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes an AND restriction, which applies a bitwise AND operation to a restriction.


RES_BITMASK

const mapi.RES_BITMASK;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a bitmask restriction, which applies a bitmask to a property value.


RES_COMMENT

const mapi.RES_COMMENT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a comment restriction, which associates a comment with a restriction.


RES_COMPAREPROPS

const mapi.RES_COMPAREPROPS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a compare properties restriction, which compares two property values.


RES_CONTENT

const mapi.RES_CONTENT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a content restriction, which searches a property value for specific content.


RES_EXIST

const mapi.RES_EXIST;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes an exist restriction, which determines if a property is supported.


RES_NOT

const mapi.RES_NOT;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a NOT restriction, which applies a logical NOT operation to a restriction.


RES_OR

const mapi.RES_OR;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes an OR restriction, which applies a logical OR operation to a restriction.


RES_PROPERTY

const mapi.RES_PROPERTY;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a property restriction, which determines if a property value matches a particular value.


RES_SIZE

const mapi.RES_SIZE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a size restriction, which determines if a property value is a particular size.


RES_SUBRESTRICTION

const mapi.RES_SUBRESTRICTION;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

SRestriction structure describes a subobject restriction, which applies a restriction to a message's attachments or recipients.


RTF_SYNC_BODY_CHANGED

const mapi.RTF_SYNC_BODY_CHANGED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The plain text version of the message has changed.


RTF_SYNC_RTF_CHANGED

const mapi.RTF_SYNC_RTF_CHANGED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The RTF version of the message has changed.


SERVICE_UI_ALLOWED

const mapi.SERVICE_UI_ALLOWED;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The message service should display its configuration property sheet only if the service is not completely configured.


SERVICE_UI_ALWAYS

const mapi.SERVICE_UI_ALWAYS;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The message service must always display its configuration property sheet. If SERVICE_UI_ALWAYS is not set, a configuration property sheet can still be displayed if SERVICE_UI_ALLOWED is set and valid configuration information is not available from the property value array in the lpProps parameter. Either SERVICE_UI_ALLOWED or SERVICE_UI_ALWAYS must be set for a property sheet to be displayed.


STATUS_DEFAULT_STORE

const mapi.STATUS_DEFAULT_STORE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D


TABLE_SORT_ASCEND

const mapi.TABLE_SORT_ASCEND;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The table should be sorted in ascending order.


TABLE_SORT_COMBINE

const mapi.TABLE_SORT_COMBINE;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The sort operation should create a category that combines the property identified as the sort key column in the ulPropTag member with the sort key column specified in the previous SSortOrder structure.
TABLE_SORT_COMBINE can only be used when the SSortOrder structure is being used as an entry in an SSortOrderSet structure to specify multiple sort orders for a categorized sort. TABLE_SORT_COMBINE cannot be used in the first SSortOrder structure in an SSortOrderSet structure.


TABLE_SORT_DESCEND

const mapi.TABLE_SORT_DESCEND;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

The table should be sorted in descending order.


TBL_ASYNC

const mapi.TBL_ASYNC;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Starts the operation asynchronously and returns before the operation completes.


TBL_BATCH

const mapi.TBL_BATCH;

Defined in: C:/BUILD/DEPOT/MAIN/APPS/ACTIVEPYTHON-2_1/SRC/PYWIN32/BUILD/TEMP/HELP/MAPI.D

Defers evaluation of the filter until the data in the table is required.


Objects and Module Methods

Object and Module Methods

  • axcontrol.OleCreate
  • exchange.HrCreateDirEntryIdEx
  • exchange.HrCreateProfileName
  • exchange.HrFindExchangeGlobalAddressList
  • exchange.HrGetExchangeStatus
  • exchange.HrGetMailboxDN
  • exchange.HrGetServerDN
  • exchange.HrMailboxLogoff
  • exchange.HrMailboxLogon
  • exchange.HrMAPIFindDefaultMsgStore
  • exchange.HrMAPIFindFolder
  • exchange.HrMAPIFindFolderEx
  • exchange.HrMAPIFindInbox
  • exchange.HrMAPIFindIPMSubtree
  • exchange.HrMAPIFindStore
  • exchange.HrMAPIFindSubfolderEx
  • exchange.HrMAPIOpenFolderEx
  • exchange.HrMAPISetPropBoolean
  • exchange.HrMAPISetPropLong
  • exchange.HrOpenExchangePrivateStore
  • exchange.HrOpenExchangePublicFolders
  • exchange.HrOpenExchangePublicStore
  • exchange.HrOpenSessionObject
  • exchange.HrOpenSiteContainer
  • exchange.HrOpenSiteContainerAddressing
  • exchdapi.HrAdminProgramExists
  • exchdapi.HrCreateGatewayProfile
  • exchdapi.HrCreateMailboxAgentProfile
  • exchdapi.HrEnumContainers
  • exchdapi.HrEnumOrganizations
  • exchdapi.HrEnumSiteAdmins
  • exchdapi.HrEnumSites
  • exchdapi.HrGetServiceAccountName
  • exchdapi.HrInstallMailboxAgent
  • exchdapi.HrInstallService
  • exchdapi.HrMailboxAgentExists
  • exchdapi.HrRemoveMailboxAgent
  • exchdapi.HrRemoveProfile
  • IADsContainer.get_Count
  • IADsContainer.get_Filter
  • IADsContainer.get_Hints
  • IADsContainer.put_Filter
  • IADsContainer.put_Hints
  • IADsUser.get_AccountDisabled
  • IADsUser.get_AccountExpirationDate
  • IADsUser.get_BadLoginAddress
  • IADsUser.get_BadLoginCount
  • IADsUser.get_Department
  • IADsUser.get_Description
  • IADsUser.get_Division
  • IADsUser.get_EmailAddress
  • IADsUser.get_EmployeeID
  • IADsUser.get_FirstName
  • IADsUser.get_FullName
  • IADsUser.get_HomeDirectory
  • IADsUser.get_HomePage
  • IADsUser.get_LoginScript
  • IADsUser.put_AccountDisabled
  • IADsUser.put_AccountExpirationDate
  • IADsUser.put_Department
  • IADsUser.put_Description
  • IADsUser.put_Division
  • IADsUser.put_EmailAddress
  • IADsUser.put_EmployeeID
  • IADsUser.put_FirstName
  • IADsUser.put_FullName
  • IADsUser.put_HomeDirectory
  • IADsUser.put_HomePage
  • IADsUser.put_LoginScript
  • IDirectoryObject.GetObjectAttributes
  • IDirectoryObject.GetObjectInformation
  • IDirectoryObject.SetObjectAttributes
  • mapi.BinFromHex
  • mapi.CloseIMsgSession
  • mapi.HexFromBin
  • mapi.HrQueryAllRows
  • mapi.MAPIAdminProfiles
  • mapi.MAPIInitialize
  • mapi.MAPILogonEx
  • mapi.MAPIUninitialize
  • mapi.OpenIMsgOnIStg
  • mapi.OpenIMsgSession
  • mapi.RTFSync
  • PyIActiveScriptDebug.EnumCodeContextsOfPosition
  • PyIActiveScriptDebug.GetScriptletTextAttributes
  • PyIActiveScriptDebug.GetScriptTextAttributes
  • PyIActiveScriptError.GetExceptionInfo
  • PyIActiveScriptError.GetSourceLineText
  • PyIActiveScriptError.GetSourcePosition
  • PyIActiveScriptErrorDebug.GetDocumentContext
  • PyIActiveScriptErrorDebug.GetStackFrame
  • PyIActiveScriptParseProcedure.ParseProcedureText
  • PyIActiveScriptSite.GetDocVersionString
  • PyIActiveScriptSite.GetItemInfo
  • PyIActiveScriptSite.GetLCID
  • PyIActiveScriptSite.OnEnterScript
  • PyIActiveScriptSite.OnLeaveScript
  • PyIActiveScriptSite.OnScriptError
  • PyIActiveScriptSite.OnScriptTerminate
  • PyIActiveScriptSite.OnStateChange
  • PyIActiveScriptSiteDebug.GetApplication
  • PyIActiveScriptSiteDebug.GetDocumentContextFromPosition
  • PyIActiveScriptSiteDebug.GetRootApplicationNode
  • PyIActiveScriptSiteDebug.OnScriptErrorDebug
  • PyIAddrBook.CompareEntryIDs
  • PyIAddrBook.OpenEntry
  • PyIAddrBook.ResolveName
  • PyIApplicationDebugger.CreateInstanceAtDebugger
  • PyIApplicationDebugger.onClose
  • PyIApplicationDebugger.onDebuggerEvent
  • PyIApplicationDebugger.onDebugOutput
  • PyIApplicationDebugger.onHandleBreakPoint
  • PyIApplicationDebugger.QueryAlive
  • PyIBindCtx.GetRunningObjectTable
  • PyICatInformation.EnumCategories
  • PyICatInformation.EnumClassesOfCategories
  • PyICatInformation.GetCategoryDesc
  • PyICatRegister.RegisterCategories
  • PyICatRegister.RegisterClassImplCategories
  • PyICatRegister.RegisterClassReqCategories
  • PyICatRegister.UnregisterCategories
  • PyICatRegister.UnRegisterClassImplCategories
  • PyICatRegister.UnRegisterClassReqCategories
  • PyIClassFactory.CreateInstance
  • PyIClassFactory.LockServer
  • PyIConnectionPoint.Advise
  • PyIConnectionPoint.EnumConnections
  • PyIConnectionPoint.GetConnectionInterface
  • PyIConnectionPoint.GetConnectionPointContainer
  • PyIConnectionPoint.Unadvise
  • PyIConnectionPointContainer.EnumConnectionPoints
  • PyIConnectionPointContainer.FindConnectionPoint
  • PyICreateTypeInfo.AddFuncDesc
  • PyICreateTypeInfo.AddImplType
  • PyICreateTypeInfo.AddRefTypeInfo
  • PyICreateTypeInfo.AddVarDesc
  • PyICreateTypeInfo.DefineFuncAsDllEntry
  • PyICreateTypeInfo.LayOut
  • PyICreateTypeInfo.SetAlignment
  • PyICreateTypeInfo.SetDocString
  • PyICreateTypeInfo.SetFuncAndParamNames
  • PyICreateTypeInfo.SetFuncDocString
  • PyICreateTypeInfo.SetFuncHelpContext
  • PyICreateTypeInfo.SetGuid
  • PyICreateTypeInfo.SetHelpContext
  • PyICreateTypeInfo.SetImplTypeFlags
  • PyICreateTypeInfo.SetMops
  • PyICreateTypeInfo.SetSchema
  • PyICreateTypeInfo.SetTypeDescAlias
  • PyICreateTypeInfo.SetTypeFlags
  • PyICreateTypeInfo.SetVarDocString
  • PyICreateTypeInfo.SetVarHelpContext
  • PyICreateTypeInfo.SetVarName
  • PyICreateTypeInfo.SetVersion
  • PyICreateTypeLib.CreateTypeInfo
  • PyICreateTypeLib.SaveAllChanges
  • PyICreateTypeLib.SetDocString
  • PyICreateTypeLib.SetGuid
  • PyICreateTypeLib.SetHelpContext
  • PyICreateTypeLib.SetHelpFileName
  • PyICreateTypeLib.SetLcid
  • PyICreateTypeLib.SetLibFlags
  • PyICreateTypeLib.SetName
  • PyICreateTypeLib.SetVersion
  • PyIDebugApplication.AddGlobalExpressionContextProvider
  • PyIDebugApplication.AddStackFrameSniffer
  • PyIDebugApplication.Close
  • PyIDebugApplication.CreateApplicationNode
  • PyIDebugApplication.CreateAsyncDebugOperation
  • PyIDebugApplication.DebugOutput
  • PyIDebugApplication.FCanJitDebug
  • PyIDebugApplication.FireDebuggerEvent
  • PyIDebugApplication.FIsAutoJitDebugEnabled
  • PyIDebugApplication.GetBreakFlags
  • PyIDebugApplication.GetCurrentThread
  • PyIDebugApplication.HandleBreakPoint
  • PyIDebugApplication.HandleRuntimeError
  • PyIDebugApplication.QueryCurrentThreadIsDebuggerThread
  • PyIDebugApplication.RemoveGlobalExpressionContextProvider
  • PyIDebugApplication.RemoveStackFrameSniffer
  • PyIDebugApplication.SetName
  • PyIDebugApplication.StartDebugSession
  • PyIDebugApplication.StepOutComplete
  • PyIDebugApplication.SynchronousCallInDebuggerThread
  • PyIDebugApplicationNode.Attach
  • PyIDebugApplicationNode.Close
  • PyIDebugApplicationNode.Detach
  • PyIDebugApplicationNode.EnumChildren
  • PyIDebugApplicationNode.GetParent
  • PyIDebugApplicationNode.SetDocumentProvider
  • PyIDebugApplicationNodeEvents.onAddChild
  • PyIDebugApplicationNodeEvents.onAttach
  • PyIDebugApplicationNodeEvents.onDetach
  • PyIDebugApplicationNodeEvents.onRemoveChild
  • PyIDebugApplicationThread.QueryIsCurrentThread
  • PyIDebugApplicationThread.QueryIsDebuggerThread
  • PyIDebugApplicationThread.SetDescription
  • PyIDebugApplicationThread.SetStateString
  • PyIDebugApplicationThread.SynchronousCallIntoThread
  • PyIDebugCodeContext.GetDocumentContext
  • PyIDebugCodeContext.SetBreakPoint
  • PyIDebugDocumentContext.EnumCodeContexts
  • PyIDebugDocumentContext.GetDocument
  • PyIDebugDocumentHelper.AddDBCSText
  • PyIDebugDocumentHelper.AddDeferredText
  • PyIDebugDocumentHelper.AddUnicodeText
  • PyIDebugDocumentHelper.Attach
  • PyIDebugDocumentHelper.BringDocumentContextToTop
  • PyIDebugDocumentHelper.BringDocumentToTop
  • PyIDebugDocumentHelper.CreateDebugDocumentContext
  • PyIDebugDocumentHelper.DefineScriptBlock
  • PyIDebugDocumentHelper.Detach
  • PyIDebugDocumentHelper.GetDebugApplicationNode
  • PyIDebugDocumentHelper.GetScriptBlockInfo
  • PyIDebugDocumentHelper.Init
  • PyIDebugDocumentHelper.SetDebugDocumentHost
  • PyIDebugDocumentHelper.SetDefaultTextAttr
  • PyIDebugDocumentHelper.SetDocumentAttr
  • PyIDebugDocumentHelper.SetLongName
  • PyIDebugDocumentHelper.SetShortName
  • PyIDebugDocumentHelper.SetTextAttributes
  • PyIDebugDocumentHost.GetDeferredText
  • PyIDebugDocumentHost.GetFileName
  • PyIDebugDocumentHost.GetPathName
  • PyIDebugDocumentHost.GetScriptTextAttributes
  • PyIDebugDocumentHost.NotifyChanged
  • PyIDebugDocumentHost.OnCreateDocumentContext
  • PyIDebugDocumentInfo.GetDocumentClassId
  • PyIDebugDocumentInfo.GetName
  • PyIDebugDocumentProvider.GetDocument
  • PyIDebugDocumentText.GetContextOfPosition
  • PyIDebugDocumentText.GetDocumentAttributes
  • PyIDebugDocumentText.GetLineOfPosition
  • PyIDebugDocumentText.GetPositionOfContext
  • PyIDebugDocumentText.GetPositionOfLine
  • PyIDebugDocumentText.GetSize
  • PyIDebugDocumentText.GetText
  • PyIDebugDocumentTextAuthor.InsertText
  • PyIDebugDocumentTextAuthor.RemoveText
  • PyIDebugDocumentTextAuthor.ReplaceText
  • PyIDebugDocumentTextEvents.onDestroy
  • PyIDebugDocumentTextEvents.onInsertText
  • PyIDebugDocumentTextEvents.onRemoveText
  • PyIDebugDocumentTextEvents.onReplaceText
  • PyIDebugDocumentTextEvents.onUpdateDocumentAttributes
  • PyIDebugDocumentTextEvents.onUpdateTextAttributes
  • PyIDebugDocumentTextExternalAuthor.GetFileName
  • PyIDebugDocumentTextExternalAuthor.GetPathName
  • PyIDebugDocumentTextExternalAuthor.NotifyChanged
  • PyIDebugExpression.Abort
  • PyIDebugExpression.GetResultAsDebugProperties
  • PyIDebugExpression.GetResultAsString
  • PyIDebugExpression.QueryIsComplete
  • PyIDebugExpression.Start
  • PyIDebugExpressionCallBack.onComplete
  • PyIDebugExpressionContext.GetLanguageInfo
  • PyIDebugExpressionContext.ParseLanguageText
  • PyIDebugProperty.EnumMembers
  • PyIDebugProperty.GetExtendedInfo
  • PyIDebugProperty.GetParent
  • PyIDebugProperty.GetPropertyInfo
  • PyIDebugProperty.SetValueAsString
  • PyIDebugSessionProvider.StartDebugSession
  • PyIDebugStackFrame.GetCodeContext
  • PyIDebugStackFrame.GetDebugProperty
  • PyIDebugStackFrame.GetDescriptionString
  • PyIDebugStackFrame.GetLanguageString
  • PyIDebugStackFrame.GetThread
  • PyIDebugStackFrameSniffer.EnumStackFrames
  • PyIDebugStackFrameSnifferEx.EnumStackFramesEx
  • PyIDebugSyncOperation.Execute
  • PyIDebugSyncOperation.GetTargetThread
  • PyIDebugSyncOperation.InProgressAbort
  • PyIDispatch.GetIDsOfNames
  • PyIDispatch.GetTypeInfo
  • PyIDispatch.GetTypeInfoCount
  • PyIDispatch.Invoke
  • PyIDispatch.InvokeTypes
  • PyIEnumCATEGORYINFO.Clone
  • PyIEnumCATEGORYINFO.Next
  • PyIEnumCATEGORYINFO.Reset
  • PyIEnumCATEGORYINFO.Skip
  • PyIEnumConnectionPoints.Clone
  • PyIEnumConnectionPoints.Next
  • PyIEnumConnectionPoints.Reset
  • PyIEnumConnectionPoints.Skip
  • PyIEnumConnections.Clone
  • PyIEnumConnections.Next
  • PyIEnumConnections.Reset
  • PyIEnumConnections.Skip
  • PyIEnumDebugApplicationNodes.Clone
  • PyIEnumDebugApplicationNodes.Next
  • PyIEnumDebugApplicationNodes.Reset
  • PyIEnumDebugApplicationNodes.Skip
  • PyIEnumDebugCodeContexts.Clone
  • PyIEnumDebugCodeContexts.Next
  • PyIEnumDebugCodeContexts.Reset
  • PyIEnumDebugCodeContexts.Skip
  • PyIEnumDebugExpressionContexts.Clone
  • PyIEnumDebugExpressionContexts.Next
  • PyIEnumDebugExpressionContexts.Reset
  • PyIEnumDebugExpressionContexts.Skip
  • PyIEnumDebugPropertyInfo.Clone
  • PyIEnumDebugPropertyInfo.GetCount
  • PyIEnumDebugPropertyInfo.Next
  • PyIEnumDebugPropertyInfo.Reset
  • PyIEnumDebugPropertyInfo.Skip
  • PyIEnumDebugStackFrames.Clone
  • PyIEnumDebugStackFrames.Next
  • PyIEnumDebugStackFrames.Reset
  • PyIEnumDebugStackFrames.Skip
  • PyIEnumGUID.Clone
  • PyIEnumGUID.Next
  • PyIEnumGUID.Reset
  • PyIEnumGUID.Skip
  • PyIEnumMoniker.Clone
  • PyIEnumMoniker.Next
  • PyIEnumMoniker.Reset
  • PyIEnumMoniker.Skip
  • PyIEnumRemoteDebugApplications.Clone
  • PyIEnumRemoteDebugApplications.Next
  • PyIEnumRemoteDebugApplications.Reset
  • PyIEnumRemoteDebugApplications.Skip
  • PyIEnumRemoteDebugApplicationThreads.Clone
  • PyIEnumRemoteDebugApplicationThreads.Next
  • PyIEnumRemoteDebugApplicationThreads.Reset
  • PyIEnumRemoteDebugApplicationThreads.Skip
  • PyIEnumSTATPROPSTG.Clone
  • PyIEnumSTATPROPSTG.Next
  • PyIEnumSTATPROPSTG.Reset
  • PyIEnumSTATPROPSTG.Skip
  • PyIEnumSTATSTG.Clone
  • PyIEnumSTATSTG.Next
  • PyIEnumSTATSTG.Reset
  • PyIEnumSTATSTG.Skip
  • PyIErrorLog.AddError
  • PyIExternalConnection.AddConnection
  • PyIExternalConnection.ReleaseConnection
  • PyIInternetBindInfo.GetBindInfo
  • PyIInternetBindInfo.GetBindString
  • PyIInternetPriority.GetPriority
  • PyIInternetPriority.SetPriority
  • PyIInternetProtocol.LockRequest
  • PyIInternetProtocol.Read
  • PyIInternetProtocol.Seek
  • PyIInternetProtocol.UnlockRequest
  • PyIInternetProtocolInfo.CombineUrl
  • PyIInternetProtocolInfo.CompareUrl
  • PyIInternetProtocolInfo.ParseUrl
  • PyIInternetProtocolInfo.QueryInfo
  • PyIInternetProtocolRoot.Abort
  • PyIInternetProtocolRoot.Continue
  • PyIInternetProtocolRoot.Resume
  • PyIInternetProtocolRoot.Start
  • PyIInternetProtocolRoot.Suspend
  • PyIInternetProtocolRoot.Terminate
  • PyIInternetProtocolSink.ReportData
  • PyIInternetProtocolSink.ReportProgress
  • PyIInternetProtocolSink.ReportResult
  • PyIInternetProtocolSink.Switch
  • PyILockBytes.Flush
  • PyILockBytes.LockRegion
  • PyILockBytes.ReadAt
  • PyILockBytes.SetSize
  • PyILockBytes.Stat
  • PyILockBytes.UnlockRegion
  • PyILockBytes.WriteAt
  • PyIMachineDebugManager.AddApplication
  • PyIMachineDebugManager.EnumApplications
  • PyIMachineDebugManager.RemoveApplication
  • PyIMachineDebugManagerEvents.onAddApplication
  • PyIMachineDebugManagerEvents.onRemoveApplication
  • PyIMAPIContainer.GetContentsTable
  • PyIMAPIContainer.GetHierarchyTable
  • PyIMAPIContainer.OpenEntry
  • PyIMAPIFolder.CopyMessages
  • PyIMAPIFolder.CreateFolder
  • PyIMAPIFolder.CreateMessage
  • PyIMAPIFolder.DeleteMessages
  • PyIMAPIFolder.EmptyFolder
  • PyIMAPIFolder.GetLastError
  • PyIMAPIProp.CopyProps
  • PyIMAPIProp.CopyTo
  • PyIMAPIProp.DeleteProps
  • PyIMAPIProp.GetIDsFromNames
  • PyIMAPIProp.GetLastError
  • PyIMAPIProp.GetNamesFromIDs
  • PyIMAPIProp.GetPropList
  • PyIMAPIProp.GetProps
  • PyIMAPIProp.OpenProperty
  • PyIMAPIProp.SaveChanges
  • PyIMAPIProp.SetProps
  • PyIMAPISession.CompareEntryIDs
  • PyIMAPISession.GetMsgStoresTable
  • PyIMAPISession.Logoff
  • PyIMAPISession.OpenAddressBook
  • PyIMAPISession.OpenEntry
  • PyIMAPISession.OpenMsgStore
  • PyIMAPISession.OpenProfileSection
  • PyIMAPISession.QueryIdentity
  • PyIMAPITable.Abort
  • PyIMAPITable.Advise
  • PyIMAPITable.CreateBookmark
  • PyIMAPITable.FindRow
  • PyIMAPITable.FreeBookmark
  • PyIMAPITable.GetRowCount
  • PyIMAPITable.GetStatus
  • PyIMAPITable.QueryColumns
  • PyIMAPITable.QueryPosition
  • PyIMAPITable.QueryRows
  • PyIMAPITable.Restrict
  • PyIMAPITable.SeekRow
  • PyIMAPITable.SeekRowApprox
  • PyIMAPITable.SetColumns
  • PyIMAPITable.SortTable
  • PyIMessage.CreateAttach
  • PyIMessage.DeleteAttach
  • PyIMessage.GetAttachmentTable
  • PyIMessage.GetRecipientTable
  • PyIMessage.ModifyRecipients
  • PyIMessage.OpenAttach
  • PyIMessage.SetReadFlag
  • PyIMessage.SubmitMessage
  • PyIMoniker.BindToObject
  • PyIMoniker.BindToStorage
  • PyIMoniker.ComposeWith
  • PyIMoniker.Enum
  • PyIMoniker.GetDisplayName
  • PyIMoniker.Hash
  • PyIMoniker.IsEqual
  • PyIMoniker.IsSystemMoniker
  • PyIMsgServiceAdmin.ConfigureMsgService
  • PyIMsgServiceAdmin.CreateMsgService
  • PyIMsgServiceAdmin.DeleteMsgService
  • PyIMsgServiceAdmin.GetMsgServiceTable
  • PyIMsgServiceAdmin.GetProviderTable
  • PyIMsgServiceAdmin.OpenProfileSection
  • PyIMsgServiceAdmin.RenameMsgService
  • PyIMsgStore.CompareEntryIDs
  • PyIMsgStore.GetLastError
  • PyIMsgStore.OpenEntry
  • PyIOleClientSite.GetContainer
  • PyIOleClientSite.GetMoniker
  • PyIOleClientSite.OnShowWindow
  • PyIOleClientSite.RequestNewObjectLayout
  • PyIOleClientSite.SaveObject
  • PyIOleClientSite.ShowObject
  • PyIOleControl.FreezeEvents
  • PyIOleControl.GetControlInfo
  • PyIOleControl.OnAmbientPropertyChange
  • PyIOleControl.OnMnemonic
  • PyIOleInPlaceObject.InPlaceDeactivate
  • PyIOleInPlaceObject.ReactivateAndUndo
  • PyIOleInPlaceObject.SetObjectRects
  • PyIOleInPlaceObject.UIDeactivate
  • PyIOleInPlaceSite.CanInPlaceActivate
  • PyIOleInPlaceSite.DeactivateAndUndo
  • PyIOleInPlaceSite.DiscardUndoState
  • PyIOleInPlaceSite.GetWindowContext
  • PyIOleInPlaceSite.OnInPlaceActivate
  • PyIOleInPlaceSite.OnInPlaceDeactivate
  • PyIOleInPlaceSite.OnPosRectChange
  • PyIOleInPlaceSite.OnUIActivate
  • PyIOleInPlaceSite.OnUIDeactivate
  • PyIOleInPlaceSite.Scroll
  • PyIOleInPlaceSiteEx.OnInPlaceActivateEx
  • PyIOleInPlaceSiteEx.OnInPlaceDeactivateEx
  • PyIOleInPlaceSiteEx.RequestUIActivate
  • PyIOleInPlaceSiteWindowless.AdjustRect
  • PyIOleInPlaceSiteWindowless.CanWindowlessActivate
  • PyIOleInPlaceSiteWindowless.GetCapture
  • PyIOleInPlaceSiteWindowless.GetDC
  • PyIOleInPlaceSiteWindowless.GetFocus
  • PyIOleInPlaceSiteWindowless.InvalidateRect
  • PyIOleInPlaceSiteWindowless.InvalidateRgn
  • PyIOleInPlaceSiteWindowless.OnDefWindowMessage
  • PyIOleInPlaceSiteWindowless.ReleaseDC
  • PyIOleInPlaceSiteWindowless.ScrollRect
  • PyIOleInPlaceSiteWindowless.SetCapture
  • PyIOleInPlaceSiteWindowless.SetFocus
  • PyIOleObject.Advise
  • PyIOleObject.Close
  • PyIOleObject.DoVerb
  • PyIOleObject.EnumAdvise
  • PyIOleObject.EnumVerbs
  • PyIOleObject.GetClientSite
  • PyIOleObject.GetClipboardData
  • PyIOleObject.GetExtent
  • PyIOleObject.GetMiscStatus
  • PyIOleObject.GetMoniker
  • PyIOleObject.GetUserClassID
  • PyIOleObject.GetUserType
  • PyIOleObject.InitFromData
  • PyIOleObject.IsUpToDate
  • PyIOleObject.SetClientSite
  • PyIOleObject.SetColorScheme
  • PyIOleObject.SetExtent
  • PyIOleObject.SetHostNames
  • PyIOleObject.SetMoniker
  • PyIOleObject.Unadvise
  • PyIOleObject.Update
  • PyIOleWindow.ContextSensitiveHelp
  • PyIOleWindow.GetWindow
  • PyIPersist.GetClassID
  • PyIPersistFile.GetCurFile
  • PyIPersistFile.IsDirty
  • PyIPersistFile.Load
  • PyIPersistFile.Save
  • PyIPersistFile.SaveCompleted
  • PyIPersistPropertyBag.InitNew
  • PyIPersistPropertyBag.Load
  • PyIPersistPropertyBag.Save
  • PyIPersistStorage.HandsOffStorage
  • PyIPersistStorage.InitNew
  • PyIPersistStorage.IsDirty
  • PyIPersistStorage.Load
  • PyIPersistStorage.Save
  • PyIPersistStorage.SaveCompleted
  • PyIPersistStream.GetSizeMax
  • PyIPersistStream.IsDirty
  • PyIPersistStream.Load
  • PyIPersistStream.Save
  • PyIPersistStreamInit.InitNew
  • PyIProcessDebugManager.AddApplication
  • PyIProcessDebugManager.CreateApplication
  • PyIProcessDebugManager.CreateDebugDocumentHelper
  • PyIProcessDebugManager.GetDefaultApplication
  • PyIProcessDebugManager.RemoveApplication
  • PyIPropertyBag.Read
  • PyIPropertyBag.Write
  • PyIPropertySetStorage.Create
  • PyIPropertySetStorage.Delete
  • PyIPropertySetStorage.Enum
  • PyIPropertySetStorage.Open
  • PyIPropertyStorage.Commit
  • PyIPropertyStorage.DeleteMultiple
  • PyIPropertyStorage.DeletePropertyNames
  • PyIPropertyStorage.Enum
  • PyIPropertyStorage.ReadMultiple
  • PyIPropertyStorage.ReadPropertyNames
  • PyIPropertyStorage.Revert
  • PyIPropertyStorage.SetClass
  • PyIPropertyStorage.SetTimes
  • PyIPropertyStorage.Stat
  • PyIPropertyStorage.WriteMultiple
  • PyIPropertyStorage.WritePropertyNames
  • PyIProvideClassInfo.GetClassInfo
  • PyIProvideClassInfo2.GetGUID
  • PyIProvideExpressionContexts.EnumExpressionContexts
  • PyIRemoteDebugApplication.CauseBreak
  • PyIRemoteDebugApplication.ConnectDebugger
  • PyIRemoteDebugApplication.CreateInstanceAtApplication
  • PyIRemoteDebugApplication.DisconnectDebugger
  • PyIRemoteDebugApplication.EnumGlobalExpressionContexts
  • PyIRemoteDebugApplication.EnumThreads
  • PyIRemoteDebugApplication.GetDebugger
  • PyIRemoteDebugApplication.GetName
  • PyIRemoteDebugApplication.GetRootNode
  • PyIRemoteDebugApplication.QueryAlive
  • PyIRemoteDebugApplication.ResumeFromBreakPoint
  • PyIRemoteDebugApplicationEvents.OnBreakFlagChange
  • PyIRemoteDebugApplicationEvents.OnClose
  • PyIRemoteDebugApplicationEvents.OnConnectDebugger
  • PyIRemoteDebugApplicationEvents.OnCreateThread
  • PyIRemoteDebugApplicationEvents.OnDebugOutput
  • PyIRemoteDebugApplicationEvents.OnDestroyThread
  • PyIRemoteDebugApplicationEvents.OnDisconnectDebugger
  • PyIRemoteDebugApplicationEvents.OnEnterBreakPoint
  • PyIRemoteDebugApplicationEvents.OnLeaveBreakPoint
  • PyIRemoteDebugApplicationEvents.OnSetName
  • PyIRemoteDebugApplicationThread.EnumStackFrames
  • PyIRemoteDebugApplicationThread.GetApplication
  • PyIRemoteDebugApplicationThread.GetDescription
  • PyIRemoteDebugApplicationThread.GetState
  • PyIRemoteDebugApplicationThread.GetSuspendCount
  • PyIRemoteDebugApplicationThread.GetSystemThreadId
  • PyIRemoteDebugApplicationThread.Resume
  • PyIRemoteDebugApplicationThread.SetNextStatement
  • PyIRemoteDebugApplicationThread.Suspend
  • PyIRunningObjectTable.EnumRunning
  • PyIRunningObjectTable.GetObject
  • PyIRunningObjectTable.IsRunning
  • PyIServiceProvider.QueryService
  • PyIShellLink.GetArguments
  • PyIShellLink.GetDescription
  • PyIShellLink.GetHotkey
  • PyIShellLink.GetIconLocation
  • PyIShellLink.GetIDList
  • PyIShellLink.GetPath
  • PyIShellLink.GetShowCmd
  • PyIShellLink.GetWorkingDirectory
  • PyIShellLink.Resolve
  • PyIShellLink.SetArguments
  • PyIShellLink.SetDescription
  • PyIShellLink.SetHotkey
  • PyIShellLink.SetIconLocation
  • PyIShellLink.SetIDList
  • PyIShellLink.SetPath
  • PyIShellLink.SetRelativePath
  • PyIShellLink.SetShowCmd
  • PyIShellLink.SetWorkingDirectory
  • PyISpecifyPropertyPages.GetPages
  • PyIStorage.Commit
  • PyIStorage.CopyTo
  • PyIStorage.CreateStorage
  • PyIStorage.CreateStream
  • PyIStorage.DestroyElement
  • PyIStorage.EnumElements
  • PyIStorage.MoveElementTo
  • PyIStorage.OpenStorage
  • PyIStorage.OpenStream
  • PyIStorage.RenameElement
  • PyIStorage.Revert
  • PyIStorage.SetClass
  • PyIStorage.SetElementTimes
  • PyIStorage.SetStateBits
  • PyIStorage.Stat
  • PyIStream.Clone
  • PyIStream.Commit
  • PyIStream.CopyTo
  • PyIStream.LockRegion
  • PyIStream.Read
  • PyIStream.Revert
  • PyIStream.Seek
  • PyIStream.SetSize
  • PyIStream.Stat
  • PyIStream.UnlockRegion
  • PyIStream.Write
  • PyITypeComp.Bind
  • PyITypeComp.BindType
  • PyITypeInfo.GetContainingTypeLib
  • PyITypeInfo.GetDocumentation
  • PyITypeInfo.GetFuncDesc
  • PyITypeInfo.GetIDsOfNames
  • PyITypeInfo.GetImplTypeFlags
  • PyITypeInfo.GetNames
  • PyITypeInfo.GetRefTypeInfo
  • PyITypeInfo.GetRefTypeOfImplType
  • PyITypeInfo.GetTypeAttr
  • PyITypeInfo.GetTypeComp
  • PyITypeInfo.GetVarDesc
  • PyITypeLib.GetDocumentation
  • PyITypeLib.GetLibAttr
  • PyITypeLib.GetTypeComp
  • PyITypeLib.GetTypeInfo
  • PyITypeLib.GetTypeInfoCount
  • PyITypeLib.GetTypeInfoOfGuid
  • PyITypeLib.GetTypeInfoType
  • PyIUnknown.__cmp__
  • PyIUnknown.QueryInterface
  • PyIViewObject.Draw
  • PyIViewObject.Freeze
  • PyIViewObject.GetAdvise
  • PyIViewObject.GetColorSet
  • PyIViewObject.SetAdvise
  • PyIViewObject.Unfreeze
  • PyIViewObject2.GetExtent
  • pythoncom._GetGatewayCount
  • pythoncom._GetInterfaceCount
  • pythoncom.CoCreateFreeThreadedMarshaler
  • pythoncom.CoCreateInstance
  • pythoncom.CoCreateInstanceEx
  • pythoncom.CoFreeUnusedLibraries
  • pythoncom.CoGetInterfaceAndReleaseStream
  • pythoncom.CoInitialize
  • pythoncom.CoInitializeEx
  • pythoncom.CoInitializeSecurity
  • pythoncom.CoMarshalInterThreadInterfaceInStream
  • pythoncom.Connect
  • pythoncom.CoRegisterClassObject
  • pythoncom.CoResumeClassObjects
  • pythoncom.CoRevokeClassObject
  • pythoncom.CoTreatAsClass
  • pythoncom.CoUninitialize
  • pythoncom.CreateBindCtx
  • pythoncom.CreateFileMoniker
  • pythoncom.CreateGuid
  • pythoncom.CreatePointerMoniker
  • pythoncom.CreateTypeLib
  • pythoncom.EnableQuitMessage
  • pythoncom.FUNCDESC
  • pythoncom.GetActiveObject
  • pythoncom.GetClassFile
  • pythoncom.GetFacilityString
  • pythoncom.GetRecordFromGuids
  • pythoncom.GetRunningObjectTable
  • pythoncom.GetScodeRangeString
  • pythoncom.GetScodeString
  • pythoncom.GetSeverityString
  • pythoncom.IsGatewayRegistered
  • pythoncom.LoadRegTypeLib
  • pythoncom.LoadTypeLib
  • pythoncom.MakeIID
  • pythoncom.MakePyFactory
  • pythoncom.MakeTime
  • pythoncom.MkParseDisplayName
  • pythoncom.new
  • pythoncom.OleLoadFromStream
  • pythoncom.OleSaveToStream
  • pythoncom.ProgIDFromCLSID
  • pythoncom.PumpMessages
  • pythoncom.PumpWaitingMessages
  • pythoncom.QueryPathOfRegTypeLib
  • pythoncom.ReadClassStg
  • pythoncom.RegisterActiveObject
  • pythoncom.RegisterTypeLib
  • pythoncom.RevokeActiveObject
  • pythoncom.StgCreateDocfile
  • pythoncom.StgCreateDocfileOnILockBytes
  • pythoncom.StgIsStorageFile
  • pythoncom.StgOpenStorage
  • pythoncom.TYPEATTR
  • pythoncom.Unicode
  • pythoncom.UnwrapObject
  • pythoncom.VARDESC
  • pythoncom.WrapObject
  • pythoncom.WriteClassStg
  • shell.SHAddToRecentDocs
  • shell.SHBrowseForFolder
  • shell.SHChangeNotify
  • shell.SHEmptyRecycleBin
  • shell.SHGetFolderLocation
  • shell.SHGetFolderPath
  • shell.SHGetPathFromIDList
  • shell.SHGetSpecialFolderLocation
  • shell.SHGetSpecialFolderPath
  • PyIDispatchEx::DeleteMemberByDispID
  • PyIDispatchEx::DeleteMemberByName
  • PyIDispatchEx::GetDispID
  • PyIDispatchEx::GetMemberName
  • PyIDispatchEx::GetMemberProperties
  • PyIDispatchEx::GetNextDispID
  • PyIDispatchEx::InvokeEx
  • PyIUnknown::__repr__


Objects and Module Properties

Object and Module Properties

  • pythoncom.dcom
  • pythoncom.frozen


PyIDebugApplicationThread.SetDescription

SetDescription()

Description of SetDescription.


PyIDebugApplicationThread.SetStateString

SetStateString()

Description of SetStateString.


PyIDebugStackFrame.GetDebugProperty

PyIDebugProperty = GetDebugProperty()

Returns the debug property.


pythoncom.OleLoadFromStream

OleLoadFromStream(stream, iid)

Load an object from an IStream.

Parameters

stream : PyIStream

The stream to load the object from.

iid : PyIID

The IID if the interface to load.


pythoncom.OleSaveToStream

OleSaveToStream(persist, stream)

Save an object to an IStream.

Parameters

persist : PyIPersistStream

The object to save

stream : PyIStream

The stream to save the object to.


Generated Python COM Support

This file describes how the Python COM extensions support "generated files". The information contained here is for expert Python users, and people who need to take advantage of the advanced features of the support. More general information is available in the Quick Start to Client Side COM documentation.

Introduction

Generated Python COM support means that a .py file exists behind a particular COM object. This .py file is created by a generation process from a COM type library.

This documentation talks about the process of the creation of the .py files.

Design Goals

The main design goal is that the Python programmer need not know much about the type library they wish to work with. They need not know the name of a specific Python module to use a type library. COM uses an IID, version and LCID to identify a type library. Therefore, the Python programmer only need know this information to obtain a Python module.

How to generate support files

Support files can be generated either "off-line" by the makepy utility, or in custom Python code.

Using makepy is in many ways far simpler - you simply pick the type library and you are ready to go! The Quick Start to Client Side COM documentation describes this process.

Often however, you will want to use code to ensure the type library has been processed. This document describes that process.

Usage

The win32com.client.gencache module implements all functionality. As described above, if you wish to generate support from code, you need to know the IID, version and LCID of the type library.

The following functions are defined. The best examples of their usage is probably in the Pythonwin OCX Demos, and the COM Test Suite (particularly testMSOffice.py)

Note that the gencache.py file supports being run from the command line, and provides some utilities for managing the cache. Run the file to see usage options.

Using makepy to help with the runtime generation

makepy supports a "-i" option, to print information about a type library. When you select a type library, makepy will print out 2 lines of code that you cant paste into your application. This will then allow your module to generate the makepy .py file at runtime, but will only take you a few seconds!

win32com.client.gencache functions

def MakeModuleForTypelib(typelibCLSID, lcid, major, minor, progressInstance = None):

Generate support for a type library.

Given the IID, LCID and version information for a type library, generate and import the necessary support files.

Returns

The Python module. No exceptions are caught.

Params

typelibCLSID
IID of the type library.

major
Integer major version.

minor
Integer minor version.

lcid
Integer LCID for the library.

progressInstance
A class instance to use as the progress indicator, or None to use the default GUI one.

def EnsureModule(typelibCLSID, lcid, major, minor, progressInstance = None):

Ensure Python support is loaded for a type library, generating if necessary.

Given the IID, LCID and version information for a type library, check and if necessary generate, then import the necessary support files.

Returns:

The Python module. No exceptions are caught during the generate process.

Params

typelibCLSID
IID of the type library.

major
Integer major version.

minor
Integer minor version.

lcid
Integer LCID for the library.

progressInstance
A class instance to use as the progress indicator, or None to use the default GUI one.

def GetClassForProgID(progid):

Get a Python class for a Program ID

Given a Program ID, return a Python class which wraps the COM object

Returns

The Python class, or None if no module is available.

Params

progid
A COM ProgramID or IID (eg, "Word.Application")

def GetModuleForProgID(progid):

Get a Python module for a Program ID

Given a Program ID, return a Python module which contains the class which wraps the COM object.

Returns

The Python module, or None if no module is available.

Params:

progid
A COM ProgramID or IID (eg, "Word.Application")

def GetModuleForCLSID(clsid):

Get a Python module for a CLSID

Given a CLSID, return a Python module which contains the class which wraps the COM object.

Returns

The Python module, or None if no module is available.

Params

progid
A COM CLSID (ie, not the description)

def GetModuleForTypelib(typelibCLSID, lcid, major, minor):

Get a Python module for a type library ID

Returns

An imported Python module, else None

Params:

typelibCLSID
IID of the type library.

major
Integer major version.

minor
Integer minor version

lcid
Integer LCID for the library.


win32com

Python and COM

Introduction

Python has an excellent interface to COM (also known variously as OLE2, ActiveX, etc).

The Python COM package can be used to interface to almost any COM program (such as the MS-Office suite), write servers that can be hosted by any COM client (such as Visual Basic or C++), and has even been used to provide the core ActiveX Scripting Support.

  • Note that win32com is now released in the win32all installation package. The installation EXE can be downloaded, or you can jump to the win32all readme for more details.
  • Here is the win32com source code in a zip file.

Documentation

Preliminary Active Scripting and Debugging documentation is available.

2 Quick-Start guides have been provided, which also contain other links. See the Quick Start for Client side COM and the Quick Start for Server side COM


Misc win32com Stuff

Misc stuff I don’t know where to put anywhere else

Client Side Dispatch

Using win32com.client.Dispatch automatically invokes all the win32com client side "smarts", including automatic usage of generated .py files etc.

If you wish to avoid that, and use truly "dynamic" objects (ie, there is generated .py support available, but you wish to avoid it), you can use win32com.client.dynamic.Dispatch

_print_details_() method
If win32com.client.dynamic.Dispatch is used, the objects have a _print_details_() method available, which prints all relevant knowledge about an object (for example, all methods and properties). For objects that do not expose runtime type information, _print_details_ may not list anything.


The win32com package

This document describes the win32com package in general terms.

The COM support can be thought of as existing in 2 main portions - the C++ support code (the core PythonCOM module), and helper code, implemented in Python. The total package is known as "win32com".

The win32com support is stand-alone. It does not require Pythonwin.

The win32com package

To facilitate an orderly framework, the Python "ni" module has been used, and the entire package is known as "win32com". As is normal for such packages, win32com itself does not provide any functionality. Some of the modules are described below:

  • win32com.pythoncom - core C++ support.
    This module is rarely used directly by programmers - instead the other "helper" module are used, which themselves draw on the core pythoncom services.
  • win32com.client package
    Support for COM clients used by Python. Some of the modules in this package allow for dynamic usage of COM clients, a module for generating .py files for certain COM servers, etc.
  • win32com.server package
    Support for COM servers written in Python. The modules in this package provide most of the underlying framework for magically turning Python classes into COM servers, exposing the correct public methods, registering your server in the registry, etc.
  • win32com.axscript
    ActiveX Scripting implementation for Python.
  • win32com.axdebug
    Active Debugging implementation for Python
  • win32com.mapi
    Utilities for working with MAPI and the Microsoft Exchange Server

The pythoncom module

The pythoncom module is the underlying C++ support for all COM related objects. In general, Python programmers will not use this module directly, but use win32com helper classes and functions.

This module exposes a C++ like interface to COM - there are objects implemented in pythoncom that have methods "QueryInterface()", "Invoke()", just like the C++ API. If you are using COM in C++, you would not call a method directly, you would use pObject->Invoke( …, MethodId, argArray…). Similarly, if you are using pythoncom directly, you must also use the Invoke method to call an object's exposed method.

There are some Python wrappers for hiding this raw interface, meaning you should almost never need to use the pythoncom module directly. These helpers translate a "natural" looking interface (eg, obj.SomeMethod()) into the underlying Invoke call.


Untitled

Python and COM - Blowing the others away

Python and COM - Implementation Details

Introduction

This document describes the technical implementation of the COM support in Python. It is primarily concerned with the underlying C++ interface to COM, although general Python issues are touched.

This document is targeted at people who wish to maintain/enhance the standard COM support (typically by writing extension modules). For information on using Python and COM from a Python programmers perspective, please see the documentation index.

General COM Support.

COM support in Python can be broken into 2 general areas - C++ support, and Python support. C++ support exists in the core PythonCOM module (plus any PythonCOM extension modules). Python support exists in the .py files that accompany the core module.

Naming Conventions

The naming conventions used by Python code will be:

  • The Python "New Import" (ni) module will be used, allowing packages, or nested modules.
  • The package name will be "win32com".
  • The core module name will be "pythoncom" (ie, "win32com.pythoncom")

The rest of the naming conventions are yet to be worked out.

Core COM support.

This section is involved with the core C++ support in "pythoncom".

The organisation of PythonCOM support falls into 3 discrete areas.

COM Client Support

This is the ability to manipulate other COM objects via their exposed interface. This includes use of IDispatch (eg using Python to start Microsoft Word, open a file, and print it.) but also all client side IUnknown derived objects fall into this category, including ITypeLib and IConnectionPoint support.

COM Server Support

This is ability for Python to create COM Servers, which can be manipulated by another COM client. This includes server side IDispatch (eg, Visual Basic starting a Python interpreter, and asking it to evaluate some code) but also all supported server side IUnknown derived classes.

Python/COM type and value conversion

This is internal code used by the above areas to managed the conversion to and from Python/COM types and values. This includes code to convert an arbitrary Python object into a COM variant, manages return types, and a few other helpers.

COM Structures and Python Types

OLE supports many C level structures for the COM API, which must be mapped to Python.

VARIANT

Variants are never exposed as such to Python programs. The internal framework always converts all variants to and from Python types. In some cases, type descriptions may be used, which force specific mappings, although in general the automatic conversion works fine.

TYPEDESC

A tuple, containing the elements of the C union. This union will be correctly decoded by the support code.

ELEMDESC

A tuple of TYPEDESC and PARAMDESC objects.

FUNCDESC

A funcdesc is a large and unwieldy tuple. Documentation to be supplied.

IID/CLSID

A native IID in Python is a special type, defined in pythoncom. Whenever a CLSID/IID is required, typically either an object, a tuple of type "iii(iiiiiiii)" or string can be used.

Helper functions are available to convert to and from IID/CLSID and strings.

COM Framework

Both client and server side support have a specific framework in place to assist in supporting the widest possible set of interfaces. The framework allows external extension DLLs to be written, which extend the interfaces available to the Python user.

This allows the core PythonCOM module to support a wide set of common interfaces, and other extensions to support anything obscure.

Client Framework

QueryInterface and Types

When the only support required by Python is IDispatch, everything is simple - every object returned from QueryInterface is a PyIDispatch object. But this does not extend to other types, such as ITypeLib, IConnectionPoint etc., which are required for full COM support.

For example, consider the following C++ psuedo-code:

IConnectionPoint *conPt;
someIDispatch->QueryInterface(IID_IConnectionPoint, (void **)&conPt);
// Note the IID_ and type of the * could be anything!

This cast, and knowledge of a specific IID_* to type must be simulated in Python.

Python/COM will therefore maintain a map of UID's to Python type objects. Whenever QueryInterface is called, Python will lookup this map, to determine if the object type is supported. If the object is supported, then an object of that type will be returned. If the object is not supported, then a PyIUnknown object will be returned.

Note that PyIDispatch will be supported by the core engine. Therefore:

>>> disp=someobj.QueryInterface(win32com.IID_Dispatch)

will return a PyIDispatch object, whereas

>>> unk=someobj.QueryInterface(SomeUnknownIID) # returns PyIUnknown
>>> disp=unk.QueryInterface(win32com.IID_Dispatch)
>>> unk.Release() # Clean up now, rather than waiting for unk death.

Is needed to convert to an IDispatch object.

Core Support

The core COM support module will support the IUnknown, IDispatch, ITypeInfo, ITypeLib and IConnectionPointContainer and IConnectionPoint interfaces. This implies the core COM module supports 6 different OLE client object types, mapped to the 6 IID_*'s representing the objects. (The IConnection* objects allow for Python to repsond to COM events)

A psuedo-inheritance scheme is used. The Python types are all derived from the Python IUnknown type (PyIUnknown). Therefore all IUnknown methods are automatically available to all types, just as it should be. The PyIUnknown type manages all object reference counts and destruction.

Extensibility

To provide the above functionality, a Python map is provided, which maps from a GUID to a Python type object.

The advantage of this scheme is an external extension modules can hook into the core support. For example, imagine the following code:

>>> import myextracom # external .pyd supporting some interface.
# myextracom.pyd will do the equivilent of

# pythoncom.mapSupportedTypes(myextracom.IID_Extra, myextracom.ExtraType)
>>> someobj.QueryInterface(myextracom.IID_Extra)

Would correctly return an object defined in the extension module.

Server Framework

General Framework

A server framework has been put in place which provides the following features:

All Interfaces provide VTBL support - this means that the Servers exposed by Python are callable from C++ and other compiled languages.

Supports full "inproc" servers. This means that no external .EXE is needed making Python COM servers available in almost all cases.

An extensible model which allows for extension modules to provide server support for interfaces defined in that module. A map is provided which maps from a GUID to a function pointer which creates the interface.

Python and Variant Types Conversion

In general, Python and COM are both "type-less". COM is type-less via the VARIANT object, which supports many types, and Python is type-less due to its object model.

There are a number of areas where Python and OLE clash.

Parameters and conversions.

For simple calls, there are 2 helpers available which will convert to and from PyObjects and VARIANTS. The call to convert a Python object to a VARIANT is simple in that it returns a VARIANT of the most appropriate type for the Python object - ie, the type of the Python object determines the resulting VARIANT type.

There are also more complex conversion routines available, wrapped in a C++ helper class. Typically, these helpers are used whenever a specific variant type is known (eg, when an ITypeInfo is available for the object being used). In this case, all efforts are made to convert the Python type to the requested variant type - ie, in this situation, the VARIANT type determines how the Python object is coerced. In addition, this code supports the use of "ByRef" and pointer paramaters, providing and freeing any buffers necessary for the call.


Quick Start to Client side COM and Python

Introduction

This documents how to quickly start using COM from Python. It is not a thorough discussion of the COM system, or of the concepts introduced by COM.

Other good information on COM can be found in various conference tutorials - please see the collection of Mark's conference tutorials

For information on implementing COM objects using Python, please see a Quick Start to Server side COM and Python

In this document we discuss the following topics:

  • Using a COM object from Python
  • How do I know which objects are available?
  • Static Dispatch/Type Safe objects (using the new improved makepy.py)
  • Using COM Constants with makepy.

Quick Start

To use a COM object from Python

import win32com.client
o = win32com.client.Dispatch("Object.Name")
o.Method()
o.property = "New Value"
print o.property

Example

o = win32com.client.Dispatch("Excel.Application")
o.Visible = 1
o.Workbooks.Add() # for office 97 – 95 a bit different!
o.Cells(1,1).Value = "Hello"

And we will see the word "Hello" appear in the top cell.

How do I know which methods and properties are available?

Good question. This is hard! You need to use the documentation with the products, or possibly a COM browser. Note however that COM browsers typically rely on these objects registering themselves in certain ways, and many objects to not do this. You are just expected to know.

The Python COM browser

PythonCOM comes with a basic COM browser that may show you the information you need. Note that this package requires Pythonwin (ie, the MFC GUI environment) to be installed for this to work.

There are far better COM browsers available - I tend to use the one that comes with MSVC, or this one!

To run the browser, simply select it from the Pythonwin Tools menu, or double-click on the file win32com\client\combrowse.py

Static Dispatch (or Type Safe) objects

In the above examples, if we printed the 'repr(o)' object above, it would have resulted in

<COMObject Excel.Application>

This reflects that the object is a generic COM object that Python has no special knowledge of (other than the name you used to create it!). This is known as a "dynamic dispatch" object, as all knowledge is built dynamically. The win32com package also has the concept of static dispatch objects, which gives Python up-front knowledge about the objects that it is working with (including arguments, argument types, etc)

In a nutshell, Static Dispatch involves the generation of a .py file that contains support for the specific object. For more overview information, please see the documentation references above.

The generation and management of the .py files is somewhat automatic, and involves one of 2 steps:

  • Using makepy.py to select a COM library. This process is very similar to Visual Basic, where you select from a list of all objects installed on your system, and once selected the objects are magically useable.

or

  • Use explicit code to check for, and possibly generate, support at run-time. This is very powerful, as it allows the developer to avoid ensuring the user has selected the appropriate type library. This option is extremely powerful for OCX users, as it allows Python code to sub-class an OCX control, but the actual sub-class can be generated at run-time. Use makepy.py with a -i option to see how to include this support in your Python code.

The win32com.client.gencache module manages these generated files. This module has some documentation of its own, but you probably don't need to know the gory details!

How do I get at the generated module?

You will notice that the generated file name is long and cryptic - obviously not designed for humans to work with! So how do you get at the module object for the generated code?

Hopefully, the answer is you shouldn't need to. All generated file support is generally available directly via win32com.client.Dispatch and win32com.client.constants. But should you ever really need the Python module object, the win32com.client.gencache module has functions specifically for this. The functions GetModuleForCLSID and GetModuleForProgID both return Python module objects that you can use in your code. See the docstrings in the gencache code for more details.

To generate Python Sources supporting a COM object

Example using Microsoft Office 97.

Either:

  • Run 'win32com\client\makepy.py' (eg, run it from the command window, or double-click on it) and a list will be presented. Select the Type Library 'Microsoft Word 8.0 Object Library'
  • From a command prompt, run the command 'makepy.py "Microsoft Word 8.0 Object Library"' (include the double quotes). This simply avoids the selection process.
  • If you desire, you can also use explicit code to generate it just before you need to use it at runtime. Run 'makepy.py -i "Microsoft Word 8.0 Object Library"' (include the double quotes) to see how to do this.

And that is it! Nothing more needed. No special import statements needed! Now, you simply need say

>>> import win32com.client

>>> w=win32com.client.Dispatch("Word.Application")

>>> w.Visible=1

>>> w

<win32com.gen_py.Microsoft Word 8.0 Object Library._Application>

Note that now Python knows the explicit type of the object.

Using COM Constants

Makepy automatically installs all generated constants from a type library in an object called win32com.clients.constants. You do not need to do anything special to make these constants work, other than create the object itself (ie, in the example above, the constants relating to Word would automatically be available after the w=win32com.client.Dispatch("Word.Application") statement.

For example, immediately after executing the code above, you could execute the following:

>>> w.WindowState = win32com.client.constants.wdWindowStateMinimize

and Word will Minimize.


Quick Start to Server side COM and Python

Introduction

This documents how to quickly start implementing COM objects in Python. It is not a thorough discussion of the COM system, or of the concepts introduced by COM.

For more details information on Python and COM, please see the COM Tutorial given by Greg Stein and Mark Hammond at SPAM 6 (HTML format) or download the same tutorial in PowerPoint format.

For information on using external COM objects from Python, please see a Quick Start to Client side COM and Python.

In this document we discuss the core functionality, registering the server, testing the class, debugging the class, exception handling and server policies (phew!)

Implement the core functionality

Implement a stand-alone Python class with your functionality

class HelloWorld:

def __init__(self):

self.softspace = 1

self.noCalls = 0

def Hello(self, who):

self.noCalls = self.noCalls + 1

# insert "softspace" number of spaces

return "Hello" + " " * self.softspace + who

This is obviously a very simple server. In particular, custom error handling would be needed for a production class server. In addition, there are some contrived properties just for demonstration purposes.

Make Unicode concessions

At this stage, Python and Unicode don’t really work well together. All strings which come from COM will actually be Unicode objects rather than string objects.

To make this code work in a COM environment, the last line of the "Hello" method must become:

return "Hello" + " " * self.softspace + str(who)

Note the conversion of the "who" to "str(who)". This forces the Unicode object into a native Python string object.

For details on how to debug COM Servers to find this sort of error, please see debugging the class

Annotate the class with win32com specific attributes

This is not a complete list of names, simply a list of properties used by this sample.

Property Name | Description
_public_methods_ | List of all method names exposed to remote COM clients
_public_attrs_ | List of all attribute names exposed to remote COM clients
_readonly_attrs_ | List of all attributes which can be accessed, but not set.

We change the class header to become:

class HelloWorld:

_public_methods_ = ['Hello']

_public_attrs_ = ['softspace', 'noCalls']

_readonly_attrs_ = ['noCalls']

def __init__(self):

[Same from here…]

Registering and assigning a CLSID for the object

COM requires that all objects use a unique CLSID and be registered under a "user friendly" name. This documents the process.

Generating the CLSID

Microsoft Visual C++ comes with various tools for generating CLSID's, which are quite suitable. Alternatively, the pythoncom module exports the function CreateGuid() to generate these identifiers.

>>> import pythoncom
>>> print pythoncom.CreateGuid()
{7CC9F362-486D-11D1-BB48-0000E838A65F}

Obviously the GUID that you get will be different than that displayed here.

Preparing for registration of the Class

The win32com package allows yet more annotations to be applied to a class, allowing registration to be effected with 2 lines in your source file. The registration annotations used by this sample are:

Property Name

Description

_reg_clsid_

The CLSID of the COM object

_reg_progid_

The "program ID", or Name, of the COM Server. This is the name the user usually uses to instantiate the object

_reg_desc_

Optional: The description of the COM Server. Used primarily for COM browsers. If not specified, the _reg_progid_ is used as the description.

_reg_class_spec_

Optional: A string which represents how Python can create the class instance. The string is of format
[package.subpackage.]module.class

The portion up to the class name must be valid for Python to "import", and the class portion must be a valid attribute in the specified class.

This is optional from build 124 of Pythoncom., and has been removed from this sample.

_reg_remove_keys_

Optional: A list of tuples of extra registry keys to be removed when uninstalling the server. Each tuple is of format ("key", root), where key is a string, and root is one of the win32con.HKEY_* constants (this item is optional, defaulting to HKEY_CLASSES_ROOT)

Note there are quite a few other keys available. Also note that these annotations are not required - they just make registration simple. Helper functions in the module win32com.server.register allow you to explicitly specify each of these attributes without attaching them to the class.

The header of our class now becomes:

class HelloWorld:

_reg_clsid_ = "{7CC9F362-486D-11D1-BB48-0000E838A65F}"

_reg_desc_ = "Python Test COM Server"

_reg_progid_ = "Python.TestServer"

_public_methods_ = ['Hello']

[same from here]

Registering the Class

The idiom that most Python COM Servers use is that they register themselves when run as a script (ie, when executed from the command line.) Thus the standard "if __name__=='__main___':" technique works well.

win32com.server.register contains a number of helper functions. The easiest to use is "UseCommandLine".

Registration becomes as simple as:

if __name__=='__main__':
# ni only for 1.4!
import ni, win32com.server.register
win32com.server.register.UseCommandLine(HelloWorld)

Running the script will register our test server.

Testing our Class

For the purposes of this demonstration, we will test the class using Visual Basic. This code should run under any version of Visual Basic, including VBA found in Microsoft Office. Any COM compliant package could be used alternatively. VB has been used just to prove there is no "smoke and mirrors. For information on how to test the server using Python, please see the Quick Start to Client side COM documentation.

This is not a tutorial in VB. The code is just presented! Run it, and it will work!

Debugging the COM Server

When things go wrong in COM Servers, there is often nowhere useful for the Python traceback to go, even if such a traceback is generated.

Rather than discuss how it works, I will just present the procedure to debug your server:

To register a debug version of your class, run the script (as above) but pass in a "--debug" parameter. Eg, for the server above, use the command line "testcomserver.py --debug".

To see the debug output generated (and any print statements you may choose to add!) you can simply select the "Remote Debug Trace Collector" from the Pythonwin Tools menu, or run the script "win32traceutil.py" from Windows Explorer or a Command Prompt.

Exception Handling

Servers need to be able to provide exception information to their client. In some cases, it may be a simple return code (such as E_NOTIMPLEMENTED), but often it can contain much richer information, describing the error on detail, and even a help file and topic where more information can be found.

We use Python class based exceptions to provide this information. The COM framework will examine the exception, and look for certain known attributes. These attributes will be copied across to the COM exception, and passed back to the client.

The following attributes are supported, and correspond to the equivalent entry in the COM Exception structure:
scode, code, description, source, helpfile and helpcontext

To make working with exceptions easier, there is a helper module "win32com.server.exception.py", which defines a single class. An example of its usage would be:

raise COMException(desc="Must be a string",scode=winerror.E_INVALIDARG,helpfile="myhelp.hlp",...)

(Note the COMException class supports (and translates) "desc" as a shortcut for "description", but the framework requires "description")

Server Policies

This is information about how it all hangs together. The casual COM author need not know this.

Whenever a Python Server needs to be created, the C++ framework first instantiates a "policy" object. This "policy" object is the gatekeeper for the COM Server - it is responsible for creating the underlying Python object that is the server (ie, your object), and also for translating the underlying COM requests for the object.

This policy object handles all of the underlying COM functionality. For example, COM requires all methods and properties to have unique numeric ID's associated with them. The policy object manages the creation of these ID's for the underlying Python methods and attributes. Similarly, when the client whishes to call a method with ID 123, the policy object translates this back to the actual method, and makes the call.

It should be noted that the operation of the "policy" object could be dictated by the Python object - the policy object has many defaults, but the actual Python class can always dictate its operation.

Default Policy attributes

The default policy object has a few special attributes that define who the object is exposed to COM. The example above shows the _public_methods attribute, but this section describes all such attributes in detail.

_public_methods_

Required list of strings, containing the names of all methods to be exposed to COM. It is possible this will be enhanced in the future (eg, possibly '*' will be recognised to say all methods, or some other ideas…)

_public_attrs_

Optional list of strings containing all attribute names to be exposed, both for reading and writing. The attribute names must be valid instance variables.

_readonly_attrs_

Optional list of strings defining the name of attributes exposed read-only.

_com_interfaces_

Optional list of IIDs exposed by this object. If this attribute is missing, IID_IDispatch is assumed (ie, if not supplied, the COM object will be created as a normal Automation object.

and actual instance attributes:

_dynamic_ : optional method

_value_ : optional attribute

_query_interface_ : optional method

_NewEnum : optional method

_Evaluate : optional method


Python Script sample: Calculator

Calculator


ActiveX / VBScript Chart Example

 Chart Example
You must be running Microsoft Internet Explorer 3.0 and have the Microsoft ActiveX Chart control installed to view this page.

The chart control enables you to draw charts. The chart's types and styles are properties of the control. The chart has one method, AboutBox. The chart generates no events.

Chart Type
Simple Pie | Simple Column
Pie with Wedge Out | Stacked Column
Simple Point | Full Column
Stacked Point | Simple Bar
Full Point | Stacked Bar
Simple Line | Full Bar
Stacked Line | HLC Stock
Full Line | HLC Stock WSJ
Simple Area | OHLC Stock
Stack Area | OHLC Stock WSJ
Full Area
Gridlines
Horizontal
Vertical
Background
Opaque
Transparent

Notes
The chart's properties on this page are changed by selecting the various radio buttons and check boxes. The OnClick event of these intrinsic controls calls VBScript procedures that change the chart properties.

The About Chart Control command button calls the chart's AboutBox method.

To view the source code for this page, select Source from the View menu.

If you have any questions or comments about this example, please send them to billr@smart.net. We would appreciate feedback and would like to hear about other developers' experiences with these new tools.

© 1996 Rollins & Associates, Inc.
Page last updated 08/28/96
Please send comments to billr@smart.net


Engine Registration

The Python ActiveX Scripting Engine is not currently registered. Before any of the supplied demos will work, the engine must be successfully registered.

If you are seeing this page because you just installed the Microsoft Script Debugger for internet explorer, then I am afraid you need to upgrade the debugger. You can find a debugger for MSIE3.02 at www.python.org (MSIE3DBG.EXE - 1503k)

To install the engine, the Python program win32com\axscript\client\pyscript.py must be run. You can either do this manually, or follow the instructions below.

Register the engine now!

You can register the engine very simply. Just follow the process outlined below:
  1. Click on the link below
  2. A dialog will be presented asking if the file should be opened or saved to disk. Select "Open it".
  3. A Console program will briefly open, while the server is registered.

Register the engine now

Checking the registration

After the registration is complete, simply hit the Reload button. If the registration was successful, the page will change to the Python/AvtiveX Demo Page.


Python ActiveX Scripting Demonstation

Congratulations on installing the Python ActiveX Scripting Engine

Object model

Except as described below, the object module exposed should be similar to that exposed by Visual Basic, etc. Due to the nature of ActiveX Scripting, the details for each host are different, but Python should work "correctly".

The object model exposed via Python for MSIE is not as seamless as VB. The biggest limitation is the concept of a "local" namespace. For example, in VB, you can code text="Hi there", but in Python, you must code MyForm.ThisButton.Text="Hi There". See the foo2 sample for futher details.

Known bugs and problems

  • This release seems to have broken Aaron's mouse-trace sample. No idea why, and I'm supposed to be looking into it.

  • Builtin objects such as MARQUEE are giving me grief. Objects accessed via forms are generally no problem.


Scripting Demos

An Introduction to the scripting engine.

The Calculator Demo is a very cool sample written by Aaron Watters.

Mouse track is another of Aaron's samples, and shows how fast the Python engine is!

The foo2 sample is mainly used for debugging and testing, but does show some forms in action.


The caption on the first button is set by the Window Load code. Clicking that button changes the text in the first edit box.

The second button changes its own text when clicked.

The fourth button calls a global function, defined in the global 'script' scope, rather than the 'MyForm' scope.

And here is a second form


Internet Workshop

Python AX Script Engine
Demo using the Marquee Control
Mark Hammond.

This is really quite a boring demo, as the Marquee control does everything. However, there is Python code behind the buttons that change the speed. This code is all of 2 lines per button!!!

For more information on Python as an ActiveX scripting language, see

Python
http://www.python.org


Python Scripting sample: Mouse tracking

Clickable Map Image

A mouse tracking demo. Move the mouse over the image above...