ページ 1 / 1
質問です
Posted: 2011年11月11日(金) 21:53
by no
こんばんは。
datファイルへの書き込みがうまくいきません。
どうしてか原因がわからないので教えていただきたいです
FILE *fp = fopen( "save_data.dat", "wb" );
fread( &Data, sizeof(Data), 1, fp );
fwrite( &Data, sizeof(Data), 1, fp );
これだけじゃファイルの書き込みは行えないのですか?
Re: 質問です
Posted: 2011年11月11日(金) 21:58
by beatle
"wb"でファイルを開いているのに、freadしちゃだめです。
Re: 質問です
Posted: 2011年11月11日(金) 22:02
by box
no さんが書きました:
datファイルへの書き込みがうまくいきません。
「うまくいきません」だけでは、実質的に「何も言っていない」のと同じです。
「どううまくいかないか」、つまり、質問者さんが何をもって「うまくいかない」と判断されたのか、
根拠を具体的に記述してください。
Re: 質問です
Posted: 2011年11月14日(月) 17:19
by koshineight
考えられるのは、システムドライブ直下に書き出そうとしているとか。
Windows Vista以降は、内部セキュリティがかなり厳しくなっていて、ファイルを書き出せるディレクトリもそれにともなって制限されています。
もしnoさんがVista以降をお使いであれば、COMインターフェースなどを使って管理者へあなたのプログラム自身を昇格させる必要があります。
UAC の動的な権限昇格に関するメモ
http://d.hatena.ne.jp/tt_clown/20110524/uac
UAC の動的昇格
http://blogs.wankuma.com/jitta/archive/ ... 58831.aspx
Vista で動くプログラムを書くために ~UAC編~
http://dsas.blog.klab.org/archives/51108671.html
# 管理者アカウントは別ですけどね
# でも、管理者アカウントでも書き出せないことがあります。