好吧,基本上我写了一个汇编函数来检测运行时是否存在某个进程。我不太了解内联汇编的含义,即使我用asm包装器包装了汇编代码,它仍然将内部代码检测为C代码...基本上它是这样的:

__inline bool isProcLoaded()
{
    _asm
    {
        mov ah, 0x48
        int     0x68 ; After compiling it breaks on this line, the 'int' is highlighted
        cmp ax ...
    }
}


这是什么问题,我该如何解决?

最佳答案

这可能是因为int是一个中断指令,由于大多数中断都具有特权(related),因此在当今的用户模式下该指令很少使用。

没有更多的细节,我无法告诉您您打算在这里实现什么,尽管从头开始搜索后看起来类似于一种用于检测SoftICE调试器的方法,并且该代码相当古老(DOS和Windows早期时代),所以似乎在现代操作系统上,您会收到0xC0000005 STATUS_ACCESS_VIOLATION异常。

08-27 00:32
查看更多