Windows環境でのプログラミングに馴れていません、基本的なことかもしれませんが教えて下さい。VC++6.0、NT4.0で作成しています。
*.rcでリリース情報を作成しているつもりなのですが、ビルドされたファイルのプロパティを見てみると、「ファイルの情報」と「セキュリティ情報」しかなく、「バージョン情報」のタグが作成されませんでした。
プロパティの「バージョン情報」タグを作成するには、どうしたらいいんでしょうか?
作成された場合とされなかった場合には、どのようなところに違いがあったんでしょうか?よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

私のところでは、プロジェクトを作成した後に、ファイル→新規作成→リソーススクリプト としてから、挿入→リソースで、Versionを新規作成して、適当に値を編集してビルドすると、プロパティにタグが増えています。


nakacoroさんはどういうやり方ですか?

この回答への補足

Resが遅くてすみません。
私のやり方
私のところでは、あるツール・キットを使っています。このWizardから、自動的に2つのプロジェクトを含む1つのワークスペースが生成されます。
2つのプロジェクトのうち一方は、ビルドするとプロパティに「バージョン情報」タグが作成されているのですが、もう一方はビルド後、タグが作成されませんでした。そこで、「挿入→リソース」でVersionを作成してビルドしました。
inthefloiさんの回答の「リソーススクリプトを新規作成」をしたところ、「resouce.h Script1.rcが使用しています。」と言うメッセージが出て、既存のファイルに置き換えるようにしたところ、タグができました。ありがとうございます。
自動生成されたときに、リソーススクリプトがなかったんですね。

補足日時:2001/10/22 12:09
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2001/10/22 12:08

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qデバッグビルドとリリースビルドで計算結果が違う

こんにちは。
VC++.netで暗号化ソフトを作っているんですが、デバッグモードで実行した結果と、リリースモードで実行して得られる結果が違うので困っています。
原因としては、何が考えられるでしょうか?

warningで、「warning C4267: '=' : 'size_t' から 'int' に変換しました。データが失われているかもしれません。」と表示されましたが、(int)でキャストしてから警告は出なくはなっているんですが。

もう一つ、「LINK : warning LNK4089: 'SHELL32.dll' へのすべての参照は /OPT:REF によって廃棄されます。」と出ていますが、これは関係なさそうですので無視しています。

もしかして、同じような経験をされた方がいるんではないかと思い質問しました。
よろしくお願いします。

Aベストアンサー

値を初期化しないで使用した時に、この現象が発生する可能性が高いです。
例えば、関数のなかで、int a;と変数を動的変数として宣言し、このaを初期化せずに、
int b = a*a;
を実行した場合、デバッグモードの場合は、0になる可能性が高く、リリースモードの場合は、不定(前回のスタック領域で使用された値)になります。

Qリリースビルド時のエラー

Visual C++ 2005にて開発しています

リリースビルド時に以下のようなエラーがでます

ALINK: error AL1057: 実行可能ファイルをサテライト アセンブリにできません。カルチャは常に空でなければなりません。

どのように対処したらよいでしょうか?

Aベストアンサー

以下のページの下の方に「AL1057」の情報があります。
http://msdn2.microsoft.com/ja-jp/library/kchwc1f1(VS.80).aspx

Qリリースビルドで遅くなる

非常に大量のコードを書いた後で気づいたので
挙動からおそらくその辺だと「思われる」のですが

Windows XP SP 3で、Visual C++で
デバッグビルド・リリースビルドしたときの速度を比較してみると
おそらく、メモリマップドファイル絡みの個所で 
現状なぜかリリースビルドの方が遅くなります。


巨大なファイルを1度扱ってから再度ほぼ同じ個所を使用した時
デバッグビルドではその間にアプリケーションを1度終了したとしても、その後別に巨大なファイルを使ったりしなければ
どうもシステム的に(?)何らかのキャッシュが効いているようで
1回目で23秒程度かかる処理が、2回目以降は7秒弱で出来てしまいます。
(これは100回やったら99回以上はなるんでは?というくらい安定しています)
対してリリースビルドでは
最初の1回は同じくらいですが
2回目以降でも16秒程度はかかってしまう感じです。

なお、そのけた外れに長い演算の末に出来上がるfloatの配列は、デバッグビルド・リリースビルドで端から端まで完全に一致する、という確認もできています。


アプリ的に
2回目以降の時間を短縮できた方が非常に都合が良いのですが

ビルドの設定はほとんど同じですが、これは仕様でしょうか?


もしこれがキャッシュの方式の問題、であるのなら
Windows APIなどを使うことにより対処可能な問題でしょうか?


あるいは、デバッグビルド・リリースビルドの違いによるものではなく
このアプリケーションのデバッグビルドによって出来た実行ファイルの方に
以前関連付けを行ったりするように(アイコンや、独自ファイル形式ダブルクリックで開けるように)
レジストリを書き換えたのですが

これによってシステムから「なんらかの優先事項」を享受できるようになっているため
だったりする、という可能性もあるのでしょうか?

非常に大量のコードを書いた後で気づいたので
挙動からおそらくその辺だと「思われる」のですが

Windows XP SP 3で、Visual C++で
デバッグビルド・リリースビルドしたときの速度を比較してみると
おそらく、メモリマップドファイル絡みの個所で 
現状なぜかリリースビルドの方が遅くなります。


巨大なファイルを1度扱ってから再度ほぼ同じ個所を使用した時
デバッグビルドではその間にアプリケーションを1度終了したとしても、その後別に巨大なファイルを使ったりしなければ
どうもシステム的に(?)何らか...続きを読む

Aベストアンサー

VCのVerがわかりませんが、昔経験があります。
確かリンカのオプションでサイズ重視、速度重視とかの設定を変えると速くなりました。
ポインタをたくさん使う場合は速度重視の方が速かった気がします。


ほかにもマニフェストの組み込みとかいろいろ設定があるのでいじってみてください。

デフォルトだとコマンドラインからコンパイルした方がサイズが小さく高速です。

cl でコンパイルリンクします。

QVS2005 リリースビルドしたEXEが他のPCで開けない

VS2005 C++ ExpressでWindowsフォームアプリケーションをC++/CLIで作成しています。
(Standardを買う予定なのですが、まだ買いにいけていないのでExpressのままです)
OSはWinXP Pro-SP2です。

リリースビルドしたexeファイルを、当該PCでは実行可能なのですが、
exeを他のPCにコピーして実行すると、
「このアプリケーションの構成が正しくないため、アプリケーションを開始できませんでした。アプリケーションを再度インストールすることにより問題が解決する場合があります」
というダイアログが表示され、終了してしまいます。

検索してみたところ、いくつか対処法があったのですが、試した中では解決できませんでした。

◎ソリューションのプロパで、[構成プロパティ]-[C/C++]-[コード生成]で、ランタイムライブラリを「マルチスレッドDLL/MD」を「マルチスレッド/MT」に変更
   →ビルド時に「/MTと/clr:pureは同時に使用できません」エラー
   →/clr:pureを/clrのみにしても同じ。
   →「共通言語ランタイムサポートを使用しない」にすると、
     「マネージターゲットコードには/clrが必要」でビルドエラー
   →→→/MD /clr:pureに戻しました

◎exeと同じディレクトリにmanifestを作成
     ▽ファイル名はMicrosoft.VC80.CRT.manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
type="win32"
name="Microsoft.VC80.CRT"
version="8.0.50727.762"
processorArchitecture="x86" >
</assemblyIdentity>
<file name="msvcr80.dll"/>
</assembly>

versionについては、VC++Expのバージョン情報で表示されるものに変更。
   →同じように、exe実行時にエラー発生、同じダイアログ
   →msvcr80.dllを同じディレクトリに置いても同じ

◎Platform SDKのDependency Walkerでexeをチェック
   →MSJAVA.DLLが見つからないという赤いメッセージが出る。
   →ファイル名をPC内で検索したが、見つからず。
     (VS2005ExpがインストールされたPCも、別のXPが入ったPCも)
   →試しに、vectorで拾った実行OKなDLL不要exeアプリをD-Walkerに
     かけてみたら、同じようにMSJAVA.DLLが見つからないという
     メッセージが表示された。 でも当然このexeはどのPCでも実行OK。

◎新しくプロジェクトを作成。 ボタンをひとつ配置し、
 イベント発生の関数のみ作成。 ただし中身はカラ。
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { }

   →デバッグビルドもリリースビルドも問題なし。 でもexeを
     別のPCにコピーすると同じダイアログが出てエラー終了

◎http://support.microsoft.com/kb/814496/jaに載っている方法:
  Visual Studio .NET プロジェクトで app.config ファイルの <xml> を
  UTF-8 に変更し、UTF-8 エンコードで app.config ファイルを保存します。

   →app.configファイルが検索しても見つからず


これは何が悪いのでしょうか?
ライブラリ・ランタイム関連であろうということはわかるのですが、
解決方法がわかりません。
よろしくお願いします。

VS2005 C++ ExpressでWindowsフォームアプリケーションをC++/CLIで作成しています。
(Standardを買う予定なのですが、まだ買いにいけていないのでExpressのままです)
OSはWinXP Pro-SP2です。

リリースビルドしたexeファイルを、当該PCでは実行可能なのですが、
exeを他のPCにコピーして実行すると、
「このアプリケーションの構成が正しくないため、アプリケーションを開始できませんでした。アプリケーションを再度インストールすることにより問題が解決する場合があります」
というダイアログが表示...続きを読む

Aベストアンサー

対象のPCですが.NET Framework Version 2.0
の実行環境ははいっているのでしょうか?
まず対象のPCに以下の2つのパッケージをインストールして試してください。

「Microsoft .NET Framework Version 2.0 再頒布可能パッケージ (x86)」
http://www.microsoft.com/downloads/details.aspx?familyid=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=ja

「Microsoft Visual C++ 2005 再頒布可能パッケージ (x86)」
http://www.microsoft.com/downloads/details.aspx?FamilyID=32bc1bee-a3f9-4c13-9c99-220b62a191ee&DisplayLang=ja


>UTF-8 に変更し、UTF-8 エンコードで app.config ファイルを保存します。
http://support.microsoft.com/kb/814496/ja
ですが対象のアプリケーションが
Microsoft Visual Studio .NET 2002
になっており今回は関係ないと思います。
(最終更新日も2003年6月19日ですので)

対象のPCですが.NET Framework Version 2.0
の実行環境ははいっているのでしょうか?
まず対象のPCに以下の2つのパッケージをインストールして試してください。

「Microsoft .NET Framework Version 2.0 再頒布可能パッケージ (x86)」
http://www.microsoft.com/downloads/details.aspx?familyid=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=ja

「Microsoft Visual C++ 2005 再頒布可能パッケージ (x86)」
http://www.microsoft.com/downloads/details.aspx?FamilyID=32bc1bee-a3f9-4c13-9c99-2...続きを読む

QVC++6で、バッチでビルドを掛けたいのですが・・・

VC++6で、同じようなプログラムを複数作成しなければ
いけなくなったのですが、VS6を開いて、ビルドを掛けると
面倒なので、複数本をいっぺんにビルドしたいのですが、
よい方法は、あるでしょうか?
よろしくお願いします。

Aベストアンサー

「複数のexeファイルで構成された1つのプロジェクト」が作れたと思います。

そのプロジェクトを開いて「すべてビルド」を行うと全部のexeをビルドしに行く筈です。


人気Q&Aランキング

おすすめ情報