小编Gil*_*Raz的帖子

如何访问 std::string 中的 char 数组?

我的任务是在 Linux 中编写一个文件系统,该系统将存储设备模拟为文件。

我被赋予的功能之一需要读取“文件”中的数据。为此,我有一个应该返回std::string.

如何使用以下函数将文件中的数据直接读入std::string?

void read(int addr, int size, char *ans)
Run Code Online (Sandbox Code Playgroud)

有没有办法将内部的字符数组std::string作为参数传递给这个函数?到目前为止,我遇到的所有方法和成员函数都只返回const char*,在这种情况下不起作用。

谢谢!

c++ arrays stdstring

3
推荐指数
1
解决办法
146
查看次数

FindWindowA() 返回 0,当我使用 GetLastError() 检查错误代码时,它也是 0 (ERROR_SUCCESS)

这是我正在编写的 dll 注入代码中的一段。我正在使用FindWindowA() 中定义的窗口过程获取 HWND INJ_PROC_NAME。问题是该函数总是返回 0,当我用GetLastError()它检查错误时也返回 0。我不知道是什么问题,因为错误代码没有给我关于错误的正确信息。

HWND Hwnd = FindWindowA(NULL, INJ_PROC_NAME);
    if (Hwnd == NULL)
    {
        std::cout << "Couldn't find window named \"" << INJ_PROC_NAME << "\": error-"
            << GetLastError() << std::endl;
        getchar();
        return -1;
    }
Run Code Online (Sandbox Code Playgroud)

这是输出:

Couldn't find window named "notepad.exe": error-0
Run Code Online (Sandbox Code Playgroud)

这是一个已知的问题?我无法在 Microsoft 的文档或堆栈溢出中找到有关它的任何信息。我就是想不通这个...

编辑:显然,当我运行程序时,记事本是打开的。

c c++ windows winapi

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

使用 CreateprocessA/W 时是否使用 system() 函数?

我想知道,当使用命令行参数并且留下第一个参数时,函数CreateprocessA()CreateprocessW() 使用或调用system()还是它的变体NULL

编辑: 否则,他们会调用 CMD.EXE 作为中介吗?

c windows winapi

0
推荐指数
1
解决办法
104
查看次数

标签 统计

c ×2

c++ ×2

winapi ×2

windows ×2

arrays ×1

stdstring ×1