a oeE@sTddlZddlZddlZddlZddlZd ddZddZddZed krPedS) N Applicationc CsVt||}t|}d}t|tjtjBd}|s8q|D]}t||}|jdurz$t ||j\} } } d| | f} Wnt j yt |j} Yn0d| f} nd} |r-t : LogType - Use the specified log - default = 'Application')rrrrrusage@s rcCstd@rtddSddl}ddl}||jddd\}}d}d}}d}d}t|dkrttdtdS|D]\\} } | dkr| }| d kr| }| d vrtdS| d krd}| d krd}| d krx|d}qx|rnt} t | t j } t | t jd} tj|dddgdd| dtj|dtjddgdd| dtj|dtjddgdd| dtd|rt|||dkdS)NlzThis sample only runs on NTrz rwh?c:t:vrz Invalid argsz-tz-c)z-hz-?z-rz-wz-vzThe message text for event 2zAnother insertzRawDataascii)stringsdatasidz A warningzAn even more dire warning)Z eventTyperrrzAn infoz Too much infoz'Successfully wrote 3 records to the log)win32apiZ GetVersionrgetoptsysargvr rZGetCurrentProcessrZOpenProcessTokenwin32conZ TOKEN_READZGetTokenInformationZ TokenUserrZ ReportEventencoderZEVENTLOG_WARNING_TYPEZEVENTLOG_INFORMATION_TYPEr)rr Zoptsargsr Zdo_readZdo_writer verboseoptvalphthZmy_sidrrrtestIst    r*__main__)rr) rr"rrrrrr*__name__rrrrs 8 D