★初心者にVisual C++を教えるスレ★ Part5
■ このスレッドは過去ログ倉庫に格納されています
0001987
NGNGVisual C++ 初心者用スレッドです。
前スレ・関連スレは、>>2 ぐらい。
0794787
NGNG0795デフォルトの名無しさん
NGNG試してないからわからんが、
LButtonDownでGetCapture()して、キャプチャー中はWM_MOUSE_MOVEメッセージを
破棄というのはどうだろう?
0796デフォルトの名無しさん
NGNG0798デフォルトの名無しさん
NGNG.netは持ってないから勘で答えてみるけど、
__gc
ってやつを使う場合、コンパイルオプションに/clr を指定しないと
いけないみたいだけど、やってる?
参考
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vccore/html/vcrefEECOMCompilation.asp
0799デフォルトの名無しさん
NGNG.NET2003からだけど問題なくコンパイルできた
0800763.782
NGNG1.プロジェクトの [プロパティ ページ] ダイアログ ボックスを開く。
2.[構成プロパティ] フォルダをクリック。
3.[全般] プロパティ ページをクリック。
4.[マネージ拡張] プロパティを変更。
というMSDNに書いていた手順で変更すればよいのでしょうか?
だとしたら私のVisualC++.NETでは4番の[マネージ拡張]プロパティというのが出てこないのですが・・・
>>799
コンパイルできましたか・・・ご報告ありがとうございました。
0801デフォルトの名無しさん
NGNG0802デフォルトの名無しさん
NGNGまあ、勘なのでそんなもん。
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vcmex/html/vcgrfmanagedcprojecttypes.asp
の「Managed C++ アプリケーション」というやつでプロジェクトを作っとかないと4.が出ないとか?
でも2003で問題ないということは、関係ないかも。
0803763.782
NGNG問題が発生しているのは、まさにその「Managed C++アプリケーション」っていうやつで作っているプロジェクトなんですけど4.は出てこないです。
0804デフォルトの名無しさん
NGNGゲームってのはVBでもそうだけど基本的にイベントドリブンじゃなくて、
メインループを作ってその中をぐるぐる回すパターンが多い。
メインループとかいじるとMFCの意味無いじゃん。
だから必然的にSDKでやっちゃう。てかゲーム作成サイトなんてみんなそうでしょ。
まあ、最初MFCで作ってみるといいよ。みんなMFCで最初作ってあれこれ悩んで
SDKに移ったクチが多いと思うから。
こことかゲームの基本的な作り方の参考になると思うよ。
http://www.edit.ne.jp/~skyfox/axis/
上記HPの[AXIS ROOM] の [AXISゲーム製作入門(シューティング編)] てとこ。
今、ライブラリはDLできないけど、読めばなんとなくわかると思うです。
0805デフォルトの名無しさん
NGNGとりあえずC1102をMSDNで調べてみたら?
クラスというのがanimalクラスを指すのか、別のものを指すのか分からん。
0807デフォルトの名無しさん
NGNG板違い
0808
NGNG0809名無し@沢村
NGNGSetWindowPos()
0810
NGNG0811デフォルトの名無しさん
NGNG付属のMSDN Libraryで調べた?
0812デフォルトの名無しさん
NGNGよろしこおながいします。m(__)m
自作のcppとhファイルをコンパイルして、いくつかのプロジェクトで
使いまわしたいのですが、プロジェクトでヘッダだけインクルードしても
「実装がない」といってビルドできません。(cppをファイルに追加すれば
もちろんいけるのですが...)
MFCとかはヘッダだけのインクルードでいいのになんで自作のだと
ダメなのでしょうか?
0813デフォルトの名無しさん
NGNG多分、リンカでバイナリのファイルを指定してやらないと
ダメなんでしょうけど、詳しくは他の方に。(w
MFCの場合はその辺が自動的に設定されていると思われ。
0814デフォルトの名無しさん
NGNGVC側から見ると、MFCは実装がどこにあるかわかってるけど、
君が作ったものはどこにあるかわからないから。
0815812
NGNGレスありがとうございます。
納得できました^^
またよろしくおながいします。。。
0816763
NGNGこれで明日から安心してVC++を学べます。けっきょく詳しい原因はわかりませんでした。
板の皆様、問題解決にご協力いただき本当にありがとうございました。
いつか皆さんのように他人に教えられるくらいになってきます。
それでは失礼しました。ではでは・・・
0817新入社員@インターフェイス開発
NGNGいきなり仕事を渡されて〜〜 わかんないからCと同じようにズラズラとmainに文を書こうとしたら、main()がないでやんの。
VC++の場合はどこから読めばいいんですか?
先輩に質問したら「一応、最初に読むインスタンスはあるけど、オブジェクト指向がわかってたら別にmainから関数を読まなくても、モジュールを読めばいいだけ」
見たいに言われたんですけど、オブジェクト指向ではモジュールを読んだらmain()に何かの値を返さなくてもいいんですか?
モジュールからモジュールを読んでたら、いつ、どうやって終了するんだ? 見たいな疑問があるんですけど・・・・
0818デフォルトの名無しさん
NGNGWindowsプログラミングの場合は、WinMain() がエントリになります。
でもVC++の場合は、プロジェクトによっては WinMain もインクルード
ファイルの中に隠されてしまってるかも。
0819デフォルトの名無しさん
NGNG*crtexe.c - Initialization for client EXE using CRT DLL (Win32, Dosx32)
*
* Copyright (c) 1991-1997, Microsoft Corporation. All rights reserved.
*
*Purpose:
* Set up call to client's main() or WinMain().
*
*******************************************************************************/
0820デフォルトの名無しさん
NGNG・Win32コンソールアプリケーションならmain()スタートであなたの
やってたのでできると思います。
・Win32アプリケーションだとコンソールアプリとコードはかなり違うのも
多いのですが、Cに近い感覚で文字を表示したり計算したりできます。
http://www.kumei.ne.jp/c_lang/index_sdk.htmlの5章ぐらいまでを
勉強するとすぐにつかめると思います。
・MFCAppWizardが先輩の言ってたものかな?僕は挫折しました。
http://pc2.2ch.net/test/read.cgi/tech/1047949606/l50
ココはそのスレです。
システム系ならコンソールアプリ、その他なら、理系が得意ならウインアプリ
文系が得意ならMFCにするとか。
0821デフォルトの名無しさん
NGNGドッキングツールバーのつまみのとこが白くてかっちょ悪いんですけど
なんかちがう感じにできないですか?
0823デフォルトの名無しさん
NGNGエラー1 警告0 などはでるんですが。
他のスレで親切な方に再インストしてみと言われたのでしてみたのですが、
JINT35.DLL、VBAR332.DLL、MSXBSE35.DLLというファイルが開くことができませんでしたとでました。
無視するとそのままインストールできるんですが、最後にシンボルファイルをセットアップするようにとでてきます。
それをセットアップしないとデバッカは呼び出し関数のコンテキストを決定できませんと・・。
セットアップするアイコンをクリックしてセットアップしようと思ったんですが
このマシン上の対応するdllファイルとマッチしませんとでて、
最後にすべてのシンボルファイルはシステム上へ正しくインストールされませんとでます・・。
これはエラーメッセージがでないのに関係あるんでしょうか。
向こうのスレではスレ違いだったのでこっちにきました。
分かる方いましたら教えてくださいお願いします。
0824デフォルトの名無しさん
NGNGとりあえずOSとVCのバージョンを教えてください。
0825デフォルトの名無しさん
NGNGVC6以前で「新規作成」→「Win32 Dynamic-Link Library」→「シンボルをエクスポートするDLL」と
なっているものは.NETではどうやればよろしいのでしょうか?
「新規作成」→「MFC DLL」とは思うのですが、その後の
「DLLの種類」でどれを選べばよいのかがわかりません。
アドバイスよろしくお願いします。
0826デフォルトの名無しさん
NGNGOSはXP
VCのバージョンは6.0です。
0827デフォルトの名無しさん
NGNGあるポインタに構造体を連続して連結コピーする方法を教えてください
std::vector<stScreen4_1> _stScreen4_1;
LPDIRECT3DVERTEXBUFFER8 pVB;
void* pVertices;
if( FAILED( pVB->Lock( 0, sizeof(stScreen4_1)*_Ten, (BYTE**)&pVertices, 0 ) ) ) return E_FAIL;
//イメージとしてはこんな感じの事がしたいのですがコンパイルできません(´Д`)
for (i=0;i<_Ten;i++){
memcpy( pVertices+sizeof(stScreen4_1)*i ) ,&_stScreen4_1.at(i) ,sizeof(stScreen4_1) );
}
stScreen4_1 は構造体宣言されています。
こうすると void*が型宣言されていないとでます。
かといってvoid* pVertices;を stScreen4_1* pVertices 代えると危険な香りがします。
なぜなら構造体の要素数が増えたり減ったいするからです。(大丈夫なのかなぁ?)
分かる方、アドバイスお願いします。
0828デフォルトの名無しさん
NGNGまずなによりも、もうちょっと自分のやった手順と結果をきちんと
整理して説明できるようになった方がいい。
本題については済まないがよく分からない。
実はadministrator権限のないユーザーでやってるとか、
WindowsXP Home Editionだったとか…?
>>827
コンパイラがやってることとは違うかもしれないけどこんな感じかな?
pVertices + sizeof(stScreen4_1)*i ) という式だと、
pVertices に (voidのサイズ(!) × sizeof(stScreen4_1)*i ) )を足そうとするが、
voidのサイズなんてものは無いので困る、と。
BYTE* pVertices;
にしてみたらどうだろう?
0829デフォルトの名無しさん
NGNG先生! ありがとう!うまくいきました。
1時間はまってました 感謝感激です。
0830新入社員@インターフェイス開発
NGNGそのサイトを見るたびに俺は猫以下なのかって鬱になるんですけど。
0831デフォルトの名無しさん
NGNG猫未満
0832デフォルトの名無しさん
NGNG1500以上のポイントのポリゴンを印刷するコードを書きました。
この処理は動的DLL内で行っています。
しかし無茶苦茶遅いのです。約7秒も掛かる。
試しに静的DLL内で行ってみると処理に1秒も掛からない。
因みにデバッガで
Polygon(hdc, ppoint, npoint);
関数のみ計測したのです。
こんなもんなのでしょうか?
なんか特別なお呪いが必要なのでしょうか??
0833デフォルトの名無しさん
NGNG0834デフォルトの名無しさん
NGNGあぅ、、、
以下の意味と捉えてください。
静的DLL=MFC 拡張 DLL
動的DLL=MFC と動的にリンクするレギュラー DLL
お願いします。
0835デフォルトの名無しさん
NGNG0836デフォルトの名無しさん
NGNG静的DLLをMFC拡張DLLに読み直してください。
0837デフォルトの名無しさん
NGNGのラッパクラスCWioを使って組んでるんですが、
いまいち使い方がわかりません…
公開メソッドにおいて
m_wio.ReadPort(BYTE &,Word);
との記述があり、まんま呼び出して使おうとしてるのですが、、
BYTE &←この&はいったいどういった意味なのでしょうか?
BYTE byte;
m_wio.ReadPort(byte,0x2b);
といった記述で実行してるんですが、とりあえずエラーは吐かないんですが、
肝心の実行結果が思い通りに出ません…
WIN上で直接I/O叩くのはあまり行儀よくないらしいですが、
もしよろしければ教えてください…
0838デフォルトの名無しさん
NGNG横に分割はできるんですが縦に分割ができません。
縦に分割する方法はありますか?
ディスプレイが横長のノートPC使ってるんで縦に分割できるとありがたいんです。
0839デフォルトの名無しさん
NGNGバージョンとかも書いてないからよくわからんが、
マニュアルみればいいんとちゃうん?
それとも割れ厨ですか?
0840838
NGNGパッケージについてくるわけないじゃないですか。
ツールバーのウィンドウに、横分割しかないので縦分割はできないのかな、と思ったんです。
バージョンはVS.NET アカデミックです。
これは書いてなかった私の落ち度です、すいません。
0841デフォルトの名無しさん
NGNG参照。
0842838
NGNGおさわがせしますた。
0843デフォルトの名無しさん
NGNGそれとも6.0ですか?
これから言語を買おうと思うのですが、6.0は発売終了で手に入らなくて.netしか売ってない・・・。
どうしよう。
.netだけで勉強しても差し支えないですか?
0844デフォルトの名無しさん
NGNG当たり前に身に付いているはずのことを
いまさら勉強しなければならない時点で、
人生をやり直した方が良さそうだが
0845デフォルトの名無しさん
NGNGこれからプログラムを勉強するのです。
職場ではどうなってるのでしょうか。
6.0は近いうち.NETに取って代わられそうでしょうか。
0846デフォルトの名無しさん
NGNG言語の勉強以前に、製品を正しく比較できると思ったら大間違い。
0847デフォルトの名無しさん
NGNG.netだけで勉強して、6.0が使われてる職場で対応できるのでしょうか。
0848デフォルトの名無しさん
NGNG両方使ってる。
6.0が欲しけりゃVS2003 with MSDNを買ってMSDNで6.0を落とせ。
>>845
職場による
>>847
知らん
0849デフォルトの名無しさん
NGNG.netと6.0が両方使われている職場を考慮したまえ。
0850デフォルトの名無しさん
NGNGアホか?
0851デフォルトの名無しさん
NGNG6.0+MCの機能≒.NET
ですか?
0852デフォルトの名無しさん
NGNG次のプログラムに進むことはできますか?
たとえば、円周率を求めてる途中でボタンを押したら、そこまで求めた
値を使って円の面積を求めるとかです。
0853デフォルトの名無しさん
NGNG0854デフォルトの名無しさん
NGNGマルチスレッドを使うとかそういうのじゃねーの?
0855デフォルトの名無しさん
NGNG自身のプロセスの場合はwinmain関数の引数にあるhInstanceが
プロセスのハンドルになるんでしょうか?
0856デフォルトの名無しさん
NGNGint型をLPCTSTR型に変換は
a.Format("%d",〜);
でできますが、その逆の
LPCTSTR型をint型に変換
はどうやるんでしょうか?
自分で関数作るしかないですか?
0857デフォルトの名無しさん
NGNG0858デフォルトの名無しさん
NGNG0860デフォルトの名無しさん
NGNG現在VC++.NETを使って勉強しています。
ですが、参考書などは.NET以前(VC++5〜6)のものが多く、例題通りにできないこともしばしばです。
それで質問なのですが、.NETは6以前のものをすべて含んでいると考えてもよろしいのでしょうか?
.NETになってから一気にプロジェクトの作り方などが変わっているので疑問に思いました。
一応6も持っているので6以前の参考書では6を使った方がイイ、などとかはありますか?
.NETと6以前は別物と考えた方がいいのでしょうか。
0861デフォルトの名無しさん
NGNG6は何の為に持ってたの?割れ物?
0862デフォルトの名無しさん
NGNGどっちも割ってんだろ。
0863デフォルトの名無しさん
NGNGMS好きなら.NET使えばいいじゃん。
勉強で.NET持っていてわざわざVer6つか必要もないと思うが。
0864デフォルトの名無しさん
NGNG色を指定することはできないのでしょうか・
今のところ黒でしか表現できなくて・・
SelectObject関数を使うのでしょうか
0865デフォルトの名無しさん
NGNG文字はSetTextColor、背景はSetBkColor。
0866デフォルトの名無しさん
NGNGそれくらい調べろやヴォケが!
0867860
NGNGありがとうございます。
860で書いた通り、ちょっと例題通りにいかなかったりで勉強がしにくかったので、
ver6を使った方が効率いいのか、などと思ったもので。
今後のためにも.NETで慣れて行こうと思います。
>>861
6を手に入れたのが2000年初期でして、
その時はゲームを作りたく、知り合いに聞いてみたところVCで簡単に作れるぞ、と。
それで当時高校生だったからアカデミックを手に入れ、VCの本を買い、勉強を始めたところ、
3日で挫折。そりゃC,C++もできなきゃサパーリ。
PC関係ではない専門学校へ進んだのですが、中退し、去年の暮れ近くから
Cの勉強を本格的に始めたワケでして…現在VCをば。
0868デフォルトの名無しさん
NGNG0869デフォルトの名無しさん
NGNG0870デフォルトの名無しさん
NGNGそんなレベルなら6の参考書は6でやっとけ。
0871デフォルトの名無しさん
NGNG大丈夫
そのレベルの質問をしている時点で、
レジストしてもらえるソフトを作るのは不可能だから、悩む必要など無い
0872デフォルトの名無しさん
NGNG安心汁!
誰もお前が作ったソフトになんかレジストしないから。
0874デフォルトの名無しさん
NGNG0875デフォルトの名無しさん
NGNG0876デフォルトの名無しさん
NGNG土方として、どうやって生活していこうと思ってるんだ?あ?
0877デフォルトの名無しさん
NGNGむかしはできなかってkど、今は制限なしだよ。
アカデミック版でもOK!
0878デフォルトの名無しさん
NGNG大丈夫
そのレベルの質問をしている時点で、
レジストしてもらえるソフトを作るのは不可能だから、悩む必要など無い
0879デフォルトの名無しさん
NGNG安心汁!
誰もお前が作ったソフトになんかレジストしないから。
0880デフォルトの名無しさん
NGNG0881デフォルトの名無しさん
NGNG0882871
NGNG0883デフォルトの名無しさん
NGNGOSのファイル/ファイルシステムに拡張情報を埋め込むことって
できないものですかね。
特にmp3などの管理を想定しているのですが、漢字ファイルネーム
の他に、ふりがな情報を埋め込めると管理や検索が楽になると
思うんですよね。他にはmp3に限りませんがCRC情報なども管理
できるといいと思うのですが。
ファイルのお尻に埋め込むことも可能だと思いますが、これだと
Winampなんかで再生できるのかどうか。各フォルダに隠しファイル
を置いて、管理する方法も考えてみましたが、エクスプローラで
ファイルを移動させたときに整合性を取るのが面倒だなと。
なんか良い方法ないもんですかねぇ。
0884デフォルトの名無しさん
NGNG0885デフォルトの名無しさん
NGNGMac 使えば。
0886デフォルトの名無しさん
NGNGNTFS使え。
0887デフォルトの名無しさん
NGNGIPropertySetStorage
IPropertyStorage
0888デフォルトの名無しさん
NGNGシェルでDSWファイルをダブクリするとVCが立ち上がりますが、既存の
VCが閉じられてしまいます。別のプロセスとして立ち上げたいのですが
方法はあるのでしょうか?
0889名無し@沢村
NGNGヌヒよ、VCを立ち上げてからプロジェクトを開けばいいだけだと思うが
0890デフォルトの名無しさん
NGNGプログラムをやめることを考えた方がいいかもよ
0892デフォルトの名無しさん
NGNGどんな手順でやればできるのでしょうか?
0893デフォルトの名無しさん
NGNGクラスのcppとhをその別のプロジェクトに含めれば良いだけじゃん?
■ このスレッドは過去ログ倉庫に格納されています