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


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

★初心者にVisual C++を教えるスレ★ Part25
751 名前:デフォルトの名無しさん :2007/03/11(日) 13:07:36
SS_WHITERECT も中を描画するだろw
枠だけとかあるだろ

752 名前:743 :2007/03/11(日) 14:00:30
>>751
SS_WHITERECTを消して、
SetBkModeでTRASPARENTにしてみても変わらないです。。。


753 名前:デフォルトの名無しさん :2007/03/11(日) 14:07:00
SS_WHITEFRAMEとかSS_BLACKFRAMEとかあるだろう

754 名前:743 :2007/03/11(日) 14:18:25
>>753
GODと呼ばせてください・・・ できました・・・
今日中に作成しないといけないものだったので、
昨日から胃が痛くてしょうがない状態でした。
ありがとう、本当にありがとうございました!

755 名前:デフォルトの名無しさん :2007/03/13(火) 18:36:23
「胃が痛くてしょうがない状態」
あああ…。悲しいなそれは。

756 名前:デフォルトの名無しさん :2007/03/15(木) 15:56:25
質問があります。

MS VC++.NET 2003 なのですが、以下のソースで三角を描画しました。

Pen * pen = new Pen(Color::Black);
Point poly[] = { p1, p2, p3 };
g->DrawPolygon(pen, poly);

これは成功しました。
今度はこれを塗りつぶしたいのですが、どうすれば良いのでしょうか?
ここでのBrushの使い方がいまいち分かりません。
よろしくお願いします。

757 名前:デフォルトの名無しさん :2007/03/15(木) 16:18:34
FillPolygon

758 名前:デフォルトの名無しさん :2007/03/15(木) 16:20:18
中を塗り潰すのはFill〜と命名されている。
FillPolygonはDrawでPenを引数に取っていた代わりにBrushを引数に取る。
単色に塗り潰すブラシはBrushの派生の1つSolidBrush、ほかにも何種類かブラシがある。
だから結局こうなる。
Brush* brush = new Brush(Color::Black);
Point poly[] = {p1, p2, p3};
g->FillPolygon(brush, poly);


759 名前:デフォルトの名無しさん :2007/03/15(木) 17:03:50
w= *((ULONG *)( &iv->rbuf[iv->rbufq] ));

既設のvc++のソースを調査しています。
上記、処理の実行結果(w)には何が設定されるかわかりません。
*((ULONG *) ってどういう意味ですか?
ご存知の方、ご教授願います。


760 名前:デフォルトの名無しさん :2007/03/15(木) 17:05:36
unsigned long のポインタにキャストして、そのアドレスが指してる値を取り出してる

761 名前:デフォルトの名無しさん :2007/03/15(木) 17:09:22
>>760 ご教授に感謝

762 名前:デフォルトの名無しさん :2007/03/15(木) 19:05:02
テキストファイルのダンプ(16進)を表示したい。VC++のツールにありますか?
・メモ帳でunicode形式で保存したファイルを CStdioFile::ReadString()した時
 意図しない動作をするので unicode形式のファイルの中身をコードで確認したい

Visual C++ standard editionです。
ヘルプで検索するとデバッグ時のメモリダンプばかりヒットしてしまいます。
よろしくお願いします。

763 名前:デフォルトの名無しさん :2007/03/15(木) 19:08:56
vectorあたりでバイナリファイルエディタ探すのが早いんじゃ

764 名前:デフォルトの名無しさん :2007/03/15(木) 19:13:42
>>762
どのバージョンかわからんのであれだが、
ファイルメニュー - 開く - ファイル で出たダイアログで
ファイルを選択し、開くボタンの右の矢印を押して
ファイルを開くアプリケーションの選択からバイナリエディタを選べばいける

バージョンによって開き方が違うかも

765 名前:デフォルトの名無しさん :2007/03/15(木) 19:23:39
>>764
VC++2005 でバイナリエディタ開けました! ありがとうございます。

>>763
レス d。

766 名前:658 :2007/03/21(水) 14:10:17
向こうでも書きましたが、動きますた。
ご迷惑をおかけしました。

迷惑ついでにもうひとつ質問が。
コンパイル時にLNK 4006のwarningが大量発生するのです。
strmbase.lib(strmiids.obj) : warning LNK4006: _IID_IRegFilterInfo は wcamregister.obj で定義されています; 2 つ目以降の定義は無視されます
strmbase.lib(strmiids.obj) : warning LNK4006: _IID_IFilterInfo は wcamregister.obj で定義されています; 2 つ目以降の定義は無視されます
strmbase.lib(strmiids.obj) : warning LNK4006: _CLSID_FilgraphManager は wcamregister.obj で定義されています; 2 つ目以降の定義は無視されます
strmbase.lib(strmiids.obj) : warning LNK4006: _IID_IQueueCommand は wcamregister.obj で定義されています; 2 つ目以降の定義は無視されます
strmbase.lib(strmiids.obj) : warning LNK4006: _IID_IDeferredCommand は wcamregister.obj で定義されています; 2 つ目以降の定義は無視されます
といった感じのが1000近く出ます。
動くので問題はないんですが、コンパイル時にウザいので解決したいなーと思った次第です。
どなたか解決方法をご存知の方はいらっしゃいますでしょうか?

767 名前:デフォルトの名無しさん :2007/03/21(水) 14:53:35
#pragma warning(disable: 4006)

768 名前:デフォルトの名無しさん :2007/03/21(水) 14:58:28
リンクのワーニングにそれ使えるの?

>>766
リンク指定してるライブラリを調べてみて。重複してないか?

769 名前:658 :2007/03/21(水) 15:09:23
>>767
効かないようです。

>>768
winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib strmbasd.lib
以上がリンクしているライブラリですね。

770 名前:658 :2007/03/21(水) 15:26:06
ついでに書くと、strmbasd.libとstrmbase.libをプロジェクトのディレクトリにコピーして使ってます。
それがまずいんでしょうか?

771 名前:658 :2007/03/21(水) 15:45:25
strmbase.libがResource Filesに入っていたので外しました。
数が700くらいまで減りましたがまだ大量に発生中です。

http://www.users.gr.jp/blogs/hidori/archive/2005/02/14/8990.aspx
これズバリだと思ってこのとおりに試してもダメでした。
リンク先のmsdnサイトのやり方も試してみましたがダメです。orz.......

772 名前:デフォルトの名無しさん :2007/03/21(水) 16:34:06
>>769
それはデフォルトライブラリの使用をありにしたうえで別に指定しているのか?

773 名前:658 :2007/03/21(水) 16:43:51
>>772
今出先なんで確認できないんですが、多分デフォルトありにしてます。
帰ったら早速調べてみます。

774 名前:デフォルトの名無しさん :2007/03/21(水) 17:02:25
>> 658
> 向こうでも書きましたが、動きますた
原因と問題解決方法と書いておけ。
将来的に同じような所で躓くヤツも居るだろう。


775 名前:658 :2007/03/21(水) 18:13:52
>>772
「デフォルトライブラリをすべて無視」にチェック入れても同じ状態(というかリンクエラーが追加される)ですた。

>>774
原因:DVSD形式でデータが流れてくるためDIB形式に変換しようとしたら失敗する。
対処:
AM_MEDIA_TYPE amt;
ZeroMemory(&amt, sizeof(AM_MEDIA_TYPE));
amt.majortype = MEDIATYPE_Video;
amt.subtype = MEDIASUBTYPE_RGB24;
amt.formattype = FORMAT_VideoInfo;
pGrab -> SetMediaType( &amt );
といった感じで一度RGB24形式に指定してあげた後
pGrab -> GetConnectedMediaType( &amt );
で再度取得する。
というかリンク先のソースをコピペでも動くます。
ttp://wwwdoi.elec.nara-k.ac.jp/html/jisyu/dxm/cap2/index.html

CopyMemoryで落ちるとか、ヘッダに書くと動かないってのは謎のままです。orz

776 名前:デフォルトの名無しさん :2007/03/21(水) 18:43:00
まとめ
拾って来たソース適当にコピペしたら動きました。
でもワーニング出まくりです。

777 名前:デフォルトの名無しさん :2007/03/21(水) 18:52:44
たしか、#defineの具合によって、UUIDが実体化されることがあったはず。
だから、どこでも#defineせずにlibを含めるか、どこか1つの翻訳単位で
実体化させて、UUIDの含まれたlibはリンクしないか、どちから。

778 名前:658 :2007/03/21(水) 20:27:07
>>776
まあそれで正解です。w

>>777
ちょっと時間ないんで明日にでも試してみます。
777オメ。

779 名前:デフォルトの名無しさん :2007/03/24(土) 12:59:05
VC++6.0のMFCでJpegを表示させたいのだがやり方が全然わからない。
CBitmapでは拡張子.jpgのファイルは開けないのでしょうか?

780 名前:デフォルトの名無しさん :2007/03/24(土) 13:17:52
jpeg のライブラリ使えばいいよ

781 名前:デフォルトの名無しさん :2007/03/24(土) 13:20:13
OleLoadPicture系から好きなのをどうぞ。
サンプルはググればいくらでもある。

782 名前:779 :2007/03/24(土) 21:33:45
>>780-781
お前ら3日も書き込みのなかったスレで即レスしすぎだぜ。
でもサンキュー。
OleLoadPictureで出来そうなので試してくる。

783 名前:デフォルトの名無しさん :2007/03/25(日) 02:13:51
デバッグ時にのみ有効な、ファイルにログを出力する
簡単な関数orマクロはありませんか?
OutputDebugStringのファイル出力版みたいなもので。

784 名前:デフォルトの名無しさん :2007/03/25(日) 02:31:45
>>783
そういえばVCには独自のデバッグ用の便利な関数があったなぁ。詳細は覚えてないけど。

OutputDebugString を undef した後で
#define OutputDebugString(X) fprintf(stderr, "%s\n", X)
とかやってプログラムを実行するときに hoge.exe 2>debug.log とかってしちゃえば?

785 名前:デフォルトの名無しさん :2007/03/25(日) 02:34:33
_CrtSetReportFile

と関連する関数・マクロを利用する方法はあるけど、
自作しても良い気がする。

ちなみに、OutputDebugString はりリース時でも有効だぞ。

786 名前:783 :2007/03/25(日) 02:47:12
_RPTマクロ(内部で_CrtDbgReportを利用)を使ってみたいと思います。
回答してくださった方々、どうもありがとうございます。

ほんとだ、リリース時でもOutputDebugStringは有効だ…。

787 名前:デフォルトの名無しさん :2007/03/25(日) 10:15:38
やりたいことは、「オープンファイルダイアログでOKボタンを押すと、Form1内の
c_printfunc()にファイル名を渡して、c_printfunc()の中でファイル名を出力する」です。
c_printfunc()はCまたはC++形式で記述したいです。

ファイル名の型は、Form1.h内(VC++側)ではString^、c_printfunc.cpp内(C側)では
wchar_t*なので、キャストしてある(つもりです)。

ビルドは正常終了するのですが、実行してオープンファイルダイアログのOKボタン
を押しても何も出力されません。

どうすればファイル名を出力することができますか?よろしくお願いします。

-----Form1.h-----
void c_printfunc(const wchar_t*){}

private: System::Void openFileDialog1_FileOk(System::Object^ sender,
 System::ComponentModel::CancelEventArgs^ e) {
 String^ fname;
 fname = openFileDialog1->FileName;
 pin_ptr<const wchar_t> wch = PtrToStringChars(fname);
 c_printfunc(wch);
}
-----c_printfunc.cpp-----
#include "stdafx.h"
void c_printfunc(const wchar_t* str) {
 printf("%s\n", str);
}
-----環境-----
Windows2000
VisualC++2005ExpressEdition

788 名前:デフォルトの名無しさん :2007/03/25(日) 11:05:36
>>787
これってコンソールアプリなの?

789 名前:デフォルトの名無しさん :2007/03/25(日) 11:25:52
>>787
× printf("%s\n", str);
○ printf("%S\n", str);
○ wprintf(L"%s\n", str);
○ _tprintf(_T("%ls\n"), str); // 推奨

790 名前:デフォルトの名無しさん :2007/03/25(日) 11:29:38
>>788
Windowsフォームアプリケーションで作成しています。

作りたいもののイメージとしては、得点を集計するアプリケーションで、得点ファイル
(テキストファイル)を読み込み、集計してフォーム(データグリッド)に出力したり、
ファイルに出力することを考えています。

集計ファイルの読込・集計・出力部分はC言語で既に作成してあり、今回はGUI部分を
VC++で作ろうとして手を出した所すでにつまずいている状態です。

VC++とC言語の連携部分がさっぱりわかりません。
どうやれば既存のC言語のソースをVC++に組み込めるのか、そもそもmain関数はどこから
呼ばれるのか、>>787のようなprintfの出力はどこに出力されるのかも謎です。

Webでも調べたのですが、VC++に既存のC言語を組み込むようなことは見つからず
「なんかまったく見当違いの事をしているのでは」と困っています。

今真っ暗闇です。ヒントでもいいので御助言お願いします・・。

791 名前:デフォルトの名無しさん :2007/03/25(日) 11:38:47
printfは標準出力へ書き込む
普通はコマンドプロンプト

792 名前:デフォルトの名無しさん :2007/03/25(日) 11:40:30
普通とは違うやりかただからコメントできない

793 名前:デフォルトの名無しさん :2007/03/25(日) 11:44:00
どうやればもなにも、既存のC言語をそのままVCにもってくればいいし
まさかVCはC++しか使えないとか思ってんのか?

794 名前:デフォルトの名無しさん :2007/03/25(日) 12:04:13
>>790
コンソールがないからprintfなどは表示されないよ。
確認したいだけならデバッガで見ればいい。

表示しなければいけないならエディットコントロールとかだな。
たぶん。.NET使ってないからよくわからんけど。

795 名前:デフォルトの名無しさん :2007/03/25(日) 12:07:26
MFCを使っているんですが、
イベントなどをプロパティウィンドウなどから追加したときの
「TODO:〜」という勝手に追加されるのコメント行が文字化けしています。
(本来なら「ここに〜を追加します」とかいうのが書かれているのだと思います)
最初にプロジェクトを作った際に生成される雛形のソースでは
特に文字化けしていませんし、当然自分で打ち込んだ日本語も文字化けはしません。

どこか設定でも悪いのでしょうか?


796 名前:デフォルトの名無しさん :2007/03/25(日) 12:16:21
エスパーをお探しなら他へどうぞと言いたいが
文字化けの原因なんて文字コードの相違以外ねぇし

その文字化けするヤツは
どういう環境でファイルが作られて、どういう環境で表示してんだよ

797 名前:デフォルトの名無しさん :2007/03/25(日) 12:40:26
GUIからprintfはできないことはないけど
それ自体が目的じゃなかったら普通は使わない。

798 名前:デフォルトの名無しさん :2007/03/25(日) 13:14:58
>>796

>どういう環境でファイルが作られて、どういう環境で表示してんだよ

>>MFCを使っているんですが、 イベントなどをプロパティウィンドウなどから追加したときの

>どういう環境でファイルが作られて、どういう環境で表示してんだよ

MFC使ってVCスレで質問してるのに、どういう環境があるってんだ?
特別な環境なら書くっての。当たり前の事を聞かなきゃわかんねーか?糞馬鹿が。
文字コードの問題だなんてのは分かりきったことだが
それをどうすれば直せるのか?という質問だ。バカかよおまえ。
わからねぇなら黙ってろよ。

799 名前:デフォルトの名無しさん :2007/03/25(日) 13:25:56
一口にVCのMFCと言ってもVC++ 1/MFC 2 - VC++ 2005/MFC 8まであるし、
それをインストールするWindowsも様々なバージョンやエディション、言語の違いがあるし。

800 名前:デフォルトの名無しさん :2007/03/25(日) 13:34:50
>>790
作りたいもののイメージの部分を見る限りprintfは必要無いように見えるんだけど。
単にデバッグ時に内容を確認したいだけなら
System::Diagnostics::Trace::WriteLine(openFileDialog1->FileName) ;
でVCの出力ウィンドウに表示される。
フォームに表示するならフォーム上にラベルでも貼り付けて、そこに表示すれば良い。
普通はフォームアプリではprintf系の命令は使わない。

801 名前:デフォルトの名無しさん :2007/03/25(日) 13:39:13
設定場所などがあるならその程度の環境の違いは読み替え可能な範囲だ。
Win2000つかってようがXPつかってようが
VC6つかってようがVS2005つかってようが。
シラネーことをとぼけるために口実作るな。
シラネーなら最初から黙ってろ。

802 名前:デフォルトの名無しさん :2007/03/25(日) 13:43:08
うわぁ、ここの回答者ってすげー回答能力低いのな・・・
聞く場所間違ってた。790程度の質問にも端的に答えられねぇで
グズグズグズグズ回りくどい教え方してんのな・・・
アホなのか嫌がらせのつもりなのか・・・

803 名前:787 :2007/03/25(日) 13:57:45
みなさまレスありがとうございます、しかし疑問が解決してません・・orz
>>787で質問しました、fnameの型をStringからchar*に変換するところです。

char*にさえ変換(その逆も)さえ出来ればc_printfunc()内でfopenや、malloc等を
使ってC言語ライクに記述できると思ったのですが、あまりこういうことは
やらないのでしょうか?
開発の経験もないので、スタンダードなやり方ありましたら教えて欲しいです。

804 名前:デフォルトの名無しさん :2007/03/25(日) 14:03:13
>>798,801,802
だから最初から文字コードの違いしかないと言われてるじゃないかw
逐一口調まで変えて煽りとはご苦労なこった

>>803
Win32APIにワイド文字とマルチバイト文字を相互変換するのがあるよ

805 名前:デフォルトの名無しさん :2007/03/25(日) 14:04:43
>>803
俺だったら
C言語ライクにするならCLIとかmanagedじゃないものにして
設定がunocodeになっているところを変える。
だって文字列を使うたびにunicodeとshift-jis変換しなきゃならないなんて大変でしょ。

unicode用のc_printfunc作ったほうがよくない?

806 名前:名無しさん@お腹いっぱい。 :2007/03/25(日) 14:07:45
>だから最初から文字コードの違いしかないと言われてるじゃないかw

だからどこでどうやってそれを直すのかという質問してんだろうがクズ。
Winのコンパネで直すのかIDEの設定で直るのか。
そしてさっき言ったようにこの程度のことなら読み替え可能。
知ってるならさっさと教えろ禿げ。
シラネーなら質問の仕方のせいにしないで黙ってろ。

807 名前:デフォルトの名無しさん :2007/03/25(日) 14:08:47
おいおい、バージョンも言わないで設定個所を訊くのか?w

808 名前:名無しさん@お腹いっぱい。 :2007/03/25(日) 14:10:42
だからその程度のことなら環境によらず読み替え可能だっていってんだろクズ。
シラネーならシラネーって素直に言えよ、うすら禿げ。

809 名前:デフォルトの名無しさん :2007/03/25(日) 14:12:51
>>1読めんで出直しておいでw

810 名前:名無しさん@お腹いっぱい。 :2007/03/25(日) 14:15:06
書く必要のある質問なら書く。必要が無いなら書かない。それだけ。
知ってる人が答えてくれればいい。それだけ。
回答能力ないなら黙ってろ。
>>1のテンプレなんかに何の権威を感じてんの?ばかじゃね?

811 名前:デフォルトの名無しさん :2007/03/25(日) 14:15:11
シラネー

再インストールしてみれば直るんじゃない?

812 名前:デフォルトの名無しさん :2007/03/25(日) 14:16:28
>>810
じゃあ黙ってるわw

813 名前:名無しさん@お腹いっぱい。 :2007/03/25(日) 14:17:00
>>811
そうですか。
他に心当たりのある人教えてください。

814 名前:名無しさん@お腹いっぱい。 :2007/03/25(日) 14:17:33
>>812
はい、知らないなら口出ししないで下さい。邪魔ですから。

815 名前:デフォルトの名無しさん :2007/03/25(日) 14:18:47
>>803
Marshal::StringToHGlobalAnsiで出来るけど char *じゃなくwchar_tじゃなかったの?
その場合StringToHGlobalAutoとかStringToHGlobalUniも参照。
使い終わったら開放も必要。

C++/CLIからC呼び出しは可能だけど馴染めないならPlatform SDKを入れて
ネイティブでGUIを組む手もある。

816 名前:デフォルトの名無しさん :2007/03/25(日) 14:22:06
>>803
というか、CLI使うんだったらCの資産があるからと言わず
全てCLI用に組替えた方が後々いいと思う
そうじゃないなら逆にCLI使わないほうがいいと思うよ

817 名前:658 :2007/03/25(日) 18:36:44
>>777
具体的なサンプルとかあったら教えていただけないでしょうか。
よく意味が分かっていません。orz......

818 名前:デフォルトの名無しさん :2007/03/26(月) 00:30:27
何で文字化けしてるという質問者っていつもいつもいつも、どう化けたのか
実際のも文字列貼り付けないやつばかりなんだろ。
コピペすりゃ一発でわかるのに。

819 名前:デフォルトの名無しさん :2007/03/26(月) 05:05:59
計算させるプログラムで、

例えば[500]-[400]の計算をした場合、[500]に[956]を、[400]に[354]を
勝手に代入して計算してくれるものを作りたいんだけど、どうしたら
いい?
仕事で液面計の点検時、「今日の数値 - 前日の数値」を計算して
液体アルゴンの使用量を書く項目があるんだけど、このアルゴンの
数値に「2100の場合は2435、2200の場合は2110、2300の場合は...」
と所定の数字を代入して計算するんだ。
いつもは代入表を見て計算するんだけど、PCに元の数字を入力
するだけで勝手に計算してくれるプログラムが作れんかなぁと。

820 名前:デフォルトの名無しさん :2007/03/26(月) 06:02:05
>819
http://pc11.2ch.net/test/read.cgi/tech/1164376614/

821 名前:デフォルトの名無しさん :2007/03/26(月) 07:25:58
化学系出身なんでレスしてみるけど、それをあえてVCで書く意味ってある?
Excel のマクロとか使った方がはるかに簡単に実現できると思う。
それでもVCで書くというなら、int型の配列にその変換テーブル入れて
処理すればあっという間に。

822 名前:デフォルトの名無しさん :2007/03/26(月) 07:49:05
.NET使って元の数値をキーにコレクションで作った方が検索が楽だ

823 名前:デフォルトの名無しさん :2007/03/26(月) 11:12:38
ビルドは成功して、実行したところ↓が大量に出力されたんですけど、これ何なんですかね・・?
どうやったら消せるんでしょ??

'test.exe': 'F:\WINNT\system32\NTDLL.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\USER32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\GDI32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\KERNEL32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\msvcr80d.dll' を読み込みました。シンボルが読み込まれていません。
'test.exe': 'F:\WINNT\system32\msvcrt.dll' を読み込みました。シンボルが読み込まれていません。
'test.exe': 'F:\WINNT\system32\imm32.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\ADVAPI32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\rpcrt4.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\indicdll.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\imejp.ime' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\SHELL32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\SHLWAPI.DLL' を読み込みました。シンボルが読み込まれていません。
'test.exe': 'F:\WINNT\system32\comctl32.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'test.exe': 'F:\WINNT\system32\imejpknl.dll' を読み込みました。シンボルが読み込まれていません。

824 名前:デフォルトの名無しさん :2007/03/26(月) 11:16:22
気にしない

825 名前:デフォルトの名無しさん :2007/03/26(月) 12:42:30
みんな出てるよ。気にしないことだ。
シンボルファイルをインストールしてもいいけど、、、

826 名前:デフォルトの名無しさん :2007/03/26(月) 13:32:59
ありがと気にしないことにしました

827 名前:デフォルトの名無しさん :2007/03/27(火) 09:08:17
>>823
俺も出るなぁ…。
気にしないって意見が多いけど俺は気になるw

特に、ビルドしてから実行されるまでにこれが大量に出るものだから
起動するまで時間がかかり、すごくイライラする。
ビルダとかほかのやつならすぐ確認できることがドトネトだとできない。
どうにもならんのでしょうかね。

828 名前:デフォルトの名無しさん :2007/03/27(火) 09:54:24
必要な DBG ファイルを用意してやればメッセージは出なくなるだろうけど
それを読み込むのによけい時間かかるしメモリも消費するだろうな。
気にするほどの時間じゃないと思うけど、だったらメッセージを気にしなきゃいいだけだし

829 名前:デフォルトの名無しさん :2007/03/27(火) 09:55:48
ソースコードいじる画面に行番号出す方法ないですか?

830 名前:デフォルトの名無しさん :2007/03/27(火) 10:13:27
バージョンによる

831 名前:デフォルトの名無しさん :2007/03/27(火) 10:19:19
>>830
昨日ダウンロードしたVC++2005ExpressEditionです・・
バージョン8

832 名前:デフォルトの名無しさん :2007/03/27(火) 10:23:00
>>831
Expressはもって無いけど上位エディションなら
オプション > テキストエディタ > C/C++ > 全般
にある行番号をチェック

833 名前:デフォルトの名無しさん :2007/03/27(火) 10:26:00
>>832
でてきましたありがとうございます
これ標準で表示してくればいいのに!

834 名前:デフォルトの名無しさん :2007/03/27(火) 10:29:28
>>833
普通、行番号に頼るようなプログラミングはしないから大抵の人には不要だが。
そもそも、確かフッターかどこかにカーソルのある行番号が表示されてた筈だからそれで充分だろ。

835 名前:デフォルトの名無しさん :2007/03/27(火) 10:43:06
もしかしてエラー行を見たいとかか
ファンクションキーで飛ぶから行番号気にしてないなあ

836 名前:デフォルトの名無しさん :2007/03/27(火) 10:58:40
フッターじゃなくてステータスバーって呼び方だったと思う

837 名前:デフォルトの名無しさん :2007/03/27(火) 10:59:49
編集したい箇所があって、そこにジャンプする際
適当な検索キーワードが思い浮かばず、ブックマークも
してない場合とか大体の行番号が分かってればCtrl+G
でジャンプできるし、広いディスプレイ使ってるなら
出しても良い気がする。

838 名前:デフォルトの名無しさん :2007/03/27(火) 11:29:54
行番号表示していれば、コードのどのあたりが何行目っていちいち覚えていられるの?

839 名前:デフォルトの名無しさん :2007/03/27(火) 11:35:02
普通覚えてないか?
どうせ分割するから1ソース200行程度だけど
「a.cppの50行目でxxの処理して、100行目でyyの処理」って感じ
あとは仕様変更とかで、
「a.cppの50〜100行目を、b.cppの150行目に移動」とか紙にメモしたり

ま、要らない奴は表示しなければいいんじゃないの?

840 名前:デフォルトの名無しさん :2007/03/27(火) 12:20:18
>>839
それはあくまでも、行番号依存型開発。
>「a.cppの50〜100行目を、b.cppの150行目に移動」とか紙にメモしたり
普通は、「a.cppの何の関数の何の処理をb.cppの何の関数のどこに移動」とメモすればいい。

まぁ、行番号依存型開発している連中の多くがdiffもpatchも使えないのは言うまでもないのだが。

841 名前:デフォルトの名無しさん :2007/03/27(火) 12:32:22
>>840
「何の関数」って覚えるといちいち探さなくちゃいけない
覚えにくい関数名だってあるし、サーチもままならない時だってある
行番号で覚えておけば一発で探せる

>まぁ、行番号依存型開発している連中の多くがdiffもpatchも使えないのは言うまでもないのだが。
行番号否依存型開発の間違いだよな?

842 名前:デフォルトの名無しさん :2007/03/27(火) 12:52:51
関数一覧はすぐ出るしそこにジャンプもできるけど
行番号一覧が出てもなあw

843 名前:デフォルトの名無しさん :2007/03/27(火) 12:56:16
行番号要らない派→VB出身
行番号要るよ派→C言語出身

844 名前:デフォルトの名無しさん :2007/03/27(火) 12:57:23
>>841
patchは行番号が変わってもちゃんと使えますが何か。

845 名前:デフォルトの名無しさん :2007/03/27(火) 12:58:32
>>844
なんでもないから帰っていいよ


行番号表示に一票!気分的に

846 名前:デフォルトの名無しさん :2007/03/27(火) 13:02:24
素朴に疑問なんだけど行番号表示しない奴って、他の人と意思疎通するときどうしてんの?
画面に人集めたり、ソース印刷して持ち寄ってレビューとかするとき、番号ないと辛くない?

「n行目要らないよね/間違ってるよね/何してるの?」とか言えないと、
お話にならないと思うんだけどw

それともaaaaaaa_bbbbbbbbbbbbbb_cccccccccccc関数の上から156行目って〜って言ってるの?

847 名前:デフォルトの名無しさん :2007/03/27(火) 13:05:05
マウス

848 名前:デフォルトの名無しさん :2007/03/27(火) 13:05:48
>>846
要らない言ってるのは複数人で開発したことないんだろ。
もしくはレビューとかバグ取りとか必要のない仕事

849 名前:デフォルトの名無しさん :2007/03/27(火) 13:07:15
伸びてると思ったらまたくだらない事を・・
んなもん出したければ出して出さないなら出さないでいいだろが

850 名前:デフォルトの名無しさん :2007/03/27(火) 13:09:30
>aaaaaaa_bbbbbbbbbbbbbb_cccccccccccc関数の上から156行目

俺ならそういう言い方されたら殴るなw

851 名前:デフォルトの名無しさん :2007/03/27(火) 13:14:29
当たり前だ、そんな糞みたいに長い関数名や糞みたいに長い関数なんか書かれたらな。
で、行番号なんてカーソル行のが見えれば充分じゃね?
レビューのときなんかは印刷するからそん時だけ行番号つきで出力すればいいわけだし。
#普段から行番号が画面を占有してなければいけない理由が判らん。

852 名前:デフォルトの名無しさん :2007/03/27(火) 13:18:52
掲示板やwebサイトで行番号書いて説明してるやつは見たことないな

853 名前:デフォルトの名無しさん :2007/03/27(火) 13:22:55
べーシックかなんか忘れたけど
行番号へgotoする言語があったと思う。
たぶんそっち系の人だろう

854 名前:デフォルトの名無しさん :2007/03/27(火) 13:26:24
>>852
結構あるぞ個人サイトだからURLは控えるけど

855 名前:デフォルトの名無しさん :2007/03/27(火) 13:27:26
>>851
画面占有つって1cmにも満たないだろw
どれだけ大きな行番号表示してるんだよw

856 名前:デフォルトの名無しさん :2007/03/27(火) 13:53:37
邪魔くさいだろ
右下に行桁が出てるだけで十分

857 名前:デフォルトの名無しさん :2007/03/27(火) 14:05:10
行番号って要るの?
要るよ派-+-常に出しておくよ派
      |      |
      |      +-BASICの頃からあるよ派(懐古派)
      |      +-Ctrl+Gは行番号判らないと使えないよ派(ジャンプ派)
      |      +-気分的に出すよ派
      |      +-画面拾いから余裕で出すよ派(金持ち派)
      |      +-普通仕事だと要るよ派(仕事派)
      |           |
      |           +-意思疎通には要るよ派
      |           +-レビューには要るよ派
      |
      +-レビューの印刷の時だけ出すよ派

要らないよ派-+-常に出さないよ派
         |   |
         |   +-VBでも出してなかった派(Microsoft派)
         |   +-画面狭いよ派(貧乏派)
         |   +-掲示板やWebサイトでも無い派(依存派)
         |   +-仕事じゃない派(日曜プログラマ派)
         |        |
         |        +-複数で開発しないよ派(日曜プログラマ派)
         |        +-集まってレビューしないよ派(日曜プログラマ派)
         |        +-バグ取らないよ派(チンピラSE派)
         |
         +-出さないけど替わりに示すものが要るよ派
              |
              +-マウスで指せばいいよ派(屁理屈派)
              +-指で画面を指せばいいよ(画面に指紋派)
              +-エラー行にはジャンプで飛ぶよ派
              +-右下に行桁が出てるだけで十分(邪魔派)
              +-aaaaaaa_bbbbbbbbbbbbbb_cccccccccccc関数の上から○行目言うよ派

858 名前:デフォルトの名無しさん :2007/03/27(火) 14:16:34
>>857がいるよ派だってことはわかった

プッダセー

859 名前:デフォルトの名無しさん :2007/03/27(火) 14:20:49
>>857
ワロスwww

860 名前:デフォルトの名無しさん :2007/03/27(火) 14:22:16
要らないよ派ってなんなの?

861 名前:デフォルトの名無しさん :2007/03/27(火) 14:28:56
>>860
>>857

862 名前:デフォルトの名無しさん :2007/03/27(火) 14:32:24
つまりあれだ、要る派でも行番号を全部出さないと気が済まない香具師とカーソル行が表示されていれば済む香具師に分かれると。

863 名前:デフォルトの名無しさん :2007/03/27(火) 14:53:47
プログラム板はまとめをやってくれる几帳面なやつがいないから
こういう人材は貴重だな

864 名前:デフォルトの名無しさん :2007/03/27(火) 15:25:36
ちょっと待て、
>バグ取らないよ派(チンピラSE派)
これなんだよw

865 名前:デフォルトの名無しさん :2007/03/27(火) 16:43:48
行番号を覚えておいて飛ぶとかいってるクズがいるのかよ…

866 名前:デフォルトの名無しさん :2007/03/27(火) 16:49:19
要らないよ派って必死なんですね

867 名前:デフォルトの名無しさん :2007/03/27(火) 16:50:37
わざわざ要るって言っているほうが普通は必死

868 名前:デフォルトの名無しさん :2007/03/27(火) 16:53:58
行番号表示できるようになったのは最近のバージョン
元は行番号表示はできなかった
つまり行番号なしで使うインターフェースになってる

869 名前:デフォルトの名無しさん :2007/03/27(火) 16:54:46
必要だから表示できるようにしたってことか

870 名前:デフォルトの名無しさん :2007/03/27(火) 16:55:21
蛇足

871 名前:デフォルトの名無しさん :2007/03/27(火) 16:57:44
行番号表示した方がいいって結論出てるのに、なんでまだ議論してるの?

872 名前:デフォルトの名無しさん :2007/03/27(火) 17:01:23
Windowsみたいに素人でも使えるようように余分な機能が追加されて
だんだん重くなっていく

873 名前:デフォルトの名無しさん :2007/03/27(火) 17:03:40
>>872
ですよね!
行番号表示する/しないのチェックボックス外して
常に表示にすれば少しは軽くなりますよね!

874 名前:デフォルトの名無しさん :2007/03/27(火) 17:05:03
行番号なしがデフォなんだけど

875 名前:デフォルトの名無しさん :2007/03/27(火) 17:05:23
行番号表示してる方がバカって結論出てるのに、なんでまだ議論してるの?

876 名前:デフォルトの名無しさん :2007/03/27(火) 17:07:31
行番号表示派が一人で自作自演してるから笑える

877 名前:デフォルトの名無しさん :2007/03/27(火) 17:09:41
今部署調べてきた。31人中30人が表示してた。これでいいだろ。

878 名前:デフォルトの名無しさん :2007/03/27(火) 17:10:57
>>876
見た感じ表示派の方が一歩上手だよな
表示しない派はコピペで応戦してるけどキレがいまいちで笑える

879 名前:デフォルトの名無しさん :2007/03/27(火) 17:11:38
仕事中に2chを見ていても許されるような
糞会社に勤務してる糞社員乙
糞会社の常識なんか語られてもねえ

880 名前:デフォルトの名無しさん :2007/03/27(火) 17:12:32
>>877
は?こっちの部確認したら全員表示してないですけど?

881 名前:デフォルトの名無しさん :2007/03/27(火) 17:13:30
>>879
大変、表示しない派のお仲間も勤務中に2ch見てるみたいですよ>>880

882 名前:デフォルトの名無しさん :2007/03/27(火) 17:13:41
表示派はなんでこんなに必死なんだ?
そんなにgoto使ってるのか?

883 名前:デフォルトの名無しさん :2007/03/27(火) 17:14:44
まとめ:番号表示してるやつは糞

884 名前:デフォルトの名無しさん :2007/03/27(火) 17:18:45
表示厨が泣きながら自作自演して多数派を装うのは構わないけど、
>>863>>878のような自分マンセー発言はドン引きだからやめた方がいいと思うんだ

885 名前:デフォルトの名無しさん :2007/03/27(火) 17:27:01
ここまで見た感じどっちもどっちだなあ
非表示厨には>>884みたいな自治厨くさい発言が多い分、
少しだけ表示厨が勝ってる感じ

886 名前:デフォルトの名無しさん :2007/03/27(火) 17:28:07
>>829の罪は重いなw

887 名前:デフォルトの名無しさん :2007/03/27(火) 17:52:01
  | ここまで見た感じどっちもどっちだなあ
  | 非表示厨には>>884みたいな自治厨くさい発言が多い分、
  | 少しだけ表示厨が勝ってる感じ
  \___________ ____
                       ∨  カタカタ____ ___
                  ∧_∧   ||\   .\  |◎ |
                  (.#`Д´)  ||  | ̄ ̄|  |:[].|
           ∧_∧ . ┌(   つ/ ̄l| / ̄ ̄/ ..| =|
   ∧_∧   ( TДT) |└ ヽ |二二二」二二二二二二二二」
  ( TДT)  (  つつ   ̄]||__)   | ||       | ||
  (つ  つ  /  / /  ./ ̄\  / ||       / ||
  と_)_)  (___)__)  ◎    ◎ .[___||     .[___||
            ∧
   / ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   | 孤独な表示厨よ、もういいんだ・・・・・・・
   | 本当に良く頑張った・・・もう充分じゃないか・・・
   | 楽になっていいんだ・・・
   | 忘れるんだ・・・何事もなかったように・・・・・

888 名前:デフォルトの名無しさん :2007/03/27(火) 17:54:56
いらないって言ってる人は食わず嫌いなんだろ。
もしくは、行番号に頼らないコード作りに慣れてて必要がないと。

別にどっちでも問題ないよ。

889 名前:デフォルトの名無しさん :2007/03/27(火) 17:58:32
食わず嫌いされるような大層なものなのか?行番号表示って。
表示させたがっている人は本来の主張を忘れて
勝った負けたに夢中になっているみたいだし、好きにしるで終了だな

890 名前:デフォルトの名無しさん :2007/03/27(火) 18:05:37
だから、全部の行番号が出ている必要はないって結論じゃないのか?w

891 名前:デフォルトの名無しさん :2007/03/27(火) 18:14:59
流れぶったぎるようですみません・・
WM_LBUTTONDOWNはマウスの左ボタンを押された時に、発生するのはわかるのですが、
左ボタンを押しながらドラッグした時にもWM_MOUSEMOVEと共に発生し続けるのでしょうか?

892 名前:デフォルトの名無しさん :2007/03/27(火) 18:18:14
>>891
Down:1回 → Move:複数回 → Up:1回

893 名前:デフォルトの名無しさん :2007/03/27(火) 18:21:44
>>891
MOVEしてる時にもボタンの状態はわかるけど、
通常はDOWNでフラグたてて、MOVEでフラグを見てドラッグと判断
UPでフラグ倒す。という動作をする。
ウィンドウの外に行っちゃうとメッセージ来なくなるからキャプチャーもやる

894 名前:デフォルトの名無しさん :2007/03/27(火) 18:33:47
>>892-893
レスどもです、UPの時にも発生するんですね
そんなのどこにも書いてなかった・・・・

895 名前:デフォルトの名無しさん :2007/03/27(火) 18:38:12
Spy++とか、メッセージをフックして表示してくれるソフトは常備しておくべき
何かと便利だから

896 名前:デフォルトの名無しさん :2007/03/27(火) 18:58:13
>>894
WM_CREATEはフォーム作成時、
WM_RBUTTONDOWNボタンは右ボタン押したとき、
WM_MBUTTONUPはミドルボタンを離したとき、
WM_LBUTTONDBLCLKは右ボタンをダブルクリックしたとき、
などなど・・・
もっとあるけど、本領を発揮するのはイベントを自作するときや
OLEなんかでプロパティを引き渡すときに使う場面かな

897 名前:デフォルトの名無しさん :2007/03/27(火) 19:06:46
>>894
いやいや、発生しないよ
UPの時にDOWN発生したら困るだろw

898 名前:デフォルトの名無しさん :2007/03/27(火) 19:10:09
常備しておくべきってか、VS使ってるならあるだろ、Spy++
EXPRESSとかにはなさそうな気もするが・・・

899 名前:デフォルトの名無しさん :2007/03/27(火) 19:12:50
>>897
たぶん>>894は、「UPの時にも(イベントが)発生するんですね 」と
言いたかったんだろ

900 名前:デフォルトの名無しさん :2007/03/27(火) 19:13:45
>>892
Upのときは発生しないだろ

901 名前:デフォルトの名無しさん :2007/03/27(火) 19:19:11
WM_LBUTTONUP は何のためにあるんだ

902 名前:デフォルトの名無しさん :2007/03/27(火) 19:25:06
離したときに処理されるものの方が圧倒的に多いのに
>>900は何を言っているんだ

903 名前:デフォルトの名無しさん :2007/03/27(火) 19:31:02
>>902
いや、>>891はこういう意味かと思ったんだけど違うのか?

WM_LBUTTONDOWNはマウスの左ボタンを押された時に、
【WM_LBUTTONDOWNが】発生するのはわかるのですが、

左ボタンを押しながらドラッグした時にもWM_MOUSEMOVEと共に
【WM_LBUTTONDOWNは】発生し続けるのでしょうか?

904 名前:デフォルトの名無しさん :2007/03/27(火) 19:33:56
それじゃ、>>894は勘違いしたままなのか・・・
うーん・・・

905 名前:デフォルトの名無しさん :2007/03/27(火) 19:36:11
まあやってりゃわかるからいいかw
Spy++もそうだが、サンプルソースを見るほうが早いのにな

906 名前:デフォルトの名無しさん :2007/03/27(火) 19:57:00
>>892は俺のレスだけど、
Down:1回 → Move:複数回 → Up:1回
は、
WM_LBUTTONDOWNイベントは1回発生する
WM_LBUTTONMOVEイベントは複数回発生する
WM_LBUTTONUPイベントは1回発生する
って意味だよ。

まさかボタンアップしたときにもWM_LBUTTONDOWNが発生するなんて思ってないだろ。
まさか・・・ね。

907 名前:デフォルトの名無しさん :2007/03/27(火) 20:09:26
で、ドラッグ中にってWM_LBUTTONDOWNイベントは発生するのか?

908 名前:デフォルトの名無しさん :2007/03/27(火) 20:10:29
>>906
通信簿に話を良く聞かない子って書かれただろ

909 名前:デフォルトの名無しさん :2007/03/27(火) 20:13:53
なんというグタグダ
これだけスレが伸びて
>>891にまともに答えてる奴はいない

910 名前:デフォルトの名無しさん :2007/03/27(火) 20:50:36
調べてきてやったぞ
なんつーかあれだ、調べればわかる

マウス左ボタンDOWN時:
 WM_LBUTTONDOWN発生

マウス移動時(ボタンDOWNなし):
 WM_MOUSEMOVE発生

マウスドラッグ時(左ボタンDOWN):
 WM_MOUSEMOVE発生

マウス左ボタンUP時(左ボタン押下):
 WM_LBUTTONUP発生
 WM_MOUSEMOVE発生

911 名前:910 :2007/03/27(火) 21:11:01
ちょっと間違ってた
(1)の方はUP時にもMOVEが発生する
(2)はUPだけ

(1)左ボタンDOWN→ドラッグ→左ボタンUP
WM_LBUTTONDOWN→WM_MOUSEMOVE発生→WM_LBUTTONUP発生WM_MOUSEMOVE発生

(2)左ボタンDOWN→左ボタンUP (同じ場所)
WM_LBUTTONDOWN→WM_LBUTTONUP発生

912 名前:デフォルトの名無しさん :2007/03/27(火) 21:12:33
>>911
単にお前がボタンアップ時に手がぶれたとかじゃないよな?

913 名前:デフォルトの名無しさん :2007/03/27(火) 21:27:13
>>912
ぶれてないと思うけど更に衝撃の事実
>>911はJaneで確かめたんだけど、今IEでやってみたら

(1)左ボタンDOWN→ドラッグ→左ボタンUP
WM_LBUTTONDOWN→WM_MOUSEMOVE発生→WM_LBUTTONUP発生

(2)は同じ

Winspectorで確認した

914 名前:デフォルトの名無しさん :2007/03/27(火) 21:32:27
あああわけわからん
誰か正解教えてくれ

915 名前:デフォルトの名無しさん :2007/03/27(火) 21:45:15
>>914
もう十分結論でてると思うが。

916 名前:デフォルトの名無しさん :2007/03/27(火) 21:50:46
左ボタン押す(押したまま)WM_LBUTTONDOWN
まずこれがあってからドラッグだ。
左ボタン押していないのにドラッグということはない。

左ボタン押したままだからといってWM_LBUTTONDOWNが連続で送られてくることはない。
押したときに一度だけだ。キーボードのようなリピートはない。

左ボタンUPでドロップだ。
ドラッグアンドドロップ終了。

そのあとのWM_MOUSEMOVEはドラッグアンドドロップと関係ない。
手がぶれたか、ウィンドウの方が動いたとかか?

<余談>
新しくウィンドウを作成したときもマウスカーソルがたまたまそこにあれば
マウスを動かしてなくてもWM_MOUSEMOVEが送られてくると聞いたことがある。
確かめたことはない。
</余談>

917 名前:デフォルトの名無しさん :2007/03/27(火) 22:06:10
ボタン押してないMOVEは何の影響も受けないだろ
通常状態でカーソルが通過するのと変わらん

918 名前:デフォルトの名無しさん :2007/03/27(火) 23:07:48
>>917が何を言いたいのかイマイチ分からん

919 名前:デフォルトの名無しさん :2007/03/28(水) 02:08:36
グダグダに更に磨きをかけようか・・・

>>918
クリックするしないに関わらずMoveイベントが発生する、ということを>>917
言いたいんじゃないかな

>>908
お前さ、人にどうこう言う前に、自分の読解力をどうにかしろ
IDないから誰がいつなにを言っているか掴みづらいだろうけど

920 名前:デフォルトの名無しさん :2007/03/28(水) 02:11:44
>>919
>>903

921 名前:デフォルトの名無しさん :2007/03/28(水) 09:20:53
とにかく一回でもコード書いて動かしてみりゃわかると思うんだがな。
やるこたかわらん。
途中メッセージの抜けがあっても何とかなるもんだし。

922 名前:デフォルトの名無しさん :2007/03/28(水) 13:12:11
結論: MSDN読め

923 名前:デフォルトの名無しさん :2007/03/28(水) 15:42:38
MSDNを読んだところでロクに理解なんかできんわ。
初心者は特に。
まず単語が分からない。
言ってることは確実に正しいんだろうけど何のことを言っているのか
理解できない。
理解できるように膨大にある理解不能な単語の勉強からまずはじまる。

それがイヤだからこういうスレの存在意義があるのではないだろうか?
>>922の結論でFAならこの板の半分くらいのスレは必要がない。

924 名前:デフォルトの名無しさん :2007/03/28(水) 16:08:23
本買って勉強

925 名前:デフォルトの名無しさん :2007/03/28(水) 16:48:56
>>923みたいな奴って定期的に現れるよな。
何から手をつければいいかわからないとか、
自分が知っている手法よりもっといいものはないかを知りたいとか、
そういうときにはスレで聞くのがいいだろうけど、
>>891みたいな質問の場合はMSDNを見たり本を見たり
自分で調べるプログラムを書いたりした方がいい。

926 名前:デフォルトの名無しさん :2007/03/28(水) 16:50:15
単語の意味なぞそれこそググりゃわかる。
こういう場所の存在意義はエスパー逆引きだろ。
「これこれこういううだうだぐだぐだ」に対してググるべき単語を示してやる。
元の「これこれこういう〜」にそれが含まれてることは多々あり、それには>922でおk。
>891クラスなら「実際にやってみろ」で十分すぎる。

927 名前:デフォルトの名無しさん :2007/03/28(水) 16:52:25
答えてやってることで誰かが喜んでるならそれでいいんじゃねーの?
俺も助かったことあるし

928 名前:デフォルトの名無しさん :2007/03/28(水) 17:27:29
あんまり基本的なことは掲示板で教えるのは無理

929 名前:デフォルトの名無しさん :2007/03/28(水) 20:18:08
3月26日はボクの41歳の誕生日
でも祝ってくれる人もいない
21歳も
31歳も
一人きりの寂しい寂しい誕生日だった

いったい誰が人間の形をした41歳の肉槐を愛することができるだろう
だから
これからもずっと一人
醜くも膨れ上がった豚のような体つきでは

若い部下たちが楽しい夜をすごすために帰るのが悔しくて
デブ特有のキンキン声で嫌がらせ
でもやっぱりむなしくなって家では一人涙を流す毎日

そんなあまりに惨めな脂肪の塊
一山いくらの屑肉、
豚松、あらため、台帳デブの
哀れな哀れな哀れな
一日が今日も過ぎてゆく


930 名前:デフォルトの名無しさん :2007/03/28(水) 23:59:17
>>929
鬱陶しいからその日々に終止符を打ってください。
方法は問いません。

931 名前:デフォルトの名無しさん :2007/03/29(木) 10:05:42
オレに死ねと

932 名前:デフォルトの名無しさん :2007/03/29(木) 10:56:59
他の手段を思いつけないのならどうぞ。

933 名前:デフォルトの名無しさん :2007/03/31(土) 02:02:53
Visual C++ 2005 Express Editionです。
ttp://www.morikita.co.jp/soft/84142
にあるVisual C++ .NET用のCG_NET.exeというファイルを落として解凍しprjフォルダにある
EX2_1.slnをビルドしようとしましたがエラーが出てできません。

具体的にはファイルを開くと出る変換ウィザードで変換したあとビルドして見ると、
いくつかエラーが出てmain関数にvoidを指定してfor文にintを指定していくと最終的に
「LINK : fatal error LNK1104: ファイル 'LIBC.lib' を開くことができません。」というエラーが出ます。
これはどうすればいいんでしょう?
追加の依存ファイルにlibc.libを指定してもだめだし、特定のライブラリの無視に指定したら
「win.lib(win.obj) : error LNK2019: 未解決の外部シンボル "int __cdecl g__main(int,char * * const)" (?g__main@@YAHHQAPAD@Z) が関数 "unsigned long __cdecl u__Tproc1(void *)" (?u__Tproc1@@YAKPAX@Z) で参照されました。
..\obj/EX2_1.exe : fatal error LNK1120: 外部参照 1 が未解決です。」
に変わりましたが相変わらずビルドできません。

よろしくお願いします。



934 名前:デフォルトの名無しさん :2007/03/31(土) 02:32:30
適当に見てみたけど
追加でリンク指定している win.lib が、
シングルスレッド用である libc.lib を利用しているんじゃないか?

もしこれが正しければ、win.lib をマルチスレッド用ライブラリリンク版 (/MT オプション) を作らないといけない。
VS2005 からはシングルスレッド用のライブラリがなくなってしまったからなぁ。

あと、main の戻り値は int だ。

935 名前:デフォルトの名無しさん :2007/03/31(土) 02:44:33
恐らくはソリューションファイルとプロジェクトファイルだけコンバートしてビルドしてみてもいないんだろうなぁ。
ページ自体は今月にも修正が掛かっているみたいだから、(書籍を購入しているなら)クレームつけてみたら?
マルチスレッド版のwin.libを作ってくれるかもよ。

936 名前:933 :2007/03/31(土) 03:37:53
いけました。
mainにint指定してreturn 0;を関数の最後に入れて、リンカの設定の特定のライブラリを
無視のところにlibc.libを指定したらビルドできました。

mainの戻り値intってちゃんと決まってるんですね。慣例かと思ってました。
ありがとうございました。

937 名前:デフォルトの名無しさん :2007/04/03(火) 18:53:20
質問があります。
MS VC++ .NET 2003 なのですが、
  CFont font;
  label1->Font = font;
これをやると
Form1.h(676): error C2664: 'System::Windows::Forms::Control::set_Font' : 1 番目の引数を 'CFont' から 'System::Drawing::Font __gc *' に変換できません。
と出ます。ラベルのフォントをこの方法で変えたいだけなのですが、どこがおかしいのでしょうか。

938 名前:デフォルトの名無しさん :2007/04/03(火) 18:53:59
上げ忘れましたので上げます。

939 名前:デフォルトの名無しさん :2007/04/03(火) 19:06:55
CFont はMFCのような気がするけど
.netにもそういうものがあるのか?

940 名前:937 :2007/04/03(火) 19:16:10
色々調べているのですが、
なんか根本的な勘違いをしているような気がしてきました・・・

941 名前:はじめてのはじめての人 :2007/04/05(木) 00:04:55
本かって、VC開いても呆然としちゃう(´;ω;`)

942 名前:デフォルトの名無しさん :2007/04/05(木) 01:03:03
まずは書いてある通りにやってみろ
話はそれからだ

943 名前:sage :2007/04/05(木) 21:21:24
VC++.NET 2005 CLRプログラミングで
ボタンなどのコンポーネントを
プログラム上から追加したいのですが、
どのようにすればいいですか?

944 名前:デフォルトの名無しさん :2007/04/05(木) 21:54:36
UTC の年月日時分秒から __time64_t 値を作るにはどうしたらよいでしょう?

945 名前:nori :2007/04/05(木) 22:38:20
 今晩は。

 Visual C++.NET 2003 の Windows Form Application で作ったアニメーションに、
Directsoundで音を付けたいのですが、どなたかご存知の方、教えてください。

 複数音を同時に鳴らしたいので、Soundplayは使えないのです。

 いろいろ調べて見たのですが、Visual Basic、Visual C# または Windows Console Application では、資料は
見つかるのですが、Visual C++.NET  では、見つけられなくて困ってます。

 よろしくお願いします。 

946 名前:デフォルトの名無しさん :2007/04/05(木) 23:54:23
>>944
どうやってって、年月日時分秒が判るんなら、1970年1月1日の0時0分0秒からの秒数を算出すればいいじゃないか

947 名前:デフォルトの名無しさん :2007/04/06(金) 00:43:33
凄く初歩的な質問ですが、bool型からwchar_t型への変換を
するにはどうしたらよいのでしょうか?教えてください。

948 名前:デフォルトの名無しさん :2007/04/06(金) 00:55:59
bool a;
wchar_t b;

b = (wchar_t)a;

949 名前:デフォルトの名無しさん :2007/04/06(金) 01:15:42
>>945
ttp://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/DirectX9_c/directx/htm/directsound.asp
ttp://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/DirectX9_m/directx/sound/directsound.asp

ネイティブコードとマネージドコードで別の方法が取れる。

950 名前:デフォルトの名無しさん :2007/04/06(金) 01:20:04
多分、>>947 が知りたいのは
bool a;
const wchar_t * b = a ? L"True": "False";
みたいなことじゃないかと思うんだがどうだろう?

951 名前:947 :2007/04/06(金) 02:30:58
>948-950
返信遅れました。
質問が漠然としすぎて混乱させてしまったようで申し訳ありません。
私が知りたかったのはまさに>950さんのコードです。
ありがとうございます。

952 名前:雨とむり :2007/04/06(金) 10:22:52
VC++5.0で開発したEXEを
WindowsVistaに入れて起動させようとしたら、
動きませんでした。

どうすれば動くのでしょうか。

※ちなみにXML形式でファイルの保存等を行っています。

953 名前:デフォルトの名無しさん :2007/04/06(金) 10:27:35
>>952
動かないというのはこんな感じ?
>C:\>hoge
>'hoge' は、内部コマンドまたは外部コマンド、
>操作可能なプログラムまたはバッチ ファイルとして認識されていません。

954 名前:雨とむり :2007/04/06(金) 10:57:09
>>953
お返事ありがとうございます。

↓こんなメッセージが出ます。

問題が発生したために、プログラムが正しく動作しなくなりました。
プログラムは閉じられ、解決策がある場合はwindowsから通知されます。

ちなみに通知らしき物は来なかったです。

955 名前:デフォルトの名無しさん :2007/04/06(金) 11:37:59
>>954
詳細見てエラーの起きたアドレス調べて
元の開発環境でそのアドレスがどこか調べるとか
リモートデバッグするか、Vista上でデバッグするとか

956 名前:デフォルトの名無しさん :2007/04/06(金) 11:38:47
http://72.14.235.104/search?q=cache:6TUCaZWhB9EJ:www.microsoft.com/japan/msdn/vstudio/support/windowsvista/adminperms/default.aspx+VC%2B%2B5.0+Vista+%E5%8B%95%E4%BD%9C&hl=ja&ct=clnk&cd=1

ここを見れば分かるけど、
VistaってVisualStudioに限ってみても、おびただしい数の不具合があるな…。
開発者泣かせすぎワロタww

957 名前:雨とむり :2007/04/06(金) 11:49:26
>>955
>>956

ありがとうございます。

よくよく調べてみたら、
manifestファイルという物を使ってGUIの画面をXPっぽくしてました。

このファイルを取り除くと動きましたが、画面の形式は

変えたくないので何か方法はないのでしょうか?

958 名前:デフォルトの名無しさん :2007/04/06(金) 12:47:41
vcのCStringT型からchar[]にするにはどうしたらいいの?

959 名前:デフォルトの名無しさん :2007/04/06(金) 12:52:15
>>958
CString bar = "abcd";
const char * foo = bar;

960 名前:デフォルトの名無しさん :2007/04/06(金) 15:31:10
知ってたら教えてください。

環境は VC++2003.NET です。
GDI+にて、描画部分だけ色を反転させた線を引きたいと思っています。

pen>SetDashStyle(DashStyleDash);
pen->SetColor(Color::Black);
pen->SetWidth(1.0f);
などとペンを定義して描画することはできるのですが、
どうやったら反転させることができるのでしょうか?

おながいします。

961 名前:デフォルトの名無しさん :2007/04/06(金) 16:15:18
Color::Whiteで線を引くだけ

962 名前:960 :2007/04/06(金) 16:50:31
>>961
ありがとうございます。

白で線を引くということでしょうか?
反転されるためにXOR指定などがあるのではないか、と予想していましたが・・・。

ちょっとやってみます。

963 名前:デフォルトの名無しさん :2007/04/06(金) 17:05:48
>>962
SetROP2()

964 名前:960 :2007/04/06(金) 17:06:43
>>961
白で線が引かれるだけで反転しないようなのです・・・

965 名前:960 :2007/04/06(金) 17:08:55
>>963
すいません、書き込んだ後に気づきました。
ありがとうございます。
確認&試してみます。

966 名前:デフォルトの名無しさん :2007/04/06(金) 17:23:12
ってGDI+か。そっちはわからん、すまん。

967 名前:デフォルトの名無しさん :2007/04/06(金) 17:28:13
GDI+じゃラスタオペレーションはサポートしてない。
というのがGraphicesが対象とするImageはBItmapであることを限定してないため、
Bitmapであることを前提にしたラスタオペレーションは無くなった。
もしこれをサポートするとなるとBitmapオブジェクトに直接描画メソッドを追加することになるだろう。
自作したいならBitmapを生のイメージで操作する必要がある。
GDI+の範囲でやりたいなら反転とは違うが半透明色で線を引いてみたらどうだろうか。

ただ2005から追加になったCopyFromScreenのCopyPixelOperationにはなぜかラスタオぺの香りが漂っていたりする。

968 名前:960 :2007/04/06(金) 17:41:51
>>967
分かりやすい解説ありがとうございます。

更にお聞きしたいのですが、ビットマップの描画ではラスタオペレータは
困難のように読めますが、反転した線を引くだけでも同様でしょうか?

簡単な(プロパティを指定して終わりみたいな)方法などが
あれは教えてもらいたいのですが・・・

969 名前:デフォルトの名無しさん :2007/04/07(土) 17:37:04
VC++EEを使っているのですが、ブレークポイントつけてウォッチしようとしたところ、
「ブレークポイントは現在の設定ではヒットしません。このドキュメントのシンボルが読み込まれていません」と
赤い丸のところに表示されて、ウォッチができません。どうやってらウォッチできるようになりますか?

970 名前:エボニー :2007/04/09(月) 12:45:28
VC++で作ったヴュー画面に文字列を表示させた場合

VISTAとXPでは行間隔に違いがでます。

XPは隙間無く次の行(改行コード入れてます)の文字列が表示されますが、

VISTAの方は変な隙間が出ます。

この違いを解消する方法を教えてください。

971 名前:デフォルトの名無しさん :2007/04/09(月) 12:48:35
とりあえずフォントあたりから

972 名前:デフォルトの名無しさん :2007/04/09(月) 12:52:23
VISTAの仕様だから気にしない

973 名前:エボニー :2007/04/09(月) 13:03:59
>972

VISTAの仕様という事はコーディングで直せる物ではないとう事でしょうか?

974 名前:デフォルトの名無しさん :2007/04/09(月) 13:05:33
ユーザーにまかせる

975 名前:デフォルトの名無しさん :2007/04/10(火) 12:29:24
>>970 >>973
関係ないけどその無駄な改行が気になるんだが・・・

976 名前:バリバリ :2007/04/10(火) 16:41:35
>>975

改行コードを入れないと文字が横一列に並んでしまいますので
必要なんですよ。

977 名前:デフォルトの名無しさん :2007/04/10(火) 17:07:45
>>976



うで




978 名前:デフォルトの名無しさん :2007/04/11(水) 22:51:30
プログラムなにもしらないけどvisualstudio買ってみたよ。
ぽっか〜ん(´・ω・`)このあとどうすればいいんだろ

979 名前:デフォルトの名無しさん :2007/04/11(水) 23:02:46
>>978
使い倒して世界一のプログラマになるに決まってるだろ?

980 名前:デフォルトの名無しさん :2007/04/11(水) 23:40:06
>>978
俺に預けるといいよ

981 名前:デフォルトの名無しさん :2007/04/12(木) 11:55:46
>>978
上を目指そうぜ?

982 名前:デフォルトの名無しさん :2007/04/12(木) 12:30:36
VC++7.0 Windows2000
MFCマルチスレッドプログラミング
UIスレッドワーカースレッド両方使用
スレッド数40ほど

デバッグモードでは動作は正常だったのですが
デバッグ無しモードだと動作が不安定になります

他スレッドの変数を変えて制御してますが
同じスレッドに同時に変更するようなところは見当たりません
デバッグモードでやるとブレークポイントをつけているわけでもないのに
正常に動作します
このような場合の原因はどんなことがあるのかわかりますか?


983 名前:デフォルトの名無しさん :2007/04/12(木) 13:17:34
何がどう不安定なのかわからないと回答しにくいと思うZO
あと、どんな処理をしてるかとかあればもっと答えが出やすいかもよ?

お前が人に聞かれて答えるのに別の質問で似たような表現されてわかるか?

984 名前:デフォルトの名無しさん :2007/04/12(木) 13:32:47
どんな処理かはマルチスレッドの制御です
スレッドAがループで止まっていてスレッドBが各スレッドの変数を変えに
行っていますスレッドCが条件を充たすとスレッドBにスレッドAのループを
抜けるように変数の値を変えにいきます

ループを抜けたいのに抜けなかったり抜けたくないのに抜けたりします
ループを制御してる変数を
他スレッドから変数を変えにいってるはずが変えられてなかったりしてます

デバッグモードだけで成功するような状況はどういうことなのか教えてください

985 名前:デフォルトの名無しさん :2007/04/12(木) 13:35:55
volatileがなくて最適化でメモリアクセスがどっかに消えているとか。
同期はメモリを直接参照するのではなく、ちゃんと同期オブジェクト使わんと遺憾よ。

986 名前:デフォルトの名無しさん :2007/04/12(木) 15:26:21
>>978
同士よ、とりあえず自分は「質問が出来る」ようになる事を
第一の目標としてるorz

987 名前:デフォルトの名無しさん :2007/04/12(木) 15:43:40
>>985
volatileをつけてみましたが一緒でした
同期オブジェクトはCCriticalSectionでいいのでしょうか?
CCriticalSectionのオブジェクトを作ろうとしたのですが
error C2501: 'CCriticalSection' : 識別名を宣言するのに、型が指定されていません。
とでます

988 名前:デフォルトの名無しさん :2007/04/12(木) 15:45:07
>>984
DebugでうまくいってReleaseでうまくいかないケースは
最適化の影響か、領域破壊バグの可能性が高い。
まずは>>985のvolatileを入れるべきとこ探してみたら。

989 名前:デフォルトの名無しさん :2007/04/12(木) 15:46:40
volatileの付け場所間違ってるかもしれんが、、、
Releaseで最適化切ってリビルドして実行してみたら

990 名前:デフォルトの名無しさん :2007/04/12(木) 17:25:38
>>978
俺はVisualC++6.0買った時、1年位手をつけずに放置した。

991 名前:デフォルトの名無しさん :2007/04/12(木) 17:33:19
VC2005で
// TODO: この場所にネイティブ データ用の描画コードを追加します。
の後に
pDC->MoveTo(100,100);
pDC->LineTo(300,300);
と書いてもコンパイルできません。
pDC->TextOut(0,0,"ようこそ");
と書いてもコンパイルできません。
本ではそう書いてあるのですが何故でしょうか?
プロジェクトはMFCアプリケーションのデフォルトで作りました。

992 名前:デフォルトの名無しさん :2007/04/12(木) 17:38:45
>>991
エラーメッセージをどうぞ。

993 名前:デフォルトの名無しさん :2007/04/12(木) 17:42:16
すいません自己解決しました。
/*pDC*/のコメントを外さないといけないようです。

994 名前:デフォルトの名無しさん :2007/04/12(木) 18:27:48
>>987
つ変数の未初期化

995 名前:デフォルトの名無しさん :2007/04/12(木) 21:29:58
>>987
CCriticalSectionを使うためのヘッダファイルが指定してないんだろうな。
でも、この場合CCriticalSectionは適さない。
だって排他制御したいわけじゃないよね。

俺も変数の初期化とvolatile関係と思う。

volatileがどうしても駄目ならそこの関数の最適化を制限するとか。
#pragmaで指定でできるはず。

変数じゃなくて同期オブジェクトを使いたいなら、同期イベントがいいんじゃない。
MFCならCEvent。

ところでスレッドをたくさん使うんですね。

996 名前:デフォルトの名無しさん :2007/04/12(木) 21:55:35
VC++ 2003を使っているのですが
ウィンドウズフォームアプリケーションで
MainMenuが表示されません
Formのデザイン画面でもFormの下の方に
ちょこっと表示されるだけで
デバッグ開始すると消えます。
どうすれば表示されるようになるのでしょうか

997 名前:デフォルトの名無しさん :2007/04/12(木) 22:49:42
VC++2005のExpress版をつかっています。OSはWinXPです。

コマンドラインコンパイラを使いたくて、
使用前に必要な手続きであるらしい下のバッチファイルを一発かましています。

C:\Program Files\Microsoft Visual Studio 8\VC\bin\vcvars32.bat

ところでこの手続きPCを起動するたび(?)にやり直しになるんですが、
効果を持続させる方法はないでしょうか。

というかこの手続きは何をしているのでしょうか。


998 名前:デフォルトの名無しさん :2007/04/12(木) 23:05:51
>>997
内容についてはvcvars32.batの中身を見ればいいさ。

いいやり方は知らない。
いまちょっくらためしたら出来た。

適当にショートカットを作って、そのプロパティで
リンク先を
%windir%\system32\cmd.exe /k "C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat"
作業フォルダを
E:\work2
としたらできてるっぽい。

当然スペルは適当に直せよ。
無論コマンドプロンプトを出すときはこのショートカットを使え。ショートカット
実際にコマンドラインコンパイラが動くかは試してねーけどよ。

999 名前:デフォルトの名無しさん :2007/04/12(木) 23:09:05
>>997
コマンドプロンプトの起動を、
スタート→プログラム→Visual C++ 2005 Express Edition→Visual Studio Tools
→Visual Studio 2005 コマンド プロンプトから行うようにしろ。

1000 名前:988 :2007/04/12(木) 23:14:41
>>999
VC++2005のExpress版持ってないから知らないけど既に同じものがあるのか。
あははh


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