本文整理匯總了Python中ctypes.wintypes.LARGE_INTEGER屬性的典型用法代碼示例。如果您正苦於以下問題:Python wintypes.LARGE_INTEGER屬性的具體用法?Python wintypes.LARGE_INTEGER怎麽用?Python wintypes.LARGE_INTEGER使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類ctypes.wintypes
的用法示例。
在下文中一共展示了wintypes.LARGE_INTEGER屬性的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: vmmap
# 需要導入模塊: from ctypes import wintypes [as 別名]
# 或者: from ctypes.wintypes import LARGE_INTEGER [as 別名]
def vmmap(pid, is_64=True):
base = 0
if is_64:
mbi = MEMORY_BASIC_INFORMATION_64()
addr_type = wintypes.LARGE_INTEGER
else:
mbi = MEMORY_BASIC_INFORMATION_32()
addr_type = wintypes.DWORD
proc = win32api.OpenProcess(win32con.PROCESS_QUERY_INFORMATION, 0, pid)
maps = []
while windll.kernel32.VirtualQueryEx(proc.handle, addr_type(base), ctypes.byref(mbi), ctypes.sizeof(mbi)) > 0:
mapperm = 0
if mbi.Protect & win32con.PAGE_EXECUTE:
mapperm = SEG_PROT_X
elif mbi.Protect & win32con.PAGE_EXECUTE_READ:
mapperm = SEG_PROT_X | SEG_PROT_R
elif mbi.Protect & win32con.PAGE_EXECUTE_READWRITE:
mapperm = SEG_PROT_X | SEG_PROT_R | SEG_PROT_W
elif mbi.Protect & win32con.PAGE_EXECUTE_WRITECOPY:
mapperm = SEG_PROT_X | SEG_PROT_R
elif mbi.Protect & win32con.PAGE_NOACCESS:
mapperm = 0
elif mbi.Protect & win32con.PAGE_READONLY:
mapperm = SEG_PROT_R
elif mbi.Protect & win32con.PAGE_READWRITE:
mapperm = SEG_PROT_R | SEG_PROT_W
elif mbi.Protect & win32con.PAGE_WRITECOPY:
mapperm = SEG_PROT_R
#print hex(mbi.BaseAddress) +"\t"+ hex(mbi.BaseAddress + mbi.RegionSize) +"\t"+ hex(mapperm)
maps.append((mbi.BaseAddress, mbi.BaseAddress + mbi.RegionSize, mapperm, ""))
base += mbi.RegionSize
win32api.CloseHandle(proc)
return maps