■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

★初心者にVisual C++を教えるスレ★ Part12
501 名前:デフォルトの名無しさん :04/06/03 10:52
>>498
VC6でブロック選択の開始はCtrl+Shift+F8だ。SelectColumn。
VC7はShift+Alt+矢印。

たしかにVC7では選択モードがなさげ。
スキームをVC6のにしてもCtrl+Shift+F8とか有効にならねぇし。


502 名前:デフォルトの名無しさん :04/06/03 11:23
a=2;
char aa[]=itoa(a);
strcat(aa,"1");
char *stop;
int b=atoi(aa,&stop,10);

503 名前:デフォルトの名無しさん :04/06/03 11:31
>>502
コンパイル通らんぞ。

504 名前:デフォルトの名無しさん :04/06/03 11:49
b = pow(10, (a == 0 ? 1 : (int)log10(a) + 1) + 1) + a * 10 + 1;

505 名前:デフォルトの名無しさん :04/06/03 11:50
>>500
int a,b;
char x[16];

a=2; // a=30;

sprintf(x,"1%d1",a);
b=atoi(x);

506 名前:デフォルトの名無しさん :04/06/03 12:48
>>494
Shiftキー押しながら、カーソルキーでキャレット移動すれば、
移動した分、選択されるけど…

これじゃアカンの?

507 名前:500 :04/06/03 15:56
ありがとうございました。
参考になりました。

508 名前:デフォルトの名無しさん :04/06/03 16:18
質問があります。
DirectShowで、カメラとマイクからの入力をキャプチャしてAVIで保存しています。
現在、圧縮なしで保存しているのですが、
どうすれば圧縮をかけられるのでしょうか?

509 名前:デフォルトの名無しさん :04/06/03 16:19
>>500はネタだと思ってたんだが・・
実際、この処理をなんに使うんだろうか?

510 名前:デフォルトの名無しさん :04/06/03 16:27
>>509
そんなもん人の勝手だろ

511 名前:デフォルトの名無しさん :04/06/03 16:37
Visual C++をこれから勉強使用かと考えてる初心者ですが、全く分からないので
変な質問になってしまうかと思いますが教えて下さい。

1.OSはLuinuxじゃないと駄目でしょうか?
2.もし駄目なら、どのディストリビューションが良いでしょうか?
3.アッセンブラーくらい使えないとCでプログラム組むのは無理だと、人に
言われたのですが、アッセンブラーって何でしょうか?

512 名前:デフォルトの名無しさん :04/06/03 17:05
1 Windowsじゃ無いとダメです。普通、LinuxじゃVC++は動きません、Luinuxについては知りません。
2 Windows製品を買ってください。
3 あんま気にしなくていいです、必要になったときに勉強しましょう。

513 名前:デフォルトの名無しさん :04/06/03 17:46
VC6 には虫取りモードで,
実行中の 変数/実体 の値を見るのがあったが,
VC7 ではあれどうやるんだ?

「オブジェクトブラウザ」ていうのを表示させても,
途中の値そのものは表示されないんだが…


514 名前:デフォルトの名無しさん :04/06/03 18:10
CFtpFindを使ってファイルを探すアプリを作成しています。
このクラスのメンバでGetFilePathといのがあり
見つかったファイルのパスとファイル名、更新日付、サイズ、等の
情報をNullChar区切りで取得するのですが

なぜか探すファイルのファイル名称が19文字を越えると
パスとファイル名しか取得できず、情報関連が取得できません。
19文字以内のファイルならば問題なく取得できています。
このあたりの不具合を経験されたかたで対応方法をご存知のかた
アドバイスお願いします。

515 名前:デフォルトの名無しさん :04/06/03 18:11
デバッグ中に
「デバッグ」 -> 「ウィンドウ」
ってたどった所に色々あると思うけど?

516 名前:515 :04/06/03 18:12
>>515>>513

517 名前:511 :04/06/03 18:23
>512
ありがとうございました。非常に参考になりました。ぺこり

518 名前:デフォルトの名無しさん :04/06/03 19:15
便乗して漏れも大体のお礼いっとく。
まりまとうもらいました

519 名前:デフォルトの名無しさん :04/06/03 19:40
アッセンブラーってなんか戦争で功績を残した偉人っぽいな

520 名前:デフォルトの名無しさん :04/06/04 12:27
ドイツ系っぽいな

521 名前:デフォルトの名無しさん :04/06/04 15:12
VC で #ifdef 使って,
虫取りモードのときのみ実行するには
何ていうマクロで判別すればいいんだっけ?


522 名前:デフォルトの名無しさん :04/06/04 15:23
_MSC_VER

523 名前:デフォルトの名無しさん :04/06/04 15:29
_DEBUG

524 名前:デフォルトの名無しさん :04/06/04 16:15
_DEBUGでもいいし、オプションで任意のdefineを
定義してそれを見てもよい。

525 名前:デフォルトの名無しさん :04/06/05 02:57
超初心者です。
Visual C.netをインストールしたいのですが、setup.exeを開くと
「このシステムにMicrosoft Visual C.net Standardをインストールするために必要な条件を満たしていません。Windowsコンポーネントアップデートセットアップをじっこうして
下さい」
とのメッセージが出てきます。
もうどうしたらいいのか分からないのでどなかか教えてください。


526 名前:デフォルトの名無しさん :04/06/05 03:08
マルチ

527 名前:デフォルトの名無しさん :04/06/05 11:21
MFCプログラムで子ウィンドウがアクティブなとき、Ctrl+Sなどショートカットキーを認識せず困ってます。
どうすればいいのでしょうか?

528 名前:デフォルトの名無しさん :04/06/05 11:29
>>527
> 子ウィンドウがアクティブなとき

MFCかどうかよりもその状態についてもう少し詳しく説明できないか?
どういう構成のプログラムでどのウィンドウ・クラス使ってどうそれを呼び出したかとか


529 名前:527 :04/06/05 11:45
>>528

失礼しました。
子ウィンドウは複数あり、それぞれのウィンドウはCDialogクラスでCreateによって作成し、
そのウィンドウをボタンで切り替えてます(プロパティシートのような感じです)
主に子ウィンドウに値を入力するような感じになっています。
そのため、子ウィンドウがアクティブなときでもショートカットキーを使えるようにしたいと考えています。

まだはじめたばかりでうまく表現ができず、申し訳ありません。


530 名前:デフォルトの名無しさん :04/06/05 13:58
他人のソースでオブジェクトのインスタンス作成後、そのオブジェクトを初期化するのに
〜->init();とか呼び出しているの見るけど、この自作の初期化関数とコンストラクタの違いってなんすか?

的外れな勘違い質問だったらあやまる。

531 名前:デフォルトの名無しさん :04/06/05 14:05
>>530
コンストラクタが複数あって、共通の初期化をInit()として
呼んでるとか、コンストラクト時以外でもリセット的な意味
での初期化を行う場合があるとか。

532 名前:デフォルトの名無しさん :04/06/05 14:12
>>531
> コンストラクタが複数あって、共通の初期化をInit()として呼んでるとか、

普通暮らす作成者がコンストラクタから呼び出す用に作っていると思う。
利用者が呼び出すことはないと思う。

> コンストラクト時以外でもリセット的な意味での初期化を行う場合があるとか。

これはあるかも。

533 名前:531 :04/06/05 14:22
>>532
>> コンストラクタが複数あって、共通の初期化をInit()として呼んでるとか、
>普通暮らす作成者がコンストラクタから呼び出す用に作っていると思う。
>利用者が呼び出すことはないと思う。

スマソ。そういうニュアンスで書いたつもりだたーYO!

534 名前:デフォルトの名無しさん :04/06/05 14:22
コンストラクタは戻り値が返せないからじゃないの?

535 名前:デフォルトの名無しさん :04/06/05 14:24
コンストラクタ失敗時のエラー通知に例外使いたくないとか

536 名前:デフォルトの名無しさん :04/06/05 14:59
>>533
??

> スマソ。そういうニュアンスで書いたつもりだたーYO!

と言うことなら、

> 他人のソースでオブジェクトのインスタンス作成後、そのオブジェクトを初期化するのに
> 〜->init();とか呼び出しているの見るけど

には当てはまらんと思うが。

537 名前:533 :04/06/05 15:27
すまそん。質問の意味を「作成後→作成時」と取り違えていた。
逝ってくる

538 名前:536 :04/06/05 16:24
なるほどそういうことですか、了解。

539 名前:デフォルトの名無しさん :04/06/05 18:00
めちゃくちゃ初心者です。
これからVisualc++net2003(すでに購入)を使ってC言語を始めたいと思って
います。
それにあたり勉強用の本を買ったのですが、一冊目では失敗してしまいました。
元が古いものらしく、書いてあることもちょっと分かりづらいんです。
もちろん一応は理解出来るんですが・・・。

Visualc++netの本はたくさんあるのですが、C言語を学習するためのものはまるで
見当たりません(T_T)何かお勧めのものはないでしょうか?
スレ違いの質問かもしれませんが、もしよろしければアドバイスをお願いします!!

540 名前:デフォルトの名無しさん :04/06/05 18:08
c++もやるの?

541 名前:デフォルトの名無しさん :04/06/05 18:14
>>540
C++はCをある程度理解出来た時に勉強する気でいます(当面はCのみ)。

今は2つにどんな違いがあるかさえ分かってないので「ある程度」がどんな辺りか
すら分かりませんけどw


542 名前:デフォルトの名無しさん :04/06/05 18:23
>>539
猫でいいかな・・・
http://www.kumei.ne.jp/c_lang/

543 名前:デフォルトの名無しさん :04/06/05 18:26
とりあえずC言語から始めるんなら、下のスレッド

推薦図書/必読書のためのスレッド
http://pc5.2ch.net/test/read.cgi/tech/1083665944/

の1に張ってくれてるリンクで書籍をあたるのがいいかも。
「プログラミング言語C」(K&Rとか呼ばれてる)が定番。
サイトだと

http://www.kumei.ne.jp/c_lang/

とかかな。


544 名前:543 :04/06/05 18:41
かぶった...orz

545 名前:デフォルトの名無しさん :04/06/05 18:41
>>541
ほかの言語もやっていなくて一から独学なら定本明解C言語入門編をお勧めするよ。
とにかくしつこすぎるほど丁寧な解説が続くから理解できない部分はないと思う。

546 名前:539 :04/06/05 19:01
皆さんレスありがとうございます♪
>>542-543
「猫でも・・・」は本屋でも見かけた事がありますが、やっぱりそれもお勧めなんですかね?
見かけた時は「何だこのふざけたタイトル」とか思ってしまいましたが・・・・・・
サイトの方、今ちょっと見たんですが結構良さそうなんで重宝しそうです。
何日か参考に勉強して、合うようだったら本も買うかもしれません。

>>541
おっしゃる通り、一から独学ですw
しつこすぎる解説っていうのが私的にもすごくポイント高いです。

>543さんのリンク先のスレのリンクからもいくつかピックアップした後、これから本屋を回って
みようと思います。とりあえず2、3冊買う予定。
皆さん貴重な情報ありがとうございました♪









547 名前:546 :04/06/05 19:22
間違え

とりあえず2、3冊→とりあえず自分に一番合いそうなものを1冊、最終的には2,3冊。


548 名前:デフォルトの名無しさん :04/06/06 14:59
場違いな質問ですが、以前お世話になったサイトでURL、サイト名
がわからないサイトがあります。下のようなことがかかれていました。

C言語の初歩的な解説で17前後の単元に分かれていて、それぞれに
演習問題が6個位づつありました。「Javaでは」というアイコンが演習
それぞれにあり、Javaでのプログラム例などもかかれていました。

パソコンが飛んでしまってどこなのかわかりません・・・もしご存知の方
がいましたらお願いします。

549 名前:デフォルトの名無しさん :04/06/06 16:48
LonghornとWinFXでは、.NET FrameworkとWindowsの関係が変化する。基本的なOS機能
(例えばAvalonグラフィックスおよびユーザー・インターフェイス・サブシステムや
WinFSファイル・システム)は少なくとも部分的にマネージ・コードとして実装される。
そして、.NET FrameworkはC#やVB.NETなどのプログラミング言語とともに、開発者が
それらのOS機能にアクセスする際の基本的手段となる。
開発者は従来どおりCやC++などの言語によるネイティブ・コードを書いてこれらの
機能にアクセスできるが、そのコードはネイティブ・コード・アプリケーションと
マネージ・コードAPIの翻訳を行う「Interop」レイヤを通過し、それによって
オーバーヘッドが増える。

http://www.atmarkit.co.jp/fwin2k/insiderseye/20040107winfx/winfx.html

550 名前:デフォルトの名無しさん :04/06/06 16:59
>>548
おそらく、ここでは?
ttp://www.sist.ac.jp/~suganuma/index.html

「C言語 Javaでは? 演習問題」で検索したら6件目でしたよ。

551 名前:デフォルトの名無しさん :04/06/06 20:23
最近はCを勉強するのにJavaをリファレンスにするのですか?
うーん、時代は変わったものだ。

552 名前:デフォルトの名無しさん :04/06/06 21:05
逆だよな。Javaの仕組みを解説するために
Cの場合では・・・とやるのならわかるが。

553 名前:デフォルトの名無しさん :04/06/07 09:49
えーと、すみませんがちょっと質問させて下さい。

ソースを書いている時、カーソルが「 l 」ではなく「 ■ 」になってしまう事があります。
これはどういったことで起こりうるのでしょうか?
また、「 l 」に戻すにはどうすればよいのでしょうか?
よろしければ教えてください!!


net2002を使っています。

554 名前:デフォルトの名無しさん :04/06/07 10:14
ぶしつけな質問すみません。
(HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE)
っていう一文があるんですが、
親ウィンドウのハンドルhWnd と この一文でとられるプログラムのインスタンスハンドルって
どう違うのですか?
親ウィンドウのハンドル → 親ウィンドウのアドレス
プログラムのインスタンハンドル → ??

555 名前:デフォルトの名無しさん :04/06/07 10:35
>>553
[Insert]キー押してみ

>>554
ハンドルとアドレスは違うよ


556 名前:デフォルトの名無しさん :04/06/07 10:46
>>554
どう違うかといわれても、ウィンドウとインスタンスの違いとしか言いようがない。
ググればインスタンスとは何か出てくるからそこで調べれ。

557 名前:デフォルトの名無しさん :04/06/07 11:26
>>550
ありがとうございます、ここでした。
2時間ぐらい、ぐぐっても俺は見つけきらなかった・・・
本当にありがとうございました。

558 名前:デフォルトの名無しさん :04/06/07 12:35
>>555
レス感謝です。解決しました!!
かなり使いづらかったんでめちゃ助かりました♪

559 名前:デフォルトの名無しさん :04/06/07 13:23
VC7 なんだけど,
クラスウィザード使わずに,
類に函数の定義を加えたら,
「クラスヴユー」のその函数をクリックしても,
函数の定義のところ(.cpp ファイル内)にとばずに,
.h のその函数の宣言にとぶようになっちゃった

不便でしょうがない

うまく関連づける方法はないの?

560 名前:デフォルトの名無しさん :04/06/07 13:41
類?
ヴユー?
函数はまぁ、関数だろうけど。
句点はないし読点はカンマで代用しているし多過ぎ。
先ずは日本語の勉強したら?

561 名前:デフォルトの名無しさん :04/06/07 16:12
> 1からすべてアイコンを作るのはなかなかたいへんですし、
> それなりにセンスを要求されます。
> そんなときにはWindowsに付属するアイコンを利用するのも1つの手です。
> Developer Studioの[ファイル]-[開く]からEXEファイルやDLLファイルを開くと、
> そのファイルに含まれているアイコンなどのリソースを取り出すことができます。

参考にした本にはこう書いてあるんですが、いろいろやってみてもできないです。
こういうことできますか?

本と環境は両方VC++6.0です。

562 名前:デフォルトの名無しさん :04/06/07 17:01
>>561
同じVCつってもバージョン、エディションによってはできない。

563 名前:デフォルトの名無しさん :04/06/07 17:20
リソースを取り出すツールがフリーであるから
それを使えばよい。俺は使ったことないけど。

564 名前:デフォルトの名無しさん :04/06/07 17:21
VC++6.0でMFCを使っています。
SetTimer()を使ってタイマを走らせているのですが、
なぜか一度もOnTimer()に到達してくれません。
SetTimer()の戻り値では0以外が帰ってきているので失敗はしていないと思いますが…。
分からずらい質問で恐縮ですが、どなたか教えていただけますか?

565 名前:晴彦またはチャップマン :04/06/07 17:38
>>561
できるよ。Developer Studioの[ファイル]-[開く]から
EXEファイルやDLLファイルを開く時に
ファイル選択のダイアログで用途を指定するところがあるけど、
そこを「自動」から「リソース」に変更すればOK

566 名前:デフォルトの名無しさん :04/06/07 18:10
>>560
http://pc5.2ch.net/test/read.cgi/tech/1086185282/141

567 名前:デフォルトの名無しさん :04/06/07 18:19
>>566
うい、類については理解した。

568 名前:デフォルトの名無しさん :04/06/08 00:08
VC++を使わず、テキストエディタでのプログラミング中に、
MSDNライブラリを参照したいときがあるのですが、

MSDNライブラリだけを直接、起動することって可能ですか?
VC++を起動していないとMSDNは起動できないのでしょうか?

569 名前:デフォルトの名無しさん :04/06/08 00:11
スタートからプログラムに登録されてない?

570 名前:デフォルトの名無しさん :04/06/08 00:21
>>568
MSDNだけ起動できますよ。
プログラムメニューにありませんか?

571 名前:570 :04/06/08 00:23
あらかぶりましたね
俺はMSDNへのショートカットをWindowsの
クイックランチャーに入れてますよ。
スタートボタンの横に並んでる小さいアイコンね。
クリック一発起動です。

572 名前:デフォルトの名無しさん :04/06/08 00:31
>>705
補足+質問です
start関数とmain関数を二つのファイルに分けてあるんですが、
グローバル変数の宣言はどっちのファイルですればいいんですか?

573 名前:デフォルトの名無しさん :04/06/08 00:31
誤爆です
すみません・・・・

574 名前:デフォルトの名無しさん :04/06/08 00:35
>>570
>>569

ありがとんです。
スタートメニューに無かったので、再インストールしたところ、
スタートメニューに現れました。以前に消したのかもしれません。

exeファイルでもなく、helpファイルでもなく、colというファイルなのですね。
早速、クイックランチャに登録しました。

ありがとんでした。

575 名前:569 :04/06/08 00:38
>>570
漏れはスタートアップに入れてる(TT
(ついググル癖がつくのでそれを戒めるために...)

576 名前:561 :04/06/08 13:16
みなさんありがとうございました。
>>565さんの方法で開けました。
アイコン以外にもメニュー、ダイアログとかいろいろ開けて便利そうですね。
あとEXEやDLLのリソースをDeveloperStudioで直接編集もできるようでした。

577 名前:デフォルトの名無しさん :04/06/08 16:34
質問なのですが、
VisualC++6.0を使ってJPEGファイルをピクチャボックスに表示したいのですが、
どのようにすればいいのでしょうか?
参考になるHPを探したのですが見付かりませんでした。
よろしくお願いします。

578 名前:デフォルトの名無しさん :04/06/08 16:48
>>577
OleLoadPicture
IJGのライブラリ
GDI+
とか

579 名前:デフォルトの名無しさん :04/06/09 01:44
おながいします。VCのダイアログエディタで
コントロールのサイズを設定したいのですが、
VBのようにHeight、Widthといったプロパティ
が見当たりません。どうすればいいのでしょうか?
VC6.0でつ。

580 名前:デフォルトの名無しさん :04/06/09 01:57
?
辺をドラッグすればいいのでは?
コードで設定するならMoveWindowとか。

581 名前:デフォルトの名無しさん :04/06/09 02:07
>>580
レスありがとうございます。
サイズ設定をキーボード入力でしたかったのですが
ないみたいですね。マウスでドラッグするしか。
使いづらいでつ。。。


582 名前:デフォルトの名無しさん :04/06/09 05:55
>>581
グリッドとか、レイアウトでそろえる
適当に作ってからリソーススクリプト(.rc)を手で編集

583 名前:デフォルトの名無しさん :04/06/09 07:27
>>582

>>579
>VCのダイアログエディタで



584 名前:デフォルトの名無しさん :04/06/09 08:04
>>583
池沼?

>>579
>が見当たりません。どうすればいいのでしょうか?


585 名前:デフォルトの名無しさん :04/06/09 08:56
>>581
キーボード使うなら
 [矢印]で移動
 [矢印]+[SHIFT]でサイズ変更
 (座標は右下のステータスバーに表示)
マウスよりは細かく位置合わせすることができると思います。
VBみたいに座標を直接入力できませんが。

586 名前:577 :04/06/09 14:19
>>578
レスありがとうございます。
早速OleLoadPictureを使ってみようと思い、
ttp://www.athomejp.com/goldfish/mfc/cobject/jpegview.asp
を参考にしながらソースを書きましたが、ピクチャボックスに表示できません。
OleLoadPicture処理そのものは成功しているようです。
OnPaintの中がおかしいかと思うのですがこのような処理ではダメでしょうか?
続く


587 名前:577 :04/06/09 14:23
586の続き
if(m_pJpeg != NULL)
{
CWnd*myWnd = GetDlgItem(IDC_PICT1);
CDC*pDC = myWnd->GetDC();
CDCmyDC;
RECTrc;
myDC.CreateCompatibleDC(pDC);

myWnd->GetClientRect(&rc);// クライアント領域を取得

long hmWidth;
long hmHeight;
m_pJpeg->get_Width(&hmWidth);
m_pJpeg->get_Height(&hmHeight);
CSize size(hmWidth, hmHeight);

myDC.HIMETRICtoDP(&size);

// 描画する
m_pJpeg->Render(myDC, 0, 0,
size.cx, size.cy,
0,
hmHeight,
hmWidth, -hmHeight,
&rc);
}

正直デバイスコンテキスト部分が怪しいかと思うのですが、
どのような処理にしたらよいのかわかりません。
よろしくお願いします。

588 名前:デフォルトの名無しさん :04/06/09 15:58
下らない質問なのですが、フォルダをプロジェクトにインクルード(追加)するには
どうしたらいいのでしょうか?
フォルダの中にはライブララリとかが大量に入っており、これを追加しないとコンパイルが通らないんですが・・・・

589 名前:588 :04/06/09 15:59
使用しているのは Visual C++ 6.0 です。よろしくお願いします。

590 名前:デフォルトの名無しさん :04/06/09 17:48
メニューの「ツール」ー>「オプション」の
「ディレクトリ」で設定する

591 名前:デフォルトの名無しさん :04/06/09 18:02
>>590
ありがとうございました。

592 名前:デフォルトの名無しさん :04/06/09 23:05
ウィンドウの拡縮をするには、どういった記述をすればいいんですか?
VC++6.0を使ってます。

593 名前:デフォルトの名無しさん :04/06/09 23:19
SetWindowPos or MoveWindow

594 名前:デフォルトの名無しさん :04/06/09 23:41
あ、それだとウィンドウのサイズを変更するだけですよね?
そうではなくて、「拡大と縮小」です(判りづらかったらすいません)。

595 名前:デフォルトの名無しさん :04/06/09 23:47
非クライアント領域も含めて?

596 名前:デフォルトの名無しさん :04/06/10 01:01
VC6にやられますた。
grepですが、これってファイルがエディットボックスで指定したフォルダに
なかったら、プロジェクトに取り込まれていても検索対象にならないんでつね。
そのくせフォルダ内にあれば取り込んでいなくても検索されまつ。
下の方にチェックボックスで「プロジェクト内のソースファイルを探す」みたいな
いかにもそれっぽいのがあるのですがこれも空振りですた。
VC6の検索ってバグありなんでつか?

597 名前:デフォルトの名無しさん :04/06/10 08:07
>>594
分かりづらいと思うんなら同じ言葉繰り返さないでちゃんと人に分かるように
説明しろよ。それじゃ全くわからん。

598 名前:デフォルトの名無しさん :04/06/10 09:51
ウインドウ内部の画像か何かのズーミングってことかな?
拡大縮小と言わずに拡縮なんて言葉を使ってるくらいだから画像か?


599 名前:592 :04/06/10 19:31
>>598
そうです、そうです。
それと、画像自体に処理を加えるのではなく、ウィンドウサイズの変更を検出して、クライアント領域を
縮小(拡大)する、といった事をしたいと思っています。

600 名前:デフォルトの名無しさん :04/06/10 21:04
WM_SIZEにすら到達しとらんのかおまいは

601 名前:デフォルトの名無しさん :04/06/10 21:21
だから
オブジェクトの位置変更やサイズ変更はMoveWindow()だって

602 名前:592 :04/06/10 23:46
>>600-601
いや、違うんですよ……といっても、上手く説明する手だてが見つからない……。
仕方がないので諦めます。スレ汚しすいませんでした。
(というか、Windowsの世界では、サイズ変更のことを「拡大・縮小」っていうんですか? 今回の質問で
 なんとなくそんな気がしたのですが……だとしたら、もう一度そういうところから勉強し直してきます)

603 名前:超初心者 :04/06/11 00:51
すみません。ちょっと質問なのですが、下のように全く同じ文を打っているはずなのですが、
片方ではエラーが出てしまいました。気になって仕方がありません・・・・(T_T)
何か思い当たる原因はないでしょうか?net2003を使っています。




else 
puts("〜〜〜〜〜〜〜〜"); ←エラー

else
 puts("〜〜〜〜〜〜〜〜");  ←成功

604 名前:デフォルトの名無しさん :04/06/11 01:02
どんなエラーがでるの?
全角スペースとか入れてない??

605 名前:603 :04/06/11 01:10
レスどうもです♪それと説明不足でした。すみませんm(__)m
全角スペースは入れてません。
で、下のエラーが出てきてしまいます。

TextFile1.c(15) : error C2065: 'else@' : 定義されていない識別子です。
TextFile1.c(15) : error C2146: 構文エラー : ';' が、識別子 'puts' の前に必要です。
TextFile1.c(15) : error C2144: 構文エラー : '<不明>' は '<不明>' によって先行されなければなりません。
TextFile1.c(15) : error C2144: 構文エラー : '<不明>' は '<不明>' によって先行されなければなりません。
TextFile1.c(15) : error C2143: 構文エラー : ';' が '識別子' の前にありません。

その文だけを入れ替えると成功するので、他は問題ないと思うのですが・・・・。

606 名前:デフォルトの名無しさん :04/06/11 01:20
elseの後にゴミでも入ってるっぽいがよくわからんな

607 名前:デフォルトの名無しさん :04/06/11 01:22
elseの前に問題がありそう。
;がないとか

608 名前:603 :04/06/11 01:39
>607
>605の終わりでも書きましたが、その文だけを入れ替えて成功するので、elseの前には
特に問題がないと思うんですが・・・前の文の終わりにも' ; 'はきちんと書いてありますし。

その後、何度書き直しても全部成功するんでとりあえず先に進むことにします。

皆様レスありがとうございましたm(__)m


・・・・・ちょっと嫌な感じで気になっちゃってますけど。

609 名前:デフォルトの名無しさん :04/06/11 01:54
>>603
elseの後、putsの前だってばさ。
まぁ、ふつーのエディタならなんらかのゴミが入っていれば見えるんですがねぇ。

610 名前:デフォルトの名無しさん :04/06/11 02:06
そのままコピペすると一つ目のelseの直後に全角スペースが入ってるな

611 名前:デフォルトの名無しさん :04/06/11 14:08
VC7 で dll を作るとする.
実装部分では MFC をまったく使っていない.
ところが VC7 のプロジェクトの新規作成のウィザードで
dll を作れるのは,「MFC DLL」ていう項目しかない.

それで新規のプロジェクトを作成すると,
勝手にできる stdafx.h に MFC 関係のヘッダがいろいろ
include されている.

MFC 抜きの dll を作るにはどうしたらいいの?


612 名前:デフォルトの名無しさん :04/06/11 14:20
>>611
「Win32 Dynamic-Link Library」って項目無い?

613 名前:デフォルトの名無しさん :04/06/11 14:40
>>612

ないっすね
dll を作ってくれそうなプロジェクト項目は

・MFC DLL
・MFC 拡張 ISAPI Dll
・拡張ストアド プロシージャ

だけです.


614 名前:612 :04/06/11 15:02
>>613
612はVC6のだった。

「Win32プロジェクト」ってのにして
ウィザードの「アプリケーションの設定」でDLLに。

615 名前:デフォルトの名無しさん :04/06/11 21:05
リソースのStringTableを参照する場合、
char strHoge[STR_LENGTH];
LoadString(hInstance,IDS_HOGE,strHoge,STR_LENGTH);

必ずこんな感じにしないといけないんでしょうか。

616 名前:デフォルトの名無しさん :04/06/11 21:06
スレ違いだったらすいません。
C++の実行時型情報(RTTI)についての質問です。
#include <iostream>
#include <ctime>
#include <conio.h>
#include <typeinfo>

using namespace std;

class bass {
public:
virtual void func() = 0;
};

class derived : public bass {
public:
void func() {}
};

void main()
{
bass *p;
derived dr;
p = &dr;

cout << typeid(*p).name() << endl;
}
このソースをコンパイルすると
'typeid' が /GR- を使用したポリモーフィック型 'class bass' で使用されています; 動作結果は保証されません。
と警告がでて、実行するとエラーになります。
原因がわかりません、どなたか教えてください、、、。
環境はVC++ 6.0 windows xpです。

617 名前:デフォルトの名無しさん :04/06/11 21:24
>>616
1.メニューから[プロジェクト]-[設定]
2.[C/C++]タブを選択
3.カテゴリ(Y):のコンボボックスから[C++言語]を選択
4.[RTTIを有効にする]のチェックボックスにチェック
でどうでしょう?

あと揚げ足取りになりますが、ソース中のbassはbaseでしょう。

618 名前:616 :04/06/11 21:35
>>617
できました!
親切に教えていただきどうもありがとうございました。
これからもがんばっていこうと思います。


619 名前:デフォルトの名無しさん :04/06/11 22:32
>>615
CStringでもできるよ。

620 名前:名無し@沢村 :04/06/11 23:55
ちっ、ここはザコが立てたスレか?
Windowsプログラムとは可愛いやっちゃ♪
こっちはメインウィンドウ完成間近だというのによ…♪もうすぐメインウィンドウできるよ〜♪
といってもCとかアセンブラとかでメインウィンドウ組むんじゃないぞ。それじゃまるでザコだ。
こっちは、メインウィンドウがつくれるプログラムつくってるのよ〜♪つまりVisual E++だ。
そうです、みなさんもうすぐVisual E++はメインウィンドウがつくれる本格的なプログラミングソフトに進化します♪
いまやっとVisual E++に補助的にバイナリエディタつかってメインウィンドウつくるのに成功したところ。
補助的にバイナリエディタつかわないで、Visual E++のみでメインウィンドウつくれるよになるには、あと修正個所が1、2個所…
みなさんもうすぐでっせ〜♪

621 名前:名無し@沢村 :04/06/11 23:59
ちっ、ここはザコが立てたスレか?
Windowsプログラムとは可愛いやっちゃ♪
こっちはメインウィンドウ完成間近だというのによ…♪もうすぐメインウィンドウできるよ〜♪
といってもCとかアセンブラとかでメインウィンドウ組むんじゃないぞ。それじゃまるでザコだ。
こっちは、メインウィンドウがつくれるプログラムつくってるのよ〜♪つまりVisual E++だ。
そうです、みなさんもうすぐVisual E++はメインウィンドウがつくれる本格的なプログラミングソフトに進化します♪
いまやっとVisual E++に補助的にバイナリエディタつかってメインウィンドウつくるのに成功したところ。
補助的にバイナリエディタつかわないで、Visual E++のみでメインウィンドウつくれるよになるには、あと修正個所が1、2個所…
みなさんもうすぐでっせ〜♪

622 名前:デフォルトの名無しさん :04/06/12 00:10
そうで〜す!
ここはザコが立てたスレで〜ス!
だからザコじゃない沢村君は来ないでくださ〜い!

623 名前:デフォルトの名無しさん :04/06/12 01:48
いくらで売ってんだよ?
テンプレにもねぇし。
意地悪。

624 名前:デフォルトの名無しさん :04/06/12 02:39
今日初めて知った。
0で割るとVC++6.0はプログラムがエラー吐いて停止するのに、
VC++.NET2003だとゴミを返して何事もなかったかのように
走り続けるのか。
おかげでバグ取りに苦労したよ。

625 名前:デフォルトの名無しさん :04/06/12 07:30
2003でも0除算で落ちるけど…?

浮動小数点型だと 6 でも 2003 でも、
0除算で落ちないけどな。

626 名前:デフォルトの名無しさん :04/06/12 08:35
class TEST{
TEST(CString s){}
};

int main(){
WCHAR w[] = L"うほっいい男";
TEST test1(CString(w)); //変数宣言じゃなく、プロトタイプと見なされる。
TEST test2 = CString(w); //これなら大丈夫
}

VC7.1(2003)だけど、これはコンパイラが悪いよね?
それとも、漏れなんか勘違いしてる?

627 名前:626 :04/06/12 09:04
ん?関数って
int hoge(int(a));
こんなのもいけるのか?
と思って規格見たけど見つからないし、聞いたことないしなあ・・・

628 名前:デフォルトの名無しさん :04/06/12 11:23
>>626
main()が値を返していないのが悪い

629 名前:デフォルトの名無しさん :04/06/12 11:54
>>626
TEST test1(CString((const wchar_t*)w));

で、OK

630 名前:デフォルトの名無しさん :04/06/12 14:12
>627 余分なカッコ解釈してるだけだろ?

631 名前:デフォルトの名無しさん :04/06/12 16:26
>>626
Effective STL 第6章より

// int取る関数宣言
int f(int a);
int f(int (a)); // こいつに該当してる
int f(int);

// 関数ポインタとる関数宣言
int f(int (*p)());
int f(int p());
int f(int ());

// 解決方法 // ちなみに VC6だと通らない気がした
int f((int(a)));

632 名前:626 :04/06/12 18:48
レスthanks。
やっぱり漏れの間違いか・・・
int f();
は関数宣言になるから駄目だと知ってたんだけど、こんな場合も駄目なんだね。

>>628
悪くないYO!


633 名前:デフォルトの名無しさん :04/06/12 19:08
>>632
悪いよ。
宣言云々とは別の問題だけど。

634 名前:デフォルトの名無しさん :04/06/12 20:35
たしかに mainが値を返さなくても目立った問題は起きないが
main関数ひとつすらマトモに書けないようヤツはキライだ。

635 名前:626 :04/06/12 21:24
ISO/IEC14482
3.6.1 5 ・・・If control reaches the end of main without encountering a return statement, the effect is that of executing
return 0;

つーことで、mainだけはreturnを書かなくても、return 0;したことになるYO!
決して値を返してないわけじゃないYO

636 名前:デフォルトの名無しさん :04/06/12 23:52
そろそろC++スレ行ってくれないか。

637 名前:デフォルトの名無しさん :04/06/13 00:57
>>635
そういう問題じゃない

638 名前:デフォルトの名無しさん :04/06/14 20:18
VisualC++のエディタを賢くする方法を教えてください。

1、予約語やコメントを色を簡単に変更する方法を教えてください。
viのsyntaxみたいにしたい

2、インデントがおかしいelseの括弧を閉じるて改行すると一段上がってしまう。
  caseのインデントがおかしい
viのcindentなみにしたい

3、一括インデントはないんですか。
viの=Gみたいにしたい

639 名前:デフォルトの名無しさん :04/06/14 21:35
有る。
探せ。

640 名前:デフォルトの名無しさん :04/06/15 00:42
CImageクラスを使用しています。
イメージをJpeg形式で保存したいのですが、圧縮率が変えられません。
Imageクラスなら変えられるんですが、DIBじゃないので困っております。
CImageでエンコードの設定ってできないですか?
どなたかお助けを・・・

641 名前:デフォルトの名無しさん :04/06/15 01:08
VBみたいに

コントロール配置して、それに対してイベントドリブンでC言語を書くもの
だとばかり思っていたよ。

642 名前:デフォルトの名無しさん :04/06/15 01:33
>>641
? おまいのはそうじゃないの?


643 名前:デフォルトの名無しさん :04/06/15 01:38
>>624
そこはOSの担当だから、VCのバージォンがどうとかは関係なくない?


644 名前:デフォルトの名無しさん :04/06/15 01:53
>>638
そんなに言うならvi(のWinクローン)でソース書きゃいいのに……。

645 名前:デフォルトの名無しさん :04/06/15 03:26
>>644 ゴミレス (゚听)イラネ

646 名前:デフォルトの名無しさん :04/06/15 04:43
>>645の存在自体(゚听)イラネ

647 名前:デフォルトの名無しさん :04/06/15 05:26
ActiveX Scripting Hosts を使って
自作のアプリにマクロ機能を付けたいのですが、
どなたか参考になるサイトか書籍を知りませんでしょうか?


648 名前:638 :04/06/15 06:19
いくら総合開発環境といってもエディタが馬鹿だったら
ソースが汚くバグが入ってしまう。

>>639
本当にあるならヒントください。
くれぐれも >>644 のような答えはやめてね
gvimでソース書いてvisual C++で開きなおす
なんて非効率な作業はやりたくね。

開くエディタをgvimにしてデバッグしてエラーが出ると
gvimでエラーがでて使えない。


649 名前:デフォルトの名無しさん :04/06/15 09:05
オプション

650 名前:デフォルトの名無しさん :04/06/15 09:19
アプシャン


651 名前:デフォルトの名無しさん :04/06/15 10:00
ミッソー

652 名前:デフォルトの名無しさん :04/06/15 10:16
ダボォ

653 名前:638 :04/06/15 10:27
説明のしかたが悪かった。反省します。

1、予約語やコメントを色を数百台すべて同じにしたい。
  オプションで一つ一つクリックじゃなく設定ファイルをコピーするような変更方法

2、インデントがおかしいelseの括弧を閉じるて改行すると一段上がってしまう。
  オプションの「なし」や「ブロック」や「スマート」はどれもだめ
  ユーザ自身でインデントをカスタマイズする方法

3、一括インデントはないんですか。

どうでしょうか?

654 名前:デフォルトの名無しさん :04/06/15 10:47
>>653
ヘルプも読まんで質問すんなボケ

Visual C++ のテキスト エディタは以下の機能を備えています。
コード構文の自動補完。
マクロによるテキスト エディタの自動化。
C/C++、SQL、および HTML を含む異なるプログラム言語のソース ファイルの作成。
構文の色の設定とカスタマイズ。
(以下略)

目的に合ったトピックをクリックしてください
自動インデントを設定する
スマート インデントを設定する
タブとインデントの設定を変更する
タブ記号の表示/非表示を切り替える
複数の行を一度にインデントする
複数の行のインデントを一度に解除する

655 名前:デフォルトの名無しさん :04/06/15 13:38
>>653
じゃあ一つだけ教えてやるよ。
予約語(もしくは任意のシンボル)に色をつけたければ
USERTYPE.DATっつーファイルに列挙しろ。詳しいやり方はぐぐれば出てくる。

656 名前:デフォルトの名無しさん :04/06/15 13:51
スレッドの作り方なんだが,以下のようにして
実行しても一瞬だけウィンドウ(コンソール)が開くが,
あっという間に閉じてしまうんだが,なぜだろう?

#include "windows.h"
DWORD WINAPI hello(LPVOID);
//
void main(void){
//スレッド作成
HANDLE hThread1;// スレッド1のハンドル
DWORD dwThredID1;// スレッド1の ID
hThread1 = CreateThread( NULL, 0, (LPTHREAD_START_ROUTINE) hello, 0, 0 , &dwThredID1 );
}
//
DWORD WINAPI hello(LPVOID p){
printf("hello!\n");
getchar();
return 0;
}


657 名前:デフォルトの名無しさん :04/06/15 13:58
>1、予約語やコメントを色を数百台すべて同じにしたい。

なぜ?
もまえんとこは数百台の端末を取っかえ引っかえ使って開発するのか?

658 名前:デフォルトの名無しさん :04/06/15 14:05
>>656
オモロイ
ワラタ


659 名前:デフォルトの名無しさん :04/06/15 14:24
getchar();

660 名前:デフォルトの名無しさん :04/06/15 14:26
>getchar()
何?

661 名前:デフォルトの名無しさん :04/06/15 14:45
>>656
キミはスレッドについて1から勉強しなおしてきなさい。

662 名前:デフォルトの名無しさん :04/06/15 15:32
>656
とりあえず、ヒントを与えるとすると
「スレッドを作り出した側は今何してる?」だ
(なんて親切なもれ)

663 名前:>>656 :04/06/15 15:47
>>662

つまり,メインのスレッドが終わってしまったので,
子スレッドもおわったしまったという解釈でいいのでしょうか?

664 名前:デフォルトの名無しさん :04/06/15 16:09
今からこのスレは「663のスレッド学習室」になりました。

665 名前:デフォルトの名無しさん :04/06/15 19:34
>>654
なんだか何かを貼り付けただけみたいなw
だがヘルプ見るいい機会になったよ

>複数の行を一度にインデントする
Ctrl+A Ctrl+K Ctrl+Fがわかったよ

あとは期待はずれだったw

>>655
教えてくれてありがと
USERTYPE.DATを調べたよ
予約語でもコメントでも関係ないユーザーキーワードに色付けるんだろ
関係ないじゃん

ちゃんと質問をみてくれよw
的外れだなw

結局3以外はできないことが良くわかった
ここで質問する所ではないこともよ〜くわかったw

で俺なりに調べて教えていただいたかたに教えてやろう
HKEY_CURRENT_USER\Software\Microsoft\Visualパケージ名\バージョン\FontAndColors\{A27B4E24-A735-4D1D-B8E7-9716E1E3D8E0}
ここら辺をエクスポート後は100台の機械上でダブルクリックするだけだ


666 名前:デフォルトの名無しさん :04/06/15 20:07
はい次の質問どうぞ。

667 名前:638 :04/06/15 20:25
あ、ごめんオプションでよかったんだ

2、インデントがおかしいelseの括弧を閉じるて改行すると一段上がってしまう。

中かっこをインデントするをはずす

これで全部問題解決したよ


668 名前:デフォルトの名無しさん :04/06/15 20:32
>>638はなかなかの筋の教えて君ですな。

669 名前:デフォルトの名無しさん :04/06/15 20:43
皆さんは、なんで、Delphiでやんないのですか?
VCの方が大変じゃないですか?

670 名前:デフォルトの名無しさん :04/06/15 20:56
>>669
「Cの次はDでしょう」なんて平気で言う腰抜けBorlandには興味ない。
だいたい「VCのほうが大変だ」などと思ったことは一度もない。

671 名前:デフォルトの名無しさん :04/06/15 21:41
CRecordset rs(&db);
rs.Open(CRecordset::snapshot, _T("SELECT TEST1.name,TEST2.name FROM TEST1,TEST2"))

CString varValue;
// rs.GetFieldValue( "TEST1.name", varValue );
rs.GetFieldValue( "name", varValue );

上記のように同じ名前の列名を持つrsを作った場合、
GetFieldValueで希望の列を参照することはできるのでしょうか?
コメントアウトの様に指定してもエラーになってしまいます。

672 名前:デフォルトの名無しさん :04/06/15 22:51
それ、Open成功してるのか?
SQL文のさいごに ; がないよ

673 名前:デフォルトの名無しさん :04/06/15 23:06
CImageクラスを使用しています。
イメージをJpeg形式で保存したいのですが、圧縮率が変えられません。
Imageクラスなら変えられるんですが、DIBじゃないので困っております。
CImageでエンコードの設定ってできないですか?
どなたかお助けを・・・

674 名前:デフォルトの名無しさん :04/06/15 23:19
日本語のフォントが無いパソコンでαを表示するにはどうすればいいでしょうか?

675 名前:デフォルトの名無しさん :04/06/15 23:34
本を片手に簡単なソースを書いてコンパイルしようと思ったんですが、
どうしてもコンパイルできなくて困っています。
VC++.netを使っているんですが、cppのファイルをコンパイルするには
どうすればいいのでしょうか……本にはvsvers32.batがあるフォルダで、
このバッチファイルを実行しろと書いてあったのでやってみたんですが、
何回ダブルクリックしても開けなくてダメでした。

昨日ソフトインストールしたばかりの初心者で、プログラミングの知識は
ほとんどありません。釣りでもネタでもなく、真剣に困ってます。
対処法を教えてください、お願いします。

676 名前:デフォルトの名無しさん :04/06/15 23:50
バッチファイルはコマンドプロンプトから実行
一旦ログオフ
ログインしてコマンドプロンプトを起動
C:\> cl file.cpp
でfile.cppがコンパイルされる
ってコマンドラインからコンパイルしたいのか?



677 名前:デフォルトの名無しさん :04/06/16 00:00
×「プログラミングの知識はほとんどありません。」
◎「パソコンの知識はほとんどありません。」

678 名前:デフォルトの名無しさん :04/06/16 00:05
さあまずはこんにちわマイコンから始めようか

679 名前:デフォルトの名無しさん :04/06/16 00:13
VC++.NETでMFCを使用した標準DLLを作っています。
VBから参照して使用したいのですが、参照はできても関数が一切見えません。
どうやってエクスポートするのでしょうか?
.DEFファイルにちゃんと書いているのですが…。
どなたか教えてください。

680 名前:デフォルトの名無しさん :04/06/16 00:26
>>678
「さまあずのこんにちはマイコン」っていう本があるのかと
思ったぞw

681 名前:デフォルトの名無しさん :04/06/16 00:39
VC++.NET でオーナードローボタンの作成に挑戦しているのですが、
マウスクリック連打すると、反応が普通のボタンに比べて鈍いのです。
自分でGoogleで検索してみると、ダブルクリックに対する反応を無効にしなければならないようです。
具体的にどうしたら無効化できるのか、教えていただけないでしょうか?

682 名前:デフォルトの名無しさん :04/06/16 02:27
>>681 PreCreateWindowで、CS_DBLCLKSをとる

683 名前:デフォルトの名無しさん :04/06/16 02:34
>>650-652
グラディウスわろた

りっぷぅれいざー

684 名前:デフォルトの名無しさん :04/06/16 05:43
超初心者です。

公開されていたソースをコンパイルしてみたいのですが、
下記のエラーがでます。

<エラー>
 fatal error C1083: インクルード ファイルがオープンできません。
 'boost/timer.hpp': No such file or directory

「timer.hpp」は他の場所で公開していたので入手しました。
どこに配置すればエラーがでずにコンパイルできまつか?


685 名前:デフォルトの名無しさん :04/06/16 06:09
でつまつ使う奴は答えない

686 名前:デフォルトの名無しさん :04/06/16 07:52
684は答えが目の前にあってもわからないタイプの人間だ。
きっと小学生の頃、算数の文章問題(国語能力が必要)が解けなかっただろう。

687 名前:デフォルトの名無しさん :04/06/16 09:11
>>684
インクルードファイルをフルパスで指定したらいいでつよ

688 名前:デフォルトの名無しさん :04/06/16 09:27
Cの勉強を始めようと思い、VisualC++.netを買おうと思うのですが、
VisualC++.netには、プロジェクトの管理や、コンパイルなどを操作できる、
GUIのインターフェースはついているのでしょうか?

マイクロソフトから落とせる.NET Frameworkという物でも
Cのプログラムが作れると聞いたので、落としてみたのですが、
コンパイルがコマンドラインからしかできないらしく、止めました。

CのプログラムをGUIでするには、VisualC++.netだけ買えばいいのでしょうか?
それとも、VisualStudio++.netを買わなければいけないのでしょうか?

ものすごくとんちんかんな事を聞いているかもしれませんが、
その時はすみません、スルーしてください。

689 名前:デフォルトの名無しさん :04/06/16 09:38
Cの勉強だけに VisualC++.net 買うのは金の無駄。
難しいことを避けてるようじゃプログラムは作れないだろうし

690 名前:デフォルトの名無しさん :04/06/16 09:38
ありがとうございます、682 さん。
でも当方MFCを使用していないので、PreCreateWindow は使えないのです。
代りに以下のように動的に取り除いてみましたが、
etWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE) & ~CS_DBLCLKS);
やはりオーナードローボタンの反応は鈍いままです。。。
基本的に処理が重いのだろうか?、ちなみに環境はP4(3GHz)、メモリ1GBです。

691 名前:デフォルトの名無しさん :04/06/16 09:40
失礼↑
SetWindowLong(hwndCsw0, GWL_EXSTYLE, GetWindowLong(hwndCsw0, GWL_EXSTYLE) & ~CS_DBLCLKS);
です、先頭1字が抜けてました。


692 名前:デフォルトの名無しさん :04/06/16 10:26
>>688
> CのプログラムをGUIでするには、VisualC++.netだけ買えばいいのでしょうか?

それでOK

後は>>482-485あたり

693 名前:デフォルトの名無しさん :04/06/16 15:49
>>690
こりゃ、ウインドウスタイルを書き換えてるね。

クラススタイルだから、
SetClassLong(hWnd, GCL_STYLE, 0);
だね。


694 名前:675 :04/06/16 16:35
いろいろ悪戦苦闘しながら試してみたら、うまくできました。
もう少しネットで情報集めたりしながら、マターリやっていきたいと思います。
>>676さん、ありがとうございました。

695 名前:デフォルトの名無しさん :04/06/16 16:58
693 様、あ、ありがとうございました〜。 <(_ _)>
軽快に動作するようになりました。

他の閲覧者の為に、以下のように変更したらOKだと報告します。

SetClassLong(hwndMBtn0, GCL_STYLE, GetClassLong(hwndMBtn0, GCL_STYLE) & ~CS_DBLCLKS);



696 名前:デフォルトの名無しさん :04/06/16 19:58
>>679
スレ違い。
VBから直接使用出来るDLLはActiveX DLLのみ。
通常のDLLはWin32APIと同じようにして使う。


697 名前:688 :04/06/16 21:18
>>689,692
アドバイスありがとうございます。
VisualC++.netを購入してみようと思います。

698 名前:684 :04/06/16 21:31
>>687-688

ありがトン
無事解決いたしました!!

699 名前:デフォルトの名無しさん :04/06/16 23:26
凄いハイパワーマシン使ってる奴は
なぜか大抵
本人はローパワーだよな。


700 名前:デフォルトの名無しさん :04/06/16 23:58
コンソールアプリケーションでコンパイルしたときconsole.hが
見つからないとでたんですが何かインストールしないと無理ですか?

701 名前:デフォルトの名無しさん :04/06/17 08:44
またお前か・・・・・・・・・。

702 名前:デフォルトの名無しさん :04/06/17 10:23
>699
ハイパワー = 最近買ったPC ≒ 初心者が多い



703 名前:デフォルトの名無しさん :04/06/17 15:56
>>700
http://www.google.com/search?num=50&lr=lang_ja&q=console.h

704 名前:デフォルトの名無しさん :04/06/17 19:18
>>545
この本買ったんですが、演算問題の解答集は別売りなんですね(;´д`)
解答のない問題に何の意味があるんだろう?



705 名前:デフォルトの名無しさん :04/06/17 19:49
プログラムはそういうものだから

706 名前:デフォルトの名無しさん :04/06/17 19:55
>>705
それでも初心者用の本なんだから、模範解答位書いといて欲しかった・・・。
一応は書けても、もっといい方法もあるんじゃないかと気になってしょうがないです。
かといって解答集なんて買いたくないし。

707 名前:デフォルトの名無しさん :04/06/17 20:15
>>706
そらすべての問題、説明に答えがないならそうだろうが
一部の問題、それも宿題形式のおさらいに答えがないとわめかれても
僕ちゃんに優しく教えてくれるママさんつきの教科書なんてねぇわけでな。

708 名前:デフォルトの名無しさん :04/06/17 20:35
回答集売ってるんならそれがユーザー向けに価値があるって作り手も考えている
わけだろ?ならそういう具合にばらして売るのは親切じゃないって反応もあって然る
べきかと思う。

>>707
>僕ちゃんに優しく教えてくれるママさんつきの教科書なんてねぇわけでな。

そう考えちまうのはおまいは解説本制作に向いてないってことだな
BBSのボランティアと販売書籍は違うぞ

709 名前:デフォルトの名無しさん :04/06/17 20:50
>>708
回答集なんて者は売っていない訳で。
あくまで問題集の中に含まれているだけで、
僕ちゃんがそれでも欲しいというのなら買えばいいだろう。
そもそも答えの複数ある宿題なんだから
僕ちゃんなりに考えなさいという作者のものすごい思いやりなんだが
ママが横についていないと出来ない子の事まで作者も思いつかなかったんだろうな。

710 名前:デフォルトの名無しさん :04/06/17 21:22
解答集<>回答集に対する揚げ足レスか?
>>706
> かといって解答集なんて買いたくないし。
などと言ってるから、解答集はあるんじゃないのか。

711 名前:デフォルトの名無しさん :04/06/17 21:58
> 推薦図書/必読書のためのスレッド PART 10

> 129 名前:デフォルトの名無しさん投稿日:03/05/10 22:03
> そういえばK&Rにはアンサーブックありますが
> ストラウストラップにはアンサーブックないんですね。
> でもプライマーにはある。なんなんでしょ。

712 名前:デフォルトの名無しさん :04/06/17 22:03
Visual C++で気の利いたソフトでも作ったると思い立ち勉強しています
MFC、Windows API、WTLなるみっつの手法のサンプルプログラムを数本作ったところです

MFCは、ドキュメントビュー・MFCクラスウィザードなんかで開発効率良さそうと感じたのですが
作成したプログラムにDLLがいるとのことで敬遠(同じような理由でVBも敬遠)

Windows APIは、OSのAPIを直で呼ぶということで処理効率良さそうと感じたのですが
プログラム書くの大変・・・

ということで、WTLというのを知り手をつけたのですが
これがオブジェクト指向ですっきり書けるようで気に入りこれでやっていこうかなと思いました

このままWTLで突っ走っても大丈夫なのでしょうか?
今は噂の.NETでやるべきなのでしょうか?(VC6しかないので無理かもしれませんが)
WTLとやらは時代遅れだったりします?

713 名前:デフォルトの名無しさん :04/06/17 22:21
>>712
MFCのDLLはVC6以前のverなら普通にOSに付属しているのでVBとはちょっと違う
win95には付いていないがMFCのDLLくらいは入れてあるのが当然と思っても良いくらい
普通にMFCアプリが出回っているので(IE関連のインストでも)

VCでプログラム書く初心者ならMFCで始めるのが最も一般的

714 名前:デフォルトの名無しさん :04/06/17 22:26
>>712
> 作成したプログラムにDLLがいるとのことで敬遠(同じような理由でVBも敬遠)

あなたは騙されているようですね。
確かにシステムDLLは必要ですが、それはSDKのみで作成しても同じなわけで。

自分自身はWTLを便利に使わしてもらってます。
Win32でやる限り、時代遅れってことはないんじゃないですか。

715 名前:デフォルトの名無しさん :04/06/17 23:36
>>712
だからスタティックリンクにすればDLL要らないと
何度言えばわかるんだ

716 名前:デフォルトの名無しさん :04/06/18 00:04
>>712はスタンダード版を使ってると予想してみる

717 名前:デフォルトの名無しさん :04/06/18 01:09
そういやWTLまだ使ってないや

718 名前:デフォルトの名無しさん :04/06/18 01:21
教えてください。。。
socket通信をするプログラムA.exe(データをsocketで受け取り、
処理をして指定のファイルを作る)を作って、これをWINXP上の
「サービスとアプリケーション」に追加させ、PCを起動するたびに
裏で起動させようとしたのですが、なぜか起動しません。。。
A.exeを単体で起動(アイコンをダブルクリックして)すると動くのですが、サービスとして
起動させると立ち上がらないのです。
(色々調べたのですが、解決法が載ってなくて・・・)

なんか原因がわかる方がいましたら、教えてください。
ちなみにA.exeは、コンソールアプリのC++.NETでOSはXPです。




719 名前:デフォルトの名無しさん :04/06/18 05:46
>>718
> これをWINXP上の
> 「サービスとアプリケーション」に追加させ、PCを起動するたびに
> 裏で起動させようとしたのですが、

ソケットだのなんだの要らないこと書いてないで
そこんところを具体的にどう書いたのかを説明しないと・・・

720 名前:デフォルトの名無しさん :04/06/18 08:44
教えてください!
---------------------------------------------------------------------
char sentence[20] = "15\t21\t184\t27\n";

のようにタブと改行で区切られた数字が文字列(Char型)として
入ってる場合、これを

int code[0] = 15, code[1] = 21, code[2] = 184, code[3] = 27

のようにint型の配列に入れたい場合どうしたらいいのでしょう?
誰か親切な方よろしくお願いします。
-------------------------------------------------------------------

721 名前:デフォルトの名無しさん :04/06/18 09:07
>>720
strtol()をループで回すかstrtok()をループで回してatoi()するか、個数がわかっているならsscanf()で切り出す。

722 名前:720 :04/06/18 11:26
atoi()なんて便利なものがあったんですね。
ありがとうございました☆721さん。

723 名前:718です。 :04/06/18 12:19
>>719さん
こんな感じで登録プログラムを作ってみました。
これで登録はできるんですが、起動できないということです。。。
#include<windows.h>
int main(void){
SC_HANDLE hScm = OpenSCManager(NULL,NULL, SC_MANAGER_ALL_ACCESS);

if(hScm==NULL){
MessageBox(NULL,"サービスコントロールマネージャを取得できません。","サービスの登録",MB_OK);
return 0;
}
SC_HANDLE hServ = CreateService( hScm, "A", "A",
SERVICE_ALL_ACCESS,
SERVICE_WIN32_OWN_PROCESS,
SERVICE_AUTO_START,
SERVICE_ERROR_NORMAL,
"C:\\temp\\A.exe",
NULL, NULL, NULL, NULL, NULL);
if(hServ!=NULL){
CloseServiceHandle(hServ);
MessageBox(NULL, "サービスを登録しました。", "サービスの登録", MB_OK);
} else {
MessageBox(NULL, "サービスの登録に失敗しました。", "サービスの登録", MB_OK);
}
CloseServiceHandle(hScm);
return 0;
}

724 名前:デフォルトの名無しさん :04/06/18 13:17
>>712
プログラム自体が始めてってことなら、WTLはしきいが高いと思う
情報がMFCに比べ圧倒的に少ないし、C++とテンプレートの理解がある程度必要になる
WTL、MFCともにプリプロセッサを通した後のソースを読んでみることをお勧めするよ


725 名前:712 :04/06/18 15:53
レスありがとうございます

>>713
自分が思ってたよりMFCで作ったプログラムもほとんど不自由なく動かせるんですね
でもやっぱりなんとなく好みじゃない感じなのである程度勉強したらWTLの方に移りたいと思います

>>714
MFC使わなくてもDLLいるんですか_no

WebであまりWTLの情報をみかけなかったので使われない手法かと思ってたのですが安心しました

>>715
ロクに過去ログに目も通さずすみません_no

>>716
使ってるのはプロフェッショナル版のようです

>>724
プログラム自体はC(非C++)とJava(Web系)の経験が多少あります
Visual C++やるにあたって軽くC++について軽く勉強しましたが
テンプレートあたりCにもJavaにもなかったのであやしいですね・・・

>WTL、MFCともにプリプロセッサを通した後のソースを読んでみることをお勧めするよ
プリプロセッサをかけたら、素のWinMainやらWndProcに変換されるんですかね?
眺めてみます


どうも全般的に知識不足っぽいのでもう少し色々調べてないと駄目ですね
それからWTLでの開発に挑戦してみようと思います

726 名前:724 :04/06/18 16:49
>>725
プログラムをやったことあるならWTLはお勧めだよ
MFCに比べればソースの量がたいしたことないので解析が簡単にできる
オープンソースになったことで頻繁にバージョンが上がっているのも良い点


727 名前:デフォルトの名無しさん :04/06/18 17:01
VC2003買ったのですが、作成した実行ファイルを見ると
@@@名前空間 みたいのが大量にお尻にくっついています。
VC6では無かったと思うのですが、どうにかしてこれは消す方法は無いでしょうか?

728 名前:デフォルトの名無しさん :04/06/18 18:11
>>726
まだ一回しか上がってないけどな

729 名前:724 :04/06/18 18:16
>>728
確かにね
一気に7.5まで上がってしかもほとんど変わってないけど
これからきっと・・・・頻繁に上がるはず

730 名前:デフォルトの名無しさん :04/06/18 21:00
いちよう貼っとく

WTLお勉強スレッド
http://pc5.2ch.net/test/read.cgi/tech/1078150663/


731 名前:デフォルトの名無しさん :04/06/18 21:23
VisualStudio.NETをインストールしてあるパソコンから
もう一台のパソコンに移動したいのですが、どうすれば?

732 名前:デフォルトの名無しさん :04/06/18 21:26
>>731
腰を上げて立って歩いて行けば?

733 名前:731 :04/06/18 21:30
すいません。
書き込んだ後に文章読み返してみて、来るんじゃないかなぁ〜、と思ってました。
正確には、自宅デスクトップにインストールされてるVS.NETをノートにインストールしなおしたいんです。
お願いします。

734 名前:デフォルトの名無しさん :04/06/18 21:34
CDドライブついてないのか?

735 名前:731 :04/06/18 21:38
普通にインストールしていいんですか?

736 名前:デフォルトの名無しさん :04/06/18 21:57
>>735
http://www.microsoft.com/japan/msdn/license/

737 名前:デフォルトの名無しさん :04/06/18 21:58
>>735
要領得ないね。何に引っかかってるのかを書けよ。

738 名前:731 :04/06/18 22:10
とりあえずわかった気がします。

739 名前:デフォルトの名無しさん :04/06/18 22:25
>>723
> これで登録はできるんですが、起動できないということです。。。

イベントログになんか残ってないのか ?

740 名前:デフォルトの名無しさん :04/06/19 00:40
ダイアログにMedia Playerのコントロールを貼り付けたのですが、
実行時に右クリックしてもMedia Playerのコンテキストメニューが表示されません。
enableContextMenuはTrueに設定してあります。
他に何か設定する必要があるのでしょうか?


741 名前:デフォルトの名無しさん :04/06/20 00:48
テストコンテナあたりでも確認してみれ
漏れは使ったことないわ

742 名前:デフォルトの名無しさん :04/06/20 14:13
ファイルを読み込んだときに、ボタンなどのコンポーネントを表示させたいんですが、
こういうことってMFCで出来ますか?Win32しかダメ?

743 名前:デフォルトの名無しさん :04/06/20 15:59
>>742
CWnd::ShowWindow(SW_SHOW) でどうぞ。

744 名前:デフォルトの名無しさん :04/06/21 19:13
デザインとしては常に表示しておいて有効/無効の切り替えをするって手もある

745 名前:デフォルトの名無しさん :04/06/21 20:23
>>744
手もある、というかむしろそれが正解ダヨナ・・・


746 名前:デフォルトの名無しさん :04/06/22 00:08
現在、学校で出された課題をやっています。

1+2+3+・・・+nの和が500より小さい場合における、nとそのときの和を求めるプログラムを作成せよ。
という課題なのですが、試しに

#include<iostream.h>
#include<conio.h>

int main(void)
{
cout << "1+2+3+・・・+nの和が500より小さい場合における、nとその時の和を求めます。\n";
int m=0;
for(int n=1;m<500;n++){
m=m+n;
}
cout << "500より小さい場合のnは" << n-1 << "\n";
cout << "500より小さい場合の和は" << m-n << "\n";
getch();
return(0);
}
と組んでみたのですが500より小さい場合のnが答えと違ってしまいます・・・。
試しに、
cout << "500より小さい場合のnは" << n-1 << "\n";
cout << "500より小さい場合の和は" << m-n << "\n";
も括弧でくくって途中の経過を確認したのですが、その時は正しくnが表示されます。
なぜなのかよく分からないので、どなたか教えていただけないでしょうか?

747 名前:デフォルトの名無しさん :04/06/22 00:13
nのスコープがforの中だけだからじゃない?(処理系によるけど)
int nをforの前で宣言してみては?

748 名前:746 :04/06/22 00:26
nの前で宣言しても結果は変わらず・・・
n=31とならねばならないはずなのにn=32に・・・。
和は合ってるのになぜだろう・・・

749 名前:デフォルトの名無しさん :04/06/22 00:30
for文終わった後のmを出力してみれ

750 名前:746 :04/06/22 00:31
今気づきましたが、なぜか和も違ってました・・・。
和が496にならなければならないところ、答えは495・・・。
なぜなんだorz


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.