★初心者にVisual C++ ..
75:デフォルトの名無しさん
07/04/26 09:30:00
>>73
C++例外でないアクセス違反を、C++の構文で捕捉できた事が異常。
76:デフォルトの名無しさん
07/04/26 17:52:57
>74
>でも自分の担当じゃないDLLの細部まで調べないと云々は納得いかんな。
他人に直させるにしても、問題が本当に相手のソースにあるのかまではつきとめないと
やっぱり自分のミスでしたって事になった場合、人間関係に亀裂が入り易いからなぁ。
(はっきり指摘してやって逆ギレするのもいるが、そういうのは置いといて^^;)
少ない修正で済むような問題なら、教えてやった方が結果的にロスタイムも少ないしな。
77:デフォルトの名無しさん
07/04/26 18:43:19
なぜfopen()が失敗するのか
78:デフォルトの名無しさん
07/04/26 19:02:47
>>76
別に細部まで調べなくても
渡すデータがDLLの仕様どおりで、呼び出し部以外でコケてなけりゃどう考えてもDLLの問題だし
79:デフォルトの名無しさん
07/04/26 19:10:47
下手に全部調べてからDLL担当者に「バグってますよ」というより、
「巧くいかなくて困っているんで、DLL側で助けてもらえませんか」と下手に出たほうが
協力を得やすく労力も減るかもしれない。
80:デフォルトの名無しさん
07/04/26 19:27:43
もしそのDLLが普通に使われてるんなら
仮にバグがあったとしても今まで問題にならなかったということだ。
81:デフォルトの名無しさん
07/04/26 19:47:25
とある事情によりDLL自体に手を入れ難い状況ということは今まで何事もなく使われてたんだろ
82:デフォルトの名無しさん
07/04/26 21:40:04
まあ、ファイル名を引数等で指定して処理させるような形だったら
一度呼び出し側でfopen()して開けなきゃDLLの関数は呼ばなきゃいいんじゃね?
2度手間になるから、もちろんいじれるならDLLいじった方がいいが。
83:デフォルトの名無しさん
07/04/27 08:03:55
VC++ .NET 2003のオプションで指定するインクルードファイルとかのパスって
どこに保存されてるの?
84:デフォルトの名無しさん
07/04/27 11:32:52
デフォルトの設定 レジストリ
プロジェクトの設定 プロジェクトの定義ファイル
85:デフォルトの名無しさん
07/04/27 19:15:31
レジストリ内の場所ってわかる?
レジストリエディタで目的のパスで検索かけてもHitしないんだけどさ・・・
ちなみにオプションのVC++ディレクトで設定する、インクルードファイルとか実行可能ファイルとか指定するとこなんですが
86:デフォルトの名無しさん
07/05/06 14:30:15
VC++2005なんですが
自作のクラスにメンバを追加したり、STLなどの既存のクラスを読み込んだりしたときに
かなりの頻度で、プロジェクトを閉じて開いたり、VSを再起動したりしないと
:: や . や -> などを入力した後の一覧に追加したメンバが表示されないのですが
再起動などせずに解決する方法は無いのでしょうか
87:デフォルトの名無しさん
07/05/06 20:29:25
MSに要望出せ
88:デフォルトの名無しさん
07/05/08 20:40:19
なぜかある場所でメンバ関数呼び出すと
thisポインタを使わないとメンバ変数が使えなくて
thisで指定しないでその変数に行くとランタイムエラーだされるんですが
これはメモリの領域破壊のバグのひとつでしょうか?
89:デフォルトの名無しさん
07/05/08 21:05:01
ある場所をはっきりさせてから質問してください
90:デフォルトの名無しさん
07/05/08 21:09:54
ランタイムエラーが出るんならランタイムに行ってんだろ
91:デフォルトの名無しさん
07/05/08 21:14:06
ランタイムの使い方がおかしいんだろうね。
その辺りのコード晒してみ?
92:デフォルトの名無しさん
07/05/09 15:54:38
スレ違いでしたらすみません。
質問があります。
ホームページビルダーを久しぶりに起動したら、
次のようなエラーメッセージが出て、起動できなくなりました。
何か解決方法はありますでしょうか?よろしくお願いします。
環境はOSがXP、HBはV9です。
-----------------------------------------------------
Microsoft Visual C++ Runtime Library
Assertion failed!
Program: ... Files\IBM Homepage Builder V9\bin\hpbpage.exe
File: .\RegistryBase.cpp
Line: 81
Expression: code == ERROR_SUCCESS
-----------------------------------------------------
93:デフォルトの名無しさん
07/05/09 16:19:41
ホームページビルダー作った会社に訊け
94:デフォルトの名無しさん
07/05/09 18:57:27
>>92
ここは「Microsoft Visual C++を使う人」のためのスレです
Microsoft Visual C++を「使って作られたソフトを使う人」はお帰りください
95:デフォルトの名無しさん
07/05/09 21:27:25
ウェブ上に公開されているサンプル プロジェクトをビルドすると、次のエラーが出て失敗します。
環境はWinXP、VC++2005です。
> error C2678: 二項演算子 '<' : 型 'const ErrorEntry' の左オペランドを扱う演算子が見つかりません (または変換できません) (新しい動作; ヘルプを参照)。
> c:\program files\microsoft visual studio 8\vc\include\xutility 267
試したサンプルはWinsock Programmer's FAQのAsynchronous I/O Clientです
URLリンク(www.kt.rim.or.jp)
(ページの下のほうの「project package (33 KB)」からダウンロード)
ファイルはVC++5のプロジェクトが丸ごと圧縮されており必要なものは全てそろっているそうです。
VC++2005でプロジェクトを変換して開いたのですが、上記のようになりました。
エラーの場所が場所なのでコンパイラに渡すオプションあたりをいじる必要があるのでしょうか?
ご教示お願いします。
96:デフォルトの名無しさん
07/05/09 21:40:31
全然関係ないけど
P.J. Plaugerが自ら語るVS2005搭載C++テンプレートライブラリ
STL.NET
97:デフォルトの名無しさん
07/05/09 23:36:26
従来のSTLの機能の大半は.NET Frameworkクラスで事足りるのにSTL.NETとはこれいかに
98:デフォルトの名無しさん
07/05/09 23:39:31
>>97
まぁ読んでみれ
URLリンク(www.microsoft.com)
99:デフォルトの名無しさん
07/05/10 20:00:32
なんでこう、バージョンアップするごとにIntelliSenseがバカになってくいんだ・・・
100:デフォルトの名無しさん
07/05/10 20:03:28
新しいものに慣れるのがつらい年頃なのかね。
101:デフォルトの名無しさん
07/05/10 20:19:52
そうか、いくらファイルを保存してもインテリの情報が更新されないのが新しいものなのかw
102:デフォルトの名無しさん
07/05/11 00:49:58
>>99
IMEも98ぐらいの時が一番賢かった気がする。
103:デフォルトの名無しさん
07/05/11 00:55:58
それはない
104:デフォルトの名無しさん
07/05/11 08:08:03
ATOK使おうぜ
105:デフォルトの名無しさん
07/05/11 17:06:10
いやVCのインテリは付いたときから馬鹿だろ
それだけがVBの取り柄
106:デフォルトの名無しさん
07/05/11 19:29:34
>>104
そのあたりは無理に標準でついてるもの以外を使う必要が無いからなぁ
107:デフォルトの名無しさん
07/05/11 23:10:48
Japanist2003
108:デフォルトの名無しさん
07/05/14 17:47:08
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPTSTR lpCmdLine,int nCmdShow){
MessageBox(NULL,lpCmdLine,"1",MB_OK);
if (lpCmdLine=="/abc"){
MessageBox(NULL,lpCmdLine,"2",MB_OK);}
return 0;}
これで実行ファイルを1.exeとしますと、1 /abcとコマンドラインから実行しても
2つ目のメッセージボックスが出ないんですが何故でしょうか?VS2005,WinXPです。
109:デフォルトの名無しさん
07/05/14 18:22:15
何それ?
110:デフォルトの名無しさん
07/05/14 19:04:09
>>108
文字列の比較方法を調べなさい
111:デフォルトの名無しさん
07/05/14 19:15:58
できました、ありがとうございました。
112:デフォルトの名無しさん
07/05/14 20:03:30
_tWinMain
113:デフォルトの名無しさん
07/05/18 22:31:06
他のC++用IDEにある、IntelliSense同等の機能の方が、圧倒的に性能いいの?
114:デフォルトの名無しさん
07/05/19 02:34:02
他は知らんが
個人的には VS2003 のインテリセンスの具合が好き
2005 はインテリセンスに限らず全体的使えないと思う
115:デフォルトの名無しさん
07/05/19 09:18:05
あー俺も。2003から離れられない。
116:デフォルトの名無しさん
07/05/19 09:57:05
pimplイディオムを使うとインテリセンスも利かなくなるんだけど
これって意図された動作なのかただの偶然なのか?
117:デフォルトの名無しさん
07/05/19 12:09:55
昔VC6.0で作ったプログラムをVC2005に移植したいんですが、
そのままだとビルド出来ませんでした。
プロジェクト自体は変換とか出来たんですが、StdAfx.hでインクルードされてた
Windows ヘッダー ファイル群(windows.hとか)が、No such file or directoryでエラーになります。
かといってこれを外したらコンパイル通らないし・・。
1から組むのは大変なんで、何とか使い回せないかと思うのですが、
何かいい方法ありますでしょうか。
118:デフォルトの名無しさん
07/05/19 12:12:36
Express EditionでPlatform SDKをインストールしてないとか、
パス通してないとかってオチはないよな?
119:デフォルトの名無しさん
07/05/19 12:16:38
No such file or directoryぐらいの簡単な英語なら理解できるだろ
120:デフォルトの名無しさん
07/05/19 12:23:22
>>117
おいおい初心者の俺でも分かるぜ。
121:117
07/05/19 14:01:08
117です。
すみません、仰るとおり、SDKをインストールしていませんでした。。。
インストールしたらインクルードは解決しました。
今度はコンパイルエラーとwarningがいっぱい出てきましたが
ワーニングは無視してコンパイルエラーを修正。
(コンパイルエラーは for(int i=0) の i を for以降で使ってました)
次に「ファイル 'LIBC.lib' を開くことができません」が出ましたが、これはググッて解決。
(プロジェクトのプロパティで特定ライブラリの無視にLIBC.lib追加。)
現在、このエラーと格闘中です。
「zlib.lib(gzio.obj) : error LNK2019: 未解決の外部シンボル _errno が関数 _gz_open で参照されました。」
122:デフォルトの名無しさん
07/05/19 14:21:28
VCのインテリセンスは昔からウンコ
123:デフォルトの名無しさん
07/05/19 14:27:05
errno は VC2005 だとマクロになってた気がするよ。
余計な warning が鬱陶しければ #pragma warning(disable:警告番号) で消した方が。
124:デフォルトの名無しさん
07/05/19 14:27:29
こんどはzlibの追加だネ!
125:デフォルトの名無しさん
07/05/19 15:24:53
VC2005についてるSTLとSTLportでは何が違うの?
126:117
07/05/19 15:37:14
117です。
zlib.libを作り直そうと思って調べてるんですが、
VC2005でStatic Libraryは作れないんでしょうか?
2005、全部1から作るには楽なんだろうけど、ちょっと違うコトしようとしようとすると途端に・・
127:デフォルトの名無しさん
07/05/19 15:43:35
初心者の俺でも作れるし
128:デフォルトの名無しさん
07/05/19 17:31:04
VC6使ってたんなら初心者というわけじゃないだろうし
自分で調べてみるぐらいしようよ
ちょっとでも調べてたらそういう質問はないと思う
129:デフォルトの名無しさん
07/05/19 20:10:17
ダイアログの大きさがフォントの大きさによって変わってしまうのですが、
常に設計時の大きさになるようにする設定ってありますか?
130:デフォルトの名無しさん
07/05/19 20:12:03
あ、実行時にフォント変えてもダイアログの大きさは変わらないのかな?
↑は無視してください。
131:デフォルトの名無しさん
07/05/19 20:28:46
VC++.NETとVC++とは違うものなのでしょうか?
132:デフォルトの名無しさん
07/05/19 20:34:45
.NET使わないなら単なるVC7、VC8
133:デフォルトの名無しさん
07/05/19 20:55:23
>VC2005についてるSTL
そもそもそんなものは無い
134:デフォルトの名無しさん
07/05/19 20:55:34
クグって見たんですが.NET Framework?MFC見たいな物?
VC++ .NET?って?
.NET Framework?って?
VC++6.0で知識が止まってますorz
135:デフォルトの名無しさん
07/05/19 21:10:09
VistaマシンでVC6.0は使用できないのでしょうか。
(「VMWare等で旧OS(XPや2k)入れて使え」と言うのは取り合えず置いておいて)
インストール試してみようと思いsetup.exe実行
→「このプログラムには基地の互換性の問題があります。」
と表示されたところでいったん止めてWeb漁ってるのですが、なかなか有効な解放が得られず。。。
136:デフォルトの名無しさん
07/05/19 21:33:02
>>134
JavaのVMに相当
137:デフォルトの名無しさん
07/05/19 21:40:23
VC++.NETという表現は使われなくなりました。
138:デフォルトの名無しさん
07/05/19 21:52:02
>>135
MS的にはサポート外です。
139:117
07/05/19 22:08:00
117です。
何とか解決しました。
ググってはいたんですが、VS2005の用語が全然分からなくて、とっかかりがなかったです。
ソリューションて何?とかいう浦島太郎状態で。
5年前に自作したツールの、数字を決め打ちしてた部分を1カ所直したいだけだったんですが
結局ビルド通すのに丸一日かかりました。
で、通ったら今度はデータが読めない・・・。
fwrite(this,sizeof(Cdata),1,fp);
ってやってクラス丸ごとバイナリで保存しておいたデータを
fread(this,sizeof(Cdata),1,fp);
で読み込んでるんですが、読み込んだデータが化けてるっぽい。
この辺の仕様も変わっちゃってるのかなぁ・・・
140:デフォルトの名無しさん
07/05/19 22:16:11
ひとりごと
141:117
07/05/19 22:25:25
昔に保存したデータをあきらめて、データ作り直したら行けるっぽいです。めんどいけど。
長々チラ裏に付き合ってもらってありがとうございました。
142:デフォルトの名無しさん
07/05/19 22:45:48
考えられる原因はこんなとこか?
バイナリモード指定していない
アラインメントの指定がおかしい
データ型の大きさが変わった (ex time_t)
143:デフォルトの名無しさん
07/05/19 22:46:43
インスタンスのメモリイメージをそのままをバイナリ保存って無謀すぎ。
普通はシリアライズ用関数とか用意するもんだ。
144:デフォルトの名無しさん
07/05/19 22:47:52
あと、文字列がANSIだったとか。
145:デフォルトの名無しさん
07/05/19 22:57:12
手抜きなんだからしょうがない
146:デフォルトの名無しさん
07/05/19 23:04:21
>>117
vtable の事もたまには思い出してあげてくださいね。
147:デフォルトの名無しさん
07/05/20 06:42:57
どうせ ANSI 文字列をユニコードで表示しようとしてるんだろう。
148:デフォルトの名無しさん
07/05/20 17:31:22
旧バージョンのVisual C++4.0で「コンソールプログラムを作成する」
というような使用条件であれば、十分に活用できますか?
(主にRS232CをWin32APIから使用するのが目的です)
また、当時NT4.0との組み合わせで不具合(多分使用できない機能?)
があるとかの話を耳にしたような記憶があります。
WinXPおよびWin2000での動作はどうでしょうか?
バージョンからして、既に現状に沿った話でなくて恐縮ですが、ご教示下さい。
149:デフォルトの名無しさん
07/05/20 17:37:58
そこまでしてVC4を使う理由が判らない。
つーか、Win32APIからRS232Cを使うというのが何を意味しているのか判らない。
単にシリアル伝送したいだけならmodeコマンドで条件設定してcopyコマンドでもtypeコマンドでもできるだろうに。
150:デフォルトの名無しさん
07/05/20 17:40:38
XP+VC5を使ってる人は知ってるけど、
VC4はわからないなぁ。
151:デフォルトの名無しさん
07/05/20 17:42:38
昔のプログラムでも動くのは動くし、動かないのは動かない
適当なの探してきて動かしてみればいい
152:デフォルトの名無しさん
07/05/20 18:48:47
include の path 指定の書式について質問です。
stdafx.h
#include <../creptopp/sha.h>
と記述してこれをコンパイルすると、
--------------------------------------------------------------------------------
コンパイルしています...
debug.cpp
c:\test\Anonymous\stdafx.h(126) : fatal error C1083:
include ファイルを開けません。'../../creptopp/sha.h': No such file or directory
--------------------------------------------------------------------------------
ファイルの階層は下のようになっています。
test
- creptopp/
- Anonymous/stdafx.h
#include <sha.h>
#include <../creptopp/sha.h>
#include <../../creptopp/sha.h>
と試してみたのですが、うまくいきませんでした orz
どうぞよろしくお願い致します。m(__)m
153:152(追記)
07/05/20 18:53:27
* Crypto++ Library 5.4
URLリンク(www.cryptopp.com)
cryptopp/sha.h
cryptopp/sha.cpp
展開するとみたいになっていました。これを利用したいです。
154:デフォルトの名無しさん
07/05/20 18:54:15
#include <file-name>
使うならちゃんとpath通しとけよ
155:デフォルトの名無しさん
07/05/20 18:59:35
>>152
相対パスの元は、stdafx.h の場所ではなく
コンパイルしている cpp の置かれた場所なんじゃね?
156:デフォルトの名無しさん
07/05/20 19:13:50
解凍してそのまんまビルド
ライブラリができたらヘッダとlibを適当な場所へ置いて使うだけ
157:デフォルトの名無しさん
07/05/21 21:29:58
C++で普通に関数にするのとクラスのメンバ関数にするのとではとちらが遅いのでしょ?
158:デフォルトの名無しさん
07/05/21 21:38:42
一概には言えない。コンパイラの最適化で、実質的な差が出ない可能性も高い。
速度に関しては、個別に実測する以外は全てただの憶測。
159:デフォルトの名無しさん
07/05/21 22:33:48
オーバーヘットとかは無いの?
160:デフォルトの名無しさん
07/05/21 22:40:45
非仮想関数ならthisを積む程度の差しかないだろうなあ
まぁそんなこと考えるのは時間の無駄だから、コードの見易さ・美しさを考える方がいいよ
161:デフォルトの名無しさん
07/05/22 00:00:15
>オーバーヘットとかは無いの
なんですか? その「オーバーヘット」って。
162:デフォルトの名無しさん
07/05/22 00:06:05
夏塩蹴
163:デフォルトの名無しさん
07/05/22 00:54:16
まあ韓国の文化は冷麺のどんぐり麺?あれだけは評価できるね
164:デフォルトの名無しさん
07/05/22 01:07:28
VC++2005アカデミック日本語版で質問です
「warning C4996: 'scanf' が古い形式として宣言されました。」
scanf()を使うと2005から上記の警告が出ることはググって分かったのですが
当方の警告文は全て英語のままで上記の一文が出てきません
↓これだけ
'This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
日本語の警告文の説明を表示させたいのですがどこを設定すればいいのでしょうか?
よろしくお願いします
165:デフォルトの名無しさん
07/05/22 07:41:21
C4996でググればいい。
というより、MSDNライブラリインストールしろ
166:デフォルトの名無しさん
07/05/22 07:58:06
役に立たねぇ香具師だなぁ。警告を日本語にしたいって書いてんだろ。
C4996だけの問題じゃねぇんだよ。判ってねぇなら書くなよ。
167:デフォルトの名無しさん
07/05/22 08:11:29
すいませんした。俺が悪いんです。この通りです。許してください。読み違えただけなんです。怒らないでください。日本語にするやり方分かります。でも教えないです。ごめんなさい。
168:デフォルトの名無しさん
07/05/22 08:13:17
どんな警告・エラーもCxxxxの番号が振られているんだから、
C4996以外もその番号でググればいい。
169:デフォルトの名無しさん
07/05/22 09:58:06
わざわざ英語で出るように自分で設定変えたくせに
元に戻す方法は人に聞くのってどういう了見なんだ?
170:デフォルトの名無しさん
07/05/22 11:00:13
C4996でググったらみんな日本語で警告が出るのに
俺の環境じゃ英語しか出ねえよ
て解釈した
英語にアレルギーがあるかしらんがこの機会に慣れたら?
171:デフォルトの名無しさん
07/05/22 11:32:05
VC++2005日本語版に付属のコンパイラとは別に英語版のコンパイラも入れたの?
172:デフォルトの名無しさん
07/05/22 11:33:59
特に何もしてない
173:デフォルトの名無しさん
07/05/22 11:37:29
何もしないで変わるかっつーの
174:デフォルトの名無しさん
07/05/22 13:00:30
MSのサポートに訊けばいい
175:デフォルトの名無しさん
07/05/22 17:58:17
MSマンセー
176:デフォルトの名無しさん
07/05/22 18:24:09
誰かがVC++2005EEでも入れて混ざってんじゃないのかね
177:デフォルトの名無しさん
07/05/22 21:31:25
VS2005無印にSP1当てたら俺も英語だけになったぞ
でもたいして問題じゃねえしMSDNライブラリあれば心配ねえよ
178:デフォルトの名無しさん
07/05/22 23:27:34
それは、英語版のSP1を入れてしまったのでは?
179:デフォルトの名無しさん
07/05/23 09:56:28
(´,_ゝ`)プッ ソンナオチダッタノカ
180:デフォルトの名無しさん
07/05/23 11:14:52
んなわけない
181:デフォルトの名無しさん
07/05/23 11:24:41
そうだな。
本人は「特に何もしてない」と言ってるんだからSP1だってあててるわけが無い
182:デフォルトの名無しさん
07/05/23 11:31:01
痴呆か。
183:デフォルトの名無しさん
07/05/23 11:31:36
俺もSP1当てたからかしらんが英語だよ
その程度の日本語の説明なら要らんけど
あと、うちはProfessionalだな
184:デフォルトの名無しさん
07/05/23 11:38:23
SP1入れてない。
MicrosoftUpdateで時々入れようとしてるんだけど毎回失敗する。
185:デフォルトの名無しさん
07/05/23 14:17:33
俺も前失敗続いてたけど最近あらためてやったら成功したな
何が原因だったんだろ
186:デフォルトの名無しさん
07/05/23 14:43:17
ちょっとツンだっただけさ
187:デフォルトの名無しさん
07/05/23 17:18:31
SP1を当てたが別に英語になっていないぞ
188:デフォルトの名無しさん
07/05/24 10:37:27
MFCで×ボタンを押してアプリケーションを終了するとき
どこになんと言う名前でその処理が書かれているか教えてください
終了するときに処理を付け加えたいのでお願いします
189:デフォルトの名無しさん
07/05/24 10:54:40
WM_CLOSEのハンドラを追加
190:デフォルトの名無しさん
07/05/24 10:58:08
SC_CLOSE → WM_CLOSE → WM_DESTROY
の順じゃないかな。それぞれのデフォルトハンドラで
MFCだと、OnSysCommand() からクローズ投げて
OnClose() が呼ばれ、そこでDestroyWindow()して OnDestroy()が呼ばれる。
もしかしたら違うかも。spy++やデバッガで確認してみて
191:デフォルトの名無しさん
07/05/24 11:00:22
処理内容によっちゃExitInstanceでという選択肢も
192:デフォルトの名無しさん
07/05/24 11:16:42
ありがとうございます処理内容はダイアログを表示させて
パスワード入力とOKボタンを押し終了させるものです
パスワードが違っているかキャンセルボタンを押した場合終了しません
という処理をしようと思っています
193:デフォルトの名無しさん
07/05/24 11:47:00
クラックしてやんよ
194:デフォルトの名無しさん
07/05/24 11:47:19
連レスすいません
ハンドラの追加でON_WM_CLOSE()を追加したんですが
対応する関数に反応ありませんでした
195:デフォルトの名無しさん
07/05/24 11:54:15
×ボタンってダイアログの話なの?
何がどうなってるのかよくわからん、反応が無いとは何で判断?
196:デフォルトの名無しさん
07/05/24 11:57:31
>>195
フォームビューによるダイアログです
プロパティのメッセージから追加しました
ブレークポイントをつけて通っているか判断しました
197:デフォルトの名無しさん
07/05/24 11:58:45
URLリンク(www.kumei.ne.jp)
↑簡単に言うとこういうことをMFCでやりたいのです
198:デフォルトの名無しさん
07/05/24 11:59:40
んーと、WM_CLOSEが来るのはその閉じるウィンドウにくるんだよ。
こないのはおかしいね。spy++で観察してみては。
199:デフォルトの名無しさん
07/05/24 12:14:47
spy++でみてみるとWM_CLOSEはちゃんとありました
200:デフォルトの名無しさん
07/05/24 12:17:58
エスケープキーでダイアログが閉じないようにするので、そのへんやったことあるけど
ダイアログベースじゃない場合は、どのクラスがメッセージを処理してるかだな
201:デフォルトの名無しさん
07/05/24 12:25:40
sdi/MDIでeditビューの場合は編集中にプログラム閉じようとすると
保存しますか?
みたいな確認でたような気がするけどどうだったかな?
202:デフォルトの名無しさん
07/05/24 12:27:28
観察した結果は
WM_DESTROY→WM_NCDESTROY→WM_CLOSE→WM_SYSCOMMAND
でした
203:デフォルトの名無しさん
07/05/24 12:45:28
CMainFrame::OnCloseにちゃんと来るじゃん
そのあと閉じていいか確認が出る
204:デフォルトの名無しさん
07/05/24 13:13:44
閉じていいか確認が出ないのですが
CMainFrame::OnCloseをオーバーライドして使えばいいということですか?
そこも通らないような・・・
205:デフォルトの名無しさん
07/05/24 13:15:33
あとWM_DESTROYは反応ありましたがウィンドウが閉じたあとでした
206:デフォルトの名無しさん
07/05/24 13:24:39
sdi/MDIでeditビューが基本
最初からそういう風に動作するようになってる
207:デフォルトの名無しさん
07/05/24 13:37:57
>>205
まあいろいろ試してあちこちにハンドラ置きまくってみればいろいろわかることもある。
208:デフォルトの名無しさん
07/05/24 13:40:25
通りました!!CMainFrame::OnCloseでした!!
ありがとうございます!
209:デフォルトの名無しさん
07/05/24 16:34:45
自作ダイアログ表示させようとしたら
自分でつけたコントロールのほかに
TODO: コントロールをここに置く のテキストボックスと
OKとキャンセルボタンがついてごっちゃになってました
Jisakudlg dlg(this);
dlg.DoModal();
なぜなのか教えてください
210:デフォルトの名無しさん
07/05/24 16:47:48
>>209
ダイアログの選択したパーツを整列するボタン押したんじゃないの?
211:デフォルトの名無しさん
07/05/24 16:52:44
すいませんよくわからないですけどhtmlが入ってたみたいで
作り直したらいけました
212:デフォルトの名無しさん
07/05/24 22:34:23
可変個引数の簡単な使い方(できれば、va_arg,va_end,va_startを使わない)を教えてください。
やりたいことは、下記のようにprintf系の関数に引数をそのまま渡したいのです。
void printfWithHeader(char *str, ...) {
char buf[1000] = "Header:";
strcat(buf,str);
printf(char *str, ...);
}
環境は、Visual Studio 2003です。
皆様、お願いいたします。
213:デフォルトの名無しさん
07/05/24 22:53:23
VCというか普通のCの質問だろ
そんなことをわざわざVCスレで質問する意味がわからん
214:デフォルトの名無しさん
07/05/24 22:57:12
できません
規約も護れないやつぁ帰れ
215:デフォルトの名無しさん
07/05/24 23:00:07
vprintf 系を使えよ・・・。
216:デフォルトの名無しさん
07/05/25 00:06:50
Visual Studio.net2003を使っているのですが、
UTF-8のソースを扱うにはどうすればいいのでしょうか。
コンパイルはできるのですが、日本語の表示ができません。
217:デフォルトの名無しさん
07/05/25 00:24:02
>>215
thx.
vprintf系でできそうです。
>>213
> VCというか普通のCの質問だろ
> そんなことをわざわざVCスレで質問する意味がわからん
レスありがとうございます。
VCの拡張機能も含めて、回答を頂きたかったからです。
老婆心ながら、>>213さんは行間をうまく読めないようですので、コミュニケーション能力を鍛えた方がよろしいかと思いました。
218:デフォルトの名無しさん
07/05/25 00:27:25
質問等で、行間を読んでくれる事に期待するってのは、
一般社会ではコミュニケーション能力不足と判定されます。
219:217
07/05/25 00:29:21
確かにその通りですね... (-_-;)
220:デフォルトの名無しさん
07/05/25 00:34:52
>>216
先にShift_Jisに変換してからコンパイル、が一番楽。
.NETベースのコンパイラは、文字列=Unicodeで保持、と決め打ちできるんだけどねえ。
221:デフォルトの名無しさん
07/05/25 00:51:21
Windows は UTF-16 で動いてるけど、
.NET を通す場合だとどうなんだろう。
よく知らん。
222:デフォルトの名無しさん
07/05/25 01:03:25
>217
人が多いスレで質問した方が適切な回答が得られやすい
ここはVC限定でしかも初心者限定だから人が少ない
223:デフォルトの名無しさん
07/05/25 04:26:27
いやこんな質問初心者レベルだろ
224:デフォルトの名無しさん
07/05/25 07:09:43
>>216
VS2003にもVBとか色々あるが、ここで質問するからにはVC++2003でいいんだな?
225:デフォルトの名無しさん
07/05/25 09:14:21
仕様書の行間なんぞ読まれたらと思うと・・・
226:デフォルトの名無しさん
07/05/25 11:24:20
>>217 は技術者としては失格だろ
技術者が設計図の行間とか読んだら、ものは出来上がらない
行間読むくらいなら、設計を詳細まで確認するのが正しい
227:デフォルトの名無しさん
07/05/25 12:26:21
VC2002を初めて使っているのですが、DllプロジェクトとMainのプロジェクトがあり
DLL側のヘッダをincludeし、定義しているクラスをメインのexeで使いたいのですが
宣言はできるのですがビルドすると 未解決の外部シンボル と怒られます。
どうしたらよいのでしょうか。
228:デフォルトの名無しさん
07/05/25 12:54:27
複数のプロジェクトをいっしょに扱うのが難しかったら
DLLを先にビルドしてしまえば、DLLで配布されてるライブラリなんかと同様に扱える
229:デフォルトの名無しさん
07/05/25 13:29:18
即レスありがとうございます。
実はcppUnitを使用したいと思いまして、現在のプロジェクトをそのままに
新規でテスト用のプロジェクトから該当のクラスにアクセスしたいと考えておりました。
おっしゃられるように入出力だけのテストなら、dll呼び出せばできそうです。
ありがとうございます。
230:デフォルトの名無しさん
07/05/27 07:54:30
フリーでVisualC++用のリファクタリングアドインある?
231:230
07/05/27 08:29:21
自己解決
URLリンク(www.devexpress.com)
232:デフォルトの名無しさん
07/05/28 12:20:46
VisualC++6.0でCDialogについて質問です。
1つのプロジェクトに複数のダイアログ画面でがあり、
各画面で同じ処理を行うメンバ変数・関数が存在します。
これをまとめるため、CDialogから派生したCCustomDialogを作成し、
各画面の基底クラスに使用することを考えました。
通常のC++クラスであれば、上記のことが可能であるとわかりますが、
CDialogクラスでも可能でしょうか?
(Windowsのイベントとかメッセージとかが、正常に処理されるのか心配しています。)
233:デフォルトの名無しさん
07/05/28 12:32:20
>>232
CDialogを派生して各ダイアログクラスを作るように、CCustomDialogを派生すればいい。
CCustomDialogの作成には幾つかMFC特有のおまじないが必要だから、どっかでサンプルを探すのがいいね。
234:232
07/05/28 19:36:24
>>233
レスありがとうございます。
参考にさせていただきます。
235:デフォルトの名無しさん
07/05/29 20:40:37
メッセージループとか使わないプログラムで、
キーボードの入力を待たないでキーボードの入力を取得するにはどうすればよいのでしょう?
(押されてなかったらNULLかなんかで抜けてくれる関数等)
236:デフォルトの名無しさん
07/05/29 20:54:06
GetAsyncKeyState
237:デフォルトの名無しさん
07/05/29 22:26:24
>>236
これで出来ました。どうもありがとう。
238:デフォルトの名無しさん
07/05/30 13:17:56
VisualC++2005,XPで開発してます。
ダイアログボックスに画像とその説明のテキストのリストを載せたいのですが、
どのコントロールを使えば最適でしょうか?
239:デフォルトの名無しさん
07/05/30 13:19:49
さあ
240:デフォルトの名無しさん
07/05/30 13:43:28
>>238
ケースバイケース
241:デフォルトの名無しさん
07/05/30 14:26:19
ありがとうございます。
適当にやります。
242:デフォルトの名無しさん
07/05/30 15:29:04
使わないのが最適
243:デフォルトの名無しさん
07/05/30 16:01:43
初めまして、VisualC++2005のC++/CLI でフォームのすべてのイベントに反応させたいのですが、
そのようなイベントが見つかりません。
そのようなデリゲートはないのでしょうか?
244:デフォルトの名無しさん
07/05/30 16:33:18
メソッドだけどWndProcは?
245:デフォルトの名無しさん
07/05/30 16:58:28
HideCaret(static_cast<HWND>(this->textBox1->Handle.ToPointer()));
で、キャレットを非表示にすることまでは分かったのですが、常に非表示にするにはすべてのテキストのイベントで実行させなければなりません。
もっと効率よくキャレットを非表示にする方法はないものでしょうか?
246:デフォルトの名無しさん
07/05/30 16:59:47
またお前か
247:デフォルトの名無しさん
07/05/30 17:11:25
ご無沙汰しております。
248:デフォルトの名無しさん
07/05/30 17:27:57
ないだろ
どうせ普通はそんなこと誰もやらないし
249:デフォルトの名無しさん
07/05/30 17:29:32
サブクラス化してしまえ
250:デフォルトの名無しさん
07/05/30 17:31:36
テキストつかわなきゃいい
251:デフォルトの名無しさん
07/05/30 17:34:25
ウインドウズの電卓はテキストBOX使ってない
252:デフォルトの名無しさん
07/05/30 17:51:14
キャレットに用意されているマウスカーソルイメージを弄れば。
253:デフォルトの名無しさん
07/05/30 17:57:34
ShowCaret使わないなら同じこと
254:デフォルトの名無しさん
07/05/30 20:20:18
テキストボックスコントロールを自作すれば?
255:デフォルトの名無しさん
07/05/31 00:22:57
タイマーで監視しとけ。
256:デフォルトの名無しさん
07/05/31 02:19:05
>>255
プログラマーとしてそんな行為が許されると思っているのですか?
257:62
07/05/31 06:44:08
目的:Windows アプリケーションを選択して
(現状選択できない)ビルド、実行したい!コンソールアプリケーションは選択可!
>>62 VC++2005EE VISTA Microsoft Platform SDK をインストールは
自分でぐぐったり、繰り返しやったことでなんか組み込むことができたようです!^^
原因はおそらくVC++2005EEを起動したままインストール作業を
したからだと思います!(たぶん!)原因がこんなことだったとは・・・><;
Windowsゲームを作るように Windowsアプリケーションで
キャラクターを表示させたい。必要と思ったためDirectX SDKもインストールしました!^^
DirectX Sample Brawserも見れす。Microsoft .NET Framework Version 2.0もOK!
参考サイト
URLリンク(freepg.fc2web.com)
URLリンク(www.plustarnet.com)
URLリンク(www5b.biglobe.ne.jp)
時間ばかりかかり、どうか・・・みなさまのお力を><;
258:デフォルトの名無しさん
07/05/31 06:48:26
>>257
何だ何だすごく読みづらいぞ
259:デフォルトの名無しさん
07/05/31 06:51:19
もうDestroyCaretで殺しチャイナYO
260:デフォルトの名無しさん
07/05/31 06:51:41
>>257
再インスコ
261:257
07/05/31 07:14:02
>>258
読みやすくしたつもりですが・・・長文過ぎたか ><;
>>260
一応何回かやっています。どなたぞ宜しく願い^^
もう少し待ってつつ頑張ります。 ><;
262:デフォルトの名無しさん
07/05/31 07:21:26
いや長文じゃないし日本語じゃない
263:257
07/05/31 07:23:08
>>262
すません><;
264:デフォルトの名無しさん
07/05/31 09:46:34
何がやりたくて、何をしたけど現状どうなってるのか
265:デフォルトの名無しさん
07/05/31 10:01:25
>すません><;
言葉を注意されてすぐにもこんな事書くのか。
266:デフォルトの名無しさん
07/05/31 10:14:00
><;
267:デフォルトの名無しさん
07/05/31 11:32:31
><;><;><;><;><;><;
268:257
07/05/31 11:43:11
>>263
>何がやりたくて
Windowsアプリケーションで Windowsのゲームを作りたい!
よってWin32アプリケーションの生成と実行をしたい!
>何をした
VC++2005EE、Microsoft Platform SDK をインストールした
DirectX SDK、Microsoft .NET Framework Version 2.0 もインストールした
主にインストール設定以下の3つを参考にした
URLリンク(freepg.fc2web.com)
URLリンク(www.plustarnet.com)
URLリンク(www5b.biglobe.ne.jp)
>現状どうなっているのか
URLリンク(www5b.biglobe.ne.jp)
のWindows アプリケーションのビルドのアプリケーションの設定の
アプリケーション種類でWindowsアプリケーションが選択できない
(コンソールアプリケーションのみ選択できる)
なのでWin32アプリケーションの生成と実行ができない
------------------------------------------------------
他にインストールや設定が必要なのでしょうか?前向きな意見を^^
OSはVISTAです。コンソールアプリケーションは作成できます
分かりにくかったらごめんなさい <(_ _)>
269:デフォルトの名無しさん
07/05/31 11:46:04
バカじゃねぇのw
そんな簡単な所で躓いてんのかよwww
既出も既出大既出
270:デフォルトの名無しさん
07/05/31 11:49:13
>>268
やっぱり、「現状どうなっているのか」は大事だね。
それで正常だよ。Win32アプリケーションを作りたかったら
もうちょっとこことか、他のサイトでも調べてごらん。
271:デフォルトの名無しさん
07/05/31 11:50:42
>>268
もっと具体的に何をしたか書いてみ。
例えば、AppSettings.htmはどう修正したとか。
272:デフォルトの名無しさん
07/05/31 11:57:03
で、コンソールアプリケーションを作成はしてみたのかな。
コンソールアプリケーション作成時に、ウィザードの選択肢はチェックしたのかな。
273:257
07/05/31 15:55:17
>>269 どうもです^^
>>270>>271
>それで正常だよ >例えば、AppSettings.htmはどう修正したとか。
この意見は大きかったです <(_ _)> その辺を意識して再調査しました
>>272
コンソールアプリケーションも動かしてみます
意見を聞いて調べ実行した結果。種類でWindowsアプリケーションが選択できました(^_^)ノ
Googleキーワード 「Windows アプリケーション AppSettings.htm corewin_express.vsprops」
URLリンク(forums.microsoft.com)
を発見!それまでは秀丸で編集して反映されてOKと思っていたのですが・・・(AppSettings.htm)
メモ帳で開く反映されていない!え〜><;・・・ならばメモ帳で編集すればOKかと思ったのですが
反映されませんでした><;なんで〜T_T;意味分かりません><;・・・サイトの通りに
管理者権限でやるとうまくいきました・・・勉強します orz
多くのレス有難うございました。又何かありましたら宜しく願います。<(_ _)>
274:デフォルトの名無しさん
07/05/31 16:01:10
>>273
ExpressEditionはしばらくしたら爆発するから気を付けろ
275:デフォルトの名無しさん
07/05/31 18:23:49
現在のプロジェクトのフォルダを一発で開くような便利な技はありませんか?
276:デフォルトの名無しさん
07/05/31 18:39:13
ツール(T)->オプション(O)->環境->スタートアップ->スタートアップ時(P):
を、最後に読み込んだソリューションにする
277:デフォルトの名無しさん
07/05/31 18:39:18
開くって何で開くのさ
278:デフォルトの名無しさん
07/05/31 18:42:25
フォルダなら2発目ぐらいで開ける
279:デフォルトの名無しさん
07/05/31 18:42:56
愛で開くのさ
280:デフォルトの名無しさん
07/05/31 18:48:41
開く押したら開くけど
281:デフォルトの名無しさん
07/05/31 18:57:35
フォルダを開くって言ったらエクスプローラーで開くことなんだけど
282:デフォルトの名無しさん
07/05/31 18:59:08
>>275
ファイルを開くダイアログで十分操作はできると思うぜ。
283:デフォルトの名無しさん
07/05/31 19:08:16
〃〃∩ _, ,_
⊂⌒( `Д´) エクスプローラーじゃなきゃヤダ
`ヽ_つ ⊂ノ ヤダ
ジタバタ
284:デフォルトの名無しさん
07/05/31 19:09:51
それくらい自分で作れやカス
285:デフォルトの名無しさん
07/05/31 19:12:09
馬鹿には無理だけど、ダイアログからエクスプローラは1発で開ける
286:デフォルトの名無しさん
07/05/31 19:22:53
ΩΩ <な、なんだってー!!
287:275
07/05/31 19:40:50
ふっ・・・できたぜ・・・世話んなったな。アバヨ!!!!!!!!
288:デフォルトの名無しさん
07/05/31 23:07:50
___ 見えませ〜ん
‖ | ∨
‖現実 ∧_∧ .ヘ∧
‖ \ ( ・∀・) (゚A●)
|| ̄ ̄⊂ ) ( と)
凵 し`J U U
___ 読めませ〜ん
‖ | ∨
‖空気 ∧_∧ .ヘ∧
‖ \ ( ・∀・) (゚A●)
|| ̄ ̄⊂ ) ( と)
凵 し`J U U
___ 知りませ〜ん
‖ | ∨
‖常識 ∧_∧ .ヘ∧
‖ \ ( ・∀・) (゚A●)
|| ̄ ̄⊂ ) ( と)
凵 し`J U U
___ ありませ〜ん
‖ | ∨
‖未来 ∧_∧ .ヘ∧
‖ \ ( ・∀・) (゚A●)
|| ̄ ̄⊂ ) ( と)
凵 し`J U U
289:デフォルトの名無しさん
07/06/02 02:13:55
WisdomSoftのWinAPI講座のメッセージボックスのページ、「文字列フォーマット」に倣って
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance , HINSTANCE hPrevInstance ,
PSTR lpCmdLine , int nCmdShow ) {
CHAR chStr[128];
wsprintf(chStr , "インスタンスハンドル : %d" , hInstance);
MessageBox(NULL , chStr , TEXT("Kitty on your lap") , MB_OK);
return 0;
}
とやっているのですが、UNICODEでコンパイルしようとすると(勿論マルチバイトではコンパイルできます)
error C2664: 'wsprintfW' : 1 番目の引数を 'CHAR [128]' から 'LPWSTR' に変換できません。(新しい機能 ; ヘルプを参照)
指示された型は関連がありません。変換には reinterpret_cast、C スタイル キャストまたは関数スタイルのキャストが必要です。
error C2664: 'MessageBoxW' : 2 番目の引数を 'CHAR [128]' から 'LPCWSTR' に変換できません。(新しい機能 ; ヘルプを参照)
指示された型は関連がありません。変換には reinterpret_cast、C スタイル キャストまたは関数スタイルのキャストが必要です。
と型変換のエラーではねられます。
CHARをTCHARにしてみたり、とりあえず無闇にキャストしてみたりしたのですが、上手く行きません。
wsprintfをUNICODEでコンパイル通すにはどうしたら良いのでしょうか。
290:デフォルトの名無しさん
07/06/02 02:32:38
#include <windows.h>
#include <tchar.h>
int WINAPI _tWinMain(HINSTANCE hInstance , HINSTANCE hPrevInstance ,
LPTSTR lpCmdLine , int nCmdShow ) {
TCHAR chStr[128];
wsprintf(chStr , _T("インスタンスハンドル : %d") , hInstance);
MessageBox(NULL , chStr , _T("Kitty on your lap") , MB_OK);
return 0;
}
291:289
07/06/02 21:19:53
>>290
あふ。wsprintfでもTEXTマクロ噛ませないといけなかったのですね。
情けなや……
どうもありがとうございました。
292:デフォルトの名無しさん
07/06/03 17:20:11
winnt.h内で
#define VOID void
typedef char CHAR;
typedef short SHORT;
typedef long LONG;
やら、
windef.hで
typedef int INT;
やら定義されていますが、これら大文字の型を用いる時(或いは用いることが望ましいとされている時)
はどのようなときでしょうか。
或いは過去or未来との互換性の為に存在するのでしょうか。
また、もしMSDNに参考となるドキュメントがあれば、それもお教え下さい。
293:デフォルトの名無しさん
07/06/03 17:25:36
apiの仕様にあわせやすい
将来仕様変更あってもいい
294:デフォルトの名無しさん
07/06/03 18:40:41
>>292
> 或いは過去or未来との互換性の為に存在するのでしょうか。
じゃねーか。
295:292
07/06/04 00:58:10
>>293-294
解答ありがとうございます。
Win32App的には大文字で記述した方が将来的に互換性が維持されることが期待される、ということでしょうか。
サンプル漁ってもVOIDはたまに見かけますが、INTとかは今のところ見つけられていないので、現実にはほとんど利用されていない、のかな。
296:デフォルトの名無しさん
07/06/04 01:09:12
>>295
> 大文字で記述した方が
というわけではなく。
たとえばintのビット数が現在のコンパイラと違うものがあった場合(実際あるよ)、
直接INTを使うよりもtypedef されたものを使っていた方が移植が簡単。
typedefのところ1箇所を変えればいいのだから。
てなとこじゃないかと・・・・
297:296
07/06/04 01:09:58
間違えた 「直接int」 ね。
298:デフォルトの名無しさん
07/06/04 02:03:08
あ、なるほど。訂正ありがとうございます。
コンパイラ側の設定(と呼んでいいのかな)としてintのビット数を将来的に変更しやすいようにしているわけですね。
どうもありがとうございました。
299:デフォルトの名無しさん
07/06/04 07:28:27
すいません質問があるんですが、ゲーム中に
visual c++ runtime library
runtime error
abnormal prpgram tarmination
っていうエラーが起こってしまいましてゲームが進まないのですが、どのように対処したらよいでしょうか?
ちなみにXPです
300:デフォルトの名無しさん
07/06/04 07:44:58
凵@ ○ ∇ 、,、´`゙;~、 ';冫 ☆
┏ ━ゝヽ''人∧━∧从━〆A!゚━┓。
╋┓“〓┃ < ゝ\',冫。’ 、 ._〃Ν ; ゛△│´' 'ゝ'┃... ●┃
┃┃_.━┛ヤ ━━━,/\.\━━━━━ .━┛
∇ //\\.\ 火、ヽ,,"∧.: .┨'゚,。
.。冫▽ < // \\.\ 十 乙 ≧ ▽
。 ┃ . Σ、\. \\|, 、\'’│ て く
┠ .ム┼\\. /// ,,’.┼ ァΖ.┨ ミo'’`
。、゚`。、 i/\,\// レ' o。了 、'’ × 个o
○ ┃ `、,~´+√ ▽ ',!ヽ.◇ o┃
┗〆━┷ Z,.' /┷━''o ヾo┷+\━┛,゛;
301:デフォルトの名無しさん
07/06/04 07:55:31
>>299
作ったやつに文句言う。
302:デフォルトの名無しさん
07/06/04 08:05:41
>>299
OSがC++でできてるの知ってる?
そのエラーはね爆発予告なんだよ。
だから>>300の言うように今すぐPC投げ捨ててぶっ壊さないとダメなんだよ。
地球を滅ぼしたくないならね。
303:デフォルトの名無しさん
07/06/04 08:16:57
ウイルス
304:デフォルトの名無しさん
07/06/04 08:55:47
そのゲームをキミが作ったんじゃなけりゃ
そのゲームのスレかPC初心者あたりのスレで
305:デフォルトの名無しさん
07/06/06 13:02:24
環境 WindowsXP
VisualStudio2005 VC++
文字セット UNICODE
目的 読み出したテキストと同じ内容を表示
//TCHAR szStrは外部のメモ帳で作成したテキストファイルから読み出し
//内容=>test.txt "テスト1234テスト"
int Len;
TCHAR buf[1024*64];
Len = MultiByteToWideChar(CP_ACP,0,(LPCSTR)szStr,-1,buf,0);
MultiByteToWideChar(CP_ACP,0,(LPCSTR)szStr,-1,buf,Len);
//違うのは当たり前だけど、いい方法が解らない
buf[(Len-1)/2] = '\0';
//Lenは27
//出力すると=>"テスト1234テストフフフ"
目的通りに元の文字列を表示させるにはどうしたらいいでしょうか?
306:305
07/06/06 13:42:57
試行錯誤してたら出来ましたが、これで問題無いんでしょうか?
int buflen;
TCHAR buf[1024*64];
int len = _tcslen(szStr);
buflen = MultiByteToWideChar(CP_ACP,0,(LPCSTR)szStr,-1,buf,0);
MultiByteToWideChar(CP_ACP,0,(LPCSTR)szStr,-1,buf,buflen);
buf[buflen-len-1] = '\0';
307:デフォルトの名無しさん
07/06/06 14:20:44
>>306
何がしたいのかわからん。
MultiByteToWideChar の戻り値をよく考えろ。
バッファサイズに0を指定した場合、ヌル終端も含めたバイと数が返ってこないか?
わざわざ '\0' を入れてるのは何で
308:デフォルトの名無しさん
07/06/06 14:22:11
バイト数じゃないや、文字数ね
309:デフォルトの名無しさん
07/06/06 15:52:43
>>305
test.txtの文字コードが定まっているのなら、
szStrはTCHARではなく、CHARやWCHARあるいはその他の大きさが変化しない型にすべき
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4778日前に更新/109 KB
担当:undef