繁体   English   中英

C ++-仅将文本附加到具有NTFS“附加数据”权限的文件中

[英]C++ - Append text to a file with NTFS “append data” only permissions

我需要在基于文本的日志文件中附加一些文本行。 该文件托管在Windows服务器上,用户可以通过smb访问。

域用户没有对该文件的写权限,他们仅具有“附加文本”权限。

下面的代码有效,但是我找不到如何将所有条目放在不同的行上。 所有文本都显示在同一行上。

#include <windows.h>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
    if (argc != 3)
        return 0;
    //cout << argv[1] << "," << argv[2] << endl;
    HANDLE hFile = CreateFile(argv[2], FILE_APPEND_DATA, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
    WriteFile(hFile,argv[1],strlen(argv[1]),0,0);
    CloseHandle(hFile);
}

我想让程序始终在文本末尾添加新的行字符。 我感到很愚蠢,但是我无法弄清楚如何使用指针来实现我的目标。 =(

CloseHandle之前添加第二个WriteFile

WriteFile(hFile, "\r\n", 2, 0, 0);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM