小编One*_*Toe的帖子

VirtualAlloc 和 Python - 访问冲突

非常简单的 python 脚本给了我一个访问冲突,我只是不明白为什么。

import ctypes

def Test():
     data = bytearray( "\xDE\xAD\xBE\xEF\x0B\xAD\xC0\xDE", 'utf-16' )
     dataLen = len( data )

     try :
        ptr = ctypes.windll.kernel32.VirtualAlloc( ctypes.c_int( 0 ),
                                                   ctypes.c_int( dataLen ),
                                                   ctypes.c_int( 0x3000 ),
                                                   ctypes.c_int( 0x40 ) )

        buf = ( ctypes.c_char * dataLen ).from_buffer( data )

        ctypes.windll.kernel32.RtlMoveMemory( ctypes.c_int( ptr ),
                                              buf,
                                              ctypes.c_int( dataLen ) )
     except Exception as e :
        print( e )
        exit(-1)
Run Code Online (Sandbox Code Playgroud)

错误:

Traceback (most recent call last):
  File "c:\vs17\...\ptvsd_launcher.py", line 119, in <module>
    vspd.debug(filename, port_num, debug_id, debug_options, run_as) …
Run Code Online (Sandbox Code Playgroud)

python virtualalloc

2
推荐指数
1
解决办法
2027
查看次数

标签 统计

python ×1

virtualalloc ×1