c++ - 是否可以更改从 GetTickCount() 返回的刻度计数值?

标签 c++ windows

我正在尝试进行一些测试,它要求 Windows 系统实时启动并运行 15 分钟,然后才能执行特定操作。然而,这非常耗时,必须等待 15 分钟的实时时间。

有没有办法改变GetTickCount()返回的值,让系统看起来已经实时运行了15分钟?

编辑:有一个应用程序可以做一些接近我想要的事情,但它似乎不太工作,我必须处理十六进制值而不是直接十进制值:http://ysgyfarnog.co.uk/utilities/AdjustTickCount/

最佳答案

不直接。

为什么不直接模拟调用,或者用策略对象替换执行时间检查的代码块?

struct Waiter
{
    virtual void Wait() = 0;
    virtual ~Waiter() {};
};

struct 15MinWaiter : public Waiter
{
    virtual void Wait()
    {
        //Do something that waits for 15 mins
    }
};

struct NothingWaiter : public Waiter
{
    virtual void Wait()
    {
        //Nill
    } 
};

您可以执行类似的操作来模拟对 GetTickCount 的调用,但在进行等待的任何事物的更高抽象级别上执行此操作可能会更好。

关于c++ - 是否可以更改从 GetTickCount() 返回的刻度计数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3731227/

相关文章:

c++ - Mysql 查询字符串在查询 C++ 中不起作用

c++ - 为什么 sin(45) 和 cos(45) 给出不同的结果?

c++ - 在运行时用一个小部件替换另一个小部件并显示新的小部件

c++ - 开发 Windows 窗体应用程序?

windows - 在各种描述字符串中使用 NSIS 安装程序名称

r - 警告 : running command 'sh ./configure.win' had status 127

c++ - QTableView:动态更改 rowCount

c++ - 演示制作者如何获得超小文件大小?

windows - IWebBrowser2对象使用IE7版本,而不是机器上安装的IE版本

java - 从java执行.exe文件