我们从Python开源项目中,提取了以下4个代码示例,用于说明如何使用win32con.TOKEN_READ。
def get_sid(self): if self.sid == None: ph = win32api.GetCurrentProcess() th = win32security.OpenProcessToken(ph, win32con.TOKEN_READ) self.sid = win32security.GetTokenInformation( th, win32security.TokenUser)[0] return self.sid
def test(): # check if running on Windows NT, if not, display notice and terminate if win32api.GetVersion() & 0x80000000: print("This sample only runs on NT") return import sys, getopt opts, args = getopt.getopt(sys.argv[1:], "rwh?c:t:v") computer = None do_read = do_write = 1 logType = "Application" verbose = 0 if len(args)>0: print("Invalid args") usage() return 1 for opt, val in opts: if opt == '-t': logType = val if opt == '-c': computer = val if opt in ['-h', '-?']: usage() return if opt=='-r': do_read = 0 if opt=='-w': do_write = 0 if opt=='-v': verbose = verbose + 1 if do_write: ph=win32api.GetCurrentProcess() th = win32security.OpenProcessToken(ph,win32con.TOKEN_READ) my_sid = win32security.GetTokenInformation(th,win32security.TokenUser)[0] win32evtlogutil.ReportEvent(logType, 2, strings=["The message text for event 2","Another insert"], data = "Raw\0Data".encode("ascii"), sid = my_sid) win32evtlogutil.ReportEvent(logType, 1, eventType=win32evtlog.EVENTLOG_WARNING_TYPE, strings=["A warning","An even more dire warning"], data = "Raw\0Data".encode("ascii"), sid = my_sid) win32evtlogutil.ReportEvent(logType, 1, eventType=win32evtlog.EVENTLOG_INFORMATION_TYPE, strings=["An info","Too much info"], data = "Raw\0Data".encode("ascii"), sid = my_sid) print("Successfully wrote 3 records to the log") if do_read: ReadLog(computer, logType, verbose > 0)
def test(): # check if running on Windows NT, if not, display notice and terminate if win32api.GetVersion() & 0x80000000: print "This sample only runs on NT" return import sys, getopt opts, args = getopt.getopt(sys.argv[1:], "rwh?c:t:v") computer = None do_read = do_write = 1 logType = "Application" verbose = 0 if len(args)>0: print "Invalid args" usage() return 1 for opt, val in opts: if opt == '-t': logType = val if opt == '-c': computer = val if opt in ['-h', '-?']: usage() return if opt=='-r': do_read = 0 if opt=='-w': do_write = 0 if opt=='-v': verbose = verbose + 1 if do_write: ph=win32api.GetCurrentProcess() th = win32security.OpenProcessToken(ph,win32con.TOKEN_READ) my_sid = win32security.GetTokenInformation(th,win32security.TokenUser)[0] win32evtlogutil.ReportEvent(logType, 2, strings=["The message text for event 2","Another insert"], data = "Raw\0Data".encode("ascii"), sid = my_sid) win32evtlogutil.ReportEvent(logType, 1, eventType=win32evtlog.EVENTLOG_WARNING_TYPE, strings=["A warning","An even more dire warning"], data = "Raw\0Data".encode("ascii"), sid = my_sid) win32evtlogutil.ReportEvent(logType, 1, eventType=win32evtlog.EVENTLOG_INFORMATION_TYPE, strings=["An info","Too much info"], data = "Raw\0Data".encode("ascii"), sid = my_sid) print("Successfully wrote 3 records to the log") if do_read: ReadLog(computer, logType, verbose > 0)