トップページ > 過去ログ > 記事閲覧
例題のプログラム(ファイルオープン)
名前:三郎 日時: 2010/07/01 13:21

いつも初歩的な質問ですが、此処の例題のプログラムが上手く動作しません。下記がそのコードです(丸写し)。 #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { int FileHandle ; char String[256] ; // DXライブラリの初期化 if( DxLib_Init() == -1 ) return -1 ; // test.cpp ファイルを開く FileHandle = FileRead_open( "test.cpp" ) ; // 一行読む FileRead_gets( String, 256, FileHandle ) ; // 画面に描画 DrawString( 0, 0, String, GetColor( 255,255,255 ) ) ; // キー入力を待つ WaitKey() ; // ファイルを閉じる FileRead_close( FileHandle ) ; // DXライブラリの後始末 DxLib_End() ; return 0 ; } データのファイルの手持ちがありませんのでメモ帳で2行ほど作成しました。 そして例題のフォルダーに置きました。 何処に置けばよいのでしょうか? テキストファイルでは駄目なのですか? 簡単に造る方法が分りません。よろしくお願いします。

Page: 1 |

Re: 例題のプログラム(ファイルオープン) ( No.1 )
名前:いっち 日時:2010/07/01 19:45

> 此処の例題のプログラムが上手く動作しません。 どの様にうまく動かないのかもう少し詳しく説明してください。 (アクセス違反が発生するのか、画面にゴミが表示されるのか、なにも表示されないのかなど) > 何処に置けばよいのでしょうか? カレントディレクトリに置いてください。 実行ファイルの存在するフォルダかプロジェクトの存在するフォルダに入れておけば大抵の場合問題ないはずです。 > テキストファイルでは駄目なのですか? テキストファイルで問題ありませんが文字コードはShiftJISである必要があります。
Re: 例題のプログラム(ファイルオープン) ( No.2 )
名前:三郎 日時:2010/07/01 22:43

いっちさん、エラーが出て失敗するのです。 以下にエラーログを貼り付けます。 エラーログ自体一部に文字化け?があります。 データはカレントに置いてもデバックのところに置いても同様です。 >テキストファイルで問題ありませんが文字コードはShiftJISである必要があります。 半角英数でテキストを作りました。 次のようなものです。 123 234 しかしそうなら拡張子が.txtと思うけど例題では.cppとなっているのも不思議です。 何か根本的な勘違いがあるのでしょうか?。 ビルド ログ ビルド 開始: プロジェクト: ex301、構成: Debug|Win32 コマンド ライン 一時ファイル "c:\cpp9\EX301\Debug\RSP00000243361476.rsp" を作成しています。内容 : [ /out:.\Debug\ex301.exe.embed.manifest /notify_update /manifest .\Debug\ex301.exe.intermediate.manifest ] コマンド ライン "mt.exe @c:\cpp9\EX301\Debug\RSP00000243361476.rsp /nologo" を作成しています。 出力ウィンドウ マニフェストを埋め込んでいます... .\Debug\ex301.exe.intermediate.manifest : general error c1010070: Failed to load and parse the manifest. U _U!$kL dK ~[ 結果 ビルドログは "file://c:\cpp9\EX301\Debug\BuildLog.htm" に保存されました。 ex301 - エラー 1、警告 0
Re: 例題のプログラム(ファイルオープン) ( No.3 )
名前:いっち 日時:2010/07/01 23:14

プロジェクトの構成に問題があるのではないかと思います。 必要なソースファイルがすべてプロジェクトに追加されているか等確認してみてください。 プロジェクト一式を圧縮してアップロードして頂ければ私のほうでも確認してみます。
Re: 例題のプログラム(ファイルオープン) ( No.4 )
名前:三郎 日時:2010/07/02 14:44

いっちさん、申し訳ありません。 昨日来、聞いた事のないようなメッセージが出ているので貴殿の言われるプロジェクトに疑問を感じ、新たに作り直してみました。 そうしてら、OKとなりました。 再度、前のプロジェクトを開いて注視しましたら、EX301のプロジェクトのex301.cppのコードエデイタ画面の文字の色が、黒一色になっている事に気が付きました。 通常は黒、青、緑、赤の4色を使い分けていますね。これは今まで経験した事がありません。 面倒でしたが新しくプロジェクトを作り直すと回復し、お騒がせしました。 私がどこかで操作を間違ったのでしょう。 しかし、ファイル名を.cppではファイルを読み込まず.txtでないと認識しませんでした。 1.今までもファイルの属性など違ったり、ファイルが無くとも(文字でも画像でも)エラーが出ず、真っ黒な画面であった。 理由があるでしょうが、何故なのかなあ〜。 2.私は多くの関数などを試すのに新たにプロジェクトを造るのが面倒なのでフォルダー毎にコピー−>貼り付け−>名前の変更を繰り返して楽をしていた。しかしこの手法に不都合も感じていました。 それはフォルダー名は変更でき新しくなりますがソリュウシヨン名、プロジェクト名、ソースファイル名が前の名前のままで混乱を引き起こすので、ソリュウションエクスプローラのところで名前のうえにマウス右クリックで名前を強引に変更していました。 この手法に問題があるのでしょうか?。
Re: 例題のプログラム(ファイルオープン) ( No.5 )
名前:T 日時:2010/07/02 20:11

> 三郎さん 横槍ですみませんが、 ファイル名を変更した際にソースも書き換えてリビルドしましたか? 拡張子もファイルの識別に用いられるので、正しく指定しないとプログラムは存在しないファイルを開こうとして失敗してしまいます それと、これはあくまで私の場合ですが、GUIやCUI、使用しているライブラリごとにベースとなるソースをあらかじめ作成しておいて、それを複製して使っています 三郎さんのなさっていますように、前回以前に作成したプログラムをベースにしてもよいのですが、その場合は設定等を変更していた場合に予期せぬエラーが出る恐れがあるので…
Re: 例題のプログラム(ファイルオープン) ( No.6 )
名前:三郎(解決) 日時:2010/07/03 06:28

Tさん、いっちさん、問題が解決できました。 先ず拡張子の変更方法が間違っていました.cppで問題なく作動しました。重ねてお詫びいたします。 Vistaに変わってから細部にわたり慣れていませんでした。拡張子の変更のミスは、 (エクスプローラ起動 -> 整理 -> レイアウト-> メニュウバー -> ツール -> フォルダーオプション -> 表示 -> 登録されているオプションは表示しない) のチエックが付いていました。 それを外し変更しましたらOKです。 間違った方法で拡張子の変更をしていました(涙)。整理だなんて、そんな項目があるとは気が付きませんでした!!!(怒り) 何れにしましても私のパソコンは何処か不安定な所があります。マウスも新品に買い換えます。 Tさんのプロジェクト等の複製方法も研究させて頂きます。

Page: 1 |