■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
★初心者にVisual C++を教えるスレ★ Part6
751
名前:
デフォルトの名無しさん
:03/06/11 11:14
>>750
> コンピュータ等のファイルに保存することを禁じます。
これかぁ。コンパイルするために保存しちゃった。うっかりしていたよ。
指摘してくれてありがとう。
752
名前:
749
:03/06/11 11:39
解決しました
「VC++6.0でうまくビルドできない時は」を参考に
myProg.hbrBackground =GetStockObject(WHITE_BRUSH);
を
myProg.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);
と書き換えると上手くいきました
.NETは関係ないと思いうかつにも読み飛ばしたのが敗因でした
>>750
さん、ありがとうございました
753
名前:
デフォルトの名無しさん
:03/06/11 13:04
つうか何でVCみたいなうんこを使うか理解に苦しむ
754
名前:
デフォルトの名無しさん
:03/06/11 13:04
超激安アダルトDVD18禁
注文時に2ちゃんのどの板からきたか御記入ください
明日6月11日まで消費税をサービスいたします。
http://www.net-de-dvd.com/
755
名前:
デフォルトの名無しさん
:03/06/11 13:37
現在C++でプログラムを作成しているのですけど、
処理途中に画面をクリアしたいのですけど、どうやればいいのでしょうか?
プログラムイメージは以下の通りです。
(argv[1]とargv[2]のパラメータに入れられた数字の足し算を10秒後に表示するプログラムです。)
#include<stdio.h>
int main(int argc, char *argv[])
{
printf("入力値1:%d\n", argv[1]);
printf("入力値2:%d\n", argv[2]);
printf("\n\n只今計算中!\n");
sleep(10);
// ここで画面クリアしたいです!
int sum;
sum = CInt(argv[1]) + CInt(argv[2]);
printf("答えは%dです\n",sum);
return(0);
}
756
名前:
デフォルトの名無しさん
:03/06/11 13:42
>>753
が何でこのスレにいるのか理解に苦しむ
757
名前:
デフォルトの名無しさん
:03/06/11 16:41
CListViewの背景にビットマップを表示したいのですが、うまくいきません。
どうしたらいいでしょうか。
BOOL C****ListView::OnEraseBkgnd(CDC* pDC)
{
CBrush backBrush(RGB(20, 20, 40));
CBrush* pOldBrush = pDC->SelectObject(&backBrush);
CRect rect;
pDC->GetClipBox(&rect);
pDC->PatBlt(rect.left, rect.top, rect.Width(),
rect.Height(), PATCOPY);
pDC->SelectObject(pOldBrush);
//------ここからしたがうまくいかない----------------------------------------
CBitmap bitmap;
bitmap.LoadBitmap("C:\\test.bmp");
CDC cdcdc;
cdcdc.CreateCompatibleDC(pDC);
cdcdc.SelectObject(&bitmap);
pDC->BitBlt(0,0,240,170,&cdcdc,0,0,PATCOPY);
cdcdc.DeleteDC();
return TRUE;
}
758
名前:
デフォルトの名無しさん
:03/06/11 19:09
>>755
DOSコマンドそのままで
system("cls");
でどうですか?
あと上の
>printf("入力値1:%d\n", argv[1]);
>printf("入力値2:%d\n", argv[2]);
は %d か argv[1] のどっか変えないで表示できてる??
759
名前:
デフォルトの名無しさん
:03/06/11 20:13
つーかCBitmapって直接ファイルからBitmap読み込めるんや・・・・マジで知らんかった(´Д`;)
760
名前:
デフォルトの名無しさん
:03/06/11 21:30
>759
できない。
761
名前:
デフォルトの名無しさん
:03/06/11 22:10
>>757
>bitmap.LoadBitmap("C:\\test.bmp");
これは新しいギャグか?
762
名前:
757
:03/06/11 22:14
>>761
大まじめなつもりなんですが・・。ダメなんでしょうか。
763
名前:
デフォルトの名無しさん
:03/06/11 22:17
リソース名が"C:\\test.bmp"ってできたっけ?
764
名前:
デフォルトの名無しさん
:03/06/11 22:17
ビットマップをLoadImageで読み込んでCBitmapにAttachしてみては?
765
名前:
757
:03/06/11 22:25
>>764
わかりました。ちょっと試してみます。
766
名前:
757
:03/06/11 22:38
書いてみましたが、なにも表示してくれません。どうしたらいいんでしょうか。
HANDLE hBmp = LoadImage(AfxGetApp()->m_hInstance, "C:\\test.bmp", IMAGE_BITMAP,240,170,LR_LOADFROMFILE);
CBitmap bitmap;
bitmap.Attach(hBmp);
767
名前:
デフォルトの名無しさん
:03/06/11 22:49
BITMAPhBmp = ( HBITMAP )LoadImage( NULL, "C:\\test.bmp", IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION | LR_LOADFROMFILE );
こんな感じならどう?
768
名前:
デフォルトの名無しさん
:03/06/11 22:51
ちょっと間違えた
HBITMAP hBmp = ( HBITMAP )LoadImage( NULL, "C:\\test.bmp", IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION | LR_LOADFROMFILE );
769
名前:
757
:03/06/11 22:56
>>767
767氏のコードとPATCOPYをSRCCOPYにかえる事でできました。ご親切にありがとうございました。
HBITMAP hBmp = ( HBITMAP )LoadImage( NULL, "C:\\test.bmp", IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION | LR_LOADFROMFILE );
CBitmap bitmap;
bitmap.Attach(hBmp);
CBitmap* pMemBmp = cdcdc.SelectObject(&bitmap);
pDC->BitBlt(0,0,240,170,&cdcdc,0,0,SRCCOPY);
cdcdc.SelectObject(pMemBmp);
cdcdc.DeleteDC();
770
名前:
757
:03/06/11 23:02
あと追加で質問なんですが、ビューをスクロールしても再描画されないので、何かよい方法はないでしょうか。
771
名前:
名無し@沢村
:03/06/12 01:06
>>770
OnDraw()で描画する
772
名前:
755
:03/06/12 09:43
>>758
情報ありがとうございます。
(亀レスになってしまい申し訳ありませんでした。)
system関数で画面のクリア出来ました。
>printf("入力値1:%d\n", argv[1]);
>printf("入力値2:%d\n", argv[2]);
の件ですが、私が書き間違えました。
正しくは以下の通りCIntで数値変換したものを表示させています。
掲載ミスで申し訳ありませんでした。
printf("入力値1:%d\n", CInt(argv[1]));
printf("入力値2:%d\n", CInt(argv[2]));
773
名前:
755
:03/06/12 10:19
もう1件質問がありますので、ご存じの方がいらっしゃいましたら、教えて下さい。
よろしくお願いいたします。
内容は表示される文字に色を付けたいです。
printf("入力値1:%d\n", CInt(argv[1]));
とプログラミングして、例えば画面上に「入力値1:123」と表示される部分の、
123の所だけを青色に変更したいです。
774
名前:
デフォルトの名無しさん
:03/06/12 17:01
>>773
ググったら初っ端に……。
ttp://www.google.com/search?q=printf+%E8%89%B2
775
名前:
デフォルトの名無しさん
:03/06/12 17:09
ANSIエスケープシーケンスは、NT系では効きませんヨ。
SetConsoleTextAttribute( GetStdHandle( STD_OUTPUT_HANDLE,
FOREGROUND_BLUE);
776
名前:
773
:03/06/12 17:13
>>774
情報ありがとうございます。
早速検索結果一覧からいけるページに行って調べて、
試しにプログラミングしてみたのですけど、
enterキーの文字のようなものが出るだけで色がつかないです。
プログラムの書式が間違っているのでしょうか??
int test_num = 13;
printf("test_num = \x1B[34m%d\n", test_num);
ちなみにVisual C++ Ver6.0でOSはWindows2000 professionalを使っています。
VC++またはWindowsのバージョンが古いとか関係あるのか分かりませんが・・・。
777
名前:
デフォルトの名無しさん
:03/06/12 17:42
猫でもわかるのこの章で可能かと
ttp://www.kumei.ne.jp/c_lang/intro/no_58.htm
それまでの章を全部理解してなくてもできますねー
>123
の所だけを青色に変更したいです。
入力値1: までを普通でいれて数値を表示する直前で変更すればいいかと
そのあと戻すの忘れずにー
778
名前:
デフォルトの名無しさん
:03/06/12 21:15
フォームビュー内に複数ボタンがあって、ボタン外でマウスの左ボタンを押したまま、
1.あるボタンの上にマウスカーソル移動→そのボタン押下状態にする、
2.そのままボタン外にカーソル移動→そのボタン通常状態に戻す、
3.1の状態でボタン上にてマウスの左ボタンを離す→そのボタンをクリックしたのと同じ動作をする、
4.2の状態から他のボタンへ移動→移動先のボタンを押下状態にする(1の状態)
といった動作をさせたいのですが、どのイベントで判断すれば良いのかわかりません・・・。
どうか教えてください。フォームビューに配置しているボタンはCButtonからの派生クラスで
定義しています。
779
名前:
デフォルトの名無しさん
:03/06/12 22:56
BUTTONDOWN
BUTTONUP
MOUSEMOVE
780
名前:
デフォルトの名無しさん
:03/06/13 10:19
ダイアログで自分自身のハンドルでどうやって取得するんですか?
781
名前:
デフォルトの名無しさん
:03/06/13 10:30
何のダイアログの話だ?
まずそれを明確にしろ
782
名前:
デフォルトの名無しさん
:03/06/13 11:29
何のってダイアログ作るじゃん自分でフォームよ
なんつの、IDD_DIALOGつうの?
APIにハンドル渡したい時に指定するハンドルさ
783
名前:
776
:03/06/13 13:03
>>777
情報有難うございます。
実験してみました所、ちゃんと色がつきました。
784
名前:
デフォルトの名無しさん
:03/06/13 13:08
>>782
CMyDialog::OnInitDialog()
{
HWND hMyDlg = GetMyHWNDPlase();
・・・
}
こうだ。
785
名前:
デフォルトの名無しさん
:03/06/13 13:09
↑Pleaseのスペル違った鬱
786
名前:
デフォルトの名無しさん
:03/06/13 13:49
>>784
ありがdございまs
ちなみにm_なんとかってグローバルみたいなのなかったっけ?
787
名前:
デフォルトの名無しさん
:03/06/13 13:52
>>784
氏ねうじ虫が!
おまけに
>>785
でボケの修正格好悪いし
788
名前:
デフォルトの名無しさん
:03/06/13 13:55
>>784
の知障のアク禁要請出してきました
789
名前:
784
:03/06/13 15:15
正直すまんかった(w
>>786
正解は m_hWnd 。
790
名前:
デフォルトの名無しさん
:03/06/13 15:22
>>789
GetSafeHwnd()と言って欲しかったな。
791
名前:
デフォルトの名無しさん
:03/06/13 15:51
オペレーターが定義されているから
*this
792
名前:
デフォルトの名無しさん
:03/06/13 23:14
ボタンとかのコントロールってmanifest使えばXPスタイルにできるみたいだけど
メニューってどうやってXPスタイルにするんですか?
793
名前:
デフォルトの名無しさん
:03/06/14 17:43
すみません。
あるウィンドウ ハンドルから、
プッシュボタンなのかエディットなのかを判定するには
どうしたら良いでしょうか。
794
名前:
デフォルトの名無しさん
:03/06/14 17:59
>>793
GetClassName()
795
名前:
793
:03/06/14 19:02
>>794
すみません。試してみたところ
プッシュボタン、チェックボックス、ラジオボタン、
グループボックスのウィンドウクラス名は全て「Button」です。
プッシュボタンだけ判定するにはどうしたら良いでしょうか?
796
名前:
デフォルトの名無しさん
:03/06/14 19:41
>>793
GetWindowLong(GWL_STYLE)で例えばBS_PUSHBUTTONフラグが
立っていたらボタンetc
797
名前:
793
:03/06/14 21:07
>>796
解決しました。ありがとうございました。
798
名前:
:03/06/15 06:32
ExitWindowsEx(EWX_REBOOT,0);
この関数使ってPCをリブートできますが、たまに何かのプログラムが
「このプログラムは応答してません」というダイアログがでてそこで
リブートの工程が止まってしまい結局何時までたってもリブートでき
ません。
何か確実にリブートできる方法はないでしょうか。
(VC6.0 SP5 / WIN-Xp(HE)
799
名前:
デフォルトの名無しさん
:03/06/15 11:52
現在DOSを起動して
"実行元パス・ファイル名 解凍元パス・ファイル名 解凍先パス・フォルダ名"
(間隔は半角スペース)
と打ち込んで解凍処理をしているのですがファイル名やフォルダ名にスペースが含まれている場合うまく認識してくれません
どうやったら認識してくれるんでしょうか?
[ ]を使うと認識するらしいのですがうまくいきません・・
解決策がありましたらよろしくお願いします
scanfを使ってる以上駄目なんでしょうかね?
int o, size = 0;
for (o = 1; o < argc; o++)
size += int(strlen(argv[o]) + 1);
char *command_line = new char[size + 1];
command_line[0] = '\0';
for (o = 1; o < argc; o++)
{
strcat(command_line, argv[o]);
strcat(command_line, " ");
}
sprintf(sourceStr, "%s",argv[1]);
sprintf(distStr, "%s",argv[2]);
C++.NET/WinXP(Pro)
800
名前:
デフォルトの名無しさん
:03/06/15 11:55
>>799
普通は
HOGE.exe ARG1 "ARG 2" ARG3
見たいに、スペースを含むものにはダブルクオーテーションで
括って実行するんでないかい?
801
名前:
デフォルトの名無しさん
:03/06/15 11:59
>>800
そうなんですか?
DOSプログラムが初めてなもので知りませんでした・・
入力する時にスペースがある場合はダブルクオーテーションで区切るのが普通なんですね・・
ありがとうございました
802
名前:
デフォルトの名無しさん
:03/06/15 11:59
>>799
"C:\Program Files\2ch\test.txt"
のように"で囲むのでは?
803
名前:
デフォルトの名無しさん
:03/06/15 11:59
一歩遅かった鬱
804
名前:
デフォルトの名無しさん
:03/06/15 12:04
あ!すいません入力する時は
実行元パス・ファイル名 解凍元パス・ファイル名 解凍先パス・フォルダ名
(間隔は半角スペース)
という風にダブルクオーテーションは使いません・・・スマソ
これでもあまり変わらないけど・・・
>>802
回答ありがとうございます
805
名前:
デフォルトの名無しさん
:03/06/15 20:19
>>798
ExitWindowsEx(EWX_FORCE | EWX_REBOOT, 0);
じゃ、だめなのか?
806
名前:
デフォルトの名無しさん
:03/06/15 20:49
すみません。エディットコントロールにて
選択中の文字列を取得するには
どうしたら良いでしょうか。
807
名前:
デフォルトの名無しさん
:03/06/15 20:51
>>806
SendMessage()でEM_GETSELを指定
808
名前:
デフォルトの名無しさん
:03/06/15 21:28
>805
ありがとうございます。EWX_FORCEIFHUNGも追加してみます。
いろいろパラメータがあったんですね。
809
名前:
デフォルトの名無しさん
:03/06/15 22:22
CStringオブジェクト内の文字数を取得したいのですが
GetLengthメソッドだと1つの全角文字を2としたバイト数が
返ってきて「"あa"→"3"」となってしまいます。
バイト数ではなく、「"あa"→"2"」のように1つの全角半角文字を
共に1として文字数を取得するにはどのようにすればよろしいでしょうか?
810
名前:
デフォルトの名無しさん
:03/06/15 22:26
>>809
CStringのUNICODE版(WCStringか?)か、std::wstringに直す。
もしくは、一字一字判別。
811
名前:
デフォルトの名無しさん
:03/06/15 22:28
すまん。思いっきり嘘ついた。
#define _UNICODE
でCStringが全てユニコードになる模様。
812
名前:
デフォルトの名無しさん
:03/06/15 22:40
WM_PAINTは、再描画が必要な時の物ですが、ウインアプリは再描画の時に表示する
物を常に用意しておかないといけないと言うことですか?
813
名前:
デフォルトの名無しさん
:03/06/15 22:46
そうです
814
名前:
デフォルトの名無しさん
:03/06/15 22:48
>>813
なら、コンソールアプリみたいにウィンドウに焼き付けることは
出来ますか?出来るなら教えてください。
815
名前:
デフォルトの名無しさん
:03/06/15 22:50
常にメモリDCに描画して、invalidateされたところを転送すれば
いいんじゃなかろうか。
816
名前:
809
:03/06/15 22:52
>>810
=811
ありがとうございました。
CStringWを使えば良かったのですね。
817
名前:
デフォルトの名無しさん
:03/06/15 22:58
>>815
ありがとうございました。勉強してみます。
818
名前:
デフォルトの名無しさん
:03/06/16 18:15
質問:
複数のソースファイルからなるプログラムをビルドするとき、
順番によっては 「○○ が定義されていません / 再定義されています」 みたいな
エラーが出るんですけど、コンパイルの順番を変えるにはどうすればいいんですか?
819
名前:
デフォルトの名無しさん
:03/06/16 18:23
>>818
それはソースファイルの構成に問題があるような。
宣言と定義を.hファイルと.c(.cpp)ファイルに分けましょう。
他のソースファイルで定義されている変数はexternで参照するとか。
820
名前:
デフォルトの名無しさん
:03/06/16 18:28
シューティングゲームを作ろうと思うんですが
一般的に、時機キャラとか敵キャラとかのクラスってヘッダーファイルに
書いたほうがいいんですか?
それともソースファイルですか?
どなたか教えてください。
・・初心者な質問ですいません。
821
名前:
デフォルトの名無しさん
:03/06/16 18:30
VBやC#なら見つかったのですがプログラム中でコントロールを任意に
追加する方法はVCで無いでしょうか?
例えばボタンを押すとエディットボックスが1つ増えるといった具合に
822
名前:
デフォルトの名無しさん
:03/06/16 18:47
CEdit* edit = new CEdit();
edit->Create();
こんな雰囲気
823
名前:
デフォルトの名無しさん
:03/06/16 19:52
>>822
そしてdeleteを忘れる罠
ポインタの配列とかを用意して覚えておかないとね。
CPtrArrayやSTLのvectorクラスあたりを使ったりしてね。
824
名前:
デフォルトの名無しさん
:03/06/16 19:56
>>820
すぐ上のレスくらい見ようよ・・・
宣言はヘッダファイル、定義(実装部分)はcppファイルをお勧めする。
ヘッダファイルに全部書いても問題はないけれど、デバッグしづらいと思う。
825
名前:
デフォルトの名無しさん
:03/06/16 20:43
>>820
ヘッダに全部インラインで書け。これ最凶。
※こういうヤシがマジできますた。
826
名前:
デフォルトの名無しさん
:03/06/16 23:31
>>818
呼び出され関数が呼び出し元より前に無いとそうなる。プロトタイプ宣言をすれば
後に書いても大丈夫。
#include <stdio.h>
void sub(void){puts("sub");}
int main(void){sub();return 0;}
or
#include <stdio.h>
void sub(void);
int main(void){sub();return 0;}
void sub(void){puts("sub");}
827
名前:
デフォルトの名無しさん
:03/06/16 23:35
VC6スタンダードエディションだと最適化オプションで実行速度優先等
を選べないけど、 何か方法ないですか(レジストリをいじるとか、パッチあてるとか)
828
名前:
デフォルトの名無しさん
:03/06/16 23:42
>>826
の続き
Main.c Heddah1.h Heddah2.h とあるなら、
//Main.c
#include <stdio.h>
void Heddah1Sub(void);
void Heddah2Sub(void);
#include "Heddah1.h"
#include "Heddah2.h"
int main(void){Heddah1Sub();Heddah2Sub();return 0;}
//Heddah1.h
void Heddah1Sub(void){puts("1");}
//Heddah2.h
void Heddah2Sub(void){puts("2");}
みたいにする。このプログラムの場合は後から前を呼び出しているので
プロトタイプ宣言を書かなくてもエラーにならないが、前から後ろに呼び出す
パターンも絶対出てくる。
829
名前:
デフォルトの名無しさん
:03/06/17 00:23
>>827
通報しますた。
830
名前:
デフォルトの名無しさん
:03/06/17 00:41
>>824
ありがとうございました
831
名前:
デフォルトの名無しさん
:03/06/17 00:51
>>829
ありがとうございました
832
名前:
名無し@沢村
:03/06/17 02:14
>>823
std::vector<CEdit>
まったく使いもんにならんな。
std::vector<CEdit*>
これで自動的にポインタが解放されるとは驚きだな。
833
名前:
デフォルトの名無しさん
:03/06/17 06:11
配列へのポインタを引数として受け取る関数内でのデバッグ時、
配列の中身を全て見るにはどうすれば良いですか?
ウォッチウィンドウにp[0],p[1]・・・等と入力すれば見れないことも無いんですが、
関数呼び出しの度に入力は辛すぎるのです。。
834
名前:
_
:03/06/17 06:40
http://homepage.mac.com/hiroyuki44/
835
名前:
デフォルトの名無しさん
:03/06/17 18:28
>>833
一例としては以下のようなコードを埋め込んでおく(MFCの場合)
#ifdef _DEBUG
{
for ( int i=0 ; i < 3 ; ++ i) {
TRACE1(_T("%d "), p[i]);
TRACE(_T("\r\n"));
}
}
#endif
836
名前:
デフォルトの名無しさん
:03/06/17 19:46
VCPP初心者です、まじで分かりません
_T とは何なんですか?
Cではでてこないと思うのですが。
837
名前:
デフォルトの名無しさん
:03/06/17 19:59
>>836
_Tの上にマウスポインタを合わせると_Tの中身が表示されそう
838
名前:
デフォルトの名無しさん
:03/06/17 20:37
>>836
UNICODEに対応させるマクロ。
F12を押せば定義位置が見つかりそう
839
名前:
デフォルトの名無しさん
:03/06/17 20:42
研究でC++を使って3次元グラフィックスを扱いたいのですが、
どうしたらいいでしょうか。
色々検索した結果OpenGLってのをつかって・・・。
ってことなんですが、誰か丁寧に教えてくれませんか?
840
名前:
デフォルトの名無しさん
:03/06/17 20:47
そんな聞き方で根絶丁寧に教える香具師はここには居ない。
ポイントを絞ってグ具ってから出直して来い。
841
名前:
デフォルトの名無しさん
:03/06/17 21:20
>>839
一例として
http://codeguru.com/opengl/index.shtml
のサンプルを眺めていれば方針がつかめるかも。
842
名前:
デフォルトの名無しさん
:03/06/17 21:40
MFCでのプログラム生成をした後に、最小化・最大化・ウィンドウサイズの変更など、最初に設定した機能を変更する方法はあるでしょうか?
843
名前:
デフォルトの名無しさん
:03/06/17 21:48
>>842
ある。
844
名前:
デフォルトの名無しさん
:03/06/17 21:55
(;´Д`)あ、あの、、、その方法を教えてください。
845
名前:
デフォルトの名無しさん
:03/06/17 21:58
知りたいか?
846
名前:
デフォルトの名無しさん
:03/06/17 21:59
>>839
一般的にはダイレクトXってのをつかってるよ
でも最初はむずかしいからライブラリをつかってやろうね
ライブラリはいろんな人が作ってくれてるからネットで探してみようね
847
名前:
デフォルトの名無しさん
:03/06/17 22:02
角度が60度のときのコサインの値を求めるプログラムを
作ったのですがなぜか実行結果が-1690193024とかいう
わけわからん数値になってしまいました
なぜなんでしょうか?
#include<stdio.h>
#include<math.h>
void main(void){
printf("%d",cos(60*3.14159/180));
getchar();
}
848
名前:
844
:03/06/17 22:05
>>845
(;´Д`)意地悪しないで教えてください。
お願いします。
849
名前:
デフォルトの名無しさん
:03/06/17 22:05
>>847
printfの書式指定が間違ってる。
%dは整数だ。
あとは好きなだけ調べて来い
ttp://www.google.com/search?q=printf+%E6%9B%B8%E5%BC%8F
850
名前:
デフォルトの名無しさん
:03/06/17 22:06
>840
,841,846
ありがとうございます。
もう少し調べて的を絞ってからまた質問に来ます
851
名前:
843じゃないけど
:03/06/17 22:07
>>842
・最大化・最小化
ShowWindow
・ウィンドウサイズの変更
MoveWindow
タイトルバーのボタンならModifyStyleとかでできるんじゃないかな
852
名前:
269
:03/06/17 22:13
>>849
おお!
うっかりしてた!
ありがとう!
853
名前:
836
:03/06/17 22:48
今グレップして探したんですが、
TCHAR.H内で
#define _T __T
その前に
#define __T(x) L ## x
若しくは
#define __T(x)
となっていました。
L"ほげ" でUNICODE対応になるということですか?
ここがよく分かりませんが。
とりあえず今まで気にかかっていたものが少し解けました。
どうもありがとうございます。
854
名前:
デフォルトの名無しさん
:03/06/17 23:10
aiueo
855
名前:
デフォルトの名無しさん
:03/06/18 00:08
>>852
ネタかと思ったYO!
856
名前:
デフォルトの名無しさん
:03/06/18 01:43
>>827
釣りかな?
Professional EditionとStandard Editionの違いの一つだからねえ。普通に考えて無理だろう。
NT系OSも、Workstation版をServer版にしてしまうようなワザはなくなってるっぽいし
>>840
一撃で根絶させてくるのにはまいるよな
857
名前:
デフォルトの名無しさん
:03/06/18 01:45
VisualC++6で、現在PCで流れている音量を読み取って
音量がある一定のレベルにたっしているときだけ
ある変数がTRUEまたは1などに変わるというプログラムは
作成可能でしょうか?
それともPC以外に音響設備が必要でしょうか?
858
名前:
デフォルトの名無しさん
:03/06/18 06:45
どんな事するのか知らないけれどオーディオに関する基礎知識とプログラミング
を知ってないとかなり難しいかも。
859
名前:
デフォルトの名無しさん
:03/06/18 14:40
そうなんですか・・・
数ヶ月で実現するにはちょっと厳しいですかね・・
VisualC++のいろんな本を見ていますが、なかなか載っていません・・
DirectSound?などを勉強したりするんでしょうか・・・
それとは別にそれではWAVEファイルを読み取って
上のようなことは作成可能でしょうか?
860
名前:
デフォルトの名無しさん
:03/06/18 16:06
>>859
それなら可能。
WAVEファイルのフォーマットを調べてみよう。
861
名前:
デフォルトの名無しさん
:03/06/18 18:56
保存しようとすると、
○○ を保存できません。他のアプリケーションで使用されている可能性があります。
ってのがやたらに多く出るんですが、これって異常じゃないですか?
どこからも開かれてないはずなんですが。。。
862
名前:
デフォルトの名無しさん
:03/06/18 19:01
MFCを使ってプログラムを書いています。
たとえば1秒後とカウントした値をエディットボックスに表示するにはどうすればよいのでしょうか。
クラスは基本クラスがないクラスを作ってその中でソースを書いています。
{
int i;
int j;
for(i;i<10;i++){
j=i;
sleep(1000);
}
}
jに格納した値をエディットボックスに表示するにはどうすればよいのか教えていただけるとうれしいです。
863
名前:
デフォルトの名無しさん
:03/06/18 19:03
>>862
すまないがネタとしか思えない。
初心者用の教本をまず買ってくることをお勧めする。
864
名前:
デフォルトの名無しさん
:03/06/18 19:37
>>862
です
UpdateData(false)
とかやってもできないんです!ボタンを押したら表示するっというのはできるんですけど
ボタンを押さずに処理するのってどうすれば良いのかなぁと思ったんですけど・・・・
すいません。簡単なことがわからなくて・・・
865
名前:
デフォルトの名無しさん
:03/06/18 20:09
>>864
>>863
MSDNさえも見ようとしないのか。
>>861
俺もよく出る。
VC++内で何かやってるんじゃないのかな。
気にせずもう一度保存すると大抵保存できる。
866
名前:
デフォルトの名無しさん
:03/06/18 20:42
>>861
俺もかなりの確率で出てくる。
ウイルスチェックが関係ありそうだという話を
聞いたことがあるが、効果ある奴とない奴と居るらしい。
だれかほんとの理由知らないか?
867
名前:
デフォルトの名無しさん
:03/06/18 20:43
やらないか?
868
名前:
デフォルトの名無しさん
:03/06/18 22:13
猫でも分かる・・・のSDK編のイントロダクションを
コピぺしてビルドしたら以下のエラーがでます。
error C2440: '=' : 'void *' から 'struct HBRUSH__ *' に変換することはできません。(新しい動作 ; ヘルプを参照)
'void*' から非 'void' 型への変換には明示的なキャストが必要です。
cl.exe の実行エラー
原因が良く分かりません。ちなみにVisualC++6.0です。
どなたか教えてくださいまし。
869
名前:
デフォルトの名無しさん
:03/06/18 22:15
VC++6.0でうまくビルドできない時は をミロ。
870
名前:
デフォルトの名無しさん
:03/06/18 22:18
いや、やってもうまくいかないんですよ。
プロジェクトは毎回ちゃんと作ってますし。
871
名前:
デフォルトの名無しさん
:03/06/18 22:20
PGのひと、見てね
http://mypage.odn.ne.jp/home/dongrico
872
名前:
デフォルトの名無しさん
:03/06/18 22:21
hoge = (HBRUSH*)obj;
のように明示的にキャスト汁。
873
名前:
デフォルトの名無しさん
:03/06/18 22:22
ポインタじゃないだろ
874
名前:
デフォルトの名無しさん
:03/06/18 22:23
プログラミングのお供に・・・
http://mypage.odn.ne.jp/home/dongrico
875
名前:
デフォルトの名無しさん
:03/06/18 22:38
myProg.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);
こんな感じでいいんですよね?なんで通らない・・・。
876
名前:
デフォルトの名無しさん
:03/06/18 22:49
ごめんなさい。できました。
いろいろいじってて、MFCの設定が間違ってたみたいです。
MFCを使用しないにしたら一発でいけました・・・。
872さん、873さんありがとうございました。
勉強になりました。
877
名前:
デフォルトの名無しさん
:03/06/18 23:00
windows xpではRaw socketを完全サポートってあるんですが。
IPアドレスを偽造することはできるって書いてあったんですが、
ポート番号やTCPの制御フラグ(rst,syn..)とかも自分で作れるんですか?
878
名前:
デフォルトの名無しさん
:03/06/18 23:04
>>876
猫のSDK講座はプロジェクト作るとき MFCApplicationじゃなくてWin32 Applicationでやらんとあかんよ。
879
名前:
デフォルトの名無しさん
:03/06/19 12:26
すみません。
「\」を文字として扱うにはどのようにすれば良いでしょうか?
880
名前:
デフォルトの名無しさん
:03/06/19 12:32
'\\'
881
名前:
879
:03/06/19 12:39
>>880
どうもありがとうございました。
882
名前:
デフォルトの名無しさん
:03/06/19 13:04
(´Д`;)
883
名前:
デフォルトの名無しさん
:03/06/19 14:12
ファイル名から検索してヒットしたファイルのパスを表示しようと思っていますが
afx.hをインクルードしただけで
path.cpp
WINVER not defined. Defaulting to 0x0501 (Windows XP and Windows .NET Server)
リンクしています...
nafxcwd.lib(thrdcore.obj) : error LNK2019: 未解決の外部シンボル
__endthreadex が関数 "void __stdcall AfxEndThread(unsigned int,int)" (?AfxEndThread@@YGXIH@Z) で参照されました。
nafxcwd.lib(thrdcore.obj) : error LNK2019: 未解決の外部シンボル
__beginthreadex が関数 "public: int __thiscall CWinThread::CreateThread(unsigned long,unsigned int,struct _SECURITY_ATTRIBUTES *)" (?CreateThread@CWinThread@@QAEHKIPAU_SECURITY_ATTRIBUTES@@@Z) で参照されました。
Debug/path.exe : fatal error LNK1120: 外部参照 2 が未解決です。
というエラーが出ます、windows.hをインクルードすればエラーが消えるのですが
今度は「windows.hはインクルードされているのでwindows.hをインクルードしないで」
というエラーが出てしまいます
あとcout・endlを定義してくださいというエラーが出るのですが
これはどんな型で定義すればいいのでしょう?
解決策がありましたらよろしくお願いします
884
名前:
デフォルトの名無しさん
:03/06/19 14:12
// path.cpp : コンソール アプリケーションのエントリ ポイントを定義します。
//
#include "stdafx.h"
#include <windows.h>
#include <afx.h>
int _tmain(int argc, _TCHAR* argv[])
{
CFileFind finder;
BOOL bWorking = finder.FindFile("test.lzh");
while (bWorking)
{
bWorking = finder.FindNextFile();
//cout << (LPCTSTR) finder.GetFilePath() << endl;
//printf("%s",finder.GetFilePath());
}
finder.Close();
return 0;
}
885
名前:
デフォルトの名無しさん
:03/06/19 14:39
VC6使ってるんですけどダイアログリソースのエクスポートってできないですよね。
作ったダイアログを他のプロジェクトで再利用するにはどのような方法がありますか?
>>883
プロジェクトの新規作成のときに何を選択したの? Win32Application ?
886
名前:
デフォルトの名無しさん
:03/06/19 14:44
>>885
リソースファイルを移植する。
887
名前:
885
:03/06/19 14:57
>>886
.rcファイル内の必要なダイアログリソースだけコピペして、
resource.hの #defineコピペして、番号割り振って
_APS_NEXT_RESOURCE_VALUEとかいじるしかないですか?
888
名前:
デフォルトの名無しさん
:03/06/19 15:33
デバッグモードに関して質問です。
デバッグしている時、何か操作をすると毎回デバッグウィンドウに
「'C:\WINNT\MUI\fallback\0411\msctf.dll.mui' をロードしました…」
と言った旨のメッセージが出ますが、コード内で自分でTRACEした部分だけ見れれば良いので、
これら(ロードしました)のメッセージだけ非表示にしたいのですが可能でしょうか?
また、その方法など教えて頂けると有難いです。
889
名前:
デフォルトの名無しさん
:03/06/19 17:29
>>885
Win32コンソールプロジェクトです
C++.NETでプログラムしています
890
名前:
885
:03/06/19 17:43
>>889
VC6ではプロジェクトの新規作成のときに「Win32 Console Application」を選択して
アップウィザードのステップ1/1の時に「MFCをサポートするアプリケーション」を選択すれば
Afx.hやWindows.hをインクルードしなくてもStdAfx.hでインクルードしてるから
CFileFindとかそのまま使えるようになるよ。
C++.NETはしらないけど。
891
名前:
デフォルトの名無しさん
:03/06/19 18:50
VC++6でDllのデバッグしようとすると、
「ブレークポイントの位置」というメッセージが出て
ステップ実行が混合モードで止まってしまいます。
ブレークポイントを打ってなくてもこの現象がでます。
ソースを見ても何が原因かわかりません。
この現象が起こる原因をご存知の方教えて頂けないでしょうか。
892
名前:
891
:03/06/19 19:23
デバッグウィンドウに以下のメッセージが出ます。
Second Change Assertion Failed : File dbgheap.c Line 1044.
該当ソースを見てもさっぱりわかりません。
バグが出てると思われるコードが分かりました。
vector0, vector1 はint型のvectorで、
i0, i1 はそれぞれのイテレータです。
for(i0 = vector0.begin(); i0 != vector0.end(); ++i0)
{
for(i1 = vector1.begin(); i1 != vector1.end(); ++i1)
{
if(*i0 != *i1)
{
vector0.erace(i0);
break;
}
}
}
イテレータの使い方の間違いでしょうか。もう少し調べてみます。
893
名前:
デフォルトの名無しさん
:03/06/19 20:41
ちょっと漠然とした質問ですが、おききください。
VC++6.0、SDKで勉強中です。
テキストファイルから1行ずつデータを読み込みたい場合、
1回ReadFileにて一回全データをバッファに読み込んでから、
改行コードでバラバラにする、 という方法でよろしいのでしょうか?
それかもっとスマートな方法はあるのでしょうか?
894
名前:
デフォルトの名無しさん
:03/06/19 20:50
fgetsの使い方から覚えたほうがいいんじゃなかろうか。
895
名前:
デフォルトの名無しさん
:03/06/19 20:53
C++標準クラスのfstream とstringを使ったほうがスマートかもね。
遅くなりそうだけど。
896
名前:
デフォルトの名無しさん
:03/06/19 21:03
さっそくのレスありがとうございます。
正直fgetsが使えるとは思わなかったです。dqnですた!
ではfgetsでいってみます。ありがとでした!
897
名前:
デフォルトの名無しさん
:03/06/19 21:07
質問おながいします。
VC++6.0Proを使っているのですが、UNICODEでコンパイルすると
LINK : fatal error LNK1104: ファイル "mfc42ud.lib" を開けません。
というメッセージが出てコンパイルできません。
なにか考えられる原因はありますでしょうか。
898
名前:
ランランラン
:03/06/19 21:18
たくさんあるので1つづつ書かせて頂きます。
6個とも何を計算するプログラムかを教えてください
@void main()
{
int a,b,x,y,s=0;
scanf("%d",&x),scanf("%d",&y);
for(a=0;a<x;a++) {
for(b=0;b<y;b++)
s+=b;
}
printf("%d\n",s);
}
899
名前:
ランランラン
:03/06/19 21:19
Avoid main()
{
int a,b,x,s=0;
scanf("%d",&x);
for(a=0;a<x;a++) {
for(b=0;b<y;b++)
s+=b;
}
printf("%d\n",s);
}
900
名前:
ランランラン
:03/06/19 21:19
Bvoid main()
{
int a,x,s=0;
scanf("%d",&x);
while (x--) {
s+=x;
}
printf("%d %d\n",x,s);
}
901
名前:
デフォルトの名無しさん
:03/06/19 21:19
>>897
mfc42ud.libをプロジェクトでリンクするように指定する。
902
名前:
ランランラン
:03/06/19 21:20
Cvoid main()
{
int x,y=0;
x=0;
while (y<=200) {
x++;y+=x;
}
printf("%d\n",x);
}
903
名前:
ランランラン
:03/06/19 21:20
Dvoid main()
{
int x,y=0,a;
x=0;
scanf("%d",&a);
while (y<=a) {
x++;y+=x;
}
printf("%d\n",x);
}
904
名前:
ランランラン
:03/06/19 21:21
Evoid main()
{
int x,y=0,a,w;
x=0;
scanf("%d",&a);
while (y<=a) {
x++;
for(w=1;w<=x;w++)
y+=w;
}
printf("%d\n",x);
}
以上です。お手数ですがお願いします
905
名前:
デフォルトの名無しさん
:03/06/19 21:22
>>ランランラン
スレ違い。
906
名前:
デフォルトの名無しさん
:03/06/19 21:24
ちょっと大きめな構造体を定義すると実行するとスタックオーバーフローですっ飛ぶんですが
どうにかなるもんなんでしょうか?
907
名前:
ランランラン
:03/06/19 21:30
すいません!!
間違えました
908
名前:
デフォルトの名無しさん
:03/06/19 21:36
>>906
new でインスタンスつくる
909
名前:
デフォルトの名無しさん
:03/06/19 21:37
ワラタ
910
名前:
デフォルトの名無しさん
:03/06/19 22:21
>>906
「プロジェクト」→「設定」→「リンク」→「アウトプット」でスタックの大きさを変えるとか。
ところで、ちょっと大きめってどれくらい?
911
名前:
デフォルトの名無しさん
:03/06/19 23:39
>>910
10Mくらい。
912
名前:
デフォルトの名無しさん
:03/06/20 19:23
右クリックを禁止するにはどうしたらいいですか?
913
名前:
デフォルトの名無しさん
:03/06/20 21:34
>>912
AfxMessageBox("右クリックをするのはやめてね♥")
914
名前:
デフォルトの名無しさん
:03/06/20 22:05
>>91
右クリックイベントを捕まえて何もせずに返す
915
名前:
デフォルトの名無しさん
:03/06/20 23:21
UINTって型はunsignedなのに何故、文字列やら-1やらを入れて良いんですか??
916
名前:
デフォルトの名無しさん
:03/06/20 23:47
質問なんですが、VC++でコンパイルした後にエラー0、警告0って出るんですが、これはエラーがないよって事なんですか?
917
名前:
デフォルトの名無しさん
:03/06/21 00:06
>915
代入後には既に文字列や-1として扱われてないから。
>916
コンパイルエラーやリンクエラーは見当たらないという事。
バグが無いとは一言も言ってないけど。
918
名前:
デフォルトの名無しさん
:03/06/21 00:08
>>917
ありがとうございました。
919
名前:
デフォルトの名無しさん
:03/06/21 00:13
>>890
プロパティでMFCの設定を変えたらエラーがなくなりました
ありがとうございました
920
名前:
デフォルトの名無しさん
:03/06/21 00:48
>>917
渡された方でなにやら行って正の数値として扱っているという事ですか。
それともある文字もしくは-1が場合によっては特別に正の数値として扱えるのかな?
ん〜便利のためなんだろうけど紛らわしい。
ありがとうございました。
921
名前:
デフォルトの名無しさん
:03/06/21 00:57
>>920
16bitならshort -32767〜32768、unsigned short 0〜65535
-1を渡す言う事はFFFF、shortなら-1、unsigned shortなら65535になる。
922
名前:
デフォルトの名無しさん
:03/06/21 01:40
>920
むしろ逆というか、unsignedでないほうのintなどは
最上位のビットを数値でなく符号として特別に扱っている。
unsignedはそこも数値とみなす。
923
名前:
デフォルトの名無しさん
:03/06/21 10:48
すいません、ものすごいアホな質問なんですが、VC++はどうやって起動するんでしょうか。
インストールして何度か使ってはいたんですが、まちがってプログラムメニューから消されてしまって復帰できません。
Dドライブにインストールしたので多分
D:\Program Files\Microsoft Visual Studio\VC98\Bin以下にあると思ったんですが、
特定できないんです。
VB6なんかはD:\Program Files\Microsoft Visual Studio\VB98にVB6.EXEがあるんでわかりやすいんですが。VC++はそれっぽい名前のファイルがないもので。
片っ端からやればいいんでしょうがそれも怖くて……。
どうかお願いします。
924
名前:
デフォルトの名無しさん
:03/06/21 10:52
>>923
D:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin\MSDEV.EXE
Microsoft Developer Studio
925
名前:
デフォルトの名無しさん
:03/06/21 11:02
>>924
ありがとうございます!!
ちゃんと全部のフォルダをのぞいていれば見つかったのですね。わざわざすいません。
アイコンも同じだし……。
VC98以下にあると思いこんでいたのが良くなかったか。
どうもありがとうございました。
(´-`).。oO(こんな恥ずかしい質問したなんて、一生誰にも言えない……)
926
名前:
デフォルトの名無しさん
:03/06/21 11:09
多分VBだけだ。IDEも言語名のついたフォルダ以下にあるのは。
VJ++もVIDもIDEはCommon以下にある。
927
名前:
デフォルトの名無しさん
:03/06/21 11:44
STLについて質問です
STLのfor_eachにおいてコンテナのメンバ仮想関数はよびだせないのでしょうか?
class cBaseOBJ{
virtual void _Dec(){;}
}
class cOBJ :pulic cBase{
void _Dec(){/* 軟化の処理*/;}
}
std::vector<cOBJ> OBJS;
std::for_each(OBJS.begin(), OBJS.end(),std::mem_fun(&cOBJ::_Dec));
error C2064: 関数ポインタとして評価されない式を使って、関数を呼び出そうとしました。
boost が必要なのかな?
それとも根本的に間違ってますか?
928
名前:
デフォルトの名無しさん
:03/06/21 11:47
訂正
誤 class cOBJ :pulic cBase{
正 class cOBJ :pulic cBaseOBJ{
上ごみが書き込まれてたらごめんなさい
929
名前:
デフォルトの名無しさん
:03/06/21 14:24
どうすれば、ULONGLONG 型や、__int64 の数字を文字で表示できますか?
ULONGLONG ull;
char s1[50];
ull = ( ULONGLONG ) ~0;
wsprint( s1, "%u", ull );
で変換すると、s1 は「4294967295」で、UINT 型の最大値が表示されてしまいます。
デバッグで見ると、ull はちゃんと ULONGLONG 値の最大値が入っている…
どなたか知っている方、お願いいたします。
もちろん sizeof( ULONGLONG ) の値は 8 です。
930
名前:
デフォルトの名無しさん
:03/06/21 14:34
ヘルプでprintf見ようや。
931
名前:
929
:03/06/21 14:56
結局printfじゃ分からなかったんで、_ui64toa使った。
932
名前:
デフォルトの名無しさん
:03/06/21 15:05
まぁ sprintf使って %i64u なんだけどね
933
名前:
929
:03/06/21 15:46
>>932
それだと、-164uと出力されてしまうんですが…俺のやり方が間違っているのか?
934
名前:
デフォルトの名無しさん
:03/06/21 16:30
”LIBCD.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です”
というようなエラーが出てしまいました。これはどうすれば解消されるんでしょうか?
935
名前:
デフォルトの名無しさん
:03/06/21 16:43
まぁ %I64u を %i64u と間違えたわけだけどね
936
名前:
デフォルトの名無しさん
:03/06/21 17:23
>>934
そのまんま、main関数がないってことでしょ。
937
名前:
929
:03/06/21 20:34
>>935
できました。
しかし、なんでwsprintfだと変換されなかったんだろ…
sprintfだと正常に変換できるのに。
MSDNに載ってた%I64は変換できない…
938
名前:
デフォルトの名無しさん
:03/06/21 22:16
>>927
やるんであれば、 vector<cOBJ*> かと。
まぁ、やりたいことは vector<cBaseOBJ*> なんだろうけど。
939
名前:
デフォルトの名無しさん
:03/06/21 23:08
>>937
LPTSTRとか理解してる?
940
名前:
デフォルトの名無しさん
:03/06/21 23:57
スイマセン、文字列の結合ってどうやるんですか?
今日は休みだったので朝から、「猫でもわかる〜」を見ながら
勉強していたんですが、、、
char StrA にchar StrBを追加したいんですが、
strcat(StrA, StrB)とやってもStrAはそのままでした。
「猫でもわかる〜」でも少しかかれていましたが、
いまいち文字列、文字の配列?、ポインタがわかっていないです。
perlだったらStrA . StrBってたったのそれだけのことで丸一日...
教えてください、お願いします。
941
名前:
デフォルトの名無しさん
:03/06/22 00:18
>>940
#include <iostream>
#include <string>
// 関数内で…
using namespace std;
string a = "abc";
string b = "def";
string c = a + b;
cout << c << endl;
942
名前:
929
:03/06/22 00:32
>>939
あまりしてない。つーか、変換自体と関係あるんですか?
>>940
char StrA[10];
char StrB[10];
strcpy( StrA, "AAA" );
strcpy( StrB, "BBB" );
strcat( StrA, StrB );
StrA の内容「AAABBB」になる。
これじゃ駄目?
943
名前:
デフォルトの名無しさん
:03/06/22 00:36
>>940
char StrA にchar StrB
もう満杯でーす
944
名前:
940
:03/06/22 00:45
940です。
皆さん早速ありがとうございます。
>>941
さん
コンパイルしたらエラー 14、警告 3
'using' : 定義されていない識別子です。
なんか根本的に間違ってるんですね。
>>942
さん
やはりその方法も使えるのですね。
使い方が間違っているんですね。
>>943
さん
すみません、ちょっとわからないです。
皆さんありがとうございます。
ヒントを元に調べてみます。
945
名前:
デフォルトの名無しさん
:03/06/22 00:50
>>944
>>943
はchar StrA にchar StrBだと文字型の変数になるから、
一文字しか入れれなくて満杯だといってんじゃねーのか?
946
名前:
デフォルトの名無しさん
:03/06/22 00:56
>>944
拡張子を .c から .cpp に変える。
947
名前:
デフォルトの名無しさん
:03/06/22 01:07
文字列の結合がしたいと言いながら実際にやりたいのは文字の結合ってか
948
名前:
デフォルトの名無しさん
:03/06/22 03:00
はははあっははははっはははhっははははっはh
949
名前:
940
:03/06/22 11:42
どうも皆さんありがとうございます。
拡張子cでした。すいません。
「文字型の変数」ですか。
文字列、文字、配列、ポインタ、あたりで調べてるんですが、
どうもperlで楽しすぎたせいかますます混乱してます。
いろいろありがとうございます。
ヒントも沢山もらったので、
今日は文字の扱いを中心に調べたいと思います。
950
名前:
デフォルトの名無しさん
:03/06/22 12:39
↓次スレよろしこ。
951
名前:
デフォルトの名無しさん
:03/06/22 13:12
↓ ↑
→→→→
952
名前:
デフォルトの名無しさん
:03/06/22 19:04
│次スレよろ。
│ ┌─┐
↓ │ ↓
953
名前:
デフォルトの名無しさん
:03/06/22 19:17
↓
↓ 無理ですた。
↓
954
名前:
◆kom52wwBZ6
:03/06/22 20:04
行ってみる
955
名前:
◆kom52wwBZ6
:03/06/22 20:16
★初心者にVisual C++を教えるスレ★ Part7
http://pc2.2ch.net/test/read.cgi/tech/1056280510/l50
956
名前:
デフォルトの名無しさん
:03/06/22 21:23
そういえばVS6.0をインストールすると、何かアプリが飛ぶとダイアログが出るよね。
"0xXXXXXXXX"の命令が"0xYYYYYYYY"のメモリを参照しました。メモリが"written"になることはできませんでした。
プログラムを終了するには[OK]をクリックしてください
プログラムをデバックするには[キャンセル]をクリックしてください
ってやつ。あれキャンセル押したらVSが起動してそのあとハングアップするんだけど、
何か回避方法は無いかな?
以前はキャンセルを押しても普通に動いたんだけど、
OSを再インストールしたあとから動かなくなったなぁ。
957
名前:
名無し@沢村
:03/06/22 22:59
>>939
ヌヒよ、sprintfのUNICODE板はswprintfだと言う事実を知らないようだな。 (´゚c_,゚` ) プッ
958
名前:
デフォルトの名無しさん
:03/06/23 01:29
wsprintf のUNICODE版は wsprintfW
sprintf のUNICODE版は swprintf
959
名前:
デフォルトの名無しさん
:03/06/23 14:47
すいません。
C++でRound 処理したい場合どうすればいいのでしょうか?
何をインクルードすればいいのかわかりません。
あほな質問ですいません
960
名前:
デフォルトの名無しさん
:03/06/23 15:19
質問おながいします。
プロジェクトをUNICODE版でビルドしようと思い、
プリプロセッサに_UNICODEを追加したのですが、
msvcrtd.lib(crtexew.obj) : error LNK2001: 外部シンボル "_WinMain@16" は未解決です
Debug/Edit.exe : fatal error LNK1120: 外部参照 1 が未解決です。
というメッセージが出てビルドできません。
考えられる問題はありますでしょうか?
961
名前:
デフォルトの名無しさん
:03/06/23 15:22
追加しないでビルドしたらどうなりますか?
962
名前:
デフォルトの名無しさん
:03/06/23 15:23
>>961
_MBCSだと普通にビルドできます。
_MBCSを削除して、_UNICODEを追加すると上記のメッセージが
でます。。。
963
名前:
デフォルトの名無しさん
:03/06/23 15:24
>>msvcrtd.lib(crtexew.obj) : error LNK2001: 外部シンボル "_WinMain@16" は未解決です
これはプロジェクトの選択を間違った時に良く出るが・・・。
コンソールアプリをつくるのにWin32Applicationを選んだ時とか。
964
名前:
963
:03/06/23 15:24
あーじゃちがうね。
965
名前:
960
:03/06/23 15:28
>>963
ありがとうございます。
>これはプロジェクトの選択を間違った時に良く出るが・・・。
ですよね(--);;
エディタのMFCアプリなのですが、ユニコードでテストしてみようと
思ったのですが...
もうちょっといろいろいじくってみますネ。。。
966
名前:
デフォルトの名無しさん
:03/06/23 15:32
継承をはずして_UNICODEを追加してみたけど、何の問題もなくコンパイル完了
967
名前:
960
:03/06/23 15:35
>>966
ですか。。。
僕もいま単純なMFCアプリ(FrameWndを表示するだけ)で
やってみたのですが、やはり同じエラーが出ます。
なんでだろう。。。
968
名前:
デフォルトの名無しさん
:03/06/23 15:54
そういえばMFCを使っているのなら、MFC*U.*系のdllなりlibなりを使わないとエラーが出るけど
969
名前:
960
:03/06/23 15:57
>>968
U系のLibは自分でプロジェクト設定のリンクタブで指定
しないとダメでしょうか?(一応mfc42ud.libと書いてみたのですが
やはりダメでした)
970
名前:
960
:03/06/23 16:21
なんどもしみません。訳がわからないのですが
解決しました。
UNICODEで動いている他のプロジェクトで、プロジェクト
の設定のリンクタブのアウトプットのエントリポイント
シンボルに"wWinMainCRTStartup"と書いてあったので
それをマネしたら動きました。
レスを下さった方ありがとうございました。m(__)m
971
名前:
デフォルトの名無しさん
:03/06/23 16:53
VCでつくられたプロジェクトで、それがDLLなのか
exeなのかといったプロジェクトの属性を知るには
どうすればいいのでしょうか?
972
名前:
デフォルトの名無しさん
:03/06/23 17:01
どの場面で知りたいの?
973
名前:
デフォルトの名無しさん
:03/06/23 17:05
プロジェクト作成のときに、DLLかWinアプリかの指定
がありますが、それを知りたいです。
dswファイルを開いた時点で知りたいのですが...
974
名前:
デフォルトの名無しさん
:03/06/23 17:13
VS.NETならプロジェクトプロパティから構成の種類で分かるけど、
古いのは手元にないので何ともいえない
975
名前:
971
:03/06/23 17:24
>>974
ほんとですね。VS.NETだと「構成の種類」として
出ていますね。
VS6.0だと出ていません。
976
名前:
デフォルトの名無しさん
:03/06/23 19:33
質問させて!
memsetで変数に文字列を入れてMessageBoxで表示させると、
hogehogehoge・・・・
と、末尾に ・・・・ というのが入ってしまいます。
これを取り除くにはどうすればよいのでしょうか?
977
名前:
976
:03/06/23 19:35
しくった、memsetではなく、 memcpy で変数から変数へコピーしてます。
978
名前:
デフォルトの名無しさん
:03/06/23 20:07
>>977
strcpyを使え!
でなければmemsetで変数を初期化しろ!
979
名前:
デフォルトの名無しさん
:03/06/23 20:18
スマソ!事故解決!
\0 の入れかた間違ってた!
ほんとスマソ!ソマソ!
980
名前:
デフォルトの名無しさん
:03/06/23 21:08
tomasson
981
名前:
デフォルトの名無しさん
:03/06/23 22:04
int型の配列をまとめてある数値に初期化する関数はありますか?
982
名前:
デフォルトの名無しさん
:03/06/23 22:15
>>981
FillMemoryが使えるかも
983
名前:
デフォルトの名無しさん
:03/06/24 00:45
コモンダイアログを開くと、実行は問題ないのですが、デバッグのログに
例外処理 (初回) は test.exe (KERNEL32.DLL) にあります: 0x000006B5: (名前がありません)。
と出てくるのですが、何か問題あるのでしょうか。
OPENFILENAME構造体の
.lStructSize .hwndOwner .hInstance .nFilterIndex .lpstrFile .nMaxFile .lpstrFilter .lpstrTitle
.Flags .lpstrDefExt
には値を入れています。
984
名前:
デフォルトの名無しさん
:03/06/24 21:50
>>982
サンクス!!
985
名前:
デフォルトの名無しさん
:03/06/24 22:14
>>983
ちょっとちがうかもしれないけど、
IEコンポーネントを貼り付けてリサイズすると鬼のように例外が発生していますが動作には問題ないです。
内部的に処理済みの例外かと。
986
名前:
デフォルトの名無しさん
:03/06/25 18:15
指定したフォルダ内のサブディレクトリ名とファイル名を表示したいと思い
Directory.GetFileSystemEntriesを使おうと思ったのですが
インクルードの下に
#using <mscorlib.dll>
といれると
fatal error C1190: マネージ対象コードには '#using <mscorlib.dll>' と '/clr' が必要です。
というエラーが出てしまいます解決策がありましたらよろしくお願いします
#include "stdafx.h"
#include <afx.h>
#include <windows.h>
#using <mscorlib.dll>
//using namespace System;
int _tmain(int argc, _TCHAR* argv[])
{
・・・・・
}
987
名前:
986
:03/06/25 22:10
プロジェクトのプロパティで拡張マネージを変更したら解決しました
スマソ
988
名前:
デフォルトの名無しさん
:03/06/25 22:20
おばんです。
おせてくそ。
スタティックライブラリでできる*.libファイルと
dllプロジェクトでできる*.libファイルは、前者は
実装入りで、後者は実装なし(実装はDLL本体内)と
いう解釈でいいのでしょうか?
またなぜリンカはdllを直接参照せずにlibファイルを
必要とするのでしょうか?
989
名前:
初心者
:03/06/25 22:52
/* 文字列に代入された数値データをint型に変換する */
#include <stdlib.h>
#include <stdio.h>
int main()
{
char *text = "352";
int integer = atoi(text);
printf( "integer = %d\n" , integer );
return 0;
}
char *text = "352"; なぜ*がいるんですか?
990
名前:
デフォルトの名無しさん
:03/06/25 23:06
>>989
壮大にスレ違い。Cスレ池。
991
名前:
デフォルトの名無しさん
:03/06/25 23:11
>988
DLLには序列でしか公開していないものもある。
992
名前:
988
:03/06/25 23:39
>>991
なるほど。すべてのdllが自身がエクスポートしている
関数の名前を見せてくれるワケではないんですネ。
どもどもでした。。。
993
名前:
デフォルトの名無しさん
:03/06/26 00:17
VCがいつのまにか上書きモードになって
しまうのですが(ミスタッチで)
いい方法はないでつか?
994
名前:
デフォルトの名無しさん
:03/06/26 00:19
Insertキーをぶっ壊せ
995
名前:
デフォルトの名無しさん
:03/06/26 00:33
■■■かわいそうな「ゲーム君」を2ちゃんの力でトップにしよう!■■■
HSPプログラムコンテスト2003オンライン投票
http://www.onionsoft.net/hsp/contest2003/entryn1.html
HSPプログラムコンテスト2003に一番乗りで出展したものの
Windowsに標準でついてくるゲームを手軽に起動できるという(というかただのショートカットつめあわせ)
しょーもないプログラムでたたかれまくっているプログラミング暦3年(!)の高校生の
作品、ゲーム君をみんなの力で一位にしよう。
【【【 投票方法 】】】
http://www.onionsoft.net/hsp/contest2003/entryn1.html
の一番下、エントリーNo8の「ゲーム君」
評価を「A」で選んでコメントを記入して「送信」(コメントいれるとなおよし)
http://www.onionsoft.net/hsp/contest2003/eval/eval.cgi?md=cmt&id=8
でいままで送信されたコメントが見えるよ!(けっこう笑える)
996
名前:
デフォルトの名無しさん
:03/06/26 00:37
このスレってBorland C++ Builderもいい?
997
名前:
デフォルトの名無しさん
:03/06/26 01:14
「この」スレだけならいい。
次スレは不可(w
998
名前:
デフォルトの名無しさん
:03/06/26 01:17
>>993
キーカスタマイズ汁
999
名前:
デフォルトの名無しさん
:03/06/26 01:18
, --- 、_
/ミミミヾヾヽ、_
∠ヾヾヾヾヾヾjj┴彡ニヽ
/ , -ー‐'"´´´ ヾ.三ヽ
,' / ヾ三ヽ
j | / }ミ i
| | / /ミ !
} | r、 l ゙iミ __」
|]ムヽ、_ __∠二、__,ィ|/ ィ }
|  ̄`ミl==r'´ / |lぅ lj
「!ヽ、_____j ヽ、_ -' レ'r'/
`! j ヽ j_ノ
', ヽァ_ '┘ ,i
ヽ ___'...__ i ハ__
ヽ ゙二二 ` ,' // 八
ヽ /'´ / ヽ
|ヽ、__, '´ / / \
1000は君にやろう、アンダーソン君...
1000
名前:
デフォルトの名無しさん
:03/06/26 01:18
1000 GET〜!
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.