[英]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.