Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #31171

Re: Checking for dlls in ctypes

Path csiph.com!usenet.pasdenom.info!news.albasani.net!feeder.erje.net!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail
Return-Path <wanderer@dialup4less.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.000
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'else:': 0.03; 'mrab': 0.05; 'except:': 0.07; 'exception.': 0.07; 'try:': 0.07; 'friday,': 0.09; 'name)': 0.09; 'subject:ctypes': 0.09; 'to:addr:comp.lang.python': 0.09; 'cc:addr:python-list': 0.10; 'oserror:': 0.16; 'wrote:': 0.17; 'load': 0.19; 'trying': 0.21; 'cc:2**0': 0.23; 'work.': 0.23; "i've": 0.23; 'cc:no real name:2**0': 0.24; 'tried': 0.25; 'cc:addr:python.org': 0.25; 'header:In-Reply-To:1': 0.25; 'header:User-Agent:1': 0.26; 'dll': 0.27; "doesn't": 0.28; 'this?': 0.28; '"no': 0.29; "i'm": 0.29; 'code': 0.31; 'print': 0.32; 'received:google.com': 0.34; 'thanks': 0.34; 'too.': 0.35; 'received:209.85': 0.35; 'there': 0.35; 'except': 0.36; 'but': 0.36; '12,': 0.36; 'available.': 0.37; 'october': 0.37; 'received:209': 0.37; 'subject:: ': 0.38; 'some': 0.38; 'below,': 0.60
Newsgroups comp.lang.python
Date Fri, 12 Oct 2012 10:52:38 -0700 (PDT)
In-Reply-To <mailman.2094.1350061025.27098.python-list@python.org>
Complaints-To groups-abuse@google.com
Injection-Info glegroupsg2000goo.googlegroups.com; posting-host=65.205.52.2; posting-account=_dIAQQoAAAB7Yieol6fmkK_HviJUbJt3
References <975da919-c70a-492a-9d49-62254a76eb6c@googlegroups.com> <mailman.2094.1350061025.27098.python-list@python.org>
User-Agent G2/1.0
X-Google-Web-Client true
X-Google-IP 65.205.52.2
MIME-Version 1.0
Subject Re: Checking for dlls in ctypes
From Wanderer <wanderer@dialup4less.com>
To comp.lang.python@googlegroups.com
Content-Type text/plain; charset=ISO-8859-1
Cc python-list@python.org
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.15
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <http://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list/>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <http://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Message-ID <mailman.2097.1350064361.27098.python-list@python.org> (permalink)
Lines 68
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1350064361 news.xs4all.nl 6963 [2001:888:2000:d::a6]:47281
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:31171

Show key headers only | View raw


On Friday, October 12, 2012 12:57:06 PM UTC-4, MRAB wrote:
> On 2012-10-12 16:36, Wanderer wrote:
> 
> > I'm trying to write some code that will load one of three dll depending on the one available. I've tried the code below, but it doesn't work. The try except doesn't catch the exception. Is there a way to do this?
> 
> >
> 
> >          try:
> 
> >              self.dll = windll.pvcam64
> 
> >          except:
> 
> >              print "No pvcam64"
> 
> >              try:
> 
> >                  self.dll = windll.pvcam32
> 
> >              except:
> 
> >                  print "No pvcam32"
> 
> >                  try:
> 
> >                      self.dll = windll.pvcam
> 
> >                  except:
> 
> >                      print "No pvcam"
> 
> >                      return
> 
> >                  else:
> 
> >                      print "installed pvcam"
> 
> >              else:
> 
> >                  print "installed pvcam32"
> 
> >          else:
> 
> >              print "installed pvcam64"
> 
> >
> 
> This works for me:
> 
> 
> 
>      for name in ("pvcam64", "pvcam32", "pvcam"):
> 
>          try:
> 
>              self.dll = getattr(windll, name)
> 
>          except OSError:
> 
>              print "No " + name
> 
>          else:
> 
>              print "Installed " + name
> 
>              return

Yes that works for me, too. Thanks

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Checking for dlls in ctypes Wanderer <wanderer@dialup4less.com> - 2012-10-12 08:36 -0700
  Re: Checking for dlls in ctypes Dave Angel <d@davea.name> - 2012-10-12 12:28 -0400
    Re: Checking for dlls in ctypes Wanderer <wanderer@dialup4less.com> - 2012-10-12 10:57 -0700
    Re: Checking for dlls in ctypes Wanderer <wanderer@dialup4less.com> - 2012-10-12 10:57 -0700
    Re: Checking for dlls in ctypes Nobody <nobody@nowhere.com> - 2012-10-13 12:32 +0100
  Re: Checking for dlls in ctypes MRAB <python@mrabarnett.plus.com> - 2012-10-12 17:57 +0100
    Re: Checking for dlls in ctypes Wanderer <wanderer@dialup4less.com> - 2012-10-12 10:52 -0700
    Re: Checking for dlls in ctypes Wanderer <wanderer@dialup4less.com> - 2012-10-12 10:52 -0700
  Re: Checking for dlls in ctypes 88888 Dihedral <dihedral88888@googlemail.com> - 2012-10-13 06:40 -0700

csiph-web