From 9f1d2aa58cec76306c3dc6887e7c9c92769936fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nuno=20Andr=C3=A9=20Novo?= Date: Sun, 10 Mar 2019 01:26:09 +0100 Subject: Adds Python 3 compatibility --- dwt.py | 5 +++-- dwt_about.py | 7 ++++--- dwt_util.py | 15 +++++++-------- requirements.txt | 3 +++ 4 files changed, 17 insertions(+), 13 deletions(-) create mode 100644 requirements.txt diff --git a/dwt.py b/dwt.py index 113f212..fb195fd 100644 --- a/dwt.py +++ b/dwt.py @@ -21,6 +21,7 @@ import platform import traceback import webbrowser from ctypes import windll +from six import u import wx from wx.lib.itemspicker import ItemsPicker, IP_SORT_SELECTED, IP_SORT_CHOICES, IP_REMOVE_FROM_CHOICES @@ -470,10 +471,10 @@ def exception_hook(error, value, trace): def check_elevated(silent=False): if not bool(windll.advpack.IsNTAdmin(0, None)): if silent: - windll.shell32.ShellExecuteW(None, u"runas", unicode(sys.executable), u"{0} -silent".format(unicode(__file__)), None, 1) + windll.shell32.ShellExecuteW(None, u"runas", u(sys.executable), u"{0} -silent".format(u(__file__)), None, 1) sys.exit(1) else: - windll.shell32.ShellExecuteW(None, u"runas", unicode(sys.executable), unicode(__file__), None, 1) + windll.shell32.ShellExecuteW(None, u"runas", u(sys.executable), u(__file__), None, 1) sys.exit(1) def silent(): diff --git a/dwt_about.py b/dwt_about.py index 8a75058..98b4221 100644 --- a/dwt_about.py +++ b/dwt_about.py @@ -19,7 +19,8 @@ import datetime import cgi import json -import urllib2 +from six.moves.urllib.request import urlopen +from six.moves.urllib.error import URLError import webbrowser from distutils.version import StrictVersion @@ -169,8 +170,8 @@ class Licenses(wx.Dialog): def update_check(parent): try: - r = urllib2.urlopen('https://api.github.com/repos/10se1ucgo/DisableWinTracking/releases/latest') - except urllib2.URLError: + r = urlopen('https://api.github.com/repos/10se1ucgo/DisableWinTracking/releases/latest') + except URLError: return value, parameters = cgi.parse_header(r.headers.get('Content-Type', '')) release = json.loads(r.read().decode(parameters.get('charset', 'utf-8'))) diff --git a/dwt_util.py b/dwt_util.py index efc5cc6..62bde2b 100644 --- a/dwt_util.py +++ b/dwt_util.py @@ -20,10 +20,9 @@ import platform from collections import OrderedDict import pywintypes import shutil -from string import split import subprocess import tempfile -import _winreg as winreg +from six.moves import winreg import shlex import win32serviceutil @@ -66,12 +65,12 @@ class CalledProcessError(Exception): def is_64bit(): if os.name == 'nt': - output = subprocess.check_output(['wmic', 'os', 'get', 'OSArchitecture']) - os_arch = output.split()[1] - return True if os_arch == '64-bit' else False + output = subprocess.check_output(['wmic', 'os', 'get', 'OSArchitecture']) + os_arch = output.split()[1] + return True if os_arch == '64-bit' else False else: - logger.critical("This was only meant to be run on Windows-based system. Specifically, Windows 10.") - os._exit(0) + logger.critical("This was only meant to be run on Windows-based system. Specifically, Windows 10.") + os._exit(0) return os_arch @@ -101,7 +100,7 @@ def clear_diagtrack(): failed = False for cmd in cmds: i += 1 - service = split(cmd, 'sc delete ') + service = cmd.split('sc delete ') output = subprocess_handler(cmd) diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..6cc69b6 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +pypiwin32 +six +wxpython \ No newline at end of file -- cgit v1.2.3