os.execl is messing me about!
Dale Strickland-Clark
dale at riverhall.NOTHANKS.co.uk
Wed Aug 28 08:06:09 EDT 2002
I have a little program I've converted from Javascript which I use
frequently. It doesn't work in Python because the last line keeps
throwing the error:
Traceback (most recent call last):
File "I:\batch\ie.py", line 22, in ?
os.execl(iepath, args)
File "C:\Python22\Lib\os.py", line 266, in execl
execv(file, args)
TypeError: execv() arg 2 must contain only strings
I have tried a variety of formats for the os.execl function,
including:
os.execl(iepath, (args, ))
os.execl(iepath, [args])
os.execl(iepath, args)
but it always complains about arg 2 in this way.
What is excel on about?
Any help appreciated.
I'm going to lie down for a while.
Here is the full code (it may wrap):
==========================================
# Run IE - wherever it happens to be.
# Take URL from clipboard if not supplied as arg
import sys, os, os.path
import win32clipboard as clip
import win32api
import win32con
hklm = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App
Paths\\IEXPLORE.EXE\\"
if len(sys.argv) > 1:
args = sys.argv[1]
else:
clip.OpenClipboard(0)
args = clip.GetClipboardData(clip.CF_TEXT)
clip.CloseClipboard()
iekey = win32api.RegOpenKeyEx(win32con.HKEY_LOCAL_MACHINE, hklm, 0,
win32con.KEY_READ)
iepath = win32api.RegQueryValueEx(iekey, None)[0]
win32api.RegCloseKey(iekey)
os.execl(iepath, args)
--
Dale Strickland-Clark
Riverhall Systems Ltd
More information about the Python-list
mailing list