[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 12/26 23:49 / Filesize : 222 KB / Number-of Response : 898
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★初心者にVisual C++を教えるスレ★ Part29



1 名前:Part28の1000 mailto:sage [2008/02/15(金) 01:45:56 ]
Visual C++入門者・初心者からの質問を、
お兄ちゃんお姉ちゃん達が優しく、時には厳しく回答してくれるスレッドです。

■質問するにあたって
・エラーや警告のときはエラーメッセージを書きましょう。
・開発環境も書きましょう。
・できるだけ具体的に。

質問の仕方については次のページが大変参考になります。
www.hyuki.com/writing/techask.html
myu.daa.jp/osiete/

■回答するにあたって
・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。
 (MSDNのどの項目だとか、何のキーワードでGoogleするとか)
・ネタや煽りは軽く流しましょう。

過去スレ、関連スレなどは>>2-5辺り。

541 名前:デフォルトの名無しさん [2008/03/27(木) 13:50:12 ]
ヘルプヘルプってそんくらい教えてやれよ
どーせお前わかんねーんだろ?w
ぷっ

542 名前:デフォルトの名無しさん mailto:sage [2008/03/27(木) 13:58:51 ]
エラーになったとき、エラーの原因が表示されるコンパイラはありますか?

543 名前:デフォルトの名無しさん mailto:sage [2008/03/27(木) 23:43:27 ]
>>539
[プロジェクト]-[プロパティ]-[構成プロパティ]-[C/C++]-[コマンドライン]にあるよ

544 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 00:49:43 ]
>>543
あ。ありがとー
リンクの静的と動的が具体的にどう違うのかいまいち理解しきってないなぁ・・

545 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 02:16:49 ]
CRTを自分のEXE/DLLに内蔵するか、外のDLLに頼るかの違い。

546 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:38:52 ]
お。ありがとうございます

547 名前:デフォルトの名無しさん [2008/03/28(金) 20:11:35 ]
自分でクラス作るところでつまづく
Cも関数作るところでつまづいた

548 名前:デフォルトの名無しさん [2008/03/28(金) 21:45:30 ]
VC++2005で、バイナリデータをchar型の配列にいれてから、DATファイルに保存していましたが、
SQLSERVER2005にそのバイナリデータを直接保存できるようにしたいです。
varchar型のFIELDにそのデータを保存しようとすると、認識できないデータ(文字?)
があるらしく、データがそこで切れてしまいます。FIELDのデータ型をいろいろ変えたり
してみましたがやはり駄目でした(binary型などはエラーになってしまいます)。
何かヒントを頂ければ幸いです。スレ違いだったらすみません。

549 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 21:48:24 ]
初心者スレでSQLSERVER2005はないだろ



550 名前:デフォルトの名無しさん [2008/03/28(金) 21:51:27 ]
↑すいません。SQLSERVERにデータを保存する際には、DATファイルに保存
する時と同様に、char型配列にバイナリデータをmemcpyしてから、データを転送しています。
よろしくお願いします。

551 名前:デフォルトの名無しさん [2008/03/28(金) 21:52:27 ]
>>549
すいません。。。

552 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 21:52:27 ]
Microsoft Visual C++ 2008 Express Editionを使ってます
プログラムを書き込む際に普通のテキスト感覚で行うと
前の文字まで消えてしまいます (挿入ができない)

x+600 +の後に4500といれたい
しかしx+4500となって600が消えてしまいます
そういった設定はどこで行えばよいのでしょうか?

553 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:02:11 ]
まさか Insert 押せば終わりってオチじゃないよな…


554 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:08:47 ]
>>553
その通りでした すみません・・

555 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:11:51 ]
>>548
> 認識できないデータ(文字?)
> があるらしく、データがそこで切れてしまいます。

文字列型なんだから、\0がきた時点で切れるだろ。


> binary型などはエラーになってしまいます

エラーの原因を調べろよ。


556 名前:デフォルトの名無しさん [2008/03/28(金) 22:25:24 ]
>>555
ありがとうございます。

>文字列型なんだから、\0がきた時点で切れるだろ。

全く同じデータをDATファイルに保存して、そのファイルをテキストエディタで開き、
そのデータをSQLSERVERのFIELDにコピペすると、やはりデータが切れてしまいます。
データを変換する必要があるんですかね?

557 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:30:44 ]
#include <stdio.h>
void main()
{
int count;

for (count = 0; count < 5; count++) {
printf( "countは今%dです\n", count );
}
printf("aaa");
if(count==4){printf("正解です%dです\n",count);}
else{printf("残念");}


getch();
return;

}

VC++2008でデバックしましたがなぜかこれが"残念"のほうが出力されます。
countは4だと思うんですが

558 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:33:21 ]
>557
Cスレで聞けば?

559 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:36:41 ]
すいませんCスレいきます



560 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 09:00:44 ]
countの値は5

561 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 10:14:51 ]
>>556

特定のデータまたは文字長で切れるのか調べること
またFIELDのデータ型のルールに違反してないかを調べること

を勧めます。



562 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:25:27 ]
>>557
forの機能を調べなおして来い


563 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:39:00 ]
>562
お前もCスレ行け

564 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:59:18 ]
count=0
今0です表示
countが1になる。
条件式参照(for・・・にもどる。count<5なのでループ継続。
・・・
今4です表示。
countが5になる。
条件式参照。count<5なのでループ終了。

565 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 22:02:13 ]
スレ違いに気づけ

566 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 09:40:54 ]
全く関係ないんじゃないからいいんじゃない?
英語の文法の授業で先生がSpeakingの話はじめたら
「先生、今文法の授業です」っていうタイプかしら。

567 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 09:56:39 ]
落ちこぼれのために小学校の復習からやられたら迷惑

568 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 11:52:00 ]
バカは気づかない。
スレ違いでも、分かるやつが答えを1レスすればそこで終わることを。
結局何も分からないやつがアホみたいに、スレ違い、ヘルプ嫁を書き続けるからリソースも無駄遣いすることになる。
教えたくないなら完全にシカトしろ。どーせ答えられねーんだからよ

569 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 14:08:47 ]
ばかじゃん



570 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 14:11:54 ]
>559でとっくに終わってるのに

571 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 14:23:53 ]
このスレの回答者はゴミレベルが幅を利かせてるからな
557なんかは560のレスが出れば終わるだろ。
運悪くゴミに糞回答された質問者は可哀相だよ。


572 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 14:30:15 ]
というゴミレスを必死に繰返してる君はいったい

573 名前:デフォルトの名無しさん [2008/03/30(日) 15:32:35 ]
質問です。
C++の勉強をしようと思って、express editionをダウンロードしたんですが。
.NetFrameworkというのも一緒にダウンロードされました。

これって、何ですか?

574 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 15:39:00 ]
express editionはC++の勉強に使えないこともないけど
本来は.NetFramework用の開発ツールですよ

575 名前:デフォルトの名無しさん [2008/03/30(日) 15:41:44 ]
すみません。
.NetFrameworkって、何なんですか?

576 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 15:42:48 ]
ググレかす

577 名前:デフォルトの名無しさん [2008/03/30(日) 15:44:15 ]
★初心者にVisual C++を教えるスレ★

578 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 15:45:58 ]
人類にまだ正義は残っている。
www.nicovideo.jp/watch/sm930541

579 名前:デフォルトの名無しさん [2008/03/30(日) 15:47:51 ]
wikipediaで調べたら・・・
Microsoft .NET Framework(マイクロソフト ドットネット フレームワーク)は、マイクロソフトが開発したアプリケーション開発、実行環境。

WindowsアプリケーションだけでなくXML WebサービスやWebアプリケーションなどWebベースのアプリケーションなどを取り入れた環境。一般に.NETという場合.NET全体の環境を指す。

また.NET Frameworkの基盤となっている仕様はEcmaインターナショナル、ISO、JISにて標準化されており、マイクロソフト以外のベンダーが独自に実装することもできる。

実際にいくつのオープンソースによる実装プロジェクトがある。なお、CLIのマイクロソフトの実装をCLRと呼ぶ。.NET FrameworkはCLRにその他ライブラリ群を加えたものと言える。


初心者の俺には意味がわかりません。



580 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 15:52:27 ]
なんでもすぐ聞くな
調べろ
徹底的に調べろ

581 名前:デフォルトの名無しさん [2008/03/30(日) 16:22:59 ]
調べてみました。

簡単に言うと、同じプログラムで.NetFrameworkが入ってるコンピュータなら
書き直さなくても、同じように動作するってことですか?

582 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 16:40:49 ]
スクリプト言語みたいなもんです
C++の勉強がしたいならコンソールアプリで十分


583 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 16:48:02 ]
質問失礼します。
現在ゲームを製作中なのですが、複数のcppファイルで同一のヘッダを
参照すると変数の多重定義によるエラーが出てしまいます。

環境はVC2005EEで、error LNK2005でググって色々試したりしてみましたが何ともいかず、
コンソールアプリケーションですごく簡単なプログラムをコーディングして試してみてもうまくいきません。
申し訳ないのですが少しでも解決方法の手立てをお教え頂けると幸いです・・・。

584 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 16:52:55 ]
インクルードガード

585 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 16:53:23 ]
#ifndef __HOGE_H__
#define __HOGE_H__

//・・・

#endif

586 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 16:54:34 ]
#ifdef __MAIN__
#define EXTERN
#else
#define EXTERN extern
#endif

EXTERN int g_hoge;

587 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 16:58:10 ]
ここに
pc11.2ch.net/test/read.cgi/gamedev/1193935988/491

588 名前:デフォルトの名無しさん [2008/03/30(日) 17:23:06 ]
>>561
ありがとうございました。もうちょっと調べてみます。

589 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 17:26:23 ]
皆さんご返答ありがとうございます。

>>584-585,>>587
この用法は既知だったので実装し、尚且つヘッダ内でstatic変数を作成し定義することも、
関数の定義を行うこともせずにビルドしてたのですが、それでもエラーが起こるため
甚だ疑問でした。環境から考えればコンパイラが古いということはないはずなのですが・・・。

>>586
そちらの用法を実装したところ、うまくいきました。ありがとうございます。
出来れば>>585さんの記述の仕方でうまくやりたかったのですが、
何ともいかないのでこちらのやり方で何とかしてみようと思います。

しかし本当に何で#ifndefのほうはうまくいかないのか・・・。



590 名前:デフォルトの名無しさん [2008/03/30(日) 17:27:32 ]
目的が違うから。

591 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 17:34:50 ]
int main ()
{
try { LogFile logFile( "c:\\log.txt" ) ; }
catch(...) { return -1 ; }

logFile.Write( "hoge" ) ;
}
みたいに書きたいんだけど、tryのスコープにlogFileが捕らわれてしまうんだけどどうすれば解決できるでしょうか

592 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 18:28:59 ]
>>591
LogFile のインスタンスが try 内でのみ有効なのでは?
ポインタを使うのが常套手段かと


LogFile *LogFile;
try {
LogFile = new LogFile( "c:\\log.txt" );
}
catch (..) {
return -1;
}
LogFile->Write( "hoge" );
....
delete LogFile;


LogFile が ref class なら * を ^ に、 new を gcnew で置き換えればOK


593 名前:591 mailto:sage [2008/03/30(日) 18:36:17 ]
mainのreturnが複数の箇所になって、ポインタをいちいち開放するのがスタイリッシュじゃないと感じて、
オブジェクト使って自動的にデストラクトさせようという狙いだったんです。

594 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 18:47:29 ]
>>593
goto 文でエラー処理すれば?

err_1:
delete a;

err_2:
delete b;

return -1;
みたいな感じで

著名なツールでも内部でgoto文使って
コードを簡潔化してる事あるよ
あとはdefine使うぐらいしか無いんじゃ

オヤジプログラマーに「goto文使ったら減給」とか
言われかねないけどw

595 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 18:50:14 ]
どうでもいいけどスレ違い

596 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 18:52:28 ]
>>591
これでダメな理由は?
try {
  LogFile logFile( "c:\\log.txt" );
  logFile.Write("hoge");
} catch(...) {
  return -1 ;
}




597 名前:591 mailto:sage [2008/03/30(日) 18:55:55 ]
>>596
かなり簡潔に書いたけど、main内でいろいろ処理しながら、いろいろとログ書き込んでるからきびしいかと

598 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 18:56:05 ]
そんなことよりスレ違いを気にしたほうがいい

599 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 19:01:13 ]
このスレの対象ってC++なの?CLRなの?MFCなの?



600 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 19:06:35 ]
ttp://pc11.2ch.net/test/read.cgi/tech/1068359871/896

誰かご存知の方いませんか?(´;ω;`)ブワッ


センセー、C++もCLIもMS VC範囲内だと思います。

601 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 19:14:57 ]
>599
標準C/C++のスレでないことは確か

602 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 19:18:16 ]
C++をVCに含めるならVCはWinに含まれるのか?

603 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 19:33:55 ]
>>596
コンストラクタで例外が発生する場合もあるしね。

すれ違いなんて気にするな。
その方が愛が育まれる。


604 名前:デフォルトの名無しさん [2008/03/31(月) 11:37:10 ]
case WM_CREATE:
hdcMem=CreateCompatibleDC(GetDC(hWnd));
break;
case WM_PAINT:
hDC=BeginPaint(hWnd,&ps);
BitBlt(hDC,0,0,500,415,hdcMem,0,0,SRCCOPY);
EndPaint(hWnd,&ps);
return 0;

こんな感じで、ウィンドウのDCと互換性のあるDC(hdcMem)を作り
WM_PAINTでhdcMemからウィンドウのDCへコピー(画面に表示させる)・・・
というようにしたいのですが
例えばTextOutなどでhdcMemに書き込んでも
画面に何も表示されません。

教えて欲しいです。
あと、このプログラムはゲームのソースの一部ですが、この考え方って
一般的なものでしょうか?

605 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 11:59:58 ]
更新ないと描画されないからか?

606 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:55:22 ]
ビットマップ選択してないとか?

607 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 14:03:39 ]
どのcaseでtextoutしてんだ?
PAINT以外でInvalidateRectしてないとか?

てかbitmap選択してないからじゃないの?

608 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 14:34:06 ]
最初は1x1ドットのビットマップが選択されてるから、
1ドットだけコピーされてるよ。
同じ色になってなけりゃ虫眼鏡で見ればわかるよ。

609 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 12:22:11 ]
リストビューにファイルを表示させようと思い、SHGetFileInfoでファイル情報を取得したところ、ファイルの種類とアイコンが思惑と異なりました。
対象はあるアプリケーションのファイルなんですが
 ファイル種類 → システムフォルダ
 アイコン → マイコンピュータのアイコン
となってしまいます。

第一引数のLPCITEMIDLISTはフルパスを元に自作したものを使っています。
IEnumIDListのNext()関数で取得したLPCITEMIDLISTを用いた場合は正常に取得できる所を見ると、やはりLPCITEMIDLISTの自作部分に問題があると思った方がいいのでしょうか?



610 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 12:28:54 ]
そこまでわかってたらデバッガか何かで確認するだけ

611 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 13:45:21 ]
この辺が参考になるかも。
[ファイルを列挙する]
www.kab-studio.biz/Programing/Codian/ShellExtension/05.html


612 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 15:05:06 ]
>610
同じハズの2処理で結果が違うのですから、やはり何か異なるはずですよね。
もう少し追跡に集中してみます。

>611
こちらのサイトは参考資料として活用させてもらっています。
もう一度最初から読み直すなどして、もう少し理解を深めようと思います。


お二方ともありがとうございました。

613 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 15:40:57 ]
>>611

www.kab-studio.biz/Programing/Codian/ShellExtension/06.html

↑に「IEnumIDList::Next()で取得するアイテムIDリストは、たったひとつのアイテムID、つまりそのファイルかフォルダだけしか持っていません。」
て書いてある。
これが原因じゃない?


614 名前:611 mailto:sage [2008/04/01(火) 15:42:10 ]
>>612

と書きたかった。

615 名前:611 mailto:sage [2008/04/01(火) 15:57:38 ]
多分フルパスで取得したLPITEMIDLISTを先頭にたどっていけばいいんじゃないかな。
そうすれば最後はNext()で取得したLPITEMIDLISTと一致すると思う。

マイコンピュータのアイコンが表示されてしまうのは、
フルパスの先頭である「マイコンピュータ」を指してるからじゃないかな。



616 名前:611 mailto:sage [2008/04/01(火) 15:59:46 ]
>>多分フルパスで取得したLPITEMIDLISTを先頭にたどっていけばいいんじゃないかな。
「先頭に」じゃないな。「末尾に」だな。

確認はしてないので違ってたらごめんね。

617 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 16:23:02 ]
>616
いえ、ありがとうございます。
ここは多少立ち止まってでもしっかり理解したい所なので、全て試してみようと思います。

618 名前:デフォルトの名無しさん [2008/04/01(火) 17:48:04 ]
初心者に教えてくれる掲示板ということで教えてほしいのですが、
スタティックテキストの文字の色、大きさ、フォントの種類を変更したいと思っています。
初期の設定で変更し、その後は特に変更しません。
VisualC++2005のダイアログベースで作成中です。
よろしくお願いします。

619 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 18:25:29 ]
>>618
ダイアログベースってMFC?そうでない?
スタティックテキストは個別に変更したいってこと?
リソースエディタでは無理だから、大きさとフォントは、別に作ったフォントを
WM_INITDIALOGでWM_SETFONTしてやると変更できる。
色はWM_CTLCOLORSTATICメッセージでSetTextColor呼ぶとか



620 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 18:26:03 ]
>618
そのへんは普通に勉強すれば誰でもわかることだし
掲示板でいちいち説明できる分量じゃない。

621 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 18:30:53 ]
初心者に教えるスレでっせ。

622 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 18:37:09 ]
教えるのはいいけど理解できるか?

623 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 18:42:36 ]
この掲示板で説明するべき話題でないというのは同意。
ググった方が早くて確実で分かりやすいと思う。

突き放すことはないかなって思っただけです。

624 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 18:50:00 ]
まあ環境もうちょっと書いてくれないとね。
詳しく書いた後で、MFCだとどう書きますかとか聞かれたらやだしね。

適当にはしょって答えて、そのキーワードでググってもらうのがいいかと。

625 名前:デフォルトの名無しさん [2008/04/01(火) 19:19:54 ]
>619
ありがとうございます。
MFCです。スタティックは個別にそれだけを変更したいです。
その辺のキーワードを頼りに勉強してみます!

>620
初心者なんですいません。
>そのへんは普通に勉強すれば誰でもわかることだし
ということですが、その普通にを教えていただけませんか?
もちろん参考書で勉強をしていますが、各コントロールの使い方が主に載っていてそれはわかるが、応用するときにはどうしていいかわかりません。

未熟者ですいませんがキーワードとかこういうの参考になるよってのを教えていただけたらと思います。
よろしくお願いします。

626 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 19:22:22 ]
>各コントロールの使い方が主に載っていてそれはわかるが、応用するときにはどうしていいかわかりません。

>625
林本だろそれ

627 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 20:11:22 ]
本は欲しい情報が載ってないことが多いし探すのが大変。
自分はMSDNを調べたりキーワードでググったり掲示板を利用したりしている。

掲示板
rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi
hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi
m--takahashi.com/

628 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 20:15:42 ]
コントロールのデバイスコンテキスト取得

pDC->SetTextColor(0xffffff);

629 名前:デフォルトの名無しさん [2008/04/02(水) 01:29:08 ]
DLLファイルを作成するプロジェクト(A)と、そのDLLファイルを使う
プロジェクト(B)があります。AとBは別個のフォルダに収められている
ので、BからAのDLLを使うには次のことをしなければなりません。

(1) .libファイルの場所をBで設定。(コンパイル時)
(2) Bの.exeとリンクされる.dllの場所を設定。(実行時)

(1)については[プロジェクト]→[設定]→[リンク]タブで設定しました。

(2)についてはどうすればいいのでしょうか?
Aが作るDLLにはデバッグバージョンとリリースバージョンがあります。そこで、
Bの.exeがデバッグバージョンであれば、AのデバッグバージョンのDLLが、
Bの.exeがリリースバージョンであれば、AのリリースバージョンのDLLが
リンクされるようにしたいのですが。



630 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 02:02:28 ]
>>629
AとBの出力フォルダをデバッグ同士・リリース同士で揃えたらいいんじゃない?

631 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 02:13:14 ]
>>630
.exeと.dllが作成される場所はデフォルトのままにしておきたいのですが。。。

632 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 02:31:13 ]
>>631
ならBのプロジェクトのプロパティのデバッグの環境変数の設定で
Aの出力フォルダをパスに追加しておくというのはどう?

633 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 02:46:44 ]
>>632
すみません。具体的にどうやって設定したらよいか教えてもらえませんか?
[プロジェクト]→[設定]とか[ツール]→[オプション]とかは散々いじくった
のですが。。。

Visual C++6.0です。

634 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 06:53:44 ]
カスタムビルドプロセスで、Aのdllをこっちのexeの出来るフォルダにコピーするとか。

635 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 08:19:54 ]
>>633
出力はデフォルトのまま出来たDLLとかlibをコピーするのは駄目なの?
コンパイル後のコマンドでコピーすればよいと思うんだけど
あと、デバッグとリリースを分けるなら別名にしたほうがいろいろ便利だよ

636 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 10:26:22 ]
同じソリューションに入れて依存関係作っとけばよかった気がする

637 名前:625 [2008/04/02(水) 11:54:51 ]
>>626
林本です!

一応初期化のところでCreateFontでフォントを作成し、GetDlgItemでIDを取得し、SetFontでフォントを指定して文字の大きさは変更できました。
あとは色ですね。。。
もうちょっと勉強してみます!


638 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 12:05:55 ]
>>637
色は
OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)

if (pWnd->GetDlgCtrlID() == IDC_HOGE)
{
  pDC->SetTextColor(RGB(0xff,0,0));
}
とか }


639 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 18:23:21 ]
デバッグウインドウに文字を表示するにはどうすればよいでしょうか?



640 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 18:29:20 ]
以前学校の授業でC言語を簡単に勉強した事があるのですが
C++とCはまったくの別物と考えたほうがいいのでしょうか?

また、勉強用に独習C++あたりを購入しようかと思っているのですが、他におすすめの入門用の書籍などありますか?

641 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 18:31:58 ]
あまり別物でないように使う事も出来るけど、
フルに機能を利用すれば全くの別物になる。

入門書は
・ 独習 C++
・ C++ プライマー 第4版
・ ロベールの C++ 入門教室
の3つを実際に店頭で読んでみて決めてみたら。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<222KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef