簡體   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