1. 创建一个python文件把下方代码放进去,然后运行命令亲测有效,一定要用下面的代码,有的15版本之前的文件位置做了更换,有的代码会报错
sudo python2.7 TeamViewer-id-changer.py
#coding:utf-8import sys import os import glob import platform import re import random import string print('''--------------------------------TeamViewer ID Changer for MAC OS--------------------------------''') if platform.system() !='Darwin': print('This script can be run only on MAC OS.') sys.exit(); if os.geteuid() !=0: print('This script must be run form root.') sys.exit(); if os.environ.has_key('SUDO_USER'): USERNAME = os.environ['SUDO_USER'] if USERNAME =='root': print('Can not find user name. Run this script via sudo from regular user') sys.exit(); else: print('Can not find user name. Run this script via sudo from regular user') sys.exit(); HOMEDIRLIB ='/Users/'+ USERNAME +'/library/preferences/'GLOBALLIB ='/library/preferences/'CONFIGS = [] # Find config filesdef listdir_fullpath(d): return [os.path.join(d, f) for f in os.listdir(d)] for file in listdir_fullpath(HOMEDIRLIB): if'teamviewer'.lower() in file.lower(): CONFIGS.append(file) if not CONFIGS: print ('''There is no TemViewer configs found.Maybe you have deleted it manualy or never run TeamViewer after installation.Nothing to delete.''') # Delete config fileselse: print("Configs found:\n") for file in CONFIGS: print file print('''This files will be DELETED permanently.All TeamViewer settings will be lost''') raw_input("Press Enter to continue or CTR+C to abort...") for file in CONFIGS: try: os.remove(file) except: print("Cannot delete config files. Permission denied?") sys.exit(); print("Done.") # Find binaryesTMBINARYES = [ '/Applications/TeamViewer.app/Contents/MacOS/TeamViewer', '/Applications/TeamViewer.app/Contents/MacOS/TeamViewer_Service', '/Applications/TeamViewer.app/Contents/MacOS/TeamViewer_Desktop', ] for file in TMBINARYES: if os.path.exists(file): pass else: print("File not found: "+ file) print ("Install TeamViewer correctly") sys.exit(); # Patch filesdef idpatch(fpath,platf,serial): file = open(fpath, 'r+b') binary = file.read() PlatformPattern ="IOPlatformExpert.{6}" SerialPattern ="IOPlatformSerialNumber%s%s%sUUID" binary = re.sub(PlatformPattern, platf, binary) binary = re.sub(SerialPattern % (chr(0), "[0-9a-zA-Z]{8,8}", chr(0)), SerialPattern%(chr(0), serial, chr(0)), binary) file = open(fpath,'wb').write(binary) return True def random_generator(size=8, chars=string.ascii_uppercase + string.digits): return ''.join(random.choice(chars) for _ in range(size)) RANDOMSERIAL = random_generator() RANDOMPLATFORM ="IOPlatformExpert"+ random_generator(6) for file in TMBINARYES: try: idpatch(file,RANDOMPLATFORM,RANDOMSERIAL) except: print "Error: can not patch file "+ file print "Wrong version?" sys.exit(); print "PlatformDevice: "+ RANDOMPLATFORM print "PlatformSerial: "+ RANDOMSERIAL print('''ID changed sucessfully.!!! Restart computer before using TeamViewer !!!!''')