数か月前、ソケットからデータを読み取ってディスクに書き込むために、Linux 用の C で非常に単純なプログラムを作成しました。Windowsで実行したいので、cygwinをインストールすると、すべてうまくいきました。
プログラムがデータをファイルに書き込んでいるときに、Windows で問題が発生し、同時に別のツールでそのファイルを開こうとします。他のプロセスによって開かれているため、不平を言ってファイルを開きません。
ググった後、それを回避するために、WindowsではSHARE_FILE_READおよびSHARE_FILE_WRITEフラグを使用してファイルを作成する必要があることを読みましたが、問題は、私のプログラムがLinux用のCで記述されており、標準のopen syscallを使用していることです..
私のプログラムが開いているファイルにその共有モードを追加するように cygwin に指示する方法はありますか?