filebuf::openprot; //默認的兼容***享方式
filebuf::sh_none; //獨占,不***享
filebuf::sh_read; //讀***享
filebuf::sh_write; //寫***享
以上方式僅舊版VC中支持,新版VC在share.h中為Win32項目定義了如下方式
_SH_DENYRW 0x10 /* deny read/write mode*/
_SH_DENYWR 0x20 /* deny write mode */
_SH_DENYRD 0x30 /* deny read mode */
_SH_DENYNO 0x40 /* deny none mode */
_SH_SECURE 0x80 /* secure mode */
示例:fstream a_file(test.dat, ios::in | ios::binary, _SH_DENYRW);
此時使用其他程序打開test.dat將顯示“此文件已被其他進程占用”