• 締切済み

VS6.0 と OS の関係

VS6.0 でないと動かないライブラリを使用して課題がでました。 学校である程度できた課題を連休を利用して自宅のPCで制作する事にしました。 ですが、問題が発生しました。 持ち歩きしてるノートPCだと正常に動くのに、 自宅のPCだとインクルードエラーが発生します。 最初は文法エラーだと思い何回も見直しやり直しをしましたが、 それといったおかしな場所は見つかりませんでした。 それにノートPCから自宅PCに写して何も手を加えてない場合正常にうごきました。 それで、一文字だけ書き換えたところエラーが発生しました。 どうやらフォントとかのエディタに問題があるのではないかと思います。 なにせいつも使ってるのは.NETで VS6.0って古いものですからどうすればよいか… どうか助けてくださいお願いします。

みんなの回答

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.2

エラーを見る限り、先行ヘッダのインクルードに失敗して定義が見つからないようなので、学校では通ったということなら、このあたりが原因と思われます。 ・家と学校で、使っているDirectXの版が不一致 ・インクルードパスの設定などが異なり、参照順番が違う > .(ピリオド)ひとつだけ消して自宅マシンで再入力しました。 -- snip -- > それにノートPCから自宅PCに写して何も手を > 加えてない場合正常にうごきました。 書き換えを行う前は単に学校で作ったバイナリが残っていたためそのまま起動でき、修正をしたことにより自宅ではじめてビルドが行われ、エラーが出たのではないでしょうか。 手元に、学校から持ってきたばかりのオリジナルが残っていれば、再検証もできそうですが。 > ノートPCから自宅マシンにコピー > ▼ > テストとして一度手をつけないでビルド >    ▼ > 問題なく起動した この時点で、クリーンビルドをしたわけでないのですね。 対象のファイルは、実際にビルドされていましたか。 アウトプットの出力結果が残っていればいいのですが。 > あくまで思い込みですが、Adobeなど特殊なフォントも入ってますので。 これはありえません。 システムのフォントが変わろうが、テキストであるソースのコンパイルには影響しません。 このコンパイルエラーとはまず無関係です。 現状推測できる範囲では、このあたりを順に確認してもらうしかなさそうです。 ・学校と、家の PlatformSDKやDirectXのバージョン。 ・学校と、家の VC6の設定。 特に、VC6ではインクルードパスの設定順を変えないと、マシンに最新の物を入れても、古いデフォルトの PlatformSDKやDirectXを参照してしまいます。 # 根拠はないですが、非常にありがちなトラブルで、 # 一番怪しいのはこれだと思います。 また、VC6はマイクロソフトのサポートももう切れてますので、最新過ぎるこれらのライブラリはVC6ではうまく動かないものもあります。(これは2004なら多分平気なはず 力技だと、LPDIRECTXFILEDATA の定義ヘッダ (手元だとdxfile.h)など足りないといわれるものを、 順次追加してみるというのもアリかも知れません。

nVIDIA
質問者

お礼

ありがとうございました。 あえて作者の先生と相談してみます。

全文を見る
すると、全ての回答が全文表示されます。
  • MrBan
  • ベストアンサー率53% (331/615)
回答No.1

> VS6.0 でないと動かないライブラリを使用して課題がでました。 このライブラリは、どんな形式ですか。 ソース提供ですか、静的/動的ライブラリですか。 > 自宅のPCだとインクルードエラーが発生します。 エラー内容をできるだけ加工せずに提示してください。 また、エラーが発生するのはライブラリのビルドですか。 ライブラリを使うプログラムのビルドですか。 >それで、一文字だけ書き換えたところエラーが発生しました。 書き換えた内容と方法を提示してください。 > それにノートPCから自宅PCに写して何も手を > 加えてない場合正常にうごきました。 バイナリが残っていた等の可能性は考えられませんか。 操作手順や状況が不明確です。 コピー時点でバイナリが残っていたりしましたか? > どうやらフォントとかのエディタに問題があるのではないかと思います。 思った根拠は何ですか。(書かれた情報だけでは特定しがたい。 もし仮に、本当に文字コード等のせいであれば、改行がCRLFでないとか、文字がSJIS以外になっているなども考えられなくはありませんが、情報不足で憶測の域を出ません。 # 本当に単にエディタの問題だけであれば、 # ソースは単なるテキストファイルですから、 # それこそメモ帳でも編集できます。 書かれている話だけでは、VC6に対応していない コードを渡して混乱したようにも見えます。 具体的に何をしたらどうなったのかが見えてきません。

nVIDIA
質問者

補足

> VS6.0 でないと動かないライブラリを使用して課題がでました。 ライブラリとだけ知らされて 静的・動的 ソース提供 などは知らされていませんね。 > 自宅のPCだとインクルードエラーが発生します。 --------------------構成: NmBase4 - Win32 Debug-------------------- コンパイル中... GameMain.cpp c:\...\d3dfile.h(53) : error C2061: 構文エラー : 識別子 'LPDIRECTXFILEDATA' がシンタックスエラーを起こしました。 c:\...\d3dfile.h(108) : error C2061: 構文エラー : 識別子 'LPDIRECTXFILEDATA' がシンタックスエラーを起こしました。 c:\...\d3dfile.h(110) : error C2061: 構文エラー : 識別子 'LPDIRECTXFILEDATA' がシンタックスエラーを起こしました。 c:\program files\microsoft directx 9.0 sdk (october 2004)\include\dsound.h(305) : error C2146: 構文エラー : ';' が、識別子 'dwReserved1' の前に必要です。 c:\program files\microsoft directx 9.0 sdk (october 2004)\include\dsound.h(305) : error C2501: 'DWORD_PTR' : 識別名を宣言するのに、型が指定されていません。 c:\program files\microsoft directx 9.0 sdk (october 2004)\include\dsound.h(305) : error C2501: 'dwReserved1' : 識別名を宣言するのに、型が指定されていません。 c:\program files\microsoft directx 9.0 sdk (october 2004)\include\dsound.h(306) : error C2146: 構文エラー : ';' が、識別子 'dwReserved2' の前に必要です。 c:\program files\microsoft directx 9.0 sdk (october 2004)\include\dsound.h(306) : error C2501: 'DWORD_PTR' : 識別名を宣言するのに、型が指定されていません。 c:\program files\microsoft directx 9.0 sdk (october 2004)\include\dsound.h(306) : error C2501: 'dwReserved2' : 識別名を宣言するのに、型が指定されていません。 cl.exe の実行エラー >それで、一文字だけ書き換えたところエラーが発生しました。 これが書き換えた一行です。 v[3].p = D3DXVECTOR3 (0.0f, 1.5f, 0.0f); .(ピリオド)ひとつだけ消して自宅マシンで再入力しました。 > それにノートPCから自宅PCに写して何も手を > 加えてない場合正常にうごきました。 バイナリといわれてもそこまでは知らないです。 ただ作業の履歴としましては ノートPCから自宅マシンにコピー ▼ テストとして一度手をつけないでビルド     ▼ 問題なく起動した ▼ 自宅マシンで1文字書き換えてビルド ▼ エラーが9つ発生! > どうやらフォントとかのエディタに問題があるのではないかと思います。 あくまで思い込みですが、Adobeなど特殊なフォントも入ってますので。 >具体的に何をしたらどうなったのかが見えてきません。 たぶん私もそう思います。ですが事実ですので。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CLIでのライブラリのリンク方法について

    VS2003のManagedC++では簡単にすることができたネイティブなライブラリを、VS2005のC++/CLIで利用することができません。 VS2003では、ファイルのインクルード、インクルードパスの追加、ライブラリのリンク、ライブラリパスの追加を行うと正しくリンクすることができたライブラリを、同じ方法でリンクしようとすると、VS2005ではコンパイルに失敗します。 ネイティブなライブラリをリンクするので、/clr:pureモードではなく、/clrモードにすればできると思い、試してみたのですが、 error LNK1314: COFF シンボル テーブルが壊れているか、または無効です。未定義のスタティック シンボルまたはラベル シンボルです。 というエラーが起きてコンパイルすることができません。 clrモードのほかに何か設定すべき項目があるのでしょうか。

  • vsにてこんなこと初めての問題について

    この8月お盆で田舎に10日ほどいってまして、自宅を留守にしてました 最後にpc動かしたのが8月11日でしたそのとき問題なかったのでこの日を修復ポイントとしてましたosはxp-sp1です帰宅したのが8/24 ですが、pcを立ち上げると、vsのウィルス自動検知が停止になっており更新しても有効にならずエラーとして、システム再インストール要求が発生しますosシステムの修復をおこないましたが、現状変わらず ウィルス検査もできませんアップデート(たぶんパターンファイル?)とファイアウォール個人情報監視については有効になっていますが、不安です回復させたいのですこの場合の処置おしえてくださいませ いまのところシステム(os)全体は問題なさそうですウィルスによる問題であれば、サイトからブラウザ経由で進入したと見られますプロバイダにもウィルスチェックしていますので・・・はてはて困りました 再インストール(cdはあります)は、どうやって行うのでしょうか?お待ちします

  • C#:VS2008について

    現在VS2008C#で開発を行っています。 そこで、デバッグで実行するとSaveFileDialogの表示時に下記のエラーが発生しています。 "OLE が呼び出される前に、現在のスレッドが Single Thread Apartment (STA) モードに設定されていなければなりません。Main 関数に STAThreadAttribute が設定されていることを確認してください。 この例外はデバッガがプロセスにアタッチされている場合にのみ発生します。" しかし、EXEで実行した場合上記エラーが発生せず、正常にSaveFileDialogが表示されます。 そこで質問なのですが、デバッグで実行した場合と、EXEで実行した場合では何か違いがあるのでしょうか?また、なぜ上記エラーはデバッグ実行時のみ発生しているのでしょうか?回答よろしくお願い致します。

  • VS Express C++でビルドできません

    VS ExpressでCのプログラムを書いてみようかと思ってインストールしたのですが、保存場所がおかしかったのか簡単なコードで#include <studio.h>と書いたのですが参照できず C1083というエラーが出ています。 直し方がわからないのですがどうすればよいでしょうか? インストールするときに、DドライブにすればCドライブのエリア節約になると思ったのですが、終わってみると、Dに390MBぐらいのデータがありました。 その上、Cにもいつの間にかデータフォルダができていて、Cのマイドキュメント下に1MB以下のエリアがあって、その下にはItemTemplate、ProjectTemplate、などあるのですが、中身が空っぽです。 DのところにVC>Include>stdio.hがあります。 今後設定せずにライブラリを見れるように設定して直せないかと思っているのですが、やり方がわかりません。。。。。 よろしくお願い致します。

  • VS2006のバージョンアップで・・

    私はPCを3台でLANを組んでいます。 一昨日1台だけバージョンアップしたところ正常に 終了しましたが、無線LANのIPアドレスが正常に取得できない現象が発生し、VS2006のファイアウォールを無効にしてウィンドウズのファイアウォールを使用して対処しました。 しかし、昨日バージョンアップしたもう1台のPCは、質問者のかたと同様の症状となり完全に起動しなくなってしまいました。残りの1台のバージョンアップは見合わせています。 起動しなくなったPCはやはりリカバリーが必要でしょうか? リカバリーをしたことがないのでその方法を教えていだだけると助かります。なんにしても年末に迷惑な話ですね。

  • VS2003とVS2005におけるActiveXの違いについて

    お世話になります。 テンプレートのまま何も追加してない 空っぽのActiveXに署名してFreeBSDに置いて Windowsから実行しようとしています。 ひと月ほど前にVS2003で上記のことを行い、 XPからIE6,IE7,IE8で動作を確認しました。 最近、VS2005で同様のことを行ったところ、 XP+IE6でインストールまで成功するものの、 実行されないという現象が起こりました。 ※インストールの成功は  C:\Windows\Downloaded Program Filesに  入っていることで確認。  また、サーバのHTMLをローカルにコピーすると  正常にActiveXが実行可能。 そこで、もう一度VS2003に戻ってひと月前と 同じ手順でプロジェクトを作ったところ、 新しいプロジェクトで作ったActiveXも、 VS2005版と同じ現象が起こりました。 その際のエラーログは、次のようになりました。 ------------------------ 以下ログ ------------------------ *** Code Download Log entry (26 Jun 2009 @ 13:58:12) *** Code Download Error: (hr = 800c0400) Unknown Error!! Operation failed. Detailed Information: CodeBase: http://www.xxxxx.com/Plain2003.cab CLSID: {DDC859E4-5589-47BF-B14D-71FCEA506810} Extension: Type: LOG: Reporting Code Download Completion: (hr:800c0400 (FAILED), CLASSID: ddc859e4..., szCODE:(http://www.xxxxx.com/Plain2003.cab), MainType:(null), MainExt:(null)) --- Detailed Error Log Follows --- LOG: Download OnStopBinding called (hrStatus = 0 / hrResponseHdr = 0). LOG: URL Download Complete: hrStatus:0, hrOSB:800c0400, hrResponseHdr:0, URL:(http://www.xxxxx.com/Plain2003.cab) LOG: Reporting Code Download Completion: (hr:800c0400 (FAILED), CLASSID: ddc859e4..., szCODE:(http://www.xxxxx.com/Plain2003.cab), MainType:(null), MainExt:(null)) ------------------------ ログ以上 ------------------------ 残っていたひと月前のActiveXに署名を付けて 試したところ、正常に動作しましたので、 署名を付けるプロセスについては問題ないものと 思われます。 一方、プロジェクトを作るプロセスですが、 ・新規 - ATLプロジェクト ・ソリューションエクスプローラを右クリック  追加 - クラスの追加 - ATLコントロール をしているだけです。 本当に同じように作っているか、心配なので、 ディレクトリごとDiffを取ってみると... ぜ~~んぜんちが~~~う。 とても同じ手順で作ったとは思えません。 後からVS2005を入れたせいで、 VS2003がおかしくなったのではないかと 思うくらいですが、 私が間違っているかもしれません。 目的はVS2005で動作するActiveXを作ることです。 この現象について何かお気づきの点があれば ご教授願います。

  • OS再インストール後、接続ができない

    すべてHDDをフォーマットしてwindows xpを再インストールしました。 PCはDELLのノートなのですが、重要マークの付いているものは全てDLしました。 そこでISPはYAHOOのADSLですが、 「おまかせ!BB」のCDを挿入したところ、 STEP3のモデムにおいて、 モデムもあるし、ルータのランプも正常ですが、IPアドレスを取得できませんでした。 というエラーがでました。 これはどうしたら解決できるでしょうか?教えてください。 なお、友人のPCを借りてUSBでつないでいますので、ルータなどには問題はないと思われます。

  • ネットに接続するとアプリケーションソフトの調子がおかしい

    質問させてください。大変困っております。私はDellのノートパソコンを使用しているのですが、 自宅からネットに接続した場合、Microsoft Office Ward 2007 、 Corel Painter Xなど一部のソフトが起動に非常に時間がかかる、すぐにフリーズする(ワードであれば数式エディタを挿入しようとした際、高確率でフリーズ)などの問題が発生します。 大学からネットに接続した場合はこのような問題は発生しません。自宅でネットに接続しているときにのみこのような問題が発生します。自宅でもLANケーブルを抜いておけばこのような問題は発生しません。(ネットに接続というのはインターネットを利用している状況ではなく、インターネットを利用できる状況です。インターネットを利用していなくてもLANケーブルがさしてあればこのような問題は発生します) ですので、自宅の回線とこのパソコンの相性?が悪いのでしょうか。ちなみに自宅にもう一台あるTOSHIBAのノートパソコンはネットに接続していてもこのような問題は発生しません。 どなたか解決策を教えていただけませんか。

  • 無線LANがプツプツ切れるようになりました。

    職場でノートPCを無線で使用していました。 その時は問題ありませんでした。 連休前にそのノートPCを自宅に持って帰り、自宅で無線LANの設定をして使っていました。 そして今日職場でネットを繋いでいたのですが、約10秒おきにネットがプツプツ切れるように なってしまいました。一応「修復」もやってみましたが改善しません。 改善策がお分かりの方、いらしたら教えて頂けましょうでしょうか。 お願いします。

  • OSインストール後にエラーが発生します。

    ノートパソコン(NEC VersaProNX VA33D)にWindows98(リカバリCDじゃないです)を入れようとして、 インストールを行いました。 インストール後起動したら、一瞬、デスクトップが表示されたかと思うとすぐに、 「例外06が 0000:00000017で発生しました。」や「例外OEが 0167:BFF9E2DBで発生しました」など、ブルーバックのエラーが表示され、正常に起動できません。 どうすれば良いのでしょうか、教えて下さい。 よろしくお願いします。

このQ&Aのポイント
  • 自動車保険契約中の配偶者が新たに車を契約した場合、結婚前の事故歴によって等級が変動するのか疑問です。
  • 自動車保険は1台につき1契約と聞いており、配偶者が新たに車を契約する場合、私自身の等級に影響はあるのか調べています。
  • 結婚後、私の車を配偶者が使用し、新たに自動車保険を契約した場合、結婚前の事故歴によって等級は影響されるのか教えてください。
回答を見る