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


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

VisualC++ 相談室【9】
751 名前:744 :03/02/17 11:01
>>746
ありがとう。

いや、マジだったんだけど、前者は連結されると思ってたのね。
”と’の違いがよく分かってなかったから。今でもあんまりだけど。

いや、ホントごめんなさい。

752 名前:デフォルトの名無しさん :03/02/17 12:02
>>750
C#使う

753 名前:デフォルトの名無しさん :03/02/18 16:11
>>750
A < B + C ならば A - B < C
A < B * C ならば A / B < C


754 名前:ユウジ :03/02/19 01:57
VC++6.0 XPでMFCの環境です。

保存してあるテキストファイルを読み込んでエディットボックスに表示
させたいと思っています。
テキストを行ごとにそれぞれのエディットボックスに表示させたい
のですが表示することができません。
どのようなコーディングをすればよいのか教えていただけませんでしょうか。

755 名前:デフォルトの名無しさん :03/02/19 02:36
>>754
エディットボックスの配列を作って、
for (int i = 0; i < MAX; i++)

てっかんじで、Ebox[i] というエディットボックスに書き込むといいのでは。


756 名前:デフォルトの名無しさん :03/02/19 03:18
>>754
何をやった上でできないのか不明だから答えづらいけど、
クラスウイザードでオブジェクトを作成してエディットコント
ロールの操作はできているわけ?



757 名前:デフォルトの名無しさん :03/02/19 03:32
>>754
せめて途中経過や試したことくらい書けよボケ

758 名前:デフォルトの名無しさん :03/02/19 08:28
>>754
最後の行の日本語が間違ってるぞ。
「代わりに作ってください」だろ。






ツツシンデオコトワリイタシマス

759 名前:デフォルトの名無しさん :03/02/19 22:58
VC++6.0のファイル検索をするプログラムをダイアログベースで作成中です。
ファイル検索の進捗を表すプログレスバー付きダイアログに検索中断ボタンを設置したの
ですが、どうすればうまく機能させられるかわかりません。現在の処理手順は以下です。

モードレスダイアログをCreateし、AfxBeginThreadにてワークスレッドを作成。
//ワークスレッド
検索処理を行い、AfxBeginThreadに渡したダイアログのポインタを
通してSetPosを実行、検索終了したら終了フラグを立てて終了。
//メインスレッド
ワークスレッド作成後はダイアログをDestroyWindowさせない為、終了フラグが立つまで
forでループをする。

この手順だと検索中は中断ボタンのクリックを受け付けません。この手順自体に無理が
あるのでしょうか?



760 名前:デフォルトの名無しさん :03/02/19 22:59
こんなことになってるぞ。呆れた。と言うより笑ってしまった。とほほ・・・。

http://pakopako.misty.ne.jp/enter.cgi?id=fdeai

761 名前:デフォルトの名無しさん :03/02/20 01:22
>>759
>終了フラグが立つまで forでループをする。
さて、ダイアログはいつメッセージを処理するんでしょうね?

762 名前:デフォルトの名無しさん :03/02/20 22:12
リッチエディットコントロールについて質問です。
リッチエディットの任意の位置に文字列を挿入するにはどうすればよいのでしょうか。
SetWindowText()だと今まであった文字列が消えてしまいます。
調べたところEM_SETTEXTEXというメッセージでできるようなのですが、
このメッセージはどこにも定義されていないようです。EM_GETTEXTEXならあるんですが…
解決方法を知っている方いましたら、教えてください。

763 名前:762 :03/02/20 22:36
自己解決しました。WM_REPLACESELというメッセージがありました。

764 名前:759 :03/02/20 22:46
プログレスダイアログなるものを発見して解決しました。そんなものがあるとは知らず
素のダイアログにプログレスバーを貼り付けてました(´Д`)
>761
メッセージループはしていたのですが、キャンセルボタン押下時のメッセージ受付の
方法とかがわかりませんでした。


765 名前:デフォルトの名無しさん :03/02/21 11:43
共用体ってインテリセンス使えない?
LARGE_INTEGERのLawPart & HighPartが出てこないよ〜

766 名前:デフォルトの名無しさん :03/02/21 14:22
小数点以下の値を、指定した位置で四捨五入、切り捨て、切り上げするには
どうしたら良いのでしょう?
四捨五入だけだったら%3.2fとかって書けば良いのは分かるんですけど。
初歩中の初歩かと思うんですけど、教えてください。

767 名前:デフォルトの名無しさん :03/02/21 14:59
>>766
足して割ればいいやん。
//小数点2桁で四捨五入
a = floor(doublevalue * 100 + 5) / 100;
とか
//小数点1桁で四捨五入
a = floor(doublevalue * 10 + 5) / 10;
とか。

768 名前:デフォルトの名無しさん :03/02/21 15:24
みなさん、円周率の定数得るときどうしていまつか?


769 名前:デフォルトの名無しさん :03/02/21 15:28
>>768
手打ちでええやん。
const double PI = 3.14159265358979;

770 名前:デフォルトの名無しさん :03/02/21 15:37
>>767
負号に注意な。

771 名前:デフォルトの名無しさん :03/02/21 17:50
>>767>>770
参考しながらなんとか思い通りのモノが出来ました。
レスありがとうございました。

772 名前:デフォルトの名無しさん :03/02/22 01:34
あのCreateDirectoryって、最下層まで一気にフォルダ作ってくれないんですか?
例えば、c:\2ch\vc\test\readme.txtだとしたら、まず2ch作ってその下にvc作って…
としないとダメなんでしょうか?

773 名前:デフォルトの名無しさん :03/02/22 01:37
>>772
Delphiにおいで。

774 名前:名無し@沢村 :03/02/22 02:12
>>772
SHCreateDirectoryEx()

775 名前:デフォルトの名無しさん :03/02/22 02:19
>>772
MakeSureDirectoryPathExists
imagehlp.hのインクルードとimagehlp.libのリンクを忘れるな。

776 名前:デフォルトの名無しさん :03/02/22 02:19
>>774
氏ねボケ

777 名前:デフォルトの名無しさん :03/02/22 02:53
>>776
文句があるなら理由を書け

778 名前:デフォルトの名無しさん :03/02/22 08:14
>>777
理由。

779 名前:名無し募集中。。。 :03/02/22 15:00
独習Cに書いてらるmain(int argc,char argv[])関係のプログラムってVC++でちゃんと動きます?なんかエラー出るんですけど

780 名前:デフォルトの名無しさん :03/02/22 15:01
>>779
argv[]じゃなくて*argv[]

781 名前:デフォルトの名無しさん :03/02/22 15:02
>>779
エラーが出るならエラーメッセージくらい書いたら?

782 名前:779 :03/02/22 15:05
どうもです、*argv[]でした。*argv[]で動かないです。エラーメッセージ出ないでエラー0、警告0で、実行したら強制終了するんです

783 名前:デフォルトの名無しさん :03/02/22 15:07
>>782
独習Cを持っていないからわからないけど、多分アクセス違反だな。
写し間違いはない?
あと、http://pc2.2ch.net/test/read.cgi/tech/1044938752/のスレの方がいいかも。

784 名前:779 :03/02/22 15:11
どうもです、もうちょっと本読んで見ます

785 名前:デフォルトの名無しさん :03/02/22 16:13
VC++にて下記を実行すると

char szSound[100] ;
GetPrivateProfileString( "CLOCK", "SOUNDFILE", "あ", szSound, 100, "c:\Clock.ini" ) ;

szSoundには「あ」がせっとされます。
c:\Clock.iniは存在します。
セクション名もキー名もあっています。
SOUNDFILEキーには「c:/test.wav」を設定しているので
szSoundには"c:/test.wav"がセットされるハズだと
思うのですが何がいけないのでしょうか?
教えてください。

786 名前:tantei :03/02/22 16:14
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
 直通  090−8505−3086
URL  http://www.h5.dion.ne.jp/~grobal/
メール  hentaimtt@k9.dion.ne.jp
   グローバル探偵事務局 



787 名前:デフォルトの名無しさん :03/02/22 16:21
>>785
文字列の中で\マークがどのような振る舞いをするか考えてみよう。
\は変換指定子に使われるんだよ。
ディレクトリの区切りは/を使うか、あるいは\\を使うようにしよう。

788 名前:785 :03/02/22 16:28
>>787
ありがとうございます。

char szSound[100] ;
GetPrivateProfileString( "CLOCK", "SOUNDFILE", "あ", szSound, 100, "c\\Clock.ini" ) ;

「\\」にしたのですがやはりダメです。。
何でだろう。。

789 名前:デフォルトの名無しさん :03/02/22 16:30
>>788
× c\\Clock.ini
○ c:\\Clock.ini

単なる入力ミスかもしれんが、一応。

790 名前:785 :03/02/22 16:36
>>789
ちゃんと「c:\\clock.ini」としているのですがダメなんですよぉ(T-T)

791 名前:デフォルトの名無しさん :03/02/22 16:55
書き込み権限がないとか。

792 名前:名無しさん@そうだ選挙にいこう :03/02/22 17:03
"あ"-修正->""

793 名前:デフォルトの名無しさん :03/02/22 17:13
char szSound[100];

GetPrivateProfileString( "CLOCK", "SOUNDFILE", szSound, szSound, 100, "c:\\Clock.ini");

794 名前:785 :03/02/22 17:51
>>793
それでもダメなんですぅ。。(T-T)

795 名前:デフォルトの名無しさん :03/02/22 18:05
int型の変数にCString型の変数の値を入れたい場合は
どうしたらよいっすか?


796 名前:名無し@沢村 :03/02/22 18:14
>>795
CString str;
int n; として

n = (int)(LPCTSTR)str;

797 名前:名無し@さん :03/02/22 18:18
DQNな質問で悪いんだけど・・・。

VC++勉強しよう思うんだけど、やっぱりCもC++もやったことない
(正確には、Cはデータの型とscanf,printfが使えるぐらい)
人間はまずC,C++を勉強しないと無理?
ちなみにプログラミング自体は初心者じゃないです。

798 名前:デフォルトの名無しさん :03/02/22 18:24
>>796
うまくいかないっす(^^;
CString str;
int n;

str = "0";
n = (int)(LPCTSTR)str;

ってやっても
nには 0が入らないっす。

799 名前:デフォルトの名無しさん :03/02/22 18:24
>797
無理


800 名前:デフォルトの名無しさん :03/02/22 18:25
>798
atoi

801 名前:デフォルトの名無しさん :03/02/22 18:25
>>797
地道にcとc++を勉強しましょう。
結局はそれが近道です。
そんなに時間はかかりませんから。

802 名前:デフォルトの名無しさん :03/02/22 18:26
>798
釣られたんだよ。


n = ::atoi( str );
でやってみ。

803 名前:デフォルトの名無しさん :03/02/22 18:29
>>797
今はどんな言語がつかえるの?

804 名前:デフォルトの名無しさん :03/02/22 18:30
>>800
>>802
ありがとうです。
うまくいきました。

今度は、CString型にint型の変数をセットしたいのですが
どうしたらよいですか?

805 名前:デフォルトの名無しさん :03/02/22 18:31
c:\\の前にも\\をつけてみたら?
つまり"\\c:\\Clock.ini"

806 名前:名無し@沢村 :03/02/22 18:34
>>798
なんだ、そういうことか。
_tcstol()か_ttoi()だな。

>>797
ヌヒにはC++を知らないで "Visual C++" を使えると思った理由を問いたい。

807 名前:デフォルトの名無しさん :03/02/22 18:38
>>805
それでもダメでした。。。

808 名前:デフォルトの名無しさん :03/02/22 18:41
>>807
もう諦めろ!

809 名前:デフォルトの名無しさん :03/02/22 18:44
>804
str.Format( _T("%d"), n );

810 名前:デフォルトの名無しさん :03/02/22 18:46
DDKってダウンロードできないんですか?

811 名前:797 :03/02/22 19:00
やっぱりそうか〜。みなさんアドヴァイスありがとうございます。
とりあえずC++の本買ってきます。

>>803
・・・・・・HSP(ボソッ)。お金がないんだよう。ヽ(`Д´)ノ
一応BASIC,CASLあたりも余裕です。当たり前か。
VBもちょこっとかじりますた。あ!そうそう、あとはTOWNS-GEA(以下略)

>>806
使えると思ったわけじゃないんだけど、VBなんかはBASICなんて名前が
付いてるけど、BASICとは全くの別物と言ってもいいような言語じゃ
ないですか。ある程度知識があればBASICはショートカットできそうだし。
そんな感じで、VC++もC++とはほとんど別物なのかな〜と・・・。

812 名前:デフォルトの名無しさん :03/02/22 19:05
>>811
一理あるな。VC++にもC++にない仕様がイパーイある。
でもC++のクラスについて理解しておかないと何も組めない罠。

813 名前:デフォルトの名無しさん :03/02/22 19:14
>>811
VCの場合は、CやC++のコードを組んでいって、ここぞと言うときに
MS独自の関数を使うという感じがします。
平屋の家を、2階建て3階建てに増築したようなもので、
分かりづいらいです。

814 名前:797 :03/02/22 19:17
>>812
BASIC程度なら、勘でなんとかなりますしね。
う〜んその辺がVC++とVBの違うところか・・・。
pDC->TextOut(中略)
とかサッパリです。「pDC->」←なんじゃこれは!
勉強しよっと。目指せ1ヶ月でVC++マスター。

815 名前:デフォルトの名無しさん :03/02/22 19:22
おまいはCのポインタをちゃんと理解しているのかと小一時間…

816 名前:デフォルトの名無しさん :03/02/22 19:27
>>815
Cのポイントぐらい理解しています。

817 名前:デフォルトの名無しさん :03/02/22 19:30
だったらポインタから構造体(この場合はクラスだが)のメンバに
アクセスするには -> を使うことぐらい(以下略)


818 名前:797 :03/02/22 19:31
>>813
ほうほう、例えば計算機作るなら、計算する部分はC++で組んで、
計算機のウインドウの制御はMSの関数でやるってな感じですか?

>>815
してないです。Cもほんのちょこっとやっただけなんで。
でもポインタの概念は知ってますよー。

819 名前:797 :03/02/22 19:33
連続スマソ。

>>816
誰だチミは??
いくらDQNでもこんなことをageで書くようなことはせんですよ。

820 名前:デフォルトの名無しさん :03/02/22 19:37
>>819
いい加減うざいぞ、お前。

821 名前:デフォルトの名無しさん :03/02/22 19:44
>>820
オマエモナー

822 名前:デフォルトの名無しさん :03/02/22 19:44
>>814
pDCがポインタだから->を使うんだろ?
そうでなければ.でいいんだが。
また、
(*pDC).TextOut(中略)
でも動くけどな。

823 名前:デフォルトの名無しさん :03/02/22 19:47
>>822
>>817で外出。

824 名前:デフォルトの名無しさん :03/02/22 19:58
ここでポインタの話なんかしなくていいから。
したけりゃCスレでも行け。

825 名前:797 :03/02/22 20:00
>>820
sageで書こうね。>>816の自作自演?

>>822
そうか、なんとなーく分かってきた。
って言っても画面に文字を表示できるだけじゃあダメダメなんで
もうちょい勉強してきます。

826 名前:デフォルトの名無しさん :03/02/22 20:44
エディットボックスにカーソルを合わせて
Enterキーを押すと閉じてしまいます。
Enterキーを押しても閉じないようにするにはどうしたらよいか
教えてください。
カルチョジュセヨ

827 名前:デフォルトの名無しさん :03/02/22 21:45
>>825
sageようがくだらない質問はするな。もうくんなよ。

828 名前:デフォルトの名無しさん :03/02/22 21:52
>>826
そろそろダイアログボックスで組むのやめれば?

829 名前:826 :03/02/22 22:10
>>828
そろそろって。。。
まだはじめたばかりなんだけどなぁ。。

830 名前:デフォルトの名無しさん :03/02/22 22:24
ポインタが分からないんじゃなく、
デバイスコンテキストというものが何なのかがわからないんでしょ?
デバイスコンテキストは、描画対象だと思えばいい。

831 名前:デフォルトの名無しさん :03/02/22 22:39
Excelのセルを操作したいんですけど、VCでやるのは難しいですか?

832 名前:デフォルトの名無しさん :03/02/22 22:41
>>831
面倒くさいだけ。難しくはない。

833 名前:797 :03/02/22 22:56
>>830
ポインタが分からないっていうか、ポインタ「も」分からないんだけど、
ポインタの質問をしにきた訳ではなく、VC++がサッパリ分からない例えに
pDC->TextOut(中略)
を出しただけです。
でも親切にどうもありがとう!とりあえず本買ってきたんで、今から
じっくり読みます。

834 名前:デフォルトの名無しさん :03/02/23 01:04
>>826
ダイアログには普通OKボタンというものがあって、Enterキーを押すと自動的に押されるのだ。
たとえボタンを付け忘れていても、Enterキーを押すと気をきかせてOnOKを呼んでくれるのだ。
そしてCDialogのOnOKにはダイアログを閉じる処理が書かれているのだ。
だから自分でOnOKを追加して、「押しちゃイヤン」とかメッセージを出させるようにするといいよ。

835 名前:デフォルトの名無しさん :03/02/23 04:03
>>826

HogehogeDlg::OnOK()
// CDialog::OnOK(); ←(・∀・)イイ!!

HogehogeDlg::OnCancel()
// CDialog::OnCancel(); ← (・∀・)カンペキ!!

836 名前:デフォルトの名無しさん :03/02/23 06:32
あ、俺もそれどうにかしようと思ってて面倒いから放置してた。
OK、キャンセルのボタン消した後だと追加するの大変だから
最初にOK キャンセルをダブルクリックして関数を追加しておくといいね。

でも閉じるボタン押してもウインドウが閉じなくなるから
ESCでは閉じなくて Xボタンで閉じるようにしないといけないな




837 名前:デフォルトの名無しさん :03/02/24 01:36
コマンドボタンの標準ボタンのチェックはずせばいいじゃん

838 名前:デフォルトの名無しさん :03/02/24 02:59
>837
実際に試してみい

839 名前:デフォルトの名無しさん :03/02/24 09:31
Visual Studio 6.0 を使っているのですが、マシンに搭載されているCPUの数
を調べる方法はあるのでしょうか。
(CPUの数に合わせたスレッド数でマルチスレッドを行いたいのです)

初心者の質問ですみません。分かる方よろしくお願いします。

840 名前:デフォルトの名無しさん :03/02/24 10:32
>>839
GetSystemInfo()
SYSTEM_INFO構造体のdwNumberOfProcessors

ヘルプを読んだだけなので間違ってるかも。

841 名前:837 :03/02/24 10:55
>>838
おわ!ホントだった!
んじゃID_OKを変えるということで。

842 名前:デフォルトの名無しさん :03/02/24 11:57
>840
無事うまくいきました。
素早いレスありがとうございました。

843 名前:デフォルトの名無しさん :03/02/24 14:21
OKボタンの標準ボタンのチェックをはずすなら、他のボタンを標準ボタンにしなきゃだめよ。

844 名前:デフォルトの名無しさん :03/02/24 15:50
別に標準がなきゃいけないわけでもなかろうに。

845 名前:デフォルトの名無しさん :03/02/24 16:01
標準がないとOKボタンが押されたのと同じ動作になるんだよ。
だからOKボタンの標準をはずして他のボタンを標準にすれば、
Enterを押した時のその他のボタンが押されるのでダイアログが閉じない。

846 名前:デフォルトの名無しさん :03/02/24 18:28
他の重要なメッセージが大量のメッセージの中に埋もれてしまうのでデバッグ時の
'Hogehoge.DLL' をロードしました、合致するシンボル情報は見つかりませんでした
というメッセージを出さなくする方法はありませんか?



847 名前:デフォルトの名無しさん :03/02/24 18:45
>>835
それってどうやるの?
どこに書けばいいの??

848 名前:デフォルトの名無しさん :03/02/24 19:03
CTestDlg1にはメンバ変数objA というクラスがあります。
CTestDlg2にはメンバ変数objB というクラスがあります。

objAをobjBに参照渡しをする場合どうしたらよいのでしょうか?



849 名前:デフォルトの名無しさん :03/02/24 20:52
>>848
できないんでない?

850 名前:デフォルトの名無しさん :03/02/24 21:53
>CTestDlg1にはメンバ変数objA というクラスがあります。
>CTestDlg1にはメンバ変数objA というクラスがあります。
>CTestDlg1にはメンバ変数objA というクラスがあります。
>CTestDlg1にはメンバ変数objA というクラスがあります。
>CTestDlg1にはメンバ変数objA というクラスがあります。
>CTestDlg1にはメンバ変数objA というクラスがあります。
>CTestDlg1にはメンバ変数objA というクラスがあります。
>CTestDlg1にはメンバ変数objA というクラスがあります。

851 名前:デフォルトの名無しさん :03/02/24 23:38
>>847
OKボタンとキャンセルボタンがあるダイアログのサンプルを探してきてコピペろ

852 名前:デフォルトの名無しさん :03/02/25 04:09
ちょっと教えて君でスマソ。
Visual C++ 6.0 SP5を持ってます。
コンパイラが同一の場合、WinXP上でコンパイル、リンクして生成したオプジェクト(EXEなど)と、
WinME(98など)上で、コンパイル、リンクして生成したオブジェクトって、
いかなるときでも同じはずですよね。
もし、違うものが生成されるとしたら、どんな特殊なときなのか教えてください。

853 名前:デフォルトの名無しさん :03/02/25 04:25
>>852
コンパイルする環境によってデフォルトで定義されるマクロが違うから生成されるものも異なる。


854 名前:デフォルトの名無しさん :03/02/25 04:27
タイムスタンプ

855 名前:デフォルトの名無しさん :03/02/25 04:30
>>853
あくまでそのレベルですよね。
同じコンパイル環境で、OS依存はありえないですよね。


856 名前:デフォルトの名無しさん :03/02/25 04:35
コンパイラの中に
if(Win98){
98 用のバイナリを生産
} else {
NT用のバイナリを生産
}
と書かれていたら、異なるバイナリが生産されてしまうな。

857 名前:デフォルトの名無しさん :03/02/25 04:38
>>855
だから違うって言ってるだろ?
一般にWin98でコンパイルすればWin98用exe、NTでコンパイルすればNT用exeができる。

858 名前:デフォルトの名無しさん :03/02/25 07:58
>>857
なにが「一般に」だ。
デフォルトのコンパイルオプションを見ろ。

859 名前:あああ :03/02/25 10:47
VC# .NETでしばらく遊んでたんですが、小さなアプリでさえ動作が
重い(CLRをロードするから?)のでVC++ .NETに乗り換えました。

理解が違ってるとあれなのでお伺いしたいんですが
・マネージドコード
-> C++、C#、VBで書いたコードの違いは最終的にはCLRに吸収されて
  同じものができる。好みの言語でプログラミングができるという
  だけの話。

・アンマネージドコード
  いわゆるネイティブなアプリを作るにはVC++を使って、しかも.NET
Frameworkを使わずに書かなければならない

こう理解して問題ないのでしょうか。ひょっとして凄く恥ずかしい
こと書いてるかも??

860 名前:デフォルトの名無しさん :03/02/25 11:55
まず先に

 ( ・∀・)   | | 
 と    )    | |  ガッ
   Y /ノ    人
    / )    <  >__Λ∩
  _/し' //. V`Д´)/
 (_フ彡        /  ←>>859

861 名前:デフォルトの名無しさん :03/02/25 12:34
>>852
OS依存のライブラリをスタティックリンクした場合とか?

862 名前:デフォルトの名無しさん :03/02/25 14:04
たとえば、世に出ているXPやME対応のアプリ、とうたっているアプリは、
どのようにして開発しているんでしょうね。
開発PCのOSに依存するコードが生成されているとしたら、
社員の使っているPC(にインストールされているOS)によって、
できるプログラムが異なると、いろいろややこしくなりますよね。

863 名前:デフォルトの名無しさん :03/02/25 14:06
>>862
だから動作確認するんだろうが

864 名前:デフォルトの名無しさん :03/02/25 14:06
メールランクライハカンベンシロ

 ( ・∀・)   | | 
 と    )    | |  ピコッ
   Y /ノ    人
    / )    <  >__Λ∩
  _/し' //. V`Д´)/
 (_フ彡        /  ←>>860

865 名前:デフォルトの名無しさん :03/02/25 14:13
>>863
それ以前の生成されるコードのレベルの話じゃん。


866 名前:デフォルトの名無しさん :03/02/25 14:19
>>855
だからそのレベルでありえてるだろと。
何が聞きたいのかわからん。

867 名前:デフォルトの名無しさん :03/02/25 14:20
>>862
下位互換って知ってるかな……

868 名前:デフォルトの名無しさん :03/02/25 14:26
ここ、ひねくれてる香具師多いな。
知ってても答えねー、みたいな(w

869 名前:デフォルトの名無しさん :03/02/25 14:30
つーか>>862のようなことを心配してるんだったら
コードレベルで同じかどうかなんて気にしてもしゃーないべ。


870 名前:デフォルトの名無しさん :03/02/25 14:32
>>862>>852のことを踏まえて言ってるのかな?

たとえばWin95でコンパイルされたなら、それ以降の9x系には基本的に対応。(MSがそう謳ってる)
けれども作ったときにはWinMeなんて出てなかったりしたから、当然「対応」なんて書けない。
「Me対応」っていうのは要するに「Meで動作を確認しますた」ってことなワケよ。

中にはMeの場合に特別な処理をしたりとか、OSによって処理を切り替えたりする部分があったりして
その処理にMe用を入れて「Me対応」という場合もあったり、特定のバージョンでないと動かないように
してあったりするものがMeでも動くようになればそれで「対応」ってこと。
9x系とNT系でexe自体を分けてるのもあるしね。

>社員の使っているPC(にインストールされているOS)によって、
>できるプログラムが異なると、いろいろややこしくなりますよね。
そんなソフト会社イヤだ……

871 名前:デフォルトの名無しさん :03/02/25 14:33
>>870
デバイスドライバは9x系とNT系で分けているよね。当たり前だけど。

872 名前:デフォルトの名無しさん :03/02/25 14:40
コンパイラはOSによって出力されるコードに違いはない
Win32APIでも特定のバージョン以上に対応させる動作をさせるためには
コンパイルオプションで挙動を変えられるようにヘッダーで処理を分けるようになっている
例えばWindows9x環境でUNICODEを有効にしてコンパイルすることは出来るが
9x系では動かずNT系でのみ動作するバイナリを吐く

873 名前:デフォルトの名無しさん :03/02/25 14:52
>>852
PEフォーマットで調べろや
IMAGE_FILE_HEADER には少なくともTimeDateStampが存在するぞ

874 名前:デフォルトの名無しさん :03/02/25 14:54
>>871
そりゃ違うOSだからな……

875 名前:デフォルトの名無しさん :03/02/25 14:55
>>873
そういうレベルの話ではないと思われ……

876 名前:デフォルトの名無しさん :03/02/25 14:55
「…」が流行っているのだろうか……

877 名前:デフォルトの名無しさん :03/02/25 15:00
>>874-876
ジサクジエンなのだろうか…

878 名前:デフォルトの名無しさん :03/02/25 15:53
具体的に、VCC++6.0SP5でNT4.0SP3でコムパイルした香具師と
Win4.0SP6でコムパイルした香具師は同じだよな。
と自分で書いてておかしくなってきた(w

879 名前:デフォルトの名無しさん :03/02/25 15:54
しまつたageてもた・・・

880 名前:デフォルトの名無しさん :03/02/25 16:01
age以前に単語むちゃくちゃだな。

881 名前:デフォルトの名無しさん :03/02/25 16:04
しかもOSの差じゃなくてSPの差を書いて「具体的」って。

882 名前:デフォルトの名無しさん :03/02/25 16:07
なんだ、真剣に答えてくれないのか。
デムパと思われたか・・・卯津田詩嚢

883 名前:デフォルトの名無しさん :03/02/25 16:39
Win98上でコンパイルしたコードとWinXP上でコンパイルしたバイナリは
同じになる可能性が高いが、同じにならないようにコンパイラを
設計することもできる。MSの考え方次第ではないか。

884 名前:デフォルトの名無しさん :03/02/25 16:49
VCは同じになるが、VBは同じにならないから気を付けろ
たっぷり開発環境のOCXのバージョン異存に苦しめられてくれ

885 名前:デフォルトの名無しさん :03/02/25 16:50
>>884
スレ違い氏ね

886 名前:デフォルトの名無しさん :03/02/25 17:02
>>882
誰だか知らんが、答えてもらえないのは大抵の場合質問の仕方が悪いよ。

887 名前:デフォルトの名無しさん :03/02/25 17:14
昔、国産PCでのコンパイラで、コプロがあるかないかで、
浮動小数点演算のライブラリをリンクするか、
同処理をエミュレーションするライブラリをリンクするかを
判断しているものがあったな。ターボパスカルだったか忘れた。

888 名前:デフォルトの名無しさん :03/02/25 17:34
VCもIEのバージョンによって動作変わるよ。

889 名前:デフォルトの名無しさん :03/02/25 18:51
動作が変わることと出力コードが変わることとは直接はリンクしてない罠。


890 名前:デフォルトの名無しさん :03/02/25 20:03
_creatで得た低水準入出力ハンドラを FILE*に割り当てるにはどうしたらよいのでしょうか?
(_filenoの逆)

891 名前:デフォルトの名無しさん :03/02/25 20:36
コンパイラというのは、ある言語からある言語への単なる変換プログラムだ。
結果が変わる訳あるまい。

例えば、NKFをどこの環境で動かそうが、文字コード変換の結果が
変わらないのと同じってことだ。

892 名前:デフォルトの名無しさん :03/02/25 20:49
sndPlaySound関数を使用したいのですが下記のエラーが発生してしまいます。
ちゃんと #include <MMsystem.h>はやっています。
何でエラーが発生するか教えてください。

clockDlg.obj : error LNK2001: 外部シンボル "__imp__sndPlaySoundA@8" は未解決です
Debug/clock.exe : fatal error LNK1120: 外部参照 1 が未解決です。
link.exe の実行エラー


893 名前:デフォルトの名無しさん :03/02/25 20:53
winmm.libをリンクしろってMSDNに書いてる

894 名前:デフォルトの名無しさん :03/02/25 20:58
>>893
リンクの方法を教えてください!!!
よろしくお願いします。

895 名前:デフォルトの名無しさん :03/02/25 21:18
>>894
実行時に動的に呼び出すか
リンクオプションで指定するか
ソースコード中にライブラリリンクの疑似命令を埋め込むか
好きにしろ

896 名前:デフォルトの名無しさん :03/02/25 21:19
>>894
ヘルプ読めボケ
氏ね

897 名前:デフォルトの名無しさん :03/02/25 21:35
CString a;
a = "TEST" ;

string b = a ;

これって型が違うけどエラーが出ないよね?
何でですか?


898 名前:デフォルトの名無しさん :03/02/25 21:43
string a ;
CString b ;

b に aをセットしたいのですがエラーが出ます。
CString型にstring型を代入するにはどうしましょ?

899 名前:デフォルトの名無しさん :03/02/25 21:56
b=a.c_str()

900 名前:デフォルトの名無しさん :03/02/25 22:04
>>894
リンクの方法も知らんとは。
馬鹿なやつよのぅ。
基本だろ!

901 名前:デフォルトの名無しさん :03/02/26 00:38
最近はリンカの存在感が薄いもんな

902 名前:デフォルトの名無しさん :03/02/26 04:50
リンカ、東野と付き合ってるらしいが本当か?


903 名前:デフォルトの名無しさん :03/02/26 07:56
>>902
詰まらん。

904 名前:デフォルトの名無しさん :03/02/26 11:43
下げマンらしいね。


905 名前:デフォルトの名無しさん :03/02/26 12:03
WindowsSDKでプログラムを作ってるんですが、
MFCのコレクションクラスを使うことはできないのですか?
コレクションクラスのヘッダーファイルをincludeすると、
「"windows.h"をインクルードしたらいけません」みたいな
コンパイルエラーになってしまいます。

906 名前:デフォルトの名無しさん :03/02/26 12:26
>>905
MFCを使うならぜんぶMFCで統一すること。
STL使えば?

907 名前:905 :03/02/26 12:38
なるほど。やっぱり、そうですか。
では STLってどこで入手できるんですか?

908 名前:ねかま :03/02/26 12:56
>>907
たぶんあなたのHDDの中に入っているんじゃないかしら。

909 名前:905 :03/02/26 13:20
えっ!そうなんですか!?
使っているのはVC6.0なんですが、
探してもどこにあるのかよくわかりませんでした。
VCのCD-ROMの中なんでしょうか?
それともSDKの中に含まれてるんでしょうか?

910 名前:ねなべ :03/02/26 13:25
>>909
○▲★■の中に入ってるよ

911 名前:ねなべ :03/02/26 13:26
>>910
氏ね

912 名前:ねなべ :03/02/26 13:27
>>910==911
自爆自演ヤメレ

913 名前:905 :03/02/26 13:59
失礼しました。
C:\Program Files\Microsoft Visual Studio\VC98\Include
の中にありました。

914 名前:219-105-109-105.adachi.ne.jp :03/02/26 14:49
C言語の知識が皆無に等しいくせに、VC++.netを買った私は馬鹿ですか?

915 名前:デフォルトの名無しさん :03/02/26 15:07
買った行為はともかく
>>914のような書き込みが馬鹿だということを色濃く表している

916 名前:デフォルトの名無しさん :03/02/26 15:16
>>915
そうっすか。どうもっす

917 名前:デフォルトの名無しさん :03/02/26 18:53
>>897について答えられる人がここに何人いるのだろうか?

918 名前:デフォルトの名無しさん :03/02/26 18:57
LPCTSTRだから。

919 名前:デフォルトの名無しさん :03/02/26 19:37
sndPlaySound( "c:/test.wav" , SND_LOOP ) ;
を実行しても繰り返し再生してくれません!!!
何故???


920 名前:デフォルトの名無しさん :03/02/26 19:49
>>919
そんなPath無いから。

921 名前:デフォルトの名無しさん :03/02/26 19:51
>>920
音楽はなりますが
繰り返し再生してくれないのです。


922 名前:デフォルトの名無しさん :03/02/26 20:32
>>921
You must also specify the SND_ASYNC flag to loop sounds.
これじゃないかな。

923 名前:デフォルトの名無しさん :03/02/26 20:47
SHFileOperationの戻り値をすべて列挙する。
おしえてください。

924 名前:デフォルトの名無しさん :03/02/26 23:37
デフォルト引数を使ってる関数を分割コンパイルした時、
ヘッダファイルだけインクルードしてもデフォルト引数の値が
パラメータヒントに出てこないのはなぜだ!なんか対策方法ある?

---main.cpp---
#include "main2.h"
int main(void) {
    int rc = foo();//ここのfooが「int foo(int a)」になっちゃう。
    return 0;}//int foo(int a = 2)になって欲しいのに。
---main2.cpp---
#include "main2.h"
int foo(int a){return a * 2;}
---main2.h---
int foo(int a = 2);


925 名前:デフォルトの名無しさん :03/02/27 00:33
sleep関数が使えません
どのライブラリに入ってますか?

926 名前:デフォルトの名無しさん :03/02/27 02:20
>>925
MSDNで調べてください

927 名前:デフォルトの名無しさん :03/02/27 02:48
すみません。質問です

SendAsyncProc関数を使おうと思っているのですが、
3番目の引数の型「ULONG_PTR」でシンタックスエラーがでてしまいます。
MSDNにはWindows95以降、windows.hをインクルードと書いてあるのですが、
VCのインストールされたフォルダを全検索しても「ULONG_PTR」という単語はヒットしません。
googleで検索したところ、gdiplus関係がヒットしたのですがその辺を調べれば良いのでしょうか・・?

環境はWindows2000
VisualC++6.0ProfessionalEdition(SP5)
参照MSDNは2001年1月リリースとMSDNライブラリVisualStudio6.0です

よろしくお願いします。

928 名前:名無し@沢村 :03/02/27 03:16
>>927
ヌヒよ、VC7の環境では以下のように定義されているぞ。

typedef _W64 unsigned long ULONG_PTR, *PULONG_PTR;

929 名前:デフォルトの名無しさん :03/02/27 04:14
>>927
basestd.hに入ってる。

ソースコードの適当なところにULONG_PTRって打って、F12を押してみよう。
定義されているところへジャンプしてくれる。
(ブラウザ情報付きでコンパイルしなおす必要があるけど)

930 名前:デフォルトの名無しさん :03/02/27 04:16
basetsd.hだった……
しかもDXSDK…鬱

931 名前:デフォルトの名無しさん :03/02/27 04:18
VOID CALLBACK SendAsyncProc(
HWND hwnd,// 目的ウィンドウのハンドル
UINT uMsg,// メッセージ
DWORD dwData,// アプリケーション定義の値
LRESULT lResult// メッセージ処理の結果
);

ULONG_PTRは見当たらないが。
MSDNライブラリVisualStudio6.0より。

932 名前:デフォルトの名無しさん :03/02/27 06:44
>>927
ULONG_PTR がないってことは 2001年9月 以前の古いSDKだと思われ。
ULONG_PTR とか INT_PTR って型は古いSDKのヘッダでは宣言されていない。
新しいSDKをダウンロードしてくるか、かわりに昔の名前 ULONG を使う。
MS自身が2つの型を混同しているので当分 ULONG_PTR と ULONG は同じ型だろう。
ただ、わざわざ名前を変えたのには理由があるのだろうから
時間がある時にでも新しいSDKにアップデートしておいた方がよいと思う。

933 名前:デフォルトの名無しさん :03/02/27 13:58
今気が付いたんだけど
CFileFindとかでC:\*.*を検索するとC:\WINNTが検出されない訳だがこれって仕様?
環境はWindows2000 VC++6.0

934 名前:デフォルトの名無しさん :03/02/27 14:32
>>933
仕様っていうか……
「 . 」が入ってないんだからヒットしなくて当然だと思う

935 名前:デフォルトの名無しさん :03/02/27 14:35
>>934
あーそれは関係ないんじゃないですか?。
.がなくてもProgram FilesとかHITするし
C:\*でもヒットしないし。
Windowsの仕様では*.*=*ですから。

936 名前:927 :03/02/27 22:13
なるほど。
サービスパックはちょこちょこ当てていたので、その辺りも修正されてるつもりでいたのですが
そうではなかったのですね。
今からダウンロードしてインストールしたいと思います。
ありがとうございました。


937 名前:しょしんしゃ :03/02/28 18:37
ダイアログの特定のコントロールをアクティブにするにはどうしたらいいでしょう?


938 名前:デフォルトの名無しさん :03/02/28 19:22
SetFocus

939 名前:デフォルトの名無しさん :03/02/28 20:06
>>937
SetActiveWindowではだめか?

940 名前:デフォルトの名無しさん :03/02/28 20:21
VC++.netでDirect3DクラスとD3DXクラスを使うプロジェクトを作るには
新規作成から何を選べばいいんでしょう?

941 名前:デフォルトの名無しさん :03/02/28 21:38
極端な話コンソールアプリからだって使えるから
ナニを選んでも使える

942 名前:デフォルトの名無しさん :03/02/28 21:41
>>937
デフォルトボタンの面倒もちゃんと見てもらいたかったら
GotoDlgCtrlかWM_NEXTDLGCTL

943 名前:940 :03/02/28 22:06
空のソリューションを選べばいいんでしょうか
初歩ですいません

944 名前:りすとぼっくす :03/02/28 23:09
リストボックスをソートするにはどうしたらいいのでしょう?
リソースエディタのプロパティを使ったらできたのですが、そうではなく
あるタイミングでソートを関数で実行したいのですが・・・。

945 名前::03/02/28 23:25
>944
CListCtrl::SortItems
を呼び出すんじゃなかったっけ?
忘れた。

946 名前:りすとぼっくす :03/02/28 23:35
>>945
すいません説明がたりませぬでした。
非MFC環境どす。

947 名前::03/02/28 23:38
>946
LVM_SORTITEMS ってメッセージ?
非MFCはよくわからん。。
間違ってたら誰かサポートしてくれぃ。

948 名前:デフォルトの名無しさん :03/03/01 01:07
じゃ、サポート・・・かな?
LVM_SORTITEMS はリストビューのメッセージ。
たぶん >946 が聞いてるのはリストボックス。
非MFC環境の質問なら↓の方が向いているかも。
http://pc2.2ch.net/test/read.cgi/tech/1018239290/l50


949 名前:デフォルトの名無しさん :03/03/01 01:08
フォトショップのツールウィンドウみたいに、子ウィンドウを
親ウィンドウのクライアント領域の外まで移動可能にするには
どのようにすればいいですか?

普通に子ウィンドウを作成したのでは親ウィンドウの外に出ることが出来ないのですが…

950 名前:デフォルトの名無しさん :03/03/01 01:18
>>949
CreateWindowでウィンドウを作成するとき、HMENUをNULLにすれば良い。
あと、WS_CHILDは指定しないこと。

951 名前:949 :03/03/01 01:29
>>950
できました!ありがとうございます。

ウィンドウスタイルで指定するものだと勝手に思い込んでいたので
検索しても見つからなくて困っていました。3時間も使ってしまって鬱だ…

952 名前:デフォルトの名無しさん :03/03/02 13:28
CAD用アドオンをWin2000+VC++6で作ってます。

CADアプリがマウスカーソルを握っている状態でモードレスダイアログを呼び出した時、
マウスカーソルが非表示になる場合があり、解決策が見つかりません。
以下の方法を試しましたがダメなのです。

●一度マウスカーソルを非表示にして再度表示
 → ぜんぜんダメ。

●ダイアログ表示前に原点にマウスカーソルを移動させておき、ダイアログ表示後に元に戻す
 →CRTでは回避できた(表示された)のに、液晶ではダメ。

●ダイアログ表示後にSendMessage(hWnd, WM_SYSCOMMAND, SC_KEYMENU, 0)でウィンドウメニューをアクティブにする。
 →マウスカーソルは表示されるが、ダイアログ表示後のリターンでメニューがドロップダウンしてしまうのでダメ。

どなたか知恵を貸して下され・・・・

953 名前:デフォルトの名無しさん :03/03/02 13:44
>液晶ではダメ。
ほう、それでは出力を普通のディスプレイと液晶、同時に出力すると
液晶の方だけカーソルが表示されないのか?
そいつはすげぇや、心霊現象だよ

954 名前:デフォルトの名無しさん :03/03/02 13:51
>>953
普通のディスプレイってなんですか?

955 名前:デフォルトの名無しさん :03/03/02 15:50
あの〜、まったくの初心者がこんなアフォなこと聞いて良いのか知りませんけど、
ボタン押したらuhoho.exeが起動するように
HINSTANCE ret=ShellExecute (m_hWnd,"open","uhoho.exe",NULL,NULL,SW_SHOW);
if((int)ret<=32) AfxMessageBox("処理できない.",MB_OK);
って書いたんです。
そしたら処理できなかったんですわ。
何ででしょうか?

ちなみにuhoho.exeはインストーラーで150Mあります。
小さいファイルだったら起動するんです。

956 名前:デフォルトの名無しさん :03/03/02 15:52
>>954
異常でないディスプレイのことです。

957 名前:デフォルトの名無しさん :03/03/02 16:02
>>955
メモリが足りない…とかじゃないよな。
うん。

958 名前:デフォルトの名無しさん :03/03/02 16:03
>>953
液晶ディスプレイについてしか言及されてないじゃん。
なんで「普通のディスプレイ」の話が出てきてるの?

959 名前:デフォルトの名無しさん :03/03/02 16:05
>>953
 →CRTでは回避できた(表示された)のに、液晶ではダメ。
この部分だと思われ

960 名前:デフォルトの名無しさん :03/03/02 16:07
ちがった>>958だ……

961 名前:デフォルトの名無しさん :03/03/02 16:29












           つ ぅ か 普 通 の デ ィ ス  プ レ イ っ て な ん だ  よ












962 名前:デフォルトの名無しさん :03/03/02 16:31
ビデオカードからの出力信号がCRTと液晶で変化が生じているのなら、確かに怪現象だと思うが
出力媒介によって表示を変えることが出来るという新技術の発見ということになる
特許を申請汁

963 名前:デフォルトの名無しさん :03/03/02 16:34
>>962
デコーダが違えばそれも可能なわけだが。

964 名前:デフォルトの名無しさん :03/03/02 16:34
>>961
うざいよ

965 名前:デフォルトの名無しさん :03/03/02 16:41
>>963
同じ出力信号で液晶とCRTという条件だけでどうやってやるの?
色を薄くしてコントラストの強度を利用するくらいしか思いつかない
それが分かれば今回の件も解決なわけだが

966 名前:名無し@沢村 :03/03/02 16:54
>>955
ヌヒよ、CreateProcess()でもだめか?

967 名前:ヌッヒー沢村 ◆4DRE6TAt5Q :03/03/02 17:51
んだんだ。

968 名前:デフォルトの名無しさん :03/03/02 21:36
>>955
ファイル名がいかん

969 名前:デフォルトの名無しさん :03/03/03 00:04
>>955
エラーの内容をしっかり確認しる。

970 名前:デフォルトの名無しさん :03/03/03 20:29
C++やVBなどでGUIアプリを作成する場合
とうぜん画面設計がありますよね?
皆さんは画面設計について何か参考にされているものってあり
ますか?
参考書や他のアプリを参考にするとか?
ボタンの配置1つとっても考えると難しいものですよね?
画面設計について参考になるサイトや書籍等ありましたら
教えてください。


971 名前:仕様書無しさん :03/03/03 20:35
>>970
野生の勘で。
つーか、とりあえず作ってみて、使いづらかったら考える。

972 名前:デフォルトの名無しさん :03/03/03 21:12
>>970
プログラマ板に「こんなUIは使いづらい」というようなスレッドがあったと思う。
もうないかもしれないけど、誰かがそれをまとめたサイトを作っていたから探してみては?

973 名前:972 :03/03/03 21:13
うなづけるものがいくつかあったよ。
フォルダオプションとかIEのインターネットオプションとか(-_-;

974 名前:デフォルトの名無しさん :03/03/03 21:16
>>970
ダメなユーザインタフェイス講座
http://www.geocities.co.jp/SiliconValley-Oakland/8192/

これか? 

975 名前:972 :03/03/03 21:18
>>974
そうそれ。

http://mentai.2ch.net/prog/kako/997/997370579.html
そういえばタイトルは「readme.txtにアンインストール情報を!」だったな(^_^;)

976 名前:デフォルトの名無しさん :03/03/03 21:31
こんなUIのソフトは嫌だ!
http://pc2.2ch.net/test/read.cgi/software/1023253730/

ソフト板にあった

977 名前:デフォルトの名無しさん :03/03/03 21:42
>>976
あ、俺が立てたスレだ(笑

978 名前:デフォルトの名無しさん :03/03/03 21:46
( ´_ゝ`) フーン

979 名前:デフォルトの名無しさん :03/03/03 22:20
教えてください。
CStringクラスがぶっこわれるんですけど(ゴミが入る)
char * sage="test";
CString hoge = sage;
このような場合ってhogeはポインタみたいな指し方するんですか?
これだと領域とってくれますか?
hoge = CString(sage);

980 名前:デフォルトの名無しさん :03/03/03 23:17
スプリッタってどうやったら作れますか?
WTLを使ってますがそれっぽいクラスやAPIが見当たりません。

981 名前:デフォルトの名無しさん :03/03/03 23:29
>>979
壊れているといっている理由をまずかけよ

982 名前:デフォルトの名無しさん :03/03/04 00:38
>>980
スプリッタはWTLなら標準で入ってるだろ
よく観察してみろ

983 名前:デフォルトの名無しさん :03/03/04 01:41
>>979
壊れているのはCStringクラスじゃ無くておまえの頭だろ!

984 名前:デフォルトの名無しさん :03/03/04 11:13
>>982
そのままの名前のヘッダがありました。スマソ。


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