stdafx.hって?


a  2004-06-24 03:56:28  No: 53842

http://www.katolab.ee.kagu.tus.ac.jp/programing/capture.htm
のプログラムをビルドすると

fatal error C1083: インクルード ファイルがオープンできません。'stdafx.h': No such file or directory
cl.exe の実行エラー

と出ます。これはどのようにしたらエラーが出なくなりますか?
MySampleGrabberCB.hをヘッダーファイル、
MySampleGrabberCB.cppをソースファイルにするというやり方では間違えているのですか?
http://www.katolab.ee.kagu.tus.ac.jp/programing/preparation.htm
のプログラミングの準備はしました。
もし、よかったら教えてください。


瀬戸っぷ  2004-06-24 07:20:21  No: 53843

> fatal error C1083: インクルード ファイルがオープンできません。'stdafx.h': No such file or directory

エラーメッセージのとおり、ファイルが無いからです。
そのまま「stdafx.h」をGoogle検索していくつかサイトを見てまわれば、
どうしたらいいか判るでしょう。


a  2004-06-25 05:40:18  No: 53844

返信ありがとうございます。
言われた通りにGoogleで検索したところ「stdafx.h」がたくさん出てきたのですけど、プログラムばかりで「stdafx.h」が何なのかがよくわかりませんでした。「stdafx.h」とは何なのですか?勉強不足ですみません。調べ方でいいのでアドバイスお願いします。あと、「stdafx.h」のプログラムがたくさんあるのですけど、どのようにプログラムを使い分けたら良いのでしょうか?1番始めにあったプログラムで実行してみたところ

LINK : fatal error LNK1104: ファイル "C:\Documents.obj" を開けません。
link.exe の実行エラー

というエラーがでました。


瀬戸っぷ  2004-06-25 09:16:35  No: 53845

Google検索の1ページ目で、
http://www.plustarnet.com/aspil/Programming/2d12.htm
というページが見つかるかと思いますが……

今回の場合は、プリコンパイル済みヘッダを
使っていない(少なくともファイルがない)のでしょうから、
使用しないように設定すればよろしいかと。


a  2004-06-26 06:06:02  No: 53846

何度もすみません。
プリコンパイル済みヘッダを使用しないように設定するとはStdAfx.cppをSource Fileに追加してプリコンパイルを使用しないと言う風に設定したんですけど、ビルドすると

fatal error C1083: インクルード ファイルがオープンできません。'..\Header\StdAfx.h': No such file or directory
コードを生成中...
cl.exe の実行エラー

と出ました。設定の仕方間違えてますか?


瀬戸っぷ  2004-06-26 09:14:06  No: 53847

> fatal error C1083: インクルード ファイルがオープンできません。'..\Header\StdAfx.h': No such file or directory

なんかフォルダが追加されているようですが…
#include "..\Header\StdAfx.h"
の行を削除(あるいはコメントアウト)したらどうでしょう?


a  2004-06-27 06:32:14  No: 53848

StdAfx.cppに
//  プリコンパイル済みヘッダの作成
#include  "..\Header\StdAfx.h"
を記入するのではないのですか?
削除してビルドしたら、
LINK : fatal error LNK1104: ファイル "C:\Documents.obj" を開けません。
link.exe の実行エラー
と出ました。


瀬戸っぷ  2004-06-27 09:31:28  No: 53849

> //    プリコンパイル済みヘッダの作成
> #include    "..\Header\StdAfx.h"
> を記入するのではないのですか?

プリコンパイル済みヘッダを使用しない場合は不要かと。

> LINK : fatal error LNK1104: ファイル "C:\Documents.obj" を開けません。
> link.exe の実行エラー

リンク時のエラー…ですね。(ちょっと前の書き込みもそうなってましたね(^_^;))
リンカーに渡されるコマンドラインがおかしいのでしょうか。
\My Documentsではなく、ディレクトリ名に半角スペースを含まないディレクトリに置いてみたらどうでしょう?
C:\MyProject\〜とか。


a  2004-06-28 07:33:10  No: 53850

半角スペースがない状態で設定してみたら、前と同じようにstdafx.hがありませんって出たので
http://www.hydrairc.com/doxygen/stdafx_8h-source.htmlや
http://www5a.biglobe.ne.jp/~sage-p/src_html.files/stdafx.h.htmのプログラムをヘッダーファイルに追加したら両方とも
fatal error C1083: インクルード ファイルがオープンできません。'atlapp.h': No such file or directory
cl.exe の実行エラー
と出ました。
atlapp.hのファイルを追加したらいいのですか?
それとも根本的に何か違うのでしょうか?


瀬戸っぷ  2004-06-28 21:56:00  No: 53851

> atlapp.hのファイルを追加したらいいのですか?
> それとも根本的に何か違うのでしょうか?

stdafx.hはネットで検索して見つかったモノを適当に放り込むべきファイルではありません。
AppWizard等でプロジェクトを作成した場合は、AppWizardが作成してくれます。
(プロジェクト作成時にWin32 applicationで作成した場合は「空のプロジェクト」以外で作成されますが)

http://www.katolab.ee.kagu.tus.ac.jp/programing/capture.htm#source
で書かれているヘッダのincludeも当然必要かと…

とりあえず、下記の操作で今回のサンプルに必要なstdafx.h/stdafx.cppは作成されるかと。
 1)[ファイル][新規作成]でプロジェクトのタイプを"MFC AppWizard(exe)"にプロジェクト名は適当に。
 2)MFC AppWizard ステップ1ではSDIに変更。[終了]を押す。

作成済みのプロジェクトの場合は……CCameraSample.lzhをDLしてその中のstdafx.hを転用…でしょうか。
MFC使っていないプロジェクトだった場合にちゃんと動作するのかどうかは不明ですが……
(MFC使っていれば既にstdafx.hが存在するハズですけど)

# 環境書いていないので上記の操作はVC++6上でのモノです。
# .NETの場合は表記が違うかも知れません。


a  2004-06-29 06:16:02  No: 53852

すみません、とても基本的な事を聞くのですけど、VC++6の再インストールをしたいのですけど、

Visual Studio 6.0 EnterPrice  Editionのセットアップウィザードは、以前にこのコンピュータに実行されています

と出て再インストールできないのですが、どのようにしたらできるのですか?


RAPT  2004-06-29 09:11:33  No: 53853

正しくアンインストールしましたか?


a  2004-06-30 05:50:31  No: 53854

RAPTさん、返信ありがとうございます。
アンインストールとはどのようにするのですか?知識不足ですみません。


瀬戸っぷ  2004-06-30 22:50:10  No: 53855

「アプリケーションの追加と削除」を見てみましょう。
VCが6だというのは判りましたがOSが不明ですね。
一応、どのバージョンのWindowsでも(3.1は除くが)「アプリケーションの〜」になっていると思いますが。

# まさか、直接フォルダごと削除していないですよね?


シャノン  2004-07-01 00:18:25  No: 53856

XP では「プログラムの追加と削除」ですね。

#フォルダごと削除だと、通常は再インストール→アンインストールという
#手順を取るんですが…再インストールができないとなると、危険を冒して
#レジストリをいじるか、OS からクリーンインストールするしかないですね。


a  2004-07-01 06:27:16  No: 53857

瀬戸っぷさん、シャノンさん、返信ありがとうございます。
OSはXPです。
「プログラムの追加と削除」を開いて「変更と削除」ボタンをクリックしたのですが「追加と削除」、「再セットアップ」、「すべての削除」と出てアンインストールと言う項目がなかったのですが、どのようにしてアンインストールするのですか?
もしかして、インストールしてある場所を変えたくて移動させたりしたのですが、そのせいでおかしくなっていますか?あと、インストールできなかったので1回削除もしています。それでもインストールできなかったので、ごみ箱から元に戻すというので戻したのですが。。


瀬戸っぷ  2004-07-01 06:46:33  No: 53858

正常ならば、「すべての削除」で削除できるでしょう。
フォルダ移動(リネーム含む)等した場合、元通りに戻していない場合は無理だと思われますが。

レジストリにファイルのパスが保存されていたり、その他の方法でパスが記録されている状態で、
アプリの関知できないところでソレらが変更された場合、正常動作は見込めないと思います。

# 最悪、OSの再インストールというコトに…


シャノン  2004-07-01 18:13:21  No: 53859

「インストール」という作業は、(特に Visual Studio 等の大規模アプリの場合)単に CD から HDD にファイルをコピーする、ということだけに留まりません。
レジストリというデータベースにインストール先の情報を書き込んだり、動作に必要なファイルをシステムに登録したりという作業も行われます。
その後で、ただファイルを移動しただけだと、これらの情報との不整合が生じておかしくなってしまうと言うわけです。

「インストール」したものは、ファイルの削除や移動はせずに、消すときは必ず「アンインストール」すること。
インストール場所の移動は、一度アンインストールしてから再インストール(それ以前に、移動なんかしないのが一番ですが)。
フリーソフトなどの小規模なアプリでは、アンインストール作業は必要なく、ただファイルを消すだけでいいというものもありますが、マニュアル等にそう書かれていない場合、必ずアンインストール作業を行いましょう。

#今回の場合、ホントに最悪、OS の再インストールが必要になるかも…


a  2004-07-02 08:43:58  No: 53860

「すべての削除」でインストールができる状態になるのですが、何回やっても

C:\USBcamera\Tools\VS-Ent98\Vanalyzr\valec.exe
を登録するためのDCOMユーザーアカウントが作成できませんでした。
(C:\USBcameraにインストールしました。)

とエラーが出て正常にインストールできませんでした。これは、OSの再インストールが必要なのですか?
OSの再インストールの仕方を詳しく教えていただけないですか?


瀬戸っぷ  2004-07-02 09:55:58  No: 53861

> C:\USBcamera\Tools\VS-Ent98\Vanalyzr\valec.exe
> を登録するためのDCOMユーザーアカウントが作成できませんでした。

…………メッセージをググったら、
http://forums.belution.com/ja/vc/000/110/12.shtml
なんての発見。(が未解決……)
インストールする機能のオプションを変更する等で回避できるかも知れません。
(該当機能は使えないことになりますが)

> OSの再インストールの仕方を詳しく教えていただけないですか?

プログラミングから離れていっているような気がしますが…
http://www.google.co.jp/search?q=WindowsXP+%E5%86%8D%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB&ie=UTF-8&hl=ja&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
こういった方法で調べて下さい。
メーカー製(NEC・富士通・ソニー等)でしたら、
マニュアルにリカバリ方法(工場出荷時の状態にに戻す方法)が載っていると思われますので、
そちらを熟読して下さい。


a  2004-07-03 09:33:07  No: 53862

ありがとうございます。再インストールするとやっぱり、今までの全部なくなってしまうと言うことですよね?
家族全員で使ってるものなので聞いてから実行してみたいと思います。


a  2004-07-04 06:24:33  No: 53863

わがまま言ってすみません。直す方法とはOS


a  2004-07-04 06:25:56  No: 53864

すみません、間違えました。
直す方法とはOSの再インストール以外ないですか?できれば、OSの再インストールせずに直したいのですが。。無理ですか?


瀬戸っぷ  2004-07-04 09:20:11  No: 53865

> 直す方法とはOSの再インストール以外ないですか?
> できれば、OSの再インストールせずに直したいのですが。。無理ですか?

保証は出来ませんが…

> C:\USBcamera\Tools\VS-Ent98\Vanalyzr\valec.exe
> を登録するためのDCOMユーザーアカウントが作成できませんでした。

だけでしたら、VC++6のインストール時にカスタムセットアップで、
インストール対象を変更していけば回避できるでしょう。
(ウチのVC++6ではインストールされていないようですからカスタムインストで対処できるかと)

ただし、ファイル移動などによるその他の影響に関しては不明です。


a  2004-07-07 07:57:45  No: 53866

返信遅くなってすみませんでした。
VC++だけのインストールにしたら、できたのですが、

Visul C++6.0 Toolsプログラム  グループにVisual C++ CD-ROMからシンボル  ファイル(DBG)のサブセットをセットアップするためのアイコンを登録しました。これらのシンボル  ファイルがセットアップされなかった場合、Visual C++のデバッガは呼び出し先関数のコンテキストを決定できません。
アプリケーションのデバッグを容易にするために、これらのシンボル  ファイルをセットアップすることを強く推奨します。

とエラーが出たのですが、どのようにしたら、できるのですか?
また、「Visual C++のRead meを参考にして下さい」と書いてあったのですが、Visual C++のRead meはどこで見れるのですか?


瀬戸っぷ  2004-07-07 08:16:48  No: 53867

> Visul C++6.0 Toolsプログラム  グループに〜

[スタート]-[プログラム]-[Microsoft Visual Studio 6.0]-
[Microsoft Visual Studio 6.0 ツール]の中にセットアップ用のショートカットが作られている。
ってコトなんじゃないでしょうか?

> また、「Visual C++のRead meを参考にして下さい」と書いてあったのですが、Visual C++のRead meはどこで見れるのですか?

CD-ROMの中にありませんか?

# 主題からかなりかけ離れてきたような気がするのですが……


シャノン  2004-07-07 21:49:16  No: 53868

> とエラーが出たのですが
そいつぁエラーじゃありません。

ついでに言うと、XP では VC++ のツールからシンボルのセットアップはできません。


a  2004-07-08 08:13:19  No: 53869

本当に主題からかけ離れてしまってすみません。
「XPではVC++のツールからシンボルのセットアップはできない」と言う事は、OSの再インストールをしなければいけないと言うことですか?


シャノン  2004-07-08 10:04:23  No: 53870

シンボルってのは OS ごとに違うんです。
VC++ 6.0 のツールからセットアップできるシンボルの中に、XP のシンボルは無いはずです。
XP 用のシンボルファイルは、こちら
http://www.microsoft.com/whdc/devtools/debugging/symbolpkg.mspx
から、タダでダウンロードできます。

…インストールするとどんないいことがあるのか、俺ぁ知らないんですけど。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加