I would use the following code:
HANDLE hFile = CreateFile(L"read_only_file.txt", GENERIC_ALL, 0, NULL, FILE_SHARE_WRITE, FILE_ATTRIBUTE_READONLY, NULL);
I would use the following code:
HANDLE hFile = CreateFile(L"read_only_file.txt", GENERIC_ALL, 0, NULL, FILE_SHARE_WRITE, FILE_ATTRIBUTE_READONLY, NULL);