2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

★初心者にVisual C++を教えるスレ★ Part36

1 :デフォルトの名無しさん:2010/05/16(日) 01:06:22
Visual C++入門者・初心者からの質問を、
お兄ちゃんお姉ちゃん達が優しく、時には厳しく回答してくれるスレッドです。

■質問するにあたって
・エラーや警告のときはエラーメッセージを書きましょう。
・開発環境も書きましょう、特にWindowsForm、MFC、Win32アプリケーションの区別。
・できるだけ具体的に。

質問の仕方については次のページが大変参考になります。
http://www.hyuki.com/writing/techask.html

■回答するにあたって
・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。
 (MSDNのどの項目だとか、何のキーワードでGoogleするとか)
・ネタや煽りは軽く流しましょう。

【過去スレ】
Part35 ttp://pc12.2ch.net/test/read.cgi/tech/1256645713/
Part34 ttp://pc12.2ch.net/test/read.cgi/tech/1245382769/
Part33 ttp://pc12.2ch.net/test/read.cgi/tech/1235292263/
Part32 ttp://pc11.2ch.net/test/read.cgi/tech/1225422971/
Part31 ttp://pc11.2ch.net/test/read.cgi/tech/1217494948/

2 :デフォルトの名無しさん:2010/05/16(日) 01:47:52
【関連スレ】
■MFC相談室 mfc21d.dll■
http://pc12.2ch.net/test/read.cgi/tech/1250919279/
Win32API質問箱 Build82
http://pc12.2ch.net/test/read.cgi/tech/1253699773/
【C++】 DirectX初心者質問スレ Part26 【C】
http://pc12.2ch.net/test/read.cgi/tech/1256403984/
C言語なら俺に聞け(入門篇) Part 54
http://pc12.2ch.net/test/read.cgi/tech/1254829314/
C++相談室 part74
http://pc12.2ch.net/test/read.cgi/tech/1256397778/
C/C++の宿題片付けます 131代目
http://pc12.2ch.net/test/read.cgi/tech/1255709298/
【初心者歓迎】C/C++室 Ver.69【環境依存OK】
http://pc12.2ch.net/test/read.cgi/tech/1256022655/

3 :デフォルトの名無しさん:2010/05/16(日) 01:50:08
【関連サイト】
MSDN ライブラリ
http://msdn.microsoft.com/ja-jp/library/default.aspx

Windows SDK for Windows Server 2008 and .NET Framework 3.5
http://www.microsoft.com/downloads/details.aspx?FamilyID=f26b1aa4-741a-433a-9be5-fa919850bdbf&DisplayLang=en

4 :デフォルトの名無しさん:2010/05/17(月) 01:09:30
ぬるぽ

5 :デフォルトの名無しさん:2010/05/17(月) 01:59:50
Visual C++ 2010 Express上で「Quick C最初の一歩」という本に書いてある

main()
{
printf("コマノウエノゴマ");
}

というソースコードをビルドするとエラーが起こるのですが
この本で使われているQuick C Ver.2.0のC言語は
Visual C++ 2010 Expressの物とは全くの別物なんですか?
ttp://www.odnir.com/cgi/src/nup47890.jpg

6 :デフォルトの名無しさん:2010/05/17(月) 02:18:22
>>5
それをVisual C++ 2010 Express上でやってみた
ttp://loda.jp/_pluto_/?id=12.exe
↑の実行ファイルをコマンドプロンプトにドラッグ&ドロップしてEnterキー押せば普通に終わると思うが・・・

7 :デフォルトの名無しさん:2010/05/17(月) 08:36:02
>>005
どんなエラー?それを書かないとわからない。

8 :デフォルトの名無しさん:2010/05/18(火) 14:24:48
Visual C++ 2010 上でビルド時に以下のようなエラーが出ています。

1>DXUT.obj : error LNK2019: 未解決の外部シンボル __imp__InitCommonControls@0 が関数 "long __stdcall DXUTInit(bool,bool,wchar_t *,bool)" (?DXUTInit@@YGJ_N0PA_W0@Z) で参照されました。
1>DXUTmisc.obj : error LNK2019: 未解決の外部シンボル _DXTraceW@20 が関数 "long __stdcall DXUTTrace(char const *,unsigned long,long,wchar_t const *,bool)" (?DXUTTrace@@YGJPBDKJPB_W_N@Z) で参照されました。

色々調べてみて以下のようにすることで一応ビルドと実行はできたのですが
#pragma comment(lib, "comctl32.lib")
#pragma comment(lib, "dxerr.lib")

そもそもこのライブラリがあるディレクトリをライブラリ ディレクトリに登録しており、そのディレクトリに該当のlibがあることも確認できました。
ただ、エラー内容からっておそらくライブラリディレクトリの設定が間違っているのではないと予想しているのですが、どこが間違っているでしょうか?

1) ソリューションエクスプローラからプロジェクトを選択
2) 表示メニュー→その他のウィンドウ→プロパティウィンドウを開く
3) プロパティページボタンを押してダイアログを開く
4) 構成プロパティ→VC++ ディレクトリ→ ライブラリディレクトリ 

で設定してます。


9 :デフォルトの名無しさん:2010/05/18(火) 14:31:30
すみません。設定を見直していたら
構成プロパティ→リンカ→入力の”追加の依存ファイルにcomctl32.lib dxerr.libを書き込んだら解決しました。

しかし、これで合っているのでしょうか?
ライブラリ一つ一つ指定するのって労力がかかりすぎると思うのですが・・・・・。

10 :デフォルトの名無しさん:2010/05/18(火) 14:47:40
初期状態で勝手に呼び込むやつとそうでないやつがあるんだよ。
他のコンパイラでも通るようにするためにはソースに書き込んだ方が良い。


11 :デフォルトの名無しさん:2010/05/18(火) 15:13:50
勝手に読み込むのとそうでないものがあるんですね。
危険なオブジェクト知らないうちに使われないようにするためかな・・・。
ちょっと調べてみます。

とりあえず複数人での開発まで考えるとヘッダファイルにでも書いておいた方が何かと便利そうですね。


12 :デフォルトの名無しさん:2010/05/21(金) 00:28:35
visual c++ 2010 expressをDLしようと思ってWebインストール押したら
Microsoft Searchに飛ばされるんだけどなんでなの??
一応自己解決しようと努力はしたんだけど
yahoo知恵袋で同じ質問あったけど解決方法書いてなかったんだ。
環境はWindousXPです

13 :12:2010/05/21(金) 00:48:35
オフラインインストールとやらで解決できそうです
お騒がせしました

14 :デフォルトの名無しさん:2010/05/21(金) 11:04:46
良かったね

15 :デフォルトの名無しさん:2010/05/24(月) 15:47:40
まったくの初心者なのですが、質問させてください。
VisualC++でマウスの名称を持って来たいだけなのですが、
何をどう定義する必要があるのかすらわかりません。

出来ましたら、VisualC++にて「Windowsフォームアプリケーション」を
サラで作成した状態で何処に何を記述するのか教えてください。


16 :デフォルトの名無しさん:2010/05/24(月) 21:17:06
どこか有効な、開発者コミニティーかユーザーズフォーラムなど
あったら教えてください。


17 :デフォルトの名無しさん:2010/05/24(月) 21:19:32
>>16
http://social.msdn.microsoft.com/forums/ja-JP/categories/

18 :デフォルトの名無しさん:2010/05/24(月) 21:45:58
>>15
なんか以下でマウスの接続チェックは出来るらしい…。

  BOOL GetSystemMetrics( SM_MOUSEPRESENT );

  一応、#include "Windows.h" は定義しましたが必要なのかは良く解っていない。

じゃ、以下って何なの??? どうやって使うのでしょうか???
  『Mouse クラス』 や 『MouseDevice クラス』


VisualC++ は超初心者で何を定義する必要があるのかまったく解っていません。


19 :デフォルトの名無しさん:2010/05/25(火) 02:43:01
あたまが弱いんじゃねえの

20 :デフォルトの名無しさん:2010/05/25(火) 15:50:35
以下を実行してみると、「From1.h」では動くのですが、「xxx.cpp」では
『グローバル関数にアクセスするための 'this' ポインタがありません』で動きません。
これはなぜ?


// Initializes the variables to pass to the MessageBox::Show method.
String^ message = "You did not enter a server name. Cancel this operation?";
String^ caption = "No Server Name Specified";
MessageBoxButtons buttons = MessageBoxButtons::YesNo;
System::Windows::Forms::DialogResult result;

MessageBox::Show( this, message, caption, buttons );



21 :デフォルトの名無しさん:2010/05/26(水) 01:06:18
>>20
大雑把に言うと、「その」thisが使えるのは、Form1.hの中にあるclassの中だけ。

22 :デフォルトの名無しさん:2010/05/26(水) 15:03:53
MFCってどうやって使うんでしょうか?

VisualC++2008でテンプレート(Windowsフォームアプリケーション)を使って
新規にプロジェクトを作成した後、
「test000.cpp」内にて【CString str;】と変数を指定してみたのですが、

  'CString' : 定義されていない識別子です。

で、エラーになってしまいます。
ヘッダーには「#include "Windows.h"」を指定して見たのですが、
変わりありませんでした。

MFCが何者なのかは、色んなページを参照してなんとなくは解ってきたのですが、
実際はどの様にすれば利用できるのかが良く解りません。
この辺を詳しく紹介している、ページなどありましたら合わせてお教えいただけると
ありがたいです。


23 :デフォルトの名無しさん:2010/05/26(水) 16:52:23
>>22
ExpressにはMFCついてないから
あきらめた方がいい

24 :デフォルトの名無しさん:2010/05/26(水) 17:51:48
>>23
Expressでは無いです、

  Microsoft Visual Studio 2008 Professional です。



25 :デフォルトの名無しさん:2010/05/26(水) 21:03:40
>>24
新規プロジェクト作成時に MFC アプリケーションを選べ。

26 :デフォルトの名無しさん:2010/05/26(水) 21:36:01
>>24にMFCはかなりハードルが高そうに思えるが
そもそもC++言語を少しは使えるのだろうか

27 :デフォルトの名無しさん:2010/05/26(水) 21:38:22
>>25
MFCにてプロジェクトを作成して、まっさらなダイアログにボタン「Button1」を
作成し以下の様にしてみたのですが、今度は『MessageBox::Show』が使えなくなって
しまいました。
理由がわかりません。

void CtestDlg::OnBnClickedButton1()
{
// TODO: ここにコントロール通知ハンドラ コードを追加します。

CString str;

// MessageBox::Show("test");

}

「CString」は使える様ですが、結局『Windowsフォームアプリケーション』と
『MFCアプリケーション』の違いがわかりません。


28 :デフォルトの名無しさん:2010/05/26(水) 21:53:01
>>27
『Windowsフォームアプリケーション』って CLR だろ?
それは、.NET アプリケーションになる。
MessageBox::Show も .NET だ。

いろんなページを見たら、どこかに MFC での
メッセージボックスの書き方は書いてあると思う。
MessageBox("〜"); とか。

CLR は managed
MFC は ネイティブ

29 :デフォルトの名無しさん:2010/05/26(水) 22:08:24
>>28

> CLR は managed
> MFC は ネイティブ

と、言う事は…。
別のプラットフォームと捕らえた方が良いってことでいいですか?

ある意味別の言語みたいなんですね。


30 :デフォルトの名無しさん:2010/05/26(水) 22:15:58
ついで、
もし、お答え頂けるなら。

CLR の『Windowsフォームアプリケーション』でプロジェクトを作成し、
デバイスの情報を取りに行きたい時に、MFCを利用したいときは、
どの様にするのがベストでしょうか?


31 :デフォルトの名無しさん:2010/05/26(水) 23:59:01
文字列から5文字目以降の文字列をゲットして違う配列に入れたいのですがどうすれば良いですか?

32 :デフォルトの名無しさん:2010/05/27(木) 15:24:02
MFCはあくまでC++ソースのクラスライブラリだでよ
.NETで使う事は想定されてないと思われ

33 :デフォルトの名無しさん:2010/06/05(土) 02:39:02
64bitアプリ作りたいんだけど、製品版じゃないと無理?

34 :デフォルトの名無しさん:2010/06/05(土) 17:04:50
ggrks
http://jenshuebel.wordpress.com/2009/02/12/visual-c-2008-express-edition-and-64-bit-targets/

35 :デフォルトの名無しさん:2010/06/08(火) 00:01:27
http://blog.livedoor.jp/unvirus/archives/1224849.html

私はVisual C++はもちろんプログラミングについて何の知識も無いのですが、どうしても上のcppをexeに変換したいのです。
そこでVisual C++ 2010 Expressをインストールし試行錯誤してみましたが、さっぱりダメです。
(新しいプロジェクト→Win32プロジェクト→空のオブジェクト
→ソースファイルに上のcppをぶち込み、デバッグ開始→ビルド失敗)

どうすればexeファイルに変換できるのでしょうか。どなたかご教授願います。
環境はWin XP SP3です。

36 :デフォルトの名無しさん:2010/06/08(火) 00:15:27
あんたのレベルじゃ無理
それにチートなんて周りの迷惑になるからやめとけ

37 :35:2010/06/08(火) 00:36:02
おkあきらめます

38 :35:2010/06/08(火) 00:54:56
あ、出来ました。お騒がせしました

39 :デフォルトの名無しさん:2010/06/08(火) 00:56:07
コンパイルしようとしたらデバックなしで開始(デバック開始も)が使えません。なんで?


40 :デフォルトの名無しさん:2010/06/12(土) 12:14:00
>>4
ガッ

41 :デフォルトの名無しさん:2010/06/12(土) 19:16:59
>>39
新規作成→プロジェクト

42 :デフォルトの名無しさん:2010/06/13(日) 14:12:12
char[50]をSystem::String ^に変換する方法は?

error C2664 が出てしまいます。変換すれば良いだけなのでしょうが、
どうすれば良いかお教えください。


43 :デフォルトの名無しさん:2010/06/13(日) 14:34:58
>>42
char sz[50] = "hoge";

// VC++ 2008以降
#include <msclr/marshal.h>
using msclr::interop::marshal_as;
System::String^ s = marshal_as<System::String^>(sz);

// VC++ 2005
System::String^ s = gcnew System::String(sz);


44 :デフォルトの名無しさん:2010/06/13(日) 15:00:21
概念を把握したいのですが、

VC++2005の方で、
System::String^ s = は、文字列の入れ物と捕らえて、

gcnew System::String(sz); の方は、新しくメモリ上に(System::String)リマップし直した
との認識をして問題ないでしょうか?


VC++2008では何であんなに複雑になってるか良く解りません…。
変換用の関数を利用しているでいいのかな???
このページでしょうか??
http://msdn.microsoft.com/ja-jp/library/bb384865%28v=VS.100%29.aspx



45 :デフォルトの名無しさん:2010/06/13(日) 15:11:16
marshal_asも中でやっていることは結局gcnew System::String。

ただ、marshal_asはchar配列とSystem::String以外の変換にも活用できるので、
せっかくだから取り上げてみた。

46 :デフォルトの名無しさん:2010/06/19(土) 18:39:44
教えてください。VC++でhttpクライアントを作っています。
mfcのafxinet.hを使ってページの取得まではできましたが、
ユニコードへの変換の仕方がわかりません。
どうすればいいんですか?
プロジェクトはユニコードを使ってます。

CString strBuf;
while ( lpHttpFile->ReadString(strBuf) )
{
this->m_listbox.AddString((LPCTSTR)str);
}

47 :デフォルトの名無しさん:2010/06/20(日) 03:35:07
CStringは勝手に変換してくれるからunicodeに変換とか要らないと思うが

48 :デフォルトの名無しさん:2010/06/20(日) 14:42:22
質問です。VC++2008を使用しています。
下記のURLに載っている1~3のプログラムをstringからmallocで動的なメモリの割り当てにしたいのですがどこをどのように変えれば実現できるのでしょうか?
http://www.ogis-ri.co.jp/otc/hiroba/technical/newface/index.html

49 :デフォルトの名無しさん:2010/06/20(日) 16:28:09
>>47
それが、ReadStringの時点で漢字ばかりの文字列に化けてます。
lpHttpFile->Readを使ってchar配列に入れたら日本語はだめだけど
読める文字列にはなりました。

50 :デフォルトの名無しさん:2010/06/20(日) 22:00:12
TCHAR *fontName=_T("富士ポップ");
LOGFONT lf = {fontsize, 0, 0, 0, fontWidth, 0, 0, 0, SHIFTJIS_CHARSET, OUT_TT_ONLY_PRECIS,
CLIP_DEFAULT_PRECIS, PROOF_QUALITY, FIXED_PITCH | FF_MODERN,fontName};
をコンパイルすると
error C2440: '初期化中' : 'TCHAR *' から 'CHAR' に変換できません。
この変換が可能なコンテキストはありません。
と表示されてコンパイルできません。
fontNameに文字の入った変数を渡すにはどうすればいいんでしょうか。
fontNameに直接_T("富士ポップ")と入れれば実行できます。
環境はvisal studio2008を使用しています。

51 :50:2010/06/20(日) 23:35:33
自己解決しました。
構造体の初期化を使わず
strcpy(lf.lfFaceName,fontName);
にしたら出来ました。

52 :デフォルトの名無しさん:2010/06/21(月) 16:58:53
Cとかjavaの{これってなぜ最後に{がくるのですか。
わたしは aaa( ){aaaaaaa}となったほうがわかりやすいように
思うのですが。

53 :デフォルトの名無しさん:2010/06/21(月) 17:04:15
>>52
慣れの問題です。
ちなみに僕は
aaa()
{
  aaaaaa
}
と書いています。

54 :デフォルトの名無しさん:2010/06/21(月) 17:09:28
教えていただいてありがとうございます。
{aaaaaaaa}のように書いていてはだめということでは
ないのですね。

55 :デフォルトの名無しさん:2010/06/21(月) 17:15:50
>>54
コンパイルが通れば何でもいいというのであればそれでいいが
大抵はいくつかの主流の書き方に合わせるか、職場のコーディング規約に合わせる

56 :デフォルトの名無しさん:2010/06/21(月) 17:22:03
私はこの言語を作ったひとがなぜこのような括弧の
書き方を考えたのか解せないのです。
わざわざ見た目を難しくしているような気がします。
私のような初心者だと括弧を{を前に}を後ろに
書き換えたほうがプログラムの流れがよく理解
出来るような気がします。

57 :デフォルトの名無しさん:2010/06/21(月) 17:26:11
53のかたのアドバイスの意味やっとわかりました。

58 :デフォルトの名無しさん:2010/06/22(火) 23:43:52
今からMFC覚えても意味ある?

59 :デフォルトの名無しさん:2010/06/23(水) 00:10:14
.netやった方がいいと思う
しかもC++/CLIよりC#がいい
仕事でMFC使う予定があるなら別だが

60 :58:2010/06/23(水) 00:12:34
>>59
ずさー^−^

C#はある程度できます。。VC++スレの人にまでそういわれるなら、やめます。。

1つの言語覚えるのも結構時間かかりますもんね。ありがとう。

61 :デフォルトの名無しさん:2010/06/23(水) 00:17:22
C++使うのなら
本当に高速化したい時だけでいいよ

62 :デフォルトの名無しさん:2010/06/24(木) 13:06:05
ファイル移動で、移動先に同名があった時上書きの確認するダイアログを出したいのですが
あれを表示させるにはどうやったらいいのですかね?

63 :デフォルトの名無しさん:2010/06/24(木) 13:55:23
windows限定だけど
SHFileOperation

64 :デフォルトの名無しさん:2010/06/24(木) 14:17:41
vcのSHFileOperationのなかなかいいサンプルが見つからんっちゃ
構造体ぶっ込んで・・・と

65 :デフォルトの名無しさん:2010/06/24(木) 15:32:16
できました!ありがとう

66 :デフォルトの名無しさん:2010/06/24(木) 18:13:26
文字コードもわからんやつがネットツール作ろうとか百年早い

67 :デフォルトの名無しさん:2010/06/25(金) 01:53:23
そういうお前は人と会話するの千年早い

68 :デフォルトの名無しさん:2010/06/25(金) 13:58:59
何事もトライする心が重要なんじゃないかな
シュートしなきゃ点は入らない
買わなきゃ宝くじは当たらない

69 :デフォルトの名無しさん:2010/06/30(水) 07:11:38
浮動小数点演算をSSEのみ(x87を全く使用しない)で行うように
VCを設定することは可能でしょうか?
x64ではなくSSE2が使用可能なx86環境での実行を前提にしています。

70 :デフォルトの名無しさん:2010/07/01(木) 20:19:28
Windowsのイベントをフックしなきゃいけなくなって、CでDll作る事になったんだけど、
SQL Serverとも通信しなければならん。

VCからADO使えるのは分かってるんだけど、C#のが慣れる俺にアドバイスくれまいか。

今どきVCからADOなんて使いたくねー!って言ったら、使ってる人に怒られるよなw

DB周りの処理はC#で作ってライブラリにして、Cから呼ぶのって大変かな。

71 :デフォルトの名無しさん:2010/07/01(木) 20:31:21
DB周りはWebサービスにすればおk

72 :デフォルトの名無しさん:2010/07/01(木) 20:46:42
>>71
VC初心者ですまん。
Webサービス化するのは出来るんだけど、Cから呼び出す方法がさっぱりだわ。

コマンドラインオプションに/MT付けてると/clr付けられんみたいなんだが、マネージドコード使えねって事なんかな。
フックするためには/MTは外せないっぽい。

73 :デフォルトの名無しさん:2010/07/02(金) 17:50:00
>>72
わかった

74 :デフォルトの名無しさん:2010/07/03(土) 17:29:17
>>72
C#部分はEXEとして作って、フックDLLとはプロセス間通信するのが一番楽だと思う。
あと、フックDLLは/MT必須というのは誤解。

ただ、フックDLLとそこから読み込むDLLでマネージコードを使うのはお勧めしない。
CLR 1.0〜2.0は1プロセス内に共存できない(4で可能になったけど)とか、
DLLのアンロードをどうすんのとか、
Windowsと.NETの暗黒面に次々と出くわすだろうことが明らかなので。

75 :デフォルトの名無しさん:2010/07/03(土) 19:56:53
>> 41
むちゃくちゃ遅れましたがありがとうございます。

76 :デフォルトの名無しさん:2010/07/04(日) 03:12:16
Windows XP 32bitではBeep関数でパソコンの内部スピーカーからビープ音を
鳴らすことができていましたが、Windows 7 64bitでは外部スピーカー
からしか音がしなくなりました。Windows 7 Ultimate 64bitでビープ音を
鳴らすにはどうしたらいいでしょうか?

開発環境は VC++8.0 です。

77 :デフォルトの名無しさん:2010/07/04(日) 03:38:28
>>76
7で行われた変更の一つ
http://blogs.msdn.com/b/larryosterman/archive/2010/01/04/what-s-up-with-the-beep-driver-in-windows-7.aspx

諦めろ

78 :デフォルトの名無しさん:2010/07/04(日) 19:22:53
>>74
レスありがとう。

VB6でCOM作って、import使って呼び出せそうだわ。
プロセス間通信もやったことないんだけど、簡単なんかな?

exe作って引数でデータ渡すのもありだね。
投げっぱなしジャーマンで、成否だけ分かればいい場合だけ
だけど。

79 :デフォルトの名無しさん:2010/07/05(月) 12:26:34
VC++6.0でcuda使えますか?

80 :デフォルトの名無しさん:2010/07/06(火) 18:11:49
Coda kumi?

81 :デフォルトの名無しさん:2010/07/06(火) 18:45:09
>>79
はい使えますん

82 :デフォルトの名無しさん:2010/07/07(水) 08:40:45
VC++2008で、IriaやIrvineのようなダウンロード支援ソフトは作ることできますか?
こういった通信を行うソフトが作りたいのですが

83 :デフォルトの名無しさん:2010/07/07(水) 08:49:41
できる
作れる技術があるかどうかは別だが

84 :デフォルトの名無しさん:2010/07/07(水) 08:54:17
できるか、できないかすら分からないレベルなのでそれを聞いて安心しました
TCP/UDPとかSocketとか難しそうですけど地道に勉強していきたいと思います

85 :デフォルトの名無しさん:2010/07/07(水) 10:06:11
マルチプラットフォーム志向で変態PGならBoost.Asio + OpenSSLでFA.

86 :デフォルトの名無しさん:2010/07/10(土) 03:00:13
#pragma comment(lib,"〜.lib")でライブラリをリンクするとき
#pragma comment(lib,"debug/〜.lib")のようにディレクトリを指定してリンクすることは出来ないのでしょうか?

実際にやってみると
LINK : fatal error LNK1104: ファイル 'debug/〜.lib' を開くことができません。
というエラーをはいてしまいます

87 :デフォルトの名無しさん:2010/07/10(土) 03:44:06
>>86
それって、カレントがどこになると思ってるの?
exeと同じ場所に置くのが無難だと思うけど。
絶対パスでもできた希ガス。

88 :名無しさん@そうだ選挙に行こう:2010/07/10(土) 13:09:27
>>86
link.exeプロセスのカレントディレクトリと%LIB%から探されるから、そんな指定はやめとけと

89 :名無しさん@そうだ選挙に行こう:2010/07/10(土) 13:47:58
そうすると自分用のlibディレクトリにパスを通したあと
デバッグ用のlibとリリース用のlibを使い分けたい場合どうしたらいいのでしょうか?

90 :名無しさん@そうだ選挙に行こう:2010/07/11(日) 20:47:33
普通プロジェクトの設定

91 :デフォルトの名無しさん:2010/07/19(月) 21:02:43
フォームに置くコントロールについてなのですが。
プログレスバーみたいな感じで、バーコードみたいな部分部分で色が変っているような表示(デフラグの時に下のほうに表示されるプログレスバーみたいな帯です。)
をさせたいんですが、どうやったら実現できますでしょうか。

また.NETにはそれ用のコントロールってありますですか?

92 :デフォルトの名無しさん:2010/07/19(月) 21:38:19
線引いて色を塗る

93 :デフォルトの名無しさん:2010/07/19(月) 22:21:44
挫けそうです。orz

94 :デフォルトの名無しさん:2010/07/20(火) 03:01:18
デバッグ情報を埋め込まずに最適化もせずにコンパイルする方法はないでしょうか?

95 :デフォルトの名無しさん:2010/07/20(火) 03:08:33
>>94
>>90

96 :デフォルトの名無しさん:2010/07/20(火) 07:23:58
>>95
ありがとうございます。上手く設定することができました。

97 :デフォルトの名無しさん:2010/07/20(火) 19:00:59
Visual C++2010を使ってC++を知らなくても1から学べる入門書って今は全くない状態なんですか?

98 :デフォルトの名無しさん:2010/07/20(火) 20:20:38
あるよ

99 :デフォルトの名無しさん:2010/07/20(火) 20:26:07
教えてプリーズ
ググってもマネージコードうんちゃらという本一冊しかかからないんですぅ

100 :デフォルトの名無しさん:2010/07/20(火) 21:09:07
C++スレ行けばいい

101 :デフォルトの名無しさん:2010/07/20(火) 22:36:19
エディットボックスの文字位置を揃えるにはどうすればいいですか?
例 1バイトのiとkをそれぞれ5個ずつ表示させると横幅が小さい
iが狭いです。
iiiii
kkkkk 
こんな感じになってしまいます。これを直したいです。願いします。

102 :デフォルトの名無しさん:2010/07/20(火) 22:38:29
等幅フォントを指定すればいい

103 :デフォルトの名無しさん:2010/07/22(木) 18:15:53
>>102 解決しました。ありがとうございました。

104 :デフォルトの名無しさん:2010/07/26(月) 21:03:26
>>97
それ系は買う必要ないと想うが

105 :デフォルトの名無しさん:2010/07/28(水) 08:48:37
Releaseフォルダに出来た.exeファイルの中に***.pdbファイルのフルパス情報が埋め込まれて
しまってるのですが、これを乗せないようにする方法ってないのでしょうか?

106 :デフォルトの名無しさん:2010/07/28(水) 08:50:08
書き忘れ Visual Studio .NET 2003 を使ってます

107 :デフォルトの名無しさん:2010/07/30(金) 07:53:19
解決しました。ありがとうございました。

108 :デフォルトの名無しさん:2010/08/02(月) 20:08:28
VC+2010、Win32でプログラムを作っています.
実行ファイルのパス名を取得するために、下記のようにしています
(パスとファイル名の分離は省略)

TCHAR fName[_MAX_PATH];
GetExeFilePath(NULL, fName, wcslen(fName);
----
これをDEBUGモードでコンパイルしで,デバガのウォッチ式でfNameを
見ると,正しく c:\test\debug\test.exe のように表示されます。
ところがReleaseモードでコンパイルすると fName が c:\ になります.
(実際の実行ファイルは c\test\release\test.exeにある)。

なぜこうなるのでしょうか? 解決方法を教えてください.

109 :デフォルトの名無しさん:2010/08/02(月) 20:24:03
GetModulePath

110 :デフォルトの名無しさん:2010/08/03(火) 10:01:24
>108 の自己レスですが、

//TCHAR fName[_MAX_PATH];
TCHAR fName[500];
GetExeFilePath(NULL, fName, wcslen(fName));

としたら,Release/Debugモード両方で正しく動くようになりました.
stdlib.hで_MAX_PATHは260に定義されていますが,
TCHAR fName[260];ではうまく動きませんでした。
ドライブ名などを含めて、英文字40字程度のファイル名ですので
そんなに長くはないのですが..

理由は分かりませんが、動いたので良いことにしまう

111 :デフォルトの名無しさん:2010/08/03(火) 10:09:03
GetExeFilePath でぐぐってもほとんどヒットしないから
ほとんど誰も使ってないだろうし、確かにどうでもいい。

112 :デフォルトの名無しさん:2010/08/03(火) 12:40:35
>>110
GetExeFilePath が何なのか知らんが wcslen(fName) は駄目でしょ。
_countof(fName) とかに書き直せよ。

113 :デフォルトの名無しさん:2010/08/03(火) 12:56:51
おおおお

TCHAR fName[_MAX_PATH];
GetExeFilePath(NULL, fName, _countof(fName));

で出来ました!!
UNICODE指定時には、TCHARは _wchar_tと同じになるって
書いてあったので,wcslen(fName)で良いと思ってました

114 :デフォルトの名無しさん:2010/08/03(火) 13:10:31
>>113
wcslen() が何をする関数なのかよく調べとけ。

115 :デフォルトの名無しさん:2010/08/03(火) 19:02:35
ティーチャー

116 :デフォルトの名無しさん:2010/08/04(水) 02:37:37
間違えてC++の方に書いちゃったんですが
4>C:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\include\atlconv.h(757): warning C4995: 'wcscpy': 名前が避けられた #pragma として記述されています。

こういう警告がでます.

1.wcscpy_s wcscat_s vsprintf_s vswprintf_s を使う
2.可能な限り早く、(たとえば、stdafx.hの先頭で)
#define _CRT_SECURE_NO_WARNINGS
する
3.可能な限り早く、(たとえば、stdafx.hの先頭で)
#pragma warning( disable : 4995 )
する

と教わりました.1についてatlconv.hはVisualStudioインストールフォルダのものなんですが変更してもいいんでしょうか?


117 :デフォルトの名無しさん:2010/08/04(水) 06:00:51
2 3 はwarningのメッセージを消すだけだからあってもなくてもいい。

118 :デフォルトの名無しさん:2010/08/04(水) 12:12:07
1が一番いいのかなと考えているんですがprogram filesのファイルを変更するのに抵抗がありまして・・・

119 :デフォルトの名無しさん:2010/08/04(水) 12:49:46
atlmfcが入ってない初心者向けのエディションでも使ってればいいと思うよ

120 :デフォルトの名無しさん:2010/08/04(水) 13:21:26
Expressでしょうか?
入れなおしてみます

121 :デフォルトの名無しさん:2010/08/04(水) 15:42:58
気になる鼻毛を引っ張って抜いたら2cmくらいあった

31 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)