Re: Help accessing COM .dll from Python

Discussion in 'Python' started by Paul Kölle, Dec 2, 2012.

  1. Hi,

    Am 01.12.2012 10:51, schrieb Steve Simmons:
    > First time post - be gentle with me :)
    >
    > I am trying to write a Python script to access a scanning device. I have an SDK
    > for the scanner but the documentation is a bit limited and the supplier doesn't
    > support Python (but Python is the best option for me in the current circumstances).

    From a quick view it seems the documentation is excellent. There are
    tons of examples (even Java so you could use jython), API documents and
    the SDK. The "VC SDK.pdf" from the API documents zip explains what
    functions are there and how to call them. I have no idea why you used
    PEExplorer, are you using a device not covered by Slib.dll?
    Anyway, I suggest you forget about COM and try to load Slib.dll via
    ctypes http://docs.python.org/2/library/ctypes.html and call some
    functions documented in "VC SDK.pdf" and see what happens. The defines
    for return codes used in the documentation are here
    http://www.id-reader.com/Support/Sample_Codes/Visual_C_Plus_Plus/header_lib.rar
    in SlibErrDef.h and probably others...

    cheers
    Paul

    >
    > The SDK revolves around a .dll file that is described as a 'COM Object' but the
    > text also implies that it can be accessed directly - "If you don’t use the COM
    > interface in your application and use the SDK files directly like in VC++ then
    > you don’t need to install these files on the destination computer". If I look
    > inside the .dll (thanks PEExplorer!), I see DllCanUnload, DllGetClassObject,
    > DllRegisterServer and DllUnregisterServer in the 'Export' view. If I look at
    > the 'Import' view, I can see the names of a bunch of .dll files and the names of
    > the functions/methods I want to call. So I concluded that DllGetClassObject
    > would be my friend.
    >
    > However, I've read various tutorials on using .dll and COM (ctypes, comtypes,
    > and the Python documentation) and I've ended up more confused than when I
    > started. I expected to be using COM but all the examples seem to revolve around
    > automating excel or outlook.
    >
    > I'd be really grateful for some hints on what direction Ishould be headed and a
    > pointer to a relevant tutorial.
    >
    > Simmo
    >
    >
    >
     
    Paul Kölle, Dec 2, 2012
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Anushi
    Replies:
    5
    Views:
    8,945
  2. H. Simpson
    Replies:
    4
    Views:
    328
    H. Simpson
    Aug 3, 2004
  3. Steve Simmons

    Help accessing COM .dll from Python

    Steve Simmons, Dec 1, 2012, in forum: Python
    Replies:
    1
    Views:
    185
    Günther Dietrich
    Dec 1, 2012
  4. Chris Angelico

    Re: Help accessing COM .dll from Python

    Chris Angelico, Dec 1, 2012, in forum: Python
    Replies:
    0
    Views:
    152
    Chris Angelico
    Dec 1, 2012
  5. Steve Simmons

    Re: Help accessing COM .dll from Python

    Steve Simmons, Dec 1, 2012, in forum: Python
    Replies:
    0
    Views:
    166
    Steve Simmons
    Dec 1, 2012
Loading...

Share This Page