★初心者にVisual C++ ..
[2ch|▼Menu]
175:デフォルトの名無しさん
09/03/29 13:57:23
あっ、良く確かめずに書いてすみません
ちゃんと調べてから書き直します

176:デフォルトの名無しさん
09/03/29 14:00:47
>>172 >>175
おい、偽者が何やってるんだ。

177:デフォルトの名無しさん
09/03/29 14:05:07
C++/CLIスレのがよさげ
あと、試してみたほうが早い気が

178:デフォルトの名無しさん
09/03/29 14:05:13
以上すべて自演でした

179:デフォルトの名無しさん
09/03/29 14:07:30
どうも失礼しました
これからは自分で試してから書くことにします

180:デフォルトの名無しさん
09/03/29 14:09:30
>>178 >>179
こら、いい加減にしろ

181:デフォルトの名無しさん
09/03/31 14:54:21
どなたか>>157について、よろしくお願いしますm(_ _)m

182:デフォルトの名無しさん
09/03/31 15:03:19
無理じゃない?
行間の空くフォント探してくるとか

183:デフォルトの名無しさん
09/03/31 19:19:04
できないことはないな
ただ全然興味ないから完全スルー

184:デフォルトの名無しさん
09/03/31 22:01:59
VC++ 2008 EE
0からのゲームプログラミングというサイトでスケルトンプログラムを
ダウンロードしビルドしたのですが、
1>c:\users\○○○\documents\visual studio 2008\projects\samplestg\source\application.cpp(537) : fatal error C1010: プリコンパイル ヘッダーを検索中に不明な EOF が見つかりました。'#include "stdafx.h"' をソースに追加しましたか?
というエラーが出てしまい実行できません。

Winプロジェクトで空のプロジェクト選択をし、プロジェクトのプロパティで
プリコンパイル済みヘッダーを使用するに設定してもできませんでした。
よろしくお願いします。


185:デフォルトの名無しさん
09/03/31 22:09:29
スケルトンだったら自分で作ったスケルトンとくらべてみればわかるだろ

186:184
09/03/31 22:29:16
私自身はスケルトンプログラムは作っていません。
0からのゲームプログラミングというサイトで、
サイト管理人が作ったスケルトンプログラムをダウンロードし、
ビルドしてくださいとあったので流れに従って進めたところ、
エラーが表示され先へ進めなくなったしまったんです。


187:デフォルトの名無しさん
09/03/31 22:38:30
そこのサイト管理人にビルドできないと言ってやればいいだけ

188:デフォルトの名無しさん
09/03/31 22:39:13
stdafx.cpp→プリコンパイル済みヘッダーを作成する

189:デフォルトの名無しさん
09/03/31 23:29:27
2004年ごろから放棄されてるサイトのようだから
今大幅修正しないと使いものにならなくて投げ出したんだろ

190:デフォルトの名無しさん
09/04/01 09:58:12
「プリコンパイルヘッダーを使用しない」にしてみるという知恵は回らんのかw

191:デフォルトの名無しさん
09/04/01 11:26:05
一行追加すればいいじゃん

192:デフォルトの名無しさん
09/04/01 18:30:28
>>172 >>175 >>178 >>179 は、派遣を解雇されたからって、最低な書き込みするな。
書いた本人のふりして妨害するな。

193:デフォルトの名無しさん
09/04/01 19:05:59
>>192
そんな怒ってんなよ
たかが2chにマジになるな。
だいたい派遣を解雇されたヤツは今頃2chなんてやってらんねぇんじゃねぇのかな?

194:デフォルトの名無しさん
09/04/01 21:49:18
10年ほど前に買った新Visual C++6.0 シニア編ですが
その中のchapter 26コントロールをコードで配置するで

CButton* myBTN = new CButton();
myBTN->Create("実行", BS_PUSHBUTTON | WS_VISIBLE , CRect(10, 10, 100. 40), this, IDC_BUTTON1);

などとありますがnewを使っているのにDestroyWindowを使っている形跡がありません。
CFramewndなどでは勝手にdelete this などとしているようですがCButtonとかは何もする必要はないのでしょうか。
このサンプルプログラムではCDialogを継承したものです。
リソースエディタ以外で手動で作ったコントロールも自分で削除しなくてもいいのでしょか?



195:デフォルトの名無しさん
09/04/01 22:19:00
new したものは delete しなきゃダメ

196:デフォルトの名無しさん
09/04/01 22:32:38
>195
CButtonはCWndの継承ですがディストラクタで勝手に
NCDestroyで勝手にやってはくれないのでしょうか?
私自身もあんまりよく分かっていないのですが。


197:デフォルトの名無しさん
09/04/01 22:36:18
CButtonのデストラクタにブレイクポイント置いて、デバッグ開始したらわかるんじゃね?

198:デフォルトの名無しさん
09/04/01 22:41:05
>>196
CWnd のソース読めばわかることだろ。MFC のソースは HDD の肥やしじゃないぞ。

199:デフォルトの名無しさん
09/04/01 22:46:11
>>197
んなことしなくても、デバッグモードで実行したら、終了時にメモリーリークがあれば表示される。

ちなみに、CWnd::PostNcDestroy() のソースはこうなっている。

void CWnd::PostNcDestroy()
{
// default to nothing
}

200:デフォルトの名無しさん
09/04/01 22:55:01
>newを使っているのにDestroyWindowを使っている形跡がありません
そもそもこのふたつには関連性がないだろうに

201:デフォルトの名無しさん
09/04/01 23:21:50
DestroyWindow
指定されたウィンドウが親ウィンドウやオーナーウィンドウのときは、
その子ウィンドウやオーナー付きウィンドウも自動的に破棄します。
このとき、先に子ウィンドウやオーナー付きウィンドウを破棄してから、
親ウィンドウやオーナーウィンドウを破棄します。

なのでDestroyWindowは不要
ただしクラストやメモリ管理とは別問題

202:デフォルトの名無しさん
09/04/02 00:12:30
>ただしクラストやメモリ管理とは別問題

確かに別問題ですね。
新Visual C++6.0 シニア編にdelete処理が
載っていないのでおかしいと思ってたのですが
それとWindowの破棄とは直接関係ないですね。

どこかでdelete処理されているのではないかと思って
相談したのですが自分でやらないとダメですね。


203:デフォルトの名無しさん
09/04/02 00:48:24
そろそろ、新Visual C++6.0 シニア編を燃やして
本格的にWindowsプログラミングを学んではいかがでしょうか。

204:デフォルトの名無しさん
09/04/02 03:24:54
C++でDTM支援ソフトを作ったことがある人はいませんか?

Dominoみたいなのが作れるようになるまでになりたい…。
出来る限りフリーで…。

205:デフォルトの名無しさん
09/04/02 10:08:38
16bitのころシーケンサ書いたけどな、、、最近はそっち方面やってないな
って聞いてどうすんだw

206:デフォルトの名無しさん
09/04/02 13:04:20
ぶっちゃけCでも何でも余程技術がない限りライブラリを使うことになりますよね
だったら最初からスクリプト言語でいいじゃんって思ったんですが
間違ってます?

207:デフォルトの名無しさん
09/04/02 13:27:08
それでいいと思うならそれでいいだろ。
人に聞くことでもないな。

208:デフォルトの名無しさん
09/04/02 14:35:31
>>206
現実スクリプト言語が流行ってない事を考えれば自ずと答えは導き出せるのでは

209:デフォルトの名無しさん
09/04/02 15:08:24
スクリプトキディってことじゃね?

210:デフォルトの名無しさん
09/04/02 20:20:29
でもスクリプト言語ってはっきり言っているような。
>>206
がスクリプト言語という言葉を理解しているという仮定の下で話すと、
>ライブラリを使うことになり
  ↓
>スクリプト言語でいいじゃん
ここの論理的な演繹がおかしいと感じるのは俺だけではないはずだ。

211:デフォルトの名無しさん
09/04/02 22:52:45
Console::WriteLine(S"柔道や剣道や空手ではなく、ボクシングをしないとコンパイルできないのか。");
Console::WriteLine(S"スーパーヘビー級: {0}kg以上", __box(91));
Console::WriteLine(S"ヘビー級: {0}-{1}kg", __box(81), __box(91));
Console::WriteLine(S"ライトヘビー級: {0}-{1}kg", __box(75), __box(81));


212:デフォルトの名無しさん
09/04/02 23:03:53
そう言えば、このスレにConsole::WriteLineのソースが無いじゃないか。
何でだ、だれもプログラムしないのか。

213:デフォルトの名無しさん
09/04/02 23:22:59
Console使う人は珍しいと思う

214:デフォルトの名無しさん
09/04/03 10:49:55
オメガチャートをリアルタイムもしくは20分遅れでデータ取得したいのですが、
さっぱりどうしたらいいのかわかりません
カバでもわかるように教えていただけませんか

215:デフォルトの名無しさん
09/04/03 11:11:09
>>214
おまいには無理
誰か親切な人がコンパイル済みのをうpしてくれるのを待て

216:デフォルトの名無しさん
09/04/03 11:27:46
そんな奇特なお方おらんやろ〜

217:デフォルトの名無しさん
09/04/03 11:31:05
いやわからんぞ
2ちゃんで一番親切なイケメンがいる板だからな

218:デフォルトの名無しさん
09/04/03 12:50:22
俺の出番が来ましたね。しばらくお待ちを。

219:デフォルトの名無しさん
09/04/03 13:57:46
この板にイケメンなんかいたのか

220:デフォルトの名無しさん
09/04/03 15:24:28
イケてるとはかぎらないじゃない

221:デフォルトの名無しさん
09/04/03 17:05:17
>>218
ありがとうございます親切な方
気長に待ってますのでお願いします


222:デフォルトの名無しさん
09/04/03 22:02:58
.NET Frameworkのサンプルコードは、VB.NETとC#でコード書かれてて、C++が無い。
C#のコードの、ドット演算子をスコープ解決演算子に置き換えたらC++になるのかどうか。
ほかにどう変換すべきか。


223:デフォルトの名無しさん
09/04/04 00:19:38
場合による

224:デフォルトの名無しさん
09/04/04 01:21:37
クラス・構造体にref/valueを付ける。
組込型の変化、long→long longやchar→wchar_t、byte→unsigned charなど。
参照型にハンドルを付ける。ただしusingを自動変数にする。場合によってはできないので、auto_handleを使用する。
unsafeの消失。hoge*はpin_ptr<hoge>に対応するが、interior_ptr<hoge>やhoge*にできる場合もある。

……いろいろあって挙げていったらきりがない。

225:214
09/04/04 10:50:52
何とか自分でできました
ありがとうございました

226:デフォルトの名無しさん
09/04/04 22:50:07
今日はこの本で1冊の学習を終えた。
URLリンク(www.amazon.co.jp)

C++を使えたら、一番ワイドになれるんだろう。
C++標準ライブラリも.Net framewordもMFCもATLも何でも使えるものは使ってワイドになりたい。

227:デフォルトの名無しさん
09/04/05 12:03:49
typedef structで構造体を定義してるんですが、
新しく変数を追加しようとしても追加されなくて困っています。

同じ構造体の他の変数はマウスカーソル合わせるとunnamed〜と表示されるのですが
新しく追加した変数はintと表示されています。

どなたか原因を教えてくれないでしょうか?

228:デフォルトの名無しさん
09/04/05 12:37:26
「追加されない」って、IntelliSence に追加されないってだけの話じゃないのか?


229:デフォルトの名無しさん
09/04/05 13:04:04
>>228
説明不足でした。すみません。
実際はエラーは出てないんですが、
候補一覧に出てこないので、不安になって質問しました。

時間置いたら今は出るようになっていました。
この候補一覧に出るようにするにはビルドする以外にも何かする必要があるのでしょうか?

230:デフォルトの名無しさん
09/04/05 13:23:50
>時間置いたら今は出るようになっていました。
通常は、これがすべて。詳細はヘルプの「IntelliSense の使用方法 」を参照すべし。

231:デフォルトの名無しさん
09/04/05 14:07:52
>>230
ありがとうございました。
IntelliSenceの使い方をやっと理解できました

232:デフォルトの名無しさん
09/04/05 16:52:51
ははは

233:デフォルトの名無しさん
09/04/06 14:06:31
エクセルのデータで、1の列が文字列、2〜をint型で読み込んで構造体に入れたいんですが、どうしたらいいでしょうか?

234:デフォルトの名無しさん
09/04/06 16:50:08
CSVファイルに、カンマ区切りかタブ区切り形式で先ずテキスト化する。

235:233
09/04/06 19:25:21
エクセルのマクロ使ってという事ですよね。
ありがとうございます。やってみますm(__)m

236:デフォルトの名無しさん
09/04/06 19:27:40
すでにエクセルのデータではなくなっている。^-^;

237:デフォルトの名無しさん
09/04/06 19:44:08
そっち方面ならC++/CLIで.NETのが楽かも
でもそれならC#にしちゃうか

238:デフォルトの名無しさん
09/04/07 03:07:46
体験版のVC++Proを入れた後に
VC++Expressを入れてもMFCは使えるようになりませんか?

239:デフォルトの名無しさん
09/04/07 04:32:49
ヘッダやライブラリが揃っていればコンパイルはいけるんじゃね

240:デフォルトの名無しさん
09/04/07 12:27:47
>>238
ぐぐってみろ。使えるから。

241:デフォルトの名無しさん
09/04/08 12:51:11
>>238
使えるようになるけど、Express上でMFC使ったアプリを
作っても配布してはならない。ライセンスでそうなってる。
MFCは無料じゃなくて有料です。勉強なら許すって感じかな。

242:デフォルトの名無しさん
09/04/08 15:03:31
スタートページのニュースヘッダーみたいなのって出なくできますか?
あれで引っかかるような挙動したりして気持ちが悪い

243:デフォルトの名無しさん
09/04/08 15:09:39
オプションで設定できるのに、何でそれくらい自分でできないの?

244:デフォルトの名無しさん
09/04/08 15:13:46
FAQだな。
ちょっと探せばわかるけど、EEの場合オプションの全表示のチェック入れてなくて
無いと思い込んでる場合も

245:デフォルトの名無しさん
09/04/09 00:33:12
VS2005、MFCで以下の様なプログラムを作っています。
しかし、for文の中の代入がうまく行かず困っています。
例えば、SysTim.wYearには2009が入っているのに、
MyDataのYearには0が入っているという感じです。
何が原因なのでしょうか?
SYSTEMTIMEのメンバがWORDな所為かとも思いましたが、
結局解決策を見つけられずにいます。

struct MY_DATA {
unsigned char Year;
unsigend char Month;
unsigend char Day;
unsigend char Hour;
unsigend char Minute;
unsigend char Second;
unsigend char Data[8];
};
MY_DATA MyData[10];

SYSTEMTIME SysTim;
GetLocalTime(&SysTim);

int i;

for (i = 0; i < 10; i++) {
MyData[i].Year = SysTim.wYear;



}

246:デフォルトの名無しさん
09/04/09 00:49:51
charに入らないから。
wYear
The year. The valid values for this member are 1601 through 30827.

247:デフォルトの名無しさん
09/04/09 01:09:26
>>246
返事ありがとうございます。

1Byteのサイズに2Byte分入れようとしてるから、という事でしょうか?
以下の例で、ちゃんと値が代入できていたので、可能という認識なのですが。
(キャストしなきゃWarningが出るのはおいといて)
あと、私の書き方が悪かったですね・・・Yearだけでなく
年月日時分秒全てがうまく行きませんでした。

char Data1 = 0;
short Data2 = 10;
Data1 = Data2;

248:デフォルトの名無しさん
09/04/09 01:26:18
>>247
不可能。

BYTE byte;    // typedef unsigned char BYTE;
SYSTEMTIME SysTim;
GetLocalTime(&SysTim);

byte = (BYTE)SysTim.wYear;

で試してごらん。無理だから。

249:デフォルトの名無しさん
09/04/09 01:46:40
1Byte = 8 Bit = 2 ^ 8 = 256 < 2009;

250:デフォルトの名無しさん
09/04/09 02:08:11
>>248,249
お返事ありがとうございます。

すいません、言いたかったのは代入後の値が0なのは何故かということです。
環境によるのだとは思いますが、普通は下位1byteが入っているはずでは?という認識です。
年以外に関しては、255以下ですし。

>>247に挙げた例で、下位1byteを代入できているので
同じような事をしてるのに、何故うまく行かないのかというところです。


とりあえず、明日もう少し考えてみます。

251:デフォルトの名無しさん
09/04/09 02:13:09
>>245 unsigendだから?綴りが違う。
#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <winbase.h>

int main(void)
{
  struct MY_DATA {
    unsigned char Year;
    unsigned char Month;
    unsigned char Day;
    unsigned char Hour;
    unsigned char Minute;
    unsigned char Second;
    unsigned char Data[8];
  };
  MY_DATA MyData[10];

  SYSTEMTIME SysTim;
  GetLocalTime(&SysTim);

  for (int i = 0; i < 10; i++) {
    MyData[i].Year = SysTim.wYear;
    MyData[i].Month = SysTim.wMonth;
    MyData[i].Day = SysTim.wDay;
    MyData[i].Hour = SysTim.wHour;
    MyData[i].Minute = SysTim.wMinute;
    MyData[i].Second = SysTim.wSecond;
  }
}

252:デフォルトの名無しさん
09/04/09 07:08:02
VC++2005、.net framework2.0を使っています。
CSVファイルを読み込む ってのをやって見ようと思って、

using namespace Microsoft::VisualBasic::FileIO;
としてみたのですが、

.\tesuto.cpp(7) : error C2039: 'FileIO' : 'Microsoft::VisualBasic' のメンバではありません。
.\tesuto.cpp(7) : error C2871: 'FileIO' : この名前を指定された名前空間は存在しません。
と言われエラーになります。
何が足りなく、いけないのでしょうか?
さっぱりよく分っていないのですが、よろしくおねがいします。




253:デフォルトの名無しさん
09/04/09 09:29:24
Microsoft::VisualBasic::FileIOというのを定義してないか
定義してあっても参照できない

254:デフォルトの名無しさん
09/04/09 10:46:08
>>252
ソリューションエクスプローラーでプロジェクトを右クリックして参照(F)...を選択
Frameworkと参照が選択されている状態で、[新しい参照の追加(N)...]ボタンを押して
.NETタブから、Microsoft.VisualBasicを選択してOKを押す。

XMLなら別の方法も、、、チュートリアルか何かを参考にしてるのか?

255:デフォルトの名無しさん
09/04/09 10:46:58
ってXMLじゃなくてCSVか

256:デフォルトの名無しさん
09/04/09 12:14:57
>>254は2008での話で2005で確認したら[Frameworkと参照]の部分は[参照設定]だった
まあわかるとは思うけど念のため。

257:デフォルトの名無しさん
09/04/09 14:27:35
ははは

258:デフォルトの名無しさん
09/04/09 18:53:57
>>250
はずしてるかもだけど、
ループの中身をYearだけ代入するよにしたらどうなる?

期待してる動作は、下位1Byteだけは代入されるだろうってことよね?

259:258
09/04/09 18:55:20
ごめん、後半は書いてたね
無視してくださいorz

260:252
09/04/09 23:14:16
書かれた通りにやったら、出来た感じです。
どうもありがとうです。

261:デフォルトの名無しさん
09/04/09 23:53:21
MFCでVisualBasicをオーバーライトできます?

262:デフォルトの名無しさん
09/04/09 23:55:07
日本語で言ってくれ

263:デフォルトの名無しさん
09/04/10 00:04:32
だから、MFCでVB7のプログラムをアルゴリズムから設計までそっくりそのままで
上書きして、同じプログラムをつくれるかな?ってことです。

264:デフォルトの名無しさん
09/04/10 00:21:33
VB7って何だ?

265:デフォルトの名無しさん
09/04/10 01:29:40
Visual Basic で作ったプログラムと同じ動作をするものを VisualC++ で作れるか? という問いなら YES。

上書きだとかオーバーライドだとかといった既定の単語を、自分勝手な意味をつけて使っても他人にゃわからんよ。

266:デフォルトの名無しさん
09/04/10 03:04:35
だってプラグインしながらコンバートする感じでつくりたいんです

267:デフォルトの名無しさん
09/04/10 06:26:43
構造体やクラスを作って実際に使おうとすると、インスタンス.と打つとメンバがズラッと出てくるはずですけど表示されなくなってしまいました。原因わかりますか?
インスタンスをマウスオーバーすると構造体はちゃんとポップアップ表示されます。

268:デフォルトの名無しさん
09/04/10 09:41:20
よくあることなので諦めましょう

269:デフォルトの名無しさん
09/04/10 20:50:13
>>267
「.」を打ったり消したりを繰り返してれば復活しない?
後は、一回ビルドしなおすとか、ncbファイル消してみるとか・・・



270:デフォルトの名無しさん
09/04/10 21:41:24
何度かやってると復活するな
文法が間違ってたりすると反応しないから、何度もやって復活しないなら文法ミス

271:デフォルトの名無しさん
09/04/10 21:48:08
テンプレートかインクルードファイルが多すぎると、バグか知らないけど認識してくれないことが多い気がする。

272:デフォルトの名無しさん
09/04/10 21:59:24
2005/2008的には、仕様です。って感じだな。

273:デフォルトの名無しさん
09/04/11 00:49:19
Windows7でたら、パソコン買おうとおもうんだけど、今のWin2000じゃスペック的にも無理があるから・・

Windows7でもVC++6.0ってインストールできるのかな・・いまだに結構使ってるから、入れたいんだ。

274:デフォルトの名無しさん
09/04/11 00:57:22
>273
もうサポートも終わった環境なんて捨てろw

275:デフォルトの名無しさん
09/04/11 01:23:57
>>273
VC++6.0なんて仕様がイミフだからもうヤダ。。。

276:デフォルトの名無しさん
09/04/11 09:31:43
>>273
VMWareで2000動かしてそこにインストールするのがお薦め。


277:デフォルトの名無しさん
09/04/11 11:05:41
次期モデルC++0xはどれだけ対応しているのか期待したい

278:デフォルトの名無しさん
09/04/11 14:30:08
>>275
VC9になったところで仕様イミフだろ。

279:デフォルトの名無しさん
09/04/11 20:22:01
>>277
こういう感じらしい。decltypeが無いのは痛いと思う。
URLリンク(www.codeguru.com)
URLリンク(d.hatena.ne.jp)

280:デフォルトの名無しさん
09/04/13 12:34:48
エディットボックスコントロールや、立地エディットコントロール以外に
ActiveXとかでエディタコンポーネントってありませんか?

281:デフォルトの名無しさん
09/04/13 13:56:59
作れば何でもある

282:デフォルトの名無しさん
09/04/13 14:25:13
エディットボックスというのは初めて聞いた

283:デフォルトの名無しさん
09/04/13 18:39:12
VC++の得意分野って何?みんな何作るの?
GUIアプリならC#で作った方が早いじゃんか。

284:デフォルトの名無しさん
09/04/13 19:29:19
.NET Frameworkなんて死んでも入れないという人のためのアプリを作るためとか。

285:280
09/04/13 19:58:06
>>281
はい、ありがとうございます。この際作ろうと思います。
>>282
?私のVCのツールバーにエディットボックスってあるんですが・・普通はないのかな?

で、自作しようと思いますが、CEditクラスを継承しようと思いますが、
自動インデントやらの独自機能を追加しようとおもいます。
その場合、ActiveXという形式で作成するのか、普通のC++クラスとして作成汁のかどっちがいいんでしょうか?

なにぶんVC++はあまり知らないので、おしえてください。

286:デフォルトの名無しさん
09/04/13 20:53:15
vc++2008のエディタをウィンドウ分割したときに
上側のウィンドウへフォーカスを切り替えたいとき
キーボードでやるにはどうすればいいの?

287:デフォルトの名無しさん
09/04/14 09:03:28
>>286
上側ではないがF6で切り替え

288:デフォルトの名無しさん
09/04/14 10:12:40
>>287
できました!ありがとう。

289:デフォルトの名無しさん
09/04/16 21:57:30
質問です。
VC++.net2003で、VB6.0のTextBoxと思われるもの(spy++によると、"ThunderRT6TextBox")より、
WM_GETTEXTで文字列を取得するアプリを作りました。
ただ、TextBoxの格納上限 > WM_GETTEXT取得上限のようで一定量を超える入力があると
全てを取得することが出来ません。
EM_GETTEXTEXで試したのですが、リッチエディットコントロールではないのか、何も返してきません。

何かいい方法ありませんでしょうか。
(スレあってますよね・・・?)

290:デフォルトの名無しさん
09/04/19 09:01:23
MFCのクラス階層図を網羅したExcelファイルはどこかにないかね。

291:デフォルトの名無しさん
09/04/19 15:32:03
VC++2008EEなのですがビルドしようとすると
general error c1010070: Failed to load and parse the manifest.
と出てきて何もできません。どうすればよいのでしょうか?

292:デフォルトの名無しさん
09/04/19 16:06:38
プロジェクトのプロパティの構成プロパティのマニフェストツールの入力と出力に
変なファイル指定してない?

293:デフォルトの名無しさん
09/04/19 16:19:03
入力リソースマニフェスト→指定なし
出力マニフェスト ファイル→$(TargetPath).manifest
となってます^^;

294:デフォルトの名無しさん
09/04/19 16:23:53
それ消すか、埋め込みマニフェストにしてみては

あと、新規プロジェクトでゼロから作ってもそれ出る?

295:デフォルトの名無しさん
09/04/19 16:27:05
消しても埋め込みマニフェストにしても無理でしたorz
新規で作っても出ます;;

296:デフォルトの名無しさん
09/04/19 16:41:32
むむむ、、、、再インストール・・・かなあ

297:デフォルトの名無しさん
09/04/19 17:43:02
再インストールしても無理でしたorz

298:デフォルトの名無しさん
09/04/19 23:24:59
ためしに、[ツール]-[設定のインポートとエクスポート]から
すべての設定をリセットしてみてはどうか。

299:デフォルトの名無しさん
09/04/21 15:48:11
WIN32アプリケーションで、
マルチディスプレイでプログラムをフルスクリーン表示にしている時に、
セカンダリ画面でクリックなどするとプログラムが最小化してしまいます。
この最小化を抑制する方法があるみたいなのですが、どうすれば可能なのでしょうか。

300:デフォルトの名無しさん
09/04/21 15:49:18
最小化するか?

301:デフォルトの名無しさん
09/04/21 16:00:44
はい、Winキーを押した時の様になります。

302:デフォルトの名無しさん
09/04/21 17:08:08
それはお前の作ったプログラムでしか起きない問題なのか?
要するにお前が作ったプログラムに原因があるのか、
それとも元々OSがそういう仕様なのかぐらいはっきりしろ。

303:デフォルトの名無しさん
09/04/21 17:48:41
元々OSがそういう仕様なのだと思います。
大抵の古いWIN32アプリでフルスクリーン時は大抵そうなってしまってます。
最近はそれに対処しているプログラムがあって、
それをどうやってるのかなと質問させて頂きました。

304:デフォルトの名無しさん
09/04/21 17:55:39
Visual Studio 6.0を使ってC言語+MySQLのアプリを作りたいのですが、
[ツール]→[オプション]で
ライブラリパスにC:\Program Files\MySQL\MySQL Server 5.1\lib\opt
インクルードパスにC:\Program Files\MySQL\MySQL Server 5.1\include
を設定し、
#include "mysql.h"をしてコンパイルするとMySQLのヘッダファイルでエラーが出まくります。
プロジェクトの設定が悪いのでしょうか?


305:デフォルトの名無しさん
09/04/21 18:02:00
どういうエラーよ

306:304
09/04/21 18:06:41
>>305
すみません。
c:\program files\mysql\mysql server 5.1\include\mysql_com.h(243) : error C2061: 構文エラー : 識別子 'SOCKET' がシンタックスエラーを起こしました。
c:\program files\mysql\mysql server 5.1\include\mysql_com.h(280) : error C2059: 構文エラー : '}'
c:\program files\mysql\mysql server 5.1\include\mysql_com.h(394) : error C2143: 構文エラー : ')' が '*' の前に必要です。
等です。
URLリンク(www13.plala.or.jp)
↑ここを参考にしました。

307:304
09/04/21 18:23:26
すいません!自己解決しました。
#include <winsock.h>をしたらエラーが出なくなりました。
ここでwinsockが出てくるとは…。

308:デフォルトの名無しさん
09/04/21 18:49:05
ああ、そういえばmysql.h見てて書こうと思ってて他の作業入ってて書きそびれたわ
mysql.h をinclude するまえにwindows.hをincludeしては、と書こうとしてた。

309:デフォルトの名無しさん
09/04/22 03:23:27
Visual Studio C++ 2008で

#include <boost/random.hpp>
を使いたいんですけどこれはブーストをダウンロードした後どうすればいいのですか?

310:デフォルトの名無しさん
09/04/22 03:31:34
>>309
今ダウンロードしたやつは忘れて、こっちのインストーラ版をダウンロードする。
URLリンク(www.boostpro.com)

最も、VC++ 2008ならSP1当てれば#include <random>で
名前空間std::tr1にほぼ同じものが存在する。

311:デフォルトの名無しさん
09/04/22 03:39:06
>>310
ご親切にありがとうございます。
なるほどー
SP1当ててないのでダウンロードしてみます。
インストール後はもう#include <boost/random.hpp>を使える状態になるのですか?

今環境がないため試せないんです;

312:デフォルトの名無しさん
09/04/22 10:44:38
インクルードディレクトリの設定やったことないのか?
インストーラーがやってくれるならそのままでいいし、ダメなら自分で設定すればいいだけ

313:デフォルトの名無しさん
09/04/25 00:03:11
すみません。一般的に画像を保存する際、.bmp形式より.jpg形式の方が画像サイズが小さくなります。
今度作成しようとおもっているのは、Alt+Prt Scキーにより、クリップボードにコピーされた
アクティブな画面キャプチャを.jpg形式のファイルで保存しようとおもうんですが、
私のアルゴリズム?では、bmp形式のサイズで保存されてしまうのが予想されます。

私のアルゴリズムは以下です。
1.クリップボードの画像データをビットマップオブジェクトにコピーし、ファイルを保存する。
2.ファイル名の拡張子を.jpgに変換する。
以上です。

以前、Alt+Prt Scキーで取得した画面キャプチャ画像をアクセサリのペイントに貼り付けてjpegファイルに変換しても
画像サイズが変わらなかったので、上に書いたアルゴリズムでは同様のことになってしまうと思います。

jpegファイルの軽さで最初からファイルを保存するようにするにはどうしたらいいでしょうか?

画像関係のソフト制作、VC++は不慣れなものですので、すみませんが教えてください。よろしくお願いします。


314:デフォルトの名無しさん
09/04/25 00:11:29
>>313
GDI+

315:デフォルトの名無しさん
09/04/25 00:19:46
Express以外を使っているなら、ATL::CImageもおすすめ。

316:413
09/04/25 00:52:22
>>314さん、>>315さん。

どうもありがとうございます。教えていただいた、
キーワードでググってやってみようと思います。ちなみに
MFCですので。。

コンビニいって、立ち読みしてたので、お礼が遅くなりました。すみません。

317:デフォルトの名無しさん
09/04/25 07:30:44
とりあえずファイルの拡張子変えただけじゃjpgにはならんよ…

318:デフォルトの名無しさん
09/04/25 08:20:10
>>317
俺も最初の頃は
xxx.jpg.bmp
なんてファイルがあったな

319:デフォルトの名無しさん
09/04/25 12:30:50
いい例えが思いつかなくて放置してたんだけど
昼飯食ってたらとたんに思いついた

アナログテレビにペンで 「デジタル」 って書くだけじゃ地デジは映らないよ!

320:デフォルトの名無しさん
09/04/26 10:19:59
ペイントブラシは拡張子変えるだけでファイルフォーマットも変えるからなあw

321:デフォルトの名無しさん
09/04/26 10:21:03
ペイントブラシじゃなくてペイントか

322:デフォルトの名無しさん
09/04/26 13:35:30
いきなりですが、質問させてください。

VC++2008 ExpressEditionで、windowsアプリケーションを作成しようとしています。
CreateWindow関数の引数が多く、横に書いていくと見にくいので、途中で改行をしました。
すると、それ以後、コンマを入力するとエラー音(プンッというような音)が鳴ります。

これはどういった問題が起きているのでしょうか。
分かる方、どなたか教えていただけるとありがたいです。

323:デフォルトの名無しさん
09/04/27 02:18:15
すみません。物凄く素人な質問で恐縮なのですが。
ボタンを沢山配置したときに、リソース上で整列させたいのですが、
元々ダイアログに表示されている、ボタン位置の調整が出来る青い枠は
増やせないのでしょうか……?

リソース上で座標だけ見てボタンの微調整をするのはかなり苦痛です。
宜しくお願いします……!

324:デフォルトの名無しさん
09/04/27 02:36:30
どのリソースエディタかしらないけどコントロールの整列ボタンとかないの?
rcをテキストエディタで開いてみると
DEFPUSHBUTTON "OK", IDOK, 129, 7, 50, 14, BS_DEFPUSHBUTTON
PUSHBUTTON "キャンセル", IDCANCEL, 129, 24, 50, 14, BS_PUSHBUTTON
こんな感じになってるから手入力でやってもたいした労力じゃないかもしれないよ

325:323
09/04/27 02:46:51
>324さま
使用しているのはVisualStudio2008のリソースエディタです。
複数ボタンを選択した後に右クリックして、左揃え上揃えがあるのを確認しました。
早とちりしてすみません(汗)
微調整は324さまの仰られた通り、テキストエディタで編集する事にします。
ありがとうございました。

326:デフォルトの名無しさん
09/04/27 03:01:17
>>325
騙されたと思って、ダイアログエディタのガイドをクリックしてみろ。

327:デフォルトの名無しさん
09/04/27 20:26:44
先日からVC++2008を使い始めましたが、基本的な操作方法が分かりません。
ライブラリを追加するのはどこからやればいいのでしょうか?
2005ではプロジェクト→設定…とやっていたのですが。
プログラム自体初心者なのですが回答お願いします。

328:デフォルトの名無しさん
09/04/27 20:55:09
プロジェクト→設定…とやればいい

329:デフォルトの名無しさん
09/04/27 20:56:30
プロジェクト→プロパティだった

330:デフォルトの名無しさん
09/04/27 21:29:50
>>327
>プログラム自体初心者なのですが回答お願いします。
こういうの要らないだろ。
どうしてこういうの付けてくるヤツって耐えないんだろう。

…でもまあスレタイ的には今回は例外的に問題無いのか。

331:デフォルトの名無しさん
09/04/27 21:42:09
>>327
それくらい2005とろくに変わっていないだろ。

332:デフォルトの名無しさん
09/04/27 21:47:05
図解つきのマニュアルで1ステップずつ解説みないと使えないレベルなんじゃないか?

333:323
09/04/28 01:45:05
>>326さま
位置調整用の青点線増えました。助かりました。ありがとう。

334:327
09/04/28 10:48:06
プロジェクト→プロパティと開いたのですが、その後の項目で何を選べばいいのか分かりません。
2005ではリンクからライブラリの一覧が見れましたが、2008でリンカを選んでもそれらしい項目がありません。
他の項目も見ましたが、どこから追加すればいいのか分かりませんでした。
詳しく教えていただけないでしょうか。

335:デフォルトの名無しさん
09/04/28 10:53:59
詳しくも何もヘルプに書いてあるだろ。探せなきゃ「リンカ入力としての .lib ファイル」でググれ

336:デフォルトの名無しさん
09/04/28 11:02:00
>2005ではリンクからライブラリの一覧

これ、何のこと言ってる?
もしかしてC++/CLIか?

337:デフォルトの名無しさん
09/04/30 17:44:18
VC++用のXML SDKってどこからダウンロードすればいいでしょうか?


338:デフォルトの名無しさん
09/04/30 18:12:08
>>337
URLリンク(www.microsoft.com)

339:デフォルトの名無しさん
09/04/30 18:18:04
>>338
さんくっす

340:デフォルトの名無しさん
09/04/30 23:01:53
>>337
一応、VC付属のSDK・MSDNライブラリにもMSXML関連のものは入っていたはず。
望みのバージョンのものかどうかはともかく。

341:デフォルトの名無しさん
09/05/01 15:15:49
MFCやWin32APIでつかうGDI+について、書かれてる本ってないですか?割とくわしめに書いてある本。。

洋書でもいいです。近くの大本屋4件くらいまわってもなかったもんで・・
もしあれば、Amazonで買おうと思います。

342:デフォルトの名無しさん
09/05/01 15:50:48
またお前か

343:デフォルトの名無しさん
09/05/01 21:04:33
すみません。IEの現在表示してるアドレスを取得する事って可能ですか?

vcだけじゃ無理で、IEのSDKとかつかうんですかね・・

344:343
09/05/01 21:10:14
事故解決しました。ググッたら色々でてきました。うへぇ〜。

345:デフォルトの名無しさん
09/05/01 21:14:16
この辺見ればできると思う
URLリンク(www.nitoyon.com)


346:344
09/05/01 21:18:50
>>345
どうもありがとうございます><;そこは詳しく載ってますね><;

私がググって見つけたページよりも実践的なサンプルが載っています。

連休中にタスクバーに常駐するお気に入り管理ツールを作ろうと思いまして・・

ブラウザのお気に入り機能って使いにくいですよね><;

347:デフォルトの名無しさん
09/05/03 06:20:13
StretchDIBitsとStretchBltの違いってなんですか?
メモリ上がなんとかとなってるんですが意味がわかりません

348:デフォルトの名無しさん
09/05/03 08:43:10
>>347
StretchBlt: コピー元がHDC
StretchDIBits: コピー元がBITMAPINFO/void*

349:デフォルトの名無しさん
09/05/03 17:48:53
main()関数のソースファイルが、同じソリューションかつプロジェクト内の他の
ソースファイルにリンクできてないようで、ビルドするとリンクエラーが出ます。
error LNK 2001:外部シンボル 〜〜〜〜 は未解決です。
fatal error LINK1120: 外部参照4が未解決です。
のメッセージが出ます。
正しくリンクできるように設定するにはどうするんでしょうか。
Visual Studio .NET 2003 Professional
作成したプロジェクトは Visual C++ プロジェクトの「コンソールアプリケーション(.NET)」です。


350:デフォルトの名無しさん
09/05/03 18:33:04
インクルードしてないとかいう落ちだろ

351:デフォルトの名無しさん
09/05/03 18:45:13
CLRならC++のみだし、、、Cリンケージの問題でもなさそうか?
参照設定してないとかいう落ちとか

352:デフォルトの名無しさん
09/05/03 19:14:17
原因わかった。ファイルは実はリンクできてた。
vectorコンテナを使ってる箇所を直す必要がある。
前に単一のソースに書いてBorland C++ Compilerで正常にコンパイル成功
していたプログラムを拡張しようとしたが、他のファイルで定義したクラスの
変数宣言は問題無いが、
std::vector<class fileman> fman_databox1;
で定義して
fsize1 = fman_databox1[n1].getfsize();
のように、vectorコンテナに添え字演算子で要素を取り出したものから、
メンバー関数を使おうとする箇所があるとエラーが出るということがわかった。


353:デフォルトの名無しさん
09/05/03 19:19:11
fatal error

実はリンクできてた

直す必要がある

分裂症ですか?

354:デフォルトの名無しさん
09/05/03 19:44:27
一度ポインターにアドレスを代入してからメンバー関数を呼ぶように変更しよう
としたけど、そうやってもエラーになった。
IDEはちゃんとリスト選択が出てくるのに。
inlineを取ればリンクできた。
そんなことがあるのか、何でインライン関数にすればエラーになるんだ。

355:デフォルトの名無しさん
09/05/03 20:02:26
インライン関数の展開って、コンパイル時に行われるからじゃないのか?

356:デフォルトの名無しさん
09/05/04 08:31:41
テンプレートクラスで静的メンバ変数を使おうとすると、
>LNK2019: 未解決の外部シンボル
のエラーが出るのですが、どういった風に解決するのが一番でしょうか。

357:デフォルトの名無しさん
09/05/04 08:36:02
テンプレートなのに何で静的なんだよ

358:デフォルトの名無しさん
09/05/04 08:43:27
クラスごとにインスタンス数を数えたいのですが、
CountingObject : BasicCounting< CountingObject >と継承して、
BasicCountingのコンストラクタ、デストラクタでBasicCounting::countの値を増減しようと考えています。

テンプレートクラスで静的メンバ変数というのは、おかしいのですか?

359:デフォルトの名無しさん
09/05/04 08:48:51
そんなくだらない話はC++スレでやれ

360:デフォルトの名無しさん
09/05/04 11:42:04
>>356
クラステンプレートでないクラスの場合と同じで、変数の定義が必要。
class Foo
{
static int Hoge;
};
int Foo::Hoge;

tempate<typename T>
class Bar
{
static int Hoge;
};
template<typename T>
int Bar<T>::Hoge;
なお、クラステンプレートの静的変数は実体化させる必要があるので、
クラステンプレートのメンバ関数などと同様、通常はヘッダに定義を書く。

361:デフォルトの名無しさん
09/05/04 12:56:35
コンパイル時にエラーがあるとVSでエラー箇所教えてくれるしエラーメッセージも出るからアサートって書く必要ないですよね


362:デフォルトの名無しさん
09/05/04 12:59:30
構文エラー等ならコンパイル時にエラーになるが、0 division 等はエラーにならない。
よってアサートは必要。

363:デフォルトの名無しさん
09/05/04 13:11:44
コンパイルエラーが出るうちはデバッグは楽だ。
実行時エラーになるととたんに対処が面倒になる。

364:デフォルトの名無しさん
09/05/04 13:34:07
コンパイルエラーとアサートと同次元で語るやつが理解できない。

365:デフォルトの名無しさん
09/05/04 13:43:28
>>364
まあまあ、ココは初心者スレだからいいじゃないか。

366:デフォルトの名無しさん
09/05/04 19:16:07
実行時エラーと言いたかったんじゃないかなあ

367:デフォルトの名無しさん
09/05/04 20:03:49
それは違くね?

368:デフォルトの名無しさん
09/05/05 08:46:18
そうか?
アサートとコンパイルエラーが同レベルで出てくるなんて
初心者だってありえないだろ

369:デフォルトの名無しさん
09/05/05 08:55:35
>>368
「ありえない」か?確率0%か?
いや、初心者ならそのくらいありえるのではないか?
およそ、初心者に「ありえない」ことは「ありえない」んでは?

370:デフォルトの名無しさん
09/05/05 10:04:21
アサートという言葉を知ってるのにか?
当人に聞いてみなけりゃ分からないけど、
ありえないと言えるくらい見当違いなことだよ

371:デフォルトの名無しさん
09/05/05 10:09:22
たぶん釣りじゃないのかw

372:デフォルトの名無しさん
09/05/05 20:20:07
MFCでなんか面白いもの作りたいんだけど、思いつかない。

サンプルが載ってるページってありますか?自力で作るのもいいんだけど・・お代が無いし。

373:デフォルトの名無しさん
09/05/05 21:02:58
じゃ、タスクマネージャでも作ってみろ

374:デフォルトの名無しさん
09/05/05 22:54:51
>>373
タスクバーに入れる方法がわからないから、却下でござる。

375:デフォルトの名無しさん
09/05/05 23:07:59
C言語始めようかと思って先ほどマイクロソフトのVisual C++ Express Editionってのをダウンロードしました
試しに参考書に載ってる簡単な足し算を表示するプログラムを書き写してみたんですが、
どうやってその書いたプログラムが動くのかが分かりません・・・

376:デフォルトの名無しさん
09/05/05 23:23:29
F6でコンパイル F5で実行、だが・・・多分出てすぐ消ええる。
VCの入門本買って読むべし

377:デフォルトの名無しさん
09/05/05 23:38:49
コンパイルで調べたら↓ヒットしました
URLリンク(msdn.microsoft.com)
手順の通りにやってみましたがやっぱりすぐ消えますね
分かるように勉強してきます ありがとうございました

378:375
09/05/05 23:55:05
[新しいプロジェクト]のとこから色々弄ったら実行出来ました!
二桁の数字が表示されただけでしたが色々作れそうで楽しいっすね
スレ汚し失礼しました

379:デフォルトの名無しさん
09/05/06 00:28:51
以下の2行をmainの最後に入れれば、実行後終了前にリーターンキー入力を待つ

printf("リターン入力で終了\n");
getchar();


380:デフォルトの名無しさん
09/05/06 00:38:50
>>377
プログラムはあなたの思ったようには動かなくても
プログラムはあなたの書いたようには動く

という格言がある。
これから先何度も何度も味わい続ける事になるだろうが、
これを忘れないようにね。

んでオススメは、Windows環境限定で良ければ
#include <conio.h>
でgetch();を使うのが良いと思うよ。いかなるキーでも何か入力すれば終了するようになる。

#include <conio.h>
int main()
{
//処理
getch();
return 0;
}

381:デフォルトの名無しさん
09/05/06 12:09:16
>>377
main()の最後の } にブレイクポイントを置けばいいよ。

382:デフォルトの名無しさん
09/05/06 12:17:10
Ctrl+F5でいいよ

383:デフォルトの名無しさん
09/05/06 16:14:48
VSとかでプログラムを作らないとデバッグって出来ないのですか
コマンドラインでそれ用のオプションつけてコンパイルしてあれこれして
デバッガー使うことは出来ますか?

384:デフォルトの名無しさん
09/05/06 16:28:01
デバッグ自体はコンパイル方法関係ないよ
Cじゃなくてもできるし

385:デフォルトの名無しさん
09/05/06 16:28:12
↑追加で実行ファイル開いたら問題なく出来ました
ごめんなさい

386:デフォルトの名無しさん
09/05/07 00:03:37
文字リテラルと文字列リテラルが分かれていますが、
どう言ったメリットデメリットがあるんでしょうか?
一文字の文字列を""で囲んでも何の問題もないような気がしますが
メモリの使用量が少ないんでしょうか

387:デフォルトの名無しさん
09/05/07 00:13:28
C言語からやり直せw

388:デフォルトの名無しさん
09/05/07 00:20:01
すいません、今日C++始めたばっかりなんです
VBは型ぐらいなら分かるんですがどうしてもふに落ちないもので

389:デフォルトの名無しさん
09/05/07 00:32:58
自分もC始めたばっかりなんだけど
char string[] = "ABCDE";
char chararray[] = { 'A', 'B', 'C', 'D', 'E', '\0' };
文字列は文字の配列だよって理解でいいの?

390:デフォルトの名無しさん
09/05/07 00:56:44
>文字列は文字の配列
読んで字の如し

391:デフォルトの名無しさん
09/05/07 02:41:38
>>388
VBやったことあるなら、AscとChr$は知っているだろ。
めちゃくちゃ乱暴に言うと文字リテラル'A'は、Asc("A")と同じ。
Ascの戻り値とChr$の引数、VBではLongとかで扱っていただろうが、
Cではcharという独立した型が与えられていると思えばいい。

392:デフォルトの名無しさん
09/05/07 08:22:06
n文字型があれば1文字型は不要ではという質問だと思うが、
文字の比較や判定の基本はバイト単位だな
32bitや64bit単位でできないこともないけど

393:デフォルトの名無しさん
09/05/07 08:38:31
ああunicodeもあるから
文字単位で比較か

394:デフォルトの名無しさん
09/05/07 11:54:01
>>386
文字と文字列の理解が怪しいな。
そもそもポインタとか分かってる?
いきなりC++にいくのは自殺級に難しいと思うからC言語から学んだ方が良いと思うよ。

395:デフォルトの名無しさん
09/05/07 11:57:40
>>389
> 文字列は文字の配列だよって理解でいいの?
いいんじゃない。文字列は文字型変数の配列ね。
あと実際に文字列は扱えないからその先頭アドレスで扱うことになるってことを理解してくれ。
例えば
"ABCDE"=="ABCDE"
がtrueになるかどうかは処理系依存。
左の"ABCDE"と右の"ABCDE"が別に確保されていればアドレスが異なるから
これはfalseだが、コンパイル時にコンパイラが気付いてメモリ節約のために
同一文字列をマージすればtrueとなる。
> char string[] = "ABCDE";
> char chararray[] = { 'A', 'B', 'C', 'D', 'E', '\0' };
これは全く同じになりますよ。


396:デフォルトの名無しさん
09/05/07 13:27:08
で、結局メリットデメリット誰も言えないわけで

397:デフォルトの名無しさん
09/05/07 13:36:05
>>396
は?頭おかしいの?

398:デフォルトの名無しさん
09/05/07 13:44:03
データ型が違うという事実があるだけで、メリットもデメリットもない
メリットは使うときがくれば分かるとしか言いようがないな
使わない人にとっては面倒なだけと言えばデメリットにもなるだろうが、それは何にしてもそうだろう

399:デフォルトの名無しさん
09/05/07 14:10:36
これだからVB厨はコンピュータのこと何もわかってないと
言われるんだよ
Cやったあとはマイコンもやれよ
で電子回路やってFPGAもやれ
そこでやっとプログラマといえる

400:デフォルトの名無しさん
09/05/07 14:34:58
まぁ、いいんじゃないの一つずつ覚えていけば
VBは直感でも何となくできるし、プログラマへの足がかりぐらいにはなってると思うよ
偉そうだったらぶっ飛ばしたなくるけどw


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5047日前に更新/221 KB
担当:undef