プログラムからフォルダをアクセス制御したい

MFCプログラマー 121 評価のポイント
2024-04-03T05:50:40.2433333+00:00

VisualC++MFCの開発者です。

開発したMFCアプリケーションの起動中、某フォルダの名前を変えたり削除出来ないしたいのですが、 それは可能ですか?

名前を変えたり削除出来ないが出来ない状態でも、自分以外のユーザーがそのフォルダにファイルを作ったり、ファイルを読み込む事が出来る必要があります。

C++
C++
C プログラミング言語の拡張機能として作成された高レベルの汎用プログラミング言語。低レベルのメモリ操作機能に加えて、オブジェクト指向、汎用、関数型の機能を備えています。
20 件の質問
{count} 件の投票

承認済みの回答
  1. gekka 9,586 評価のポイント MVP
    2024-04-03T08:58:36.4533333+00:00

    起動したら、その某フォルダの中にCreateFileで隠しファイルを作成して、そのハンドルを開きっぱなしするのでは駄目でしょうか?

    int main()
    {
        #define LOCK_FILE_PATH  L"D:\\Temp\\Test\\lock.dat"
    
        DeleteFile(LOCK_FILE_PATH);
    
        HANDLE hFile = CreateFile
                        (LOCK_FILE_PATH
                        , GENERIC_READ | GENERIC_WRITE
                        , 0
                        , nullptr
                        , CREATE_ALWAYS
                        , FILE_ATTRIBUTE_TEMPORARY | FILE_ATTRIBUTE_HIDDEN
                        , 0);
        if (hFile == INVALID_HANDLE_VALUE)
        {
            return 1;
        }
    
        Sleep(60000);
    
        CloseHandle(hFile);
        DeleteFile(LOCK_FILE_PATH);
        return 0;
    }
    
    1 人がこの回答が役に立ったと思いました。

0 件の追加の回答

並べ替え方法: 最も役に立つ

お客様の回答

回答は、質問作成者が [承諾された回答] としてマークできます。これは、ユーザーが回答が作成者の問題を解決したことを知るのに役立ちます。