解决利用变速齿轮作弊的问题变速齿轮工作原理
CSDN - 技术频道 - 文档中心 - Visual C++     
 
标题     “变速齿轮”再研究    bbbkom(原作) 
 
关键字     变速齿轮 调用门 RING0 
                             “变速齿轮”再研究 
     作者        BBBKOM  
     关键词     变速齿轮  调用门  RING0 

解决方案 »

  1.   

    分是我的咯:)呵呵
    诸位,查一下cpu的指令,在那些比较高级的cpu中,指令中有计时的!!!!
    绝对的不会被欺骗!!!!!!!!!!!
    呵呵
    给分啊:)
      

  2.   

    诸位,查一下cpu的指令,在那些比较高级的cpu中,指令中有计时的!!!!
    绝对的不会被欺骗!!!!!!!!!!!
    -----------------
    哥们,那你的程序不是得针对不同的cpu进行不同的处理
    要是人家用老的cpu,你还是不能防止人家作弊呀
      

  3.   

    呵呵
    ::哥们,那你的程序不是得针对不同的cpu进行不同的处理
    ::要是人家用老的cpu,你还是不能防止人家作弊呀
    这个说的对,我所说的指令是在比较新的机器上才能使用,
    这会限制一部分用户的,不过连机器都没钱升级,你还会想着从他哪儿拿钱?::举个例子证明一下呀
    这个没什么好举的,你去查一下即可,应该是在p2以后即可了
    剩下的就是在程序中使用汇编指令了,
    唯一可能有点困难的是可能这个指令属于特权指令。不过相信你也不会有太大的困难吧:)
    我其实并没有自己用过,是帮一个朋友的做设计时,为了解答图形处理的定时处理问题时找的资料
    (我只负责技术支持,具体的实现没做),他们照做了,一切顺利。
    现在直接要给出例子不太容易,如果你还不能实现的话,我在给你找例子吧(i am lazy:))
    ::拜托要是能解决我再加送100分
    说话算数哦,我在这儿呆了好久,问题也回答了不少,可惜给分的很少,还不如关税好玩呢
    真让人失望:(
      

  4.   

    你的方法,准确地说是个思路,我要是能走通就先记你50分,因为这个得针对不同测cpu做不同的处理,通用性比较差
    而且,如果人家的cpu不提供这个功能,还是无法解决
    继续征集更好的方案::要是人家用老的cpu,你还是不能防止人家作弊呀
    这个说的对,我所说的指令是在比较新的机器上才能使用,
    这会限制一部分用户的,不过连机器都没钱升级,你还会想着从他哪儿拿钱?
    大哥人家作弊会不择手段,人家会用不支持这个功能的机器作弊,等获得很大利益后,用普通的机器来爽,这对其他玩家就不公平
      

  5.   

    ::因为这个得针对不同测cpu做不同的处理,通用性比较差
    如果我记得不错,对处理器的要求并不高,因为当初我们做的是图形处理,也不会只限于很少的用户。他应该是略微高级一点的处理器即可支持。换个说法,如果他的处理器是在95年以后买的都应该支持才对(这是个比方,不过也大致应该是这样)。另外,这个是通用的指令,类似于你在8086汇编中使用的其他指令一样,不需要你判断处理器的类型。::要是人家用老的cpu,你还是不能防止人家作弊呀
    ::大哥人家作弊会不择手段,人家会用不支持这个功能的机器作弊,等获得很大利益后,用
    ::普通的机器来爽,这对其他玩家就不公平
    你提的问题与我回答的问题不是同一个问题,我要解决的是防止利用变速齿轮作弊,这只需解决定时问题即可。而你现在希望的是防止所有的作弊行为,自然处理方式会有所不同。
    但是,只要定时问题解决了,别的自然非常的容易。::你的方法,准确地说是个思路,我要是能走通就先记你50分
    我自然只提供思路,因为那是很久以前的事了,我懒的再去翻旧案,更何况有了相应方案,我觉得已经足够了。给代码,一般只有在我讲不清时采用的下策。至于分数嘛……………………
    呵呵,我在这儿主要是为了消磨时间,顺道认识几个同路朋友,偶尔有心情了就回答几个问题,没心情就算:)
      

  6.   

    我的问题就是解决时间问题,由于变速齿轮拦截了获取时间的windows api
    我想可不可以这样,就是不调用windows api获取时间,自己通过汇编直接访问主板bios的时间等与自己开发一个类似与windows api 获取时间的函数,这样是不是可行
      

  7.   

    呵呵
    这个自然是可行的
    我给出的方案实际上一般用在多媒体或图形处理等对时间要求十分严格的场合,专门用于时间的处理,精度应该是你在windows下能获得的最大了。
    所以我觉得也是可以满足你的要求的。
    ::自己开发一个类似与windows api 获取时间的函数,这样是不是可行
    其实,不管怎样,总会有作弊的方案,重要的是你选取的方案应该尽量的出人意料,并采用一定的防范措施,才会有教好的效果。
      

  8.   

    你检查一下被齿轮掉换的API是不是WIN的,如果不是就证明有齿轮存在
      

  9.   

    你检查一下被齿轮掉换的API是不是WIN的,如果不是就证明有齿轮存在
    哥们你先看看 我引用的变速齿轮工作原理
    ------------------------------------------
    当然是windows 的api了,他拦截timegetime getick等,跟时间有关的windows api进行篡改
      

  10.   

    用奔腾指令RDTSC
    inline unsigned __int64 GetCycleCount()
    {
     __asm _emit 0x0F
     __asm _emit 0x31
    }例子:
    unsigned long t;
    t = (unsigned long)GetCycleCount();
    //Do Something time-intensive ...
    t -= (unsigned long)GetCycleCount();