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


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

★初心者にVisual C++を教えるスレ★ Part24
751 名前:749 :2006/12/05(火) 18:20:55
>>750
空のプロジェクトにチェックを入れることで「Hello!」の文字が表示されました、
ありがとうございます。

752 名前:デフォルトの名無しさん :2006/12/05(火) 23:11:57
MDIアプリケーションで子フレームを作成するとメインフレームの[ウィンドウ]メニューに
その子フレームのタイトルが追加されますが、その子フレームのタイトルを変更する
以外にメニューの表示名を変更することってできますか?

753 名前:デフォルトの名無しさん :2006/12/05(火) 23:25:07
使ってるフレームワークがわからんからなんとも

754 名前:デフォルトの名無しさん :2006/12/05(火) 23:25:31
MFCのソースみたけどたいしたことやってないよ

755 名前:デフォルトの名無しさん :2006/12/06(水) 04:10:05
3×3行列の転置行列ってどうやったらいいですかね?

756 名前:デフォルトの名無しさん :2006/12/06(水) 07:32:06
>>752
そんなアナタに、WM_MDISETMENU

757 名前:デフォルトの名無しさん :2006/12/06(水) 10:40:23
>>755
行と列を入れ替えればいいと思うよ

758 名前:デフォルトの名無しさん :2006/12/06(水) 11:24:26
IQ高い猿は踏み台を使ってバナナ取れるけど、
IQ低いと3×3行列の転置行列さえ途方にくれる。

759 名前:デフォルトの名無しさん :2006/12/06(水) 11:33:09
さあ、はやく割り箸詰め作業に戻るんだ
      i             |   |
     |     _____人__/
      i_,,,  r´_       _〉
     ((テヽ!´ _   _    /_  _j
      ゝ_i    ̄    |    ̄ i
      ゝ ヽ   (_、__j_)ヽ  ノ
    , イ ヽ、       ii   /
  /   \ ヽ  =ニ= /
/      \ `ーj---‐i´i\
          \/    !j  \
      _ ,,,,_  /\         \ ,c、.c、
 ___/´ 、、ヽ/i  :|三三三三三三三\.ヽ.ヽ二l 
  // \ \/ .i /           ,.-、-、| |: |
  | | 、\ \ \!            |:|       !
  | ヽ_,r.'\rj)、rj)          !|       |
  \___/  /                |      /
     /  /                  |      |


760 名前:デフォルトの名無しさん :2006/12/07(木) 21:32:47
ド素人です
ttp://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N21

このチャットのサンプルをコピペしてもコンパイルできません
環境は
エディタ =VS2005 standard edition VC++
OS = XPsp2


警告が1つで
「ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください」
ってやつと

エラーメッセージは3つありますがどれも同じ
「指示された型は関連がありません。変換には reinterpret_cast、C スタイル キャストまたは関数スタイルのキャストが必要です。」
ってやつです

lstrlen とか lstrcpy っていう関数を使うところでエラーになってるみたいなんですが
どのように対策すればいいかご教授お願いします

761 名前:デフォルトの名無しさん :2006/12/07(木) 22:11:38
>>760
エラーが出た行数くらい書いてくれよ

762 名前:デフォルトの名無しさん :2006/12/07(木) 22:14:03
>>760
プロジェクトのプロパティを開いて構成プロパティの全般にある文字セットをUnicodeからマルチバイトに変更。

763 名前:デフォルトの名無しさん :2006/12/07(木) 22:47:32
>>761
すいません、ちょこっと手直し入れてるんで行数は当てにならないんですよね
えーと、
StrLength = lstrlen( Message ) + 1 ;
lstrcpy( ScreenString[ i - 1 ], ScreenString[i]);
lstrcpy( ScreenString[StringY], AddString );
この関数のところでエラーが出てるみたいです
基本的にこの関数のところでは手直ししていません

>>762
こんなエラーがでました
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jtransform_execute_transformation が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jcopy_markers_execute が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jtransform_adjust_parameters が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jtransform_request_workspace が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jcopy_markers_setup が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _write_stdout が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _read_stdin が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _read_scan_script が関数 _parse_switches で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _keymatch が関数 _parse_switches で参照されました。

764 名前:デフォルトの名無しさん :2006/12/08(金) 00:12:15
おもちゃじゃないんだからさ

765 名前:デフォルトの名無しさん :2006/12/08(金) 00:39:41
>>763
リンクするライブラリが足りないんじゃね。

766 名前:デフォルトの名無しさん :2006/12/08(金) 01:19:49
visual c++ 2005 expressを使ってるのですが
過去に作ったC言語のソースをどうやって利用するのか教えてください。
ソースは開けるんですけど、実行することができないです。

767 名前:デフォルトの名無しさん :2006/12/08(金) 09:53:35
初心者だったら入門書でも買って勉強すればいいよ
勉強もしないで適当にやってみたけど、できないから掲示板で質問
そんなやつに教えてやるだけ無駄

768 名前:デフォルトの名無しさん :2006/12/08(金) 11:06:31
>>766 MSDNの「Visual C++ ガイド ツアー」を読め

769 名前:デフォルトの名無しさん :2006/12/08(金) 11:33:01
>>760
<windows.h>をインクルードしろ。lstrlen/lstrcpyなんかはその中で宣言されている。

770 名前:デフォルトの名無しさん :2006/12/08(金) 12:33:10
素人は黙ってた方がいいと思うよ

771 名前:デフォルトの名無しさん :2006/12/08(金) 14:44:11
>>760 のやつは馬鹿でも簡単にゲームがつくれるライブラリらしいけど
馬鹿にはやっぱり無理のようだな

772 名前:デフォルトの名無しさん :2006/12/08(金) 16:29:56
タスクマネージャのようにプロセスのメモリ使用量を監視するソフトを組みたいんですけども
プロセスのメモリ使用量ってどうやって調べるのでしょうか

なんか良い本とかありますか?

773 名前:デフォルトの名無しさん :2006/12/08(金) 16:38:52
インサイドMicrosoft Windows
http://store.nikkeibp.co.jp/item/main/148910047380.html

774 名前:デフォルトの名無しさん :2006/12/08(金) 16:46:40
まぁなんつーか
DXをやんわりと包むライブラリがあるだけで作れるゲームなんて
無くても作れるゲームだけだし

775 名前:デフォルトの名無しさん :2006/12/08(金) 19:46:11
_ui64toaでULONGLONGを文字列に変換できるのは
よいのですが、逆は関数がみあたりません。
なんかよい方法はないですか?

vc++6.0

776 名前:デフォルトの名無しさん :2006/12/08(金) 19:56:18
std::istringstream使えないか?
だめなら、_strtoui64、sscanfの書式%I64uなんかがVC 6でも使えると思う。

777 名前:デフォルトの名無しさん :2006/12/09(土) 01:23:49
最初の最初でつまづきました・・・
ソフトはVisual C++ 2005 Express Edition

http://www14.atwiki.jp/garyohosu/pages/5.html
このサイトのサンプルでは成功したんですが・・・

http://www.stat.phys.kyushu-u.ac.jp/~ryokawa/cbegin2_3/html4/cbegin_c1_s2.html#s_hello_world
このサイトの一番最初のコードを入力してもビルドメニューに実行が現れません(F5+Ctrlでも不可)

cppファイルを実行させるにはどうすればいいんでしょうか・・・

778 名前:デフォルトの名無しさん :2006/12/09(土) 01:33:09
cppファイルは実行ファイルではないので実行できません

779 名前:デフォルトの名無しさん :2006/12/09(土) 01:40:01
>>778
実行しないでどうやって表示させるんですか?

780 名前:デフォルトの名無しさん :2006/12/09(土) 01:45:41
つ CINT

781 名前:デフォルトの名無しさん :2006/12/09(土) 01:57:58
>>780
関数やソフトではなく使い方が知りたいんですが・・・

782 名前:デフォルトの名無しさん :2006/12/09(土) 02:33:40
>>781 >>768

次スレのテンプレには
| 三′  .._     _,,..  i三 |
ト、ニ| <でiンヽ  ;'i"ィでiン |三.| MSDNも読まずに質問とな!
', iヽ!  、 ‐' /  !、 ーシ |シ,イ
を追加すべきだな。

783 名前:デフォルトの名無しさん :2006/12/09(土) 03:05:14
>>782
読んだけど俺の問題の解決になるようなことは何一つ書いてない

もうええわ


784 名前:デフォルトの名無しさん :2006/12/09(土) 08:27:03
質問する側の説明手抜きだから
どうやったらそんな状況になるのか理解不能
掲示板だから何やったか見れないのが残念

785 名前:デフォルトの名無しさん :2006/12/09(土) 09:39:21
>>777
エスパーになってやろう。
今のVC++はプロジェクト作らないとビルドできないぞ。
下のページではプロジェクトを作らなくてもビルドできた古いバージョンを想定して書かれているようだ。

786 名前:デフォルトの名無しさん :2006/12/09(土) 12:14:25
PictureBoxのサイズを途中で変更したいんですがどうしたらいいんでしょうか?
Basicだとpicture.Widthやpicture.Heightで変更ができるんですが、VC++にはないようで・・・。


787 名前:デフォルトの名無しさん :2006/12/09(土) 12:24:24
コントロールもウインドウだから
ウインドウサイズ変更で調べればいい

788 名前:デフォルトの名無しさん :2006/12/09(土) 12:28:10
コントロール サイズ変更
でぐぐったら1発でみつかるな

789 名前:デフォルトの名無しさん :2006/12/09(土) 12:40:59
>>787>>788
ありがとうございます。
そうだったんですか。
ピクチャボックス サイズ 変更って調べたときは出なかったのに・・・コントロールなんですね(笑
1発でした!

790 名前:デフォルトの名無しさん :2006/12/10(日) 03:47:20
.net2005ですが、WindowsFormアプリで追加したクラスから
listBoxにアイテムの追加等を行うにはどうしたらいいでしょうか?

791 名前:デフォルトの名無しさん :2006/12/10(日) 06:41:09
listBoxの追加用メソッド使えばいい

792 名前:デフォルトの名無しさん :2006/12/11(月) 11:45:54
ダイアログリソースで設定した各コントロールの
サイズ、位置、フォントが、プロパティシートに割り当てて
表示したときに変わってしまいます。リソースで設定した
状態を維持したまま表示するにはどうしたらよいのでしょうか?

793 名前:デフォルトの名無しさん :2006/12/11(月) 12:24:27
リソースでコントロールにフォント設定できたっけ?

794 名前:デフォルトの名無しさん :2006/12/11(月) 13:16:51
失礼しました。フォントに関してはコントロールではなく
ダイアログそのものの設定です。

795 名前:デフォルトの名無しさん :2006/12/12(火) 21:35:50
MDIアプリケーションで開発しています。
実行するとメインフレーム+チャイルドフレームが表示されますが、
そのときメインフレームのメニューである[ウィンドウ]メニューに
チャイルドフレームのタイトルが自動で追加されています。
このメニューを消したいんですがどうしたらよいでしょうか?

796 名前:デフォルトの名無しさん :2006/12/12(火) 21:39:17
またお前か
自分でMFCのソースも読めないなら贅沢言うな

797 名前:デフォルトの名無しさん :2006/12/12(火) 21:46:45
VS.net2003のVC++でMFCを使ってプログラムを作っております
とても困ったことになったので、どうかお知恵を貸してください

状況は以下のようなものです

CWndクラスを継承して作成されたコントロール(標準ではなく)があります
そしてそのヘッダファイルとリブファイル、DLLファイルだけが提供されています
このコントロールは自分でメンバ変数として定義してCreateすることで使うことができます
しかし、そのコントロール上でマウスがダウン/アップしたなどのメッセージを受け取る
方法が分からなくてとても困っているという状況です

コントロール関連の大まかな処理の流れとしては、

ヘッダ内でメンバ変数として定義

OnInitDialog内で生成&初期化&表示

メッセージ受け取りで処理

これだけなのですが、この一番下の処理だけがどうしてもできません
普通のコントロールであればプロパティウィンドウを使ってメッセージ処理の定義?が
できるのですが、このコントロールではできません

メッセージマップと書いてある辺りが怪しいとは思うのですが、リソースエディタでダイアログにペタペタ貼って
メッセージ処理を追加した時に自動生成されるコードと同じようにヘッダとCPPに書いてみても駄目でした

周りに聞けるような人がいないので途方にくれております
かといって、これを使わないというのは無理です(とても自作や他で代用できるようなシロモノではないので)

何かアドヴァイスまたは参考になるようなサイトを教えて頂けませんでしょうか・・・

※なお、諸事情によりそのコントロールの開発者に直接聞くことはできません

798 名前:デフォルトの名無しさん :2006/12/12(火) 22:55:57
Visual C++ 2003で、
タブと全角スペース だけ 表示したいのですが。
無理ですか?

799 名前:デフォルトの名無しさん :2006/12/13(水) 02:08:46
>>797
CWnd::SubclassWindow を呼びつつ、
プロパティウィンドウでメッセージ選んでけばOKだと思う。

>>798
WhiteSpace でも始めるの?

800 名前:デフォルトの名無しさん :2006/12/13(水) 06:45:40
カタカナで「リブファイル」って言うヤツ初めて見た

801 名前:デフォルトの名無しさん :2006/12/13(水) 09:37:45
>>799
いえ、普通のエディターなら全角とタブと改行とか細かく表示設定できるのに、
なんでVCのエディターは出来ないのかなぁ〜〜と。


802 名前:デフォルトの名無しさん :2006/12/13(水) 09:51:09
外国製ソフトだと、まともに日本語扱えなかったりするけど

803 名前:デフォルトの名無しさん :2006/12/13(水) 13:01:35
>>801の言う普通のレベルがすごく世間とズレてる気がする

804 名前:デフォルトの名無しさん :2006/12/13(水) 22:45:32
質問です

VC++でWindowsフォームアプリケーションからゲームを作ろうと思っています
フォームにピクチャボックスを設置する時にいらない部分は透過させたいのですが
画像に透明色を塗ってもピクチャボックスの場合は透過しません
ラベルとかボタンの場合は透過するんですが、どのような処理を行えばいいのでしょうか

805 名前:デフォルトの名無しさん :2006/12/13(水) 22:56:44
>>804
つDirectX

806 名前:デフォルトの名無しさん :2006/12/13(水) 23:05:30
できればDirectXを使わずに行きたいのですが
やっぱりピクチャボックスの透明色を透過させるのは無理ですかね?

807 名前:デフォルトの名無しさん :2006/12/14(木) 00:47:31
>>804の後半2行が良くわからんけど、

-LayeredWindow
-DIBで自前で頑張る


808 名前:デフォルトの名無しさん :2006/12/14(木) 01:11:55
後半2行はFormのプロパティでTransparencyKeyっていうのが透明色らしいんで
設定したその色でラベルやボタンのフォント、もしくは背景色にすると透過するんですよ

LayeredWindowはMeでも大丈夫ですかね?
DIBは今の自分の技量じゃとてもじゃないけど実装できそうにないです


素直にDirectXかなぁ

809 名前:デフォルトの名無しさん :2006/12/14(木) 01:30:48
.NETの話だろ?
Bitmap.MakeTransparentとかで透過情報を持たせれば
描画時に勝手に透過処理されるんじゃないの?

810 名前:デフォルトの名無しさん :2006/12/14(木) 02:11:49
ありがとうございます
Bitmap.MakeTransparentでなんとかできそうです
ちょっと使い方わかんないけど、試行錯誤してみます

811 名前:デフォルトの名無しさん :2006/12/14(木) 13:22:47
vc++6.0でビットマップを表示させたいのですがビットマップをインポートしてもエラーが起きます。
すごい馬鹿な質問ですが例えば写真などを表示することはできないのでしょうか?
256色以内であればペイントなどで作成し表示できるのでしょうか?超初心者なのでぜひ教えてください。。

812 名前:デフォルトの名無しさん :2006/12/14(木) 13:33:20
ビットマップなら簡単

813 名前:デフォルトの名無しさん :2006/12/14(木) 18:32:25
超初心者ならまずそれらしい本で練習しれ

814 名前:デフォルトの名無しさん :2006/12/14(木) 23:18:23
VC++.net
CFormViewで開発をしています。
ウィンドウをドラッグして動かしたときに、アプリケーションの左上の(x,y)座標
を取得したいのですが、うまくいきません。
WM_MOVINGとWM_MOVEを試してみたのですが、WM_MOVEには起動直後、
WM_MOVINGに至ってはウィンドウを動かしても一度も呼ばれませんでした。
何を使えば(x,y)を取得できるんでしょうか。

815 名前:デフォルトの名無しさん :2006/12/14(木) 23:39:17
あげ

816 名前:デフォルトの名無しさん :2006/12/14(木) 23:41:11
>>814
SDIならCFrameWndで取得しないと意味ないよ。

817 名前:デフォルトの名無しさん :2006/12/15(金) 00:06:16
>>816
ありがとうございます、無事取得できるようになりました。
このOnMove(int x, int y)の
x,yは何をさしているんでしょうか。。。

818 名前:デフォルトの名無しさん :2006/12/15(金) 00:31:43
MSDN読めよ・・・

819 名前:デフォルトの名無しさん :2006/12/15(金) 00:34:43
しかしMSDN読むようなやつだったら、そもそもこんなところで訊いていないだろう。

820 名前:デフォルトの名無しさん :2006/12/15(金) 13:42:05
MSDQN プ

821 名前:デフォルトの名無しさん :2006/12/15(金) 15:05:41
>>820
面白くないよ?

822 名前:デフォルトの名無しさん :2006/12/15(金) 17:11:05
windowsx.h見れば幸せになれる

823 名前:デフォルトの名無しさん :2006/12/15(金) 18:01:09
質問です。
親ダイアログ(モーダル)からボタンなどのイベントでモードレスの子ダイアログを
動的に作成し、そのポインタを配列に保持しています。
ある子ダイアログが終了(閉じられた)したら、親に知らせたいんですけど
どうしたら子ダイアログが閉じたというのが分かるのでしょうか?


824 名前:デフォルトの名無しさん :2006/12/15(金) 19:44:45
WM_USER+なんちゃらのメッセージを送る
イベントとかを使う

825 名前:デフォルトの名無しさん :2006/12/15(金) 19:49:03
そこ、WM_USERではなく、WM_APPだろ。

826 名前:デフォルトの名無しさん :2006/12/15(金) 19:49:53
常識的に考えてWM_APPだろ

827 名前:823 :2006/12/15(金) 19:54:10
>>824-826
レスありがとうございます。
自作のメッセージを作って投げるってことですね。
参考にさせていただきます。

828 名前:デフォルトの名無しさん :2006/12/15(金) 20:14:28
いきなりつまづきました。ご助言お願いします。
VisualC++2005 Express Editionです。

#include <string>

using namespace std;
String adress_str;

に対して下記のようにエラーがです。
: error C2065: 'String' : 定義されていない識別子です。
: error C2146: 構文エラー : ';' が、識別子 'adress_str' の前に必要です。
: error C2065: 'adress_str' : 定義されていない識別子です。

string宣言に対してエラーが出ているのだと思うのですが標準ライブラリでサポート
されているハズなので#include <string>以外は必要ないと思うのですが・・・
(他には<stdio.h>と <tchar.h>をstdafx.hでincludeしています)

829 名前:デフォルトの名無しさん :2006/12/15(金) 20:39:39
Stringではなく、string。

それとも、.NET FrameworkのSystem::Stringを使いたければ、#using <mscorlib.dll>

830 名前:828 :2006/12/15(金) 21:09:38
>>829

ありがとうございました。Sを小文字にすることで解決いたしました。

831 名前:デフォルトの名無しさん :2006/12/15(金) 21:42:33
VC6が、コーディング中に、一時的にフリーズしまくるという現象が発生してしまいました。
ある特定のプロジェクトだけそうなります。
数年前にも一度起きてかなり悩まされた記憶があります。
原因は何でしょうか?

832 名前:デフォルトの名無しさん :2006/12/15(金) 21:45:49
メンバ自動表示や型情報ヒントとかのオプションをはずせば解決するのは
わかってるのですが、
対して大きなプロジェクトでもないのにフリーズする原因ってなんでしょうか?

833 名前:デフォルトの名無しさん :2006/12/15(金) 21:58:46
>>832
では、そのプロジェクトを丸ごと圧縮しUPしてください。検証します。

834 名前:デフォルトの名無しさん :2006/12/16(土) 01:41:34
質問です。

 htmlをEncoding::GetEncoding(51932)で読み込んだ後に、Split()で分解しています。
分解した後の文字列に「1漢」のように任意の桁数の数字と漢字一文字からなる文字列
があるのですが、これに対してremoveやinsertなどさまざまな方法で漢字の部分を削除
しようとしても操作内容が全く反映されていません。
 data->Remove(0,1)などの操作をしても結果が全く変わらないのですがどうしてなのでしょうか?

835 名前:デフォルトの名無しさん :2006/12/16(土) 02:02:37
VC++.net SDIで開発をしてます。

Cxxx myDL;
myDL.DoModal();

で新しいダイアログを表示したいのですが、
新しく表示するダイアログの起動位置はどうやって設定すればよいのでしょうか。

836 名前:デフォルトの名無しさん :2006/12/16(土) 02:34:18
VS.NETとかVC++.NETとか使ってる人で知ってる方にお聞きしたいのですが
既に、VS6.0やVC++6.0がインストールされている環境に
VS.NETやVC++.NETをインストールして、6.0と.NETを併用する事って可能でしょうか?

837 名前:デフォルトの名無しさん :2006/12/16(土) 02:47:14
できる

838 名前:デフォルトの名無しさん :2006/12/16(土) 03:16:27
>>837
そうですか。
同時にインストールすると、動作が不安定になったりとかの
弊害とかはまったく無いですか?

839 名前:デフォルトの名無しさん :2006/12/16(土) 03:32:11
>>834
.NET?
もしそうなら、それ相当のスレに行った方が良いかも。

>>835
OnInitDialog で SetWindowPos

840 名前:デフォルトの名無しさん :2006/12/16(土) 04:50:31
http://www.vipper.org/vip401437.jpg

841 名前:デフォルトの名無しさん :2006/12/16(土) 06:35:03
>>838
関連付けが混乱する弊害は(勿論)ある。

842 名前:デフォルトの名無しさん :2006/12/16(土) 10:23:49
>>834
System::Stringはimmutable、一度作られた文字列の内容を書き換えることはできない。
data->Remove(0, 1)とやってもdataの中身はそのままで、
Removeした文字列が新しく作られて戻り値として返される。
data = data->Remove(0, 1);なんかはどうだ。

843 名前:デフォルトの名無しさん :2006/12/16(土) 10:44:52
>>842
ご助言いただいた方法でうまくいきました。
大変助かりましたありがとうございます。

844 名前:デフォルトの名無しさん :2006/12/16(土) 10:58:19
標準ライブラリで使えるstringを.NET;FrameworkのString形式に変換することは
できないでしょうか?
標準ライブラリのstringを使って生成したWebアドレスを使って
下の文を使いたいのですが型があわないのでエラーが出て困っています。

wrGETURL = WebRequest::Create(sURL);  // sURLはString形式

よろしくお願いします。


845 名前:デフォルトの名無しさん :2006/12/16(土) 11:15:38
std::string s;
gcnew System::String(s.data(), 0, static_cast<int>(s.size()));

846 名前:デフォルトの名無しさん :2006/12/16(土) 14:49:14
>>841
ああ、それはそうですよね。
とりあえずインストールしてみようかな。

847 名前:デフォルトの名無しさん :2006/12/16(土) 16:13:58
Visual Studio 2005 Academic Edition
スタティックライブラリを作ってる。
メインのプロジェクトでlibファイルを作るんだけど、
そのライブラリを同じソリューションのほかのプロジェクトで使いたい。

・いちいちlibファイルをコピーする
・debugフォルダとかにパス(ライブラリの)を通す

のほかにやる方法はない?
あとメインプロジェクトのヘッダファイルも使いたい。


848 名前:デフォルトの名無しさん :2006/12/16(土) 16:28:49
出力先をソリューション内でで共通にしたらいい。
そうすればリンカの追加の依存ファイルのところを$(OutDir)/HogeHoge.libと共通して入力できるはず。

849 名前:デフォルトの名無しさん :2006/12/16(土) 16:34:30
>>848
トンクス!

850 名前:844 :2006/12/16(土) 19:31:45
>>845
gcnewではエラーになったのでnewを用いたらできました。
ありがとうございます。


851 名前:デフォルトの名無しさん :2006/12/18(月) 00:33:21
連続した線をLineToを使って描き、さらにMoveToExを使って次の座標を移動する、
という作業を繰り返し行おうとしたんですけど、
1つ目の連続線を描いた後にMoveToExで座標を変えた場合、なぜか、前の連続線の終点からずっと線が続いており、
全ての連続線が1本の線となってしまいました。

これはどうしてなんでしょうか?

int a=0;
for(int i = 0; i < 1000; i++){
if(temp[i] != a){ a = temp; MoveToEx(hDC, x[i], y[i], 0);}
else{
LineTo(hDC, x[i], y[i]);
}

というプログラムです。tempで連続線の種類を判定します。
種類が違っていた場合は座標を移動させて、次の連続線までLineToで線を描き続きます。あとはそれの繰り返しです。


852 名前:デフォルトの名無しさん :2006/12/18(月) 00:35:40
>>851
>これはどうしてなんでしょうか?
いいか、一つ良いこと教えてやる
プログラムは書いた(記述した)ようにしか動かない

つまりはそういうことだ

853 名前:デフォルトの名無しさん :2006/12/18(月) 03:28:07
そうですよね。
それでは、私がしようとしてる事に対して、このプログラムは間違ってるって事ですよね。
どうしたらいいんでしょうか?

854 名前:デフォルトの名無しさん :2006/12/18(月) 06:07:10
> どうしたらいいんでしょうか?
コードを見直せ。

上限が 1000 だと動作確認し辛いだろうから、
10 ぐらいとか、規模を小さくして希望どおりに動いてるか確認するべし。

855 名前:デフォルトの名無しさん :2006/12/18(月) 08:51:36
ありがとうございます。
やってみます

856 名前:デフォルトの名無しさん :2006/12/18(月) 17:46:35
質問です。
リストコントロールをレポート形式で表示しています。
(2列×10行、チェックボックス付き)
ボタンのクリックイベントで新規行の挿入と同時に
選択状態にしたいのですが特に設定するような関数は
見あたりませんでした。どうやって設定すればよいのでしょうか?


857 名前:デフォルトの名無しさん :2006/12/18(月) 18:51:38
何が?

858 名前:ちょろねずみ :2006/12/19(火) 14:47:27
どなたかご存知の方、教えて下さい。
VC++ 6.0 で作成したレギュラーDLLをVB 6.0 で作成したプログラムから呼ぶと、
「ファイルが見つかりません: test.dll」となります。このDLLとVBプログラム
は、同じファルダにあります。

859 名前:名無し :2006/12/19(火) 15:12:46
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク):親プロセスは1+2+・・・+60の計算を行う。親はその結果を子プロセスに伝え、さらには子はその結果を孫にプロセスに伝える
               親から子、子から孫に伝えられる結果をプロセス間通信で伝える為のプログラムを作成せよ
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: Visual Studio 2003
 [3.3] 言語: C
[4] 期限: 今すぐにでも
[5]特になし


860 名前:デフォルトの名無しさん :2006/12/19(火) 15:43:38
終了コード 0 (0x0)。
が顔文字に見えて仕方がない今日この頃。

861 名前:デフォルトの名無しさん :2006/12/19(火) 18:26:50
常駐プログラムを作成したいと考えてるのですが、
作り方が分かりません。
ある時間が来たら、別のプログラムを実行したり、
時間を記録するようなプログラムを作りたいのです。
教えて下さい。。

862 名前:デフォルトの名無しさん :2006/12/19(火) 19:50:19
>>861
まずはWindowsアプリの作り方を勉強してください

863 名前:デフォルトの名無しさん :2006/12/19(火) 21:27:27
フィールドに配列を宣言しようとすると複合型は認められません手出てくるんだけど、
これって配列をクラスのprivateに設定できないってこと?

864 名前:デフォルトの名無しさん :2006/12/19(火) 21:41:47
VC2005Express Editionを使用しているのですが
win32のwindowsアプリケーションが選択できません。
アプリケーションの種類の欄で選択できるのは、コンソールアプリケーションだけなのですが
windows.hをインクルードで着ませんし。

どなたかご存知の方教えてください。

865 名前:デフォルトの名無しさん :2006/12/19(火) 21:51:35
Express Editionじゃ選択できなくて普通だから気にしなくていい。

866 名前:デフォルトの名無しさん :2006/12/19(火) 21:53:42
>>864
PlatformSDKインストールしてないと、そうなると思う。

867 名前:デフォルトの名無しさん :2006/12/19(火) 22:00:13
つ http://www.microsoft.com/japan/msdn/vstudio/express/visualc/usingpsdk/

MSDNが無料でしかも日本語で読める時代なのに…

868 名前:デフォルトの名無しさん :2006/12/19(火) 22:13:01
>>866,867
ありがとうございます。
DLしてきます。

869 名前:デフォルトの名無しさん :2006/12/19(火) 23:05:56
System::Stringでの文字コードの扱いについて教えてください。

環境:WindowsXPSP2,VisualC++2005 Express Edition

下記のページのサンプルコードを書き換えて日本語(EUC)のHPからデータを
吸い上げるプログラムを書いています。

ttp://support.microsoft.com/default.aspx/kb/815657/ja

StringはUnicodeで宣言されているため、本来取得したい日本語列が
化けて抜けてしまい(おそらくエンコードでエラーとなり消されている)
困っています。

sLine = objReader->ReadLine(); (sLineはString^ 型です)

この部分がWebデータの取得部分のハズですので取得時に
文字コードの変換ができればうれしいのですが、
解決策はありますでしょうか?

よろしくお願いします。

870 名前:デフォルトの名無しさん :2006/12/19(火) 23:45:15
>>869
.Netはスレ違い。

871 名前:デフォルトの名無しさん :2006/12/20(水) 02:10:42
System::String が関係してくる質問が頻繁に出てくる訳だが…

ぐぐれよ。
MSDN ぐらい嫁よ。

872 名前:ちょろねずみ :2006/12/20(水) 19:00:35
教えて下さい。
VB6のプログラムからVC++6で作成したMFCレギュラーDLLを呼ぶと、
「ファイルが見つかりません」エラーになります。
VBのプログラムファイルとこのDLLは、同じ場所にあります。
1. VB側:
(1) サンプルコード
Public Declare Function GetNezumi Lib "choro.dll" () As Long
Sub test()
Dim lngRet As String
lngRet = GetNezumi()
End Sub
2. VC側:
(1)サンプルコード
extern "C" __declspec( dllexport) int WINAPI GetNezumi()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
// 通常関数の本体はこの位置にあります
return TRUE;
}
(2)プロジェクト名:choro
(3)DLLの種類: MFCレギュラーDLL
3. VBでのエラーメッセージの内容
実行時エラー'53':
ファイルが見つかりません: choro.dll

以上、よろしくお願いします。

873 名前:デフォルトの名無しさん :2006/12/20(水) 19:27:57
内容の不明なバイナリをテキストに変換するプログラムを、
VC2005で作成しています。(C++では作成できました。)
バイナリ→アスキーが出来ません。
問題点を指摘いただけませんでしょうか?

CStdioFile fin;
CString text,filename,temp;
edit1.GetWindowText(filename);
if (filename == "") return;
if(!fin.Open(filename, CFile::modeRead | CFile::typeBinary)) {return;}
text = "";
while (fin.ReadString(temp) !=NULL){
text = text + temp + "\r\n";
}
edit2.SetWindowText(text);
fin.Close();

874 名前:デフォルトの名無しさん :2006/12/20(水) 19:29:20
>>872
それだとシステムフォルダにdllを探しに行くと思うよ。

875 名前:デフォルトの名無しさん :2006/12/20(水) 19:37:02
>>873
頭大丈夫か?

876 名前:デフォルトの名無しさん :2006/12/20(水) 19:48:00
>>875
勉強不足なのは判ってるんですがorz
データ解析を全て手で計算してきた弊害ですね。
生まれてくる時代間違えました。すいません。

877 名前:デフォルトの名無しさん :2006/12/21(木) 05:05:33
>>873
> C++では作成できました
って事なら、動くものはコピペ(とちょっとした変更)で出来るかと思うぞ。

ファイル入出力は、fstream / FILE もつかえる。
MFC 使っているなら CString::Format を参考にするのも良いかもしれない。

878 名前:デフォルトの名無しさん :2006/12/22(金) 04:32:37
VC2005でAfxMessageBoxz()使ってメッセージBOX表示するだけで3日もかかったわ。
_T()マクロの存在教えんHELP氏ね!!

879 名前:デフォルトの名無しさん :2006/12/22(金) 16:43:50
ヘルプにも書いてあるが、お前が気付かなかっただけ。人のせいにするな。

880 名前:デフォルトの名無しさん :2006/12/23(土) 00:01:05
MFCでフォルダを削除したいのですが、
APIでいうRemoveDirectoryのような関数はないのでしょうか

881 名前:デフォルトの名無しさん :2006/12/23(土) 00:42:10
>>880
CFile::Remove()じゃディレクトリの削除は出来ないので、無いのでは?
APIじゃダメなの?

882 名前:デフォルトの名無しさん :2006/12/23(土) 08:15:17
プロジェクトが複数あり、一つ一つ変えるのが面倒なのでソリューション全体に、
プリプロセッサの定義や、拡張命令セットを設定したいのですが、
どのようにすればいいでしょうか?

883 名前:デフォルトの名無しさん :2006/12/23(土) 08:48:01
馬鹿だったらひとつひとつ手で変えるしかないだろう。

884 名前:デフォルトの名無しさん :2006/12/23(土) 13:07:30
>>883
馬鹿じゃなかったらどうやるの?

885 名前:デフォルトの名無しさん :2006/12/23(土) 13:17:56
頭つかう

886 名前:デフォルトの名無しさん :2006/12/23(土) 17:51:48
すいません。2年ぶりくらいにプログラミング再開したんですが

昔は
std:vector<int> v;
v[5] = 0;

みたいにすぐに代入できてたんですが、新しくVC2005 買ってみたらエラーでやんのw
宣言だけでは実際にvが確保(インスタンス生成?)されてないみたいなんですけど
この場合どうやって書くのがいいんでしょうか?

コンストラクタで配列の個数を指定するか、一度push_backなりしてやれば、実際に生成されるみたいなんですが
(reserveでは駄目でした)

ダミーをpush_backするのも書き方として汚いし、どうかけばいいの?

887 名前:デフォルトの名無しさん :2006/12/23(土) 18:26:00
よろしくお願いします。

画像処理なのですが、memcpyが含まれるループを回すとき、扱う容量が大きいとときどきフリーズしてしまうのですが、
memcpyはコピーする容量が大きいと、コピーが完了しないうちに次の命令に移ったりしますか?
すぐ次の行にはループの回数を表示するprint文があるだけで、WaitForSingleObjectなどは使っていません。

888 名前:デフォルトの名無しさん :2006/12/23(土) 18:27:07
>>886
vectorのメンバ関数くらい自分で調べろ。

889 名前:デフォルトの名無しさん :2006/12/23(土) 18:28:00
>>887
大方memcpy()であらぬメモリを壊しているのだろ。
アドレスとサイズを出力してよくチェックして味噌。

890 名前:デフォルトの名無しさん :2006/12/23(土) 18:36:16
>>886
あほか

891 名前:デフォルトの名無しさん :2006/12/23(土) 18:41:39
んーわかんね
Vecotrを 配列と同じに書いちゃってるプログラムなんだけどさー
実行すると「確保されてねーよ」って例外エラードカドカでるんだけど、、、

昔はこれで動いてたのに、いつの間にこんな仕様になったんだ?
俺の作ったプログラムじゃないんだけどねw どう直せば動くんかのう

892 名前:デフォルトの名無しさん :2006/12/23(土) 18:43:03
> いつの間にこんな仕様になったんだ?
頼むからこっちでやってくれ
ttp://pc8.2ch.net/test/read.cgi/tech/1164376614/l50

893 名前:デフォルトの名無しさん :2006/12/23(土) 18:59:46
えーそんな酷い話?
vector<byte> buffer;
buffer.reserve(filesize);

ファイルの読み込み先として &buffer[0] ってポインタで渡してるつもりなんだろうけど
コンパイルは当然通って、いざ実行してみるとSTLのソース内で例外エラーが出る

簡単つーなら、対策一言で書いてくれよ。書けるならなwww

894 名前:デフォルトの名無しさん :2006/12/23(土) 19:06:36
標準C++ならC++スレにでも行け
ここはVC

895 名前:デフォルトの名無しさん :2006/12/23(土) 19:09:06
VCのSTLの問題だろw 以前のVCなら通ってたし


896 名前:デフォルトの名無しさん :2006/12/23(土) 19:12:40
1年生からやり直し
出直せ

897 名前:検索中 :2006/12/23(土) 19:15:42
答え書いてよ。やり方わかるならさw
くだらねーレスはいらねーつーの

898 名前:887 :2006/12/23(土) 19:24:47
>>889
レスありがとうございます。
メモリのアドレス等の表示はやったことがありませんでした。
これから勉強します。
もうひとつだけ教えていただきたいのですが、
memcpyはコピー開始で次の行に移るのか、
それともコピー完了で移るのかを教えてください。
バッファを複数使って並列に作業をさせているらしいのですが、
後者であれば意味が無いと思いまして…。
すみませんが、よろしくお願いします。

899 名前:デフォルトの名無しさん :2006/12/23(土) 19:26:50
関数は全てを終えてから制御を返す。
一般に何か並列に作業をしたかったらマルチスレッドにしろ。

900 名前:887 :2006/12/23(土) 19:42:54
>>889
レスありがとうございます。
メモリのアドレス等の表示はやったことがありませんでした。
これから勉強します。
もうひとつだけ教えていただきたいのですが、
memcpyはコピー開始で次の行に移るのか、
それともコピー完了で移るのかを教えてください。
バッファを複数使って並列に作業をさせているらしいのですが、
後者であれば意味が無いと思いまして…。
すみませんが、よろしくお願いします。

901 名前:デフォルトの名無しさん :2006/12/23(土) 19:45:57
DMA転送と勘違いしてるんだと思うよ。

902 名前:デフォルトの名無しさん :2006/12/23(土) 20:07:49
>std:vector<int> v;
>v[5] = 0;
おやおや、>886ではこのように書いているのに
>vector<byte> buffer;
>buffer.reserve(filesize);
>893ではいきなりreserve()していることにしちゃいましたよ。
この馬鹿は構うとどこまで書いてくるんでしょうかね。

903 名前:デフォルトの名無しさん :2006/12/23(土) 20:09:58
>>902
構うなよヴォケ

904 名前:887 :2006/12/23(土) 21:32:53
すみません、間違いました…>>900


>>899
ありがとうございます。
疑問が解けました!

DMA転送の速度等に問題がある場合は、
データ取り込み用のバッファを複数用意して
順番に使うのは効果があるということでしょうか…?

905 名前:887 :2006/12/23(土) 21:43:06
DMA転送は入力デバイスとメモリ間の問題で、
どちらにせよVC上ではマルチスレッドを使わなければ
並列処理のような制御はできないということでしょうか?

906 名前:デフォルトの名無しさん :2006/12/23(土) 21:43:14
print文入れたらかなり遅くなる

907 名前:デフォルトの名無しさん :2006/12/23(土) 21:46:43
マルチスレッド=並列処理

908 名前:デフォルトの名無しさん :2006/12/23(土) 21:49:15
スレ違いだけど
CPUが並列処理できないと擬似マルチ

909 名前:887 :2006/12/23(土) 22:36:26
よくわかっていないためにおかしな発言をしてしまってすみません…。
memcpyの転送元は画像入力デバイス上のメモリにあるフレームバッファで、
転送先はグローバル変数で定義されているようです。
これはDMA転送になると思うのですが、
このような場合、フレームバッファを複数用意して順番に、
データ取り込み→memcpyを行うメリットはありますか?
過去に実験をした人が、バッファの数を1つから2つにして、
順番に使ったところ大きな画像データも扱えるようになったと言っていたのですが…。

910 名前:デフォルトの名無しさん :2006/12/23(土) 23:30:46
そりゃぁ、フレームバッファの仕様次第じゃね?

911 名前:デフォルトの名無しさん :2006/12/24(日) 00:31:27
これからC言語を始めるんですが、2005 Express EditionとToolkit 2003では初心者にはどちらがいいんですか?
今までプログラム等をしたことがなくまったくの初心者です
Expressの方にはエディタも付いているみたいなんですがそれ以外にも違いがあれば教えてください
環境はwindows XPのホームです

912 名前:デフォルトの名無しさん :2006/12/24(日) 00:34:32
Toolkit2003はもう配布してないんじゃなかったっけ?

913 名前:検索中 :2006/12/24(日) 01:03:05
>std:vector<int> v;
>v[5] = 0;
おやおや、>886ではこのように書いているのに
>vector<byte> buffer;
>buffer.reserve(filesize);
>893ではいきなりreserve()していることにしちゃいましたよ。
この馬鹿は構うとどこまで書いてくるんでしょうかね。

ぷ、どっちでもいいでしょ。例なんだし
別にReserveしないで [5]につっこんだから、問題になってるんじゃねーし
まぁ、どうせあんたもわかんねーんだろw

VC2003とかなら通ってたコードだし、調べても
「vectorのiteratorはポインタと同じ(ただし厳密には保障されない)」とか書いてるやつ多いしな
2005のSTLなって実装が変わったって話だし、意識したことない人は知らないんでしょ?w



914 名前:検索中 :2006/12/24(日) 01:05:14
ちなみに、reserveした後、 &buffer[0]してみても領域確保されてないからw
実際に何か突っ込まないと、reserveも未処理のままなんでしょ。



915 名前:デフォルトの名無しさん :2006/12/24(日) 01:49:09
一応.NET 2003あたりからvectorのイテレータはポインタでなくなったと思う。
特にこういうチェックをしていたわけではなかったと思うけど。

916 名前:デフォルトの名無しさん :2006/12/24(日) 03:44:35
「914 = 検索中」じゃないけど
例えば、ファイルからデータを読み込んでそれを
vector<char> vec; に格納する一番エレガントな方法ってどんなでしょうね?
自分の知識だと…
char *pbuf = new char[size];
でバッファを一旦確保して、ifstream::read()等でバッファにデータを読み込んで
それから vector にコピーするって方法しか思いつきません…
ファイルの読み込み関数で直接空のvectorを指定出来れば楽だけど、
それだと関数側でvectorを操作してバッファを確保してもらう事になるんですが
そんな便利な関数ってありましたっけ?

917 名前:916 :2006/12/24(日) 03:49:27
一旦 char *pbuf = new char[size] に読み込んでからは
copy(pbuf, pbuf + size, back_inserter(vec));
でコピー出来るんだけど、ファイルの読み込み関数で直接vector指定ってのは、やはりムリ?

918 名前:916 :2006/12/24(日) 03:59:05
ちょっと話が脱線するけど、そもそも
vectorは「ベクトル」なのか「ベクター」なのか。
自分はベクトルって言ってたのですが、なんか違う様な。
やっはり配列って意味の場合はベクターなのかな。

919 名前:デフォルトの名無しさん :2006/12/24(日) 04:05:25
>>918
厳密に言えばvectorはvectorでしかない

920 名前:デフォルトの名無しさん :2006/12/24(日) 04:13:13
>>919
更に分からなくなったw
参考までにあなたは何と呼んでますか?

921 名前:デフォルトの名無しさん :2006/12/24(日) 04:30:35
ふぇくた〜
ふぇくとr−
ヴぇくた
ヴぇくtr−

うぇww
舌っ足らずなもので・・・

922 名前:デフォルトの名無しさん :2006/12/24(日) 08:16:20
>>918
ベクトルとベクタは違うと思うの?
どちらもvectorなんだけど。

923 名前:デフォルトの名無しさん :2006/12/24(日) 09:14:04
>>922
いや、読みはどうなのかなと。
なんか配列って意味では、ベクタって言ってる人が多い様な気が…
そもそも使い分けが必要なのかとか。
もうどっちでもOKって事で良いですか?

924 名前:デフォルトの名無しさん :2006/12/24(日) 09:26:11
単に発音を日本語表記する際の違いなんだけど、ベクトルっていうと
力学などで使う力の方向などを表す用語と解釈されそうなんで、俺は
ベクタと言ってるな。

925 名前:デフォルトの名無しさん :2006/12/24(日) 09:28:17
>>916-917
std::istream is;
vector<char> vec;

typedef std::istreambuf_iterator<char> isbuf_iter;
std::copy(isbuf_iter(is), isbuf_iter(), back_inserter(vec);

また、std::vectorの要素は連続することが保障されているから、
予めresizeしておけばis.read(&vec[0], vec.size());なんてこともできる。

926 名前:デフォルトの名無しさん :2006/12/24(日) 09:32:54
プログラミングに関係ない話やVCじゃなくてC/C++の話になると人が増えるね
ROMってるやつが大勢いるんだな

927 名前:デフォルトの名無しさん :2006/12/24(日) 11:39:33
>>925
なるほど、色々ありますね。
やっぱC++は複雑だ。勉強になりました。

928 名前:デフォルトの名無しさん :2006/12/24(日) 16:39:16
これの無料版インストールする時みんな登録した?

929 名前:デフォルトの名無しさん :2006/12/25(月) 02:35:54
した

930 名前:デフォルトの名無しさん :2006/12/25(月) 14:10:59
Visual C++2005なんですがツールバーの位置を固定する方法を教えてください。

931 名前:デフォルトの名無しさん :2006/12/25(月) 14:27:20
VC++ 2005 MFCです。
アニメーションコントロールでaviファイル再生、停止後、画面に残っている再生画を
消したいのですが、どうすればいいでしょうか?

932 名前:デフォルトの名無しさん :2006/12/25(月) 14:34:09
VC++2003 MFCで組んだアプリ(Releaseビルド)が異常終了するときにWinXPで
「問題が発生したため〜を終了します。ご不便を・・・」のダイアログが
バグの種類によって表示される場合とされない場合があるようです。

どのような場合に表示されずに、いきなりアプリが落ちてしまうのか
ご存知の方いればお教えください。
今までの感じからは、アプリ本体でなくDLLで異常の場合に表示されないことが
あったような気がしますが検証はできていません。

933 名前:天パ :2006/12/25(月) 16:19:29
VC++で電卓プログラムを作成しなければいけないのですが、全くわからず進みません、自分のためにはなりませんが、コードを教えていただきたいです。

934 名前:デフォルトの名無しさん :2006/12/25(月) 16:23:38
宿題スレに行けカス

935 名前:デフォルトの名無しさん :2006/12/25(月) 17:24:31
かなり初心者の質問なんですが。。。調べ方も分からないのでここで
ここで質問させてください

パソコン上の画面を画像として保存というかその画像をつくるのには
どうしたらいいのですか?よくソースを出す時やmixiの画像とか・・・。
ああいう画像(?)ってどうやったら作れるのですか??
質問の意味がよく分からないかも知れませんが誰か分かる人いましたら
教えてください。


936 名前:デフォルトの名無しさん :2006/12/25(月) 17:28:19
>>935
http://www13.plala.or.jp/kymats/study/MULTIMEDIA/ScreenCapture.html

937 名前:デフォルトの名無しさん :2006/12/25(月) 17:35:14
>>936
スクリーンキャプチャっていうんですね
ありがとうございます!

938 名前:デフォルトの名無しさん :2006/12/25(月) 17:54:01
>>935
つ[PrintScreen]
つ[PC初心者]

939 名前:デフォルトの名無しさん :2006/12/25(月) 23:06:57
本に書いてあるソースを丸写しして警告がでたんだけどvisual C++って誤爆多い?

940 名前:デフォルトの名無しさん :2006/12/25(月) 23:33:02
殆ど無い。とりあえず警告メッセージup

941 名前:デフォルトの名無しさん :2006/12/25(月) 23:54:24
どうせ_CRT_SECURE_NO_DEPRECATEとかPOSIX 関数とかだろ。

942 名前:デフォルトの名無しさん :2006/12/26(火) 00:09:22
webからじゃなくてCDからのインストールでも登録必要なんですか?
ここには登録必要ないって書いてあるんですが聞いてみたら必要っぽい回答が帰ってきたんですが・・・

ttp://homepage3.nifty.com/mmgames/c_guide/p_vc2005.html

943 名前:デフォルトの名無しさん :2006/12/26(火) 00:21:13
そんな登録もできないほど後ろめたい人生を送っているのか。

944 名前:デフォルトの名無しさん :2006/12/26(火) 00:23:07
>>943
いろいろ大変なんdねすよ・゚・(つД`)・゚・

945 名前:デフォルトの名無しさん :2006/12/26(火) 00:30:07
個人情報なんてどうせどこかから漏れるもんなんだから、気にするな。
死ぬしか方法がなくなるぞ。

946 名前:デフォルトの名無しさん :2006/12/26(火) 00:47:59
で結局CDからでも登録必要なんですか?

947 名前:デフォルトの名無しさん :2006/12/26(火) 00:51:20
Webから公開当初ダウンロードしたものだけど要らんかったよ

948 名前:デフォルトの名無しさん :2006/12/26(火) 00:55:57
ありがとうございます
CDからインスコして見ます

949 名前:デフォルトの名無しさん :2006/12/27(水) 20:58:01
質問!
プロパティページ内にタブコントロールを表示することってできないんですか?
シートのリソースにタブはっ付けてみたんだけど表示されない・・・orz

950 名前:デフォルトの名無しさん :2006/12/27(水) 22:13:18
できる

951 名前:デフォルトの名無しさん :2006/12/27(水) 22:30:26
>>949
ttp://m--takahashi.com/bbs/default.aspx?c=14109

952 名前:デフォルトの名無しさん :2007/01/01(月) 03:07:20
age

953 名前:デフォルトの名無しさん :2007/01/03(水) 01:50:55
新年明けましておめでとうございます。
VC++6.0 ダイアログベースで開発を行っています。

垂直スクロールバーを設置したいと思い、
右クリック→スタイル→垂直スクロールバー
にチェックをいれ、OnVScroll関数に必要な処理を記述し
実行したのですが、起動するアプリに垂直スクロールバーが表示されません。

水平スクロールバーは表示されるのですが、なぜか垂直スクロールバーは表示されません。
解決策をご存知の方、ご教授願います。

954 名前:953 :2007/01/03(水) 03:29:03
色々調べてみた結果、一度最小化をして最大化をすると
垂直スクロールバーが表示されるようになりました。
ただ、SetWindowPosやMoveWindow等でサイズを変更すると、
垂直スクロールバーが消えてしまいます。
サイズ変更後は最小化や最大化をして再描画してもスクロールバーは表示されません。
どなたか詳しい方宜しくお願い致します。

955 名前:デフォルトの名無しさん :2007/01/03(水) 08:57:11
右クリック→スタイル→垂直スクロールバー

これででる
でなかったらでたやつを自分で消してるんだろう

956 名前:デフォルトの名無しさん :2007/01/03(水) 09:52:58
>>954
SIF_DISABLENOSCROLL
これ

957 名前:デフォルトの名無しさん :2007/01/04(木) 18:49:11
子スレッドにON_MESSAGEって使えます?
C2440のエラーでCWndに変換できないとかでてくるんですが
子スレッドにメッセージを配置する場合メインとは違うなにか書き方があるんですか?

958 名前:デフォルトの名無しさん :2007/01/04(木) 19:00:45
>>957
ON_THREAD_MESSAGE

959 名前:デフォルトの名無しさん :2007/01/05(金) 17:00:53
(VC++.net)
DirectXでIMEエディットボックスを使ったプログラムを組んでいます。
テキスト入力後も日本語入力(半角/全角キー)のままだとキー周りが上手く動きません。
日本語入力対応に組み替えてもいいのですが分岐が多くなるため避けたいです。
そこでテキスト入力後に半角英数入力になるようにしたいのですがどうすればいいのでしょうか。

DirectXのプログラムですがVC++で出来ると考えこちらに質問させていただきました。
もし違ってたら申し訳ありません。

960 名前:デフォルトの名無しさん :2007/01/07(日) 01:56:06
スピンコントロールの使い方を教えてください
ネット検索でエディットコントロールの右にくっつける方法は分かりましたが、
どうやって範囲内でのカウントアップ&ダウンを行うのかが分かりません
やりたいことは単純で、10〜100の範囲で数字を1ずつ上下させ、OKボタンを
押下した時にその値を基に計算を行うだけです
どうすれば範囲内で値を上下させることができますか?

961 名前:デフォルトの名無しさん :2007/01/07(日) 09:34:07
>>960
ttp://www.kumei.jp/c_lang/sdk3/sdk_205.htm
こういうことか?

962 名前:デフォルトの名無しさん :2007/01/07(日) 12:06:48
VC++ 2005 EEなんですが、調べてみたら、MFCが入ってないから
FindWindowとかのWin32APIが使えず、PlatformSDKでないと使えないとわかりました。
これであってますか?
となるとプロジェクトの新規作成でWindowsフォームアプリケーションでは
Win32APIが使えない、ということですよね。

963 名前:デフォルトの名無しさん :2007/01/07(日) 12:27:05
でたらめ言うのもほどほどにしてほしい。

964 名前:デフォルトの名無しさん :2007/01/07(日) 12:29:10
PlatformSDK導入しろ。

それとWindowsフォームアプリケーションは.net仕様。

965 名前:デフォルトの名無しさん :2007/01/07(日) 13:00:22
C++って色々種類があるんでしょうか?VCとか
その中で一番優良なものを教えて頂きたいんですが宜しくお願いします

966 名前:デフォルトの名無しさん :2007/01/07(日) 13:09:45
十人十色です

967 名前:デフォルトの名無しさん :2007/01/07(日) 13:58:49
>>965
C++言語の規格は1つ。
C++コンパイラはいろんなメーカーから出てる。
VC++はその一つ。(コンパイラだけでなく、エディタ等も含んだ統合開発環境)
優良の基準がわからんので、どれがいいかは何とも言えん。

968 名前:デフォルトの名無しさん :2007/01/07(日) 14:06:12
>>962
API が使えないのはPlatformSDKが入ってないから。
MSのサイトから無料でダウンロード可能。

MFCはVSのstandard edition以上に含まれるC++のライブラリで
多くのAPI 呼び出しの煩わしさを軽減してくれるが嫌ってる人も多い。
これはSDKを入れても使えない。

969 名前:デフォルトの名無しさん :2007/01/07(日) 15:46:21
VisualStudio.net 2003を使っているんですが、gccなどにあるisinf関数のように
引数が無限値であるかどうかを判定する関数ってVC++にあるんでしょうか?

970 名前:デフォルトの名無しさん :2007/01/07(日) 15:55:48
IsInfinity?

971 名前:960 :2007/01/07(日) 16:09:37
>>961
そうです、ありがとうございます

「猫でもわかるプログラミング」ですか・・・
これで分からなかったら自分は猫以下ってことですね(汗

972 名前:デフォルトの名無しさん :2007/01/07(日) 16:09:50
>>968
それC99だからVCはサポートしてない。
独自拡張の_finiteを使う。

973 名前:デフォルトの名無しさん :2007/01/07(日) 16:10:36
あ、ミスった。>>969ね。

974 名前:969 :2007/01/07(日) 17:24:43
>972
ありがとうございます!

975 名前:デフォルトの名無しさん :2007/01/08(月) 06:01:14
【ネガティブ派遣根性チェック】

3つ以上、思い当たる点があればアナタの性格はひん曲がっており、ネガティブ負け組人生を歩んでいます。

□偽装派遣先の社員の意見にはたとえ間違っていても反対しない
□偽装派遣先から「いつまでもここで仕事してくださいね」と言われるようになりたい
□自社に仕事を持ち帰れるように言われるとムカつく
□自社で仕事なんてできるわけがない
□派遣/受託の差異を指摘する人間はムカつく
□偽装派遣先には仕事だけでなく自分のプライベートについても指示して欲しい
□自分の月額金額を知らない
□偽装派遣先社員より自分の生涯収入が低いのは当然だ
□偽装派遣先に尻尾を振り、いつまでも一緒に仕事をすることが大切だ
□今のプロジェクトが終わっても同じ偽装派遣先に常駐したい


976 名前:962 :2007/01/08(月) 10:54:19
レスありがとうございました。よくわかりませんが。
とりあえず、.net仕様でAPIを使える方法を探してみます。

977 名前:デフォルトの名無しさん :2007/01/08(月) 17:21:09
ウィンドウ(コントロール含む)のハンドルというのは、
IDのようなものだと考えてOKですか?

978 名前:デフォルトの名無しさん :2007/01/08(月) 17:33:05
VC++2003でコンボボックスコントロールに初期データをセットする方法を教えてください

データ値(変更なし)をプロパティウィンドウのData項目に指定区切り文字(セミコロン?)で
区切って10〜20件程度入れているのですが、それが反映されずに困っています
(実行した時にコンボボックスに表示されません)
コンボボックスのスタイルはダウンリストで選択オンリーにしてます
他に何か処理が必要なのでしょうか?
(参考としている書籍やサイトではコレでできているようなのですが・・・・・・)

979 名前:デフォルトの名無しさん :2007/01/08(月) 17:59:49
>>977
いいえ、窓についている取っ手(=ハンドル)のようなものだと思ってください。
#必要に応じて窓をコントロールする取っ手を追加できるところがアナロジーにならないけれど。

980 名前:デフォルトの名無しさん :2007/01/08(月) 18:34:25
>>978
区切りって改行じゃなかったっけ?
あと、リストの高さを調整し忘れてないか?

981 名前:デフォルトの名無しさん :2007/01/08(月) 20:17:05
外人の書いた、VC6 C++のプログラムで日本語が使えるようにコンパイルスイッチを
UNICODEにしたらコンパイルエラーを100個以上も出しやがった、じっくり何処が悪いのか
検証も兼ねて主導でプリフィックスにTEXTとか(LPWSTR)付けてたが、流石に飽きてきた
残り30個くらいなのだが、プリフィックスを簡単に変換する方法はないですか?

982 名前:デフォルトの名無しさん :2007/01/08(月) 21:13:39
別にUnicodeじゃなくても日本語使えるけどな。

983 名前:デフォルトの名無しさん :2007/01/08(月) 23:08:21
>>980
レス、ありがとうです
その辺をもう一度調べ直してみます

984 名前:デフォルトの名無しさん :2007/01/08(月) 23:12:05
TEXT なら LPWSTR じゃなく LPTSTR じゃね

985 名前:デフォルトの名無しさん :2007/01/08(月) 23:18:44
>>981
正規表現を使って置換


986 名前:デフォルトの名無しさん :2007/01/08(月) 23:19:23
うむ。
LPWSTR に固定するなら L"hoge"; のほうがry

987 名前:デフォルトの名無しさん :2007/01/08(月) 23:32:48
981です
みんさんどうもありがとう
>>982
手っ取り早く日本語に出来る方法があれば教えてください
>>984
そこら辺が少し曖昧なので、学習中です
>>985
それも考えましたが、学力が無いので最初の"と二番目の"にTEXTとか(LPWSTR)
付いてしまい、叶いませんでしたせいぜいgrepで""の付いてる行を抜出す程度の
能力なのでスマスソ良かったら教えてくださいませませ
>>986
そうなんですか、そもそもこの型変換って作業は変数を固定することと考えればOK?
なのでしょうか、pinとかptrとかも出てきますよね、
あ〜頭が混乱します。



988 名前:デフォルトの名無しさん :2007/01/09(火) 00:17:33
>>987
VC6の正規表現の仕様忘れたけど
置換前 "[^"]*"
置換後 TEXT(\0)
でいけるんでは?
もっとも、これだと#includeの""や既にTEXT("hoge")になっている部分も置換されてしまうので
注意が必要だが…

989 名前:デフォルトの名無しさん :2007/01/09(火) 00:44:41
>>988
987です
使えそうですねサンクス

990 名前:デフォルトの名無しさん :2007/01/09(火) 00:57:41
>>987
_UNICODEじゃなく_MBCSにしたほうが修正量はずっと少ないと思う。
現状で日本語がでないのはUNICODEのせいじゃなくリソースの
言語設定が日本語になってないからじゃないかな。
今後のこと考えるなら_UNICODEでも良いけどね。

991 名前:デフォルトの名無しさん :2007/01/09(火) 10:45:08
_MBCSだと、2バイト文字を考慮してない文字列処理があるとまずいと思うけど。

992 名前:デフォルトの名無しさん :2007/01/09(火) 18:22:10
>>987です、>>990さん>>991さんどうもありがとうございます。
質問の趣旨が少し変わってきましたけど、外人さんの作ったVC6のプログラムで
日本語を使う方法を教えてもらえませんか。
コンパイルの設定を具体的にどの様に設定したらいいのでしょう?
ソースはVC6で書かれているのですが、自分はVS2005しか持っていません

関係しそうな設定ですが
構成プロパティ全般の設定で
文字セット  マルチバイト文字セットを使用する
共通言語ランタイムサポート  共通言語ランタイムサポートを使用しない
大雑把ですがこのようになっています。

993 名前:デフォルトの名無しさん :2007/01/09(火) 18:43:33
まず2005用のサンプル探して比べてみる

994 名前:デフォルトの名無しさん :2007/01/09(火) 18:56:30
VC2005EEのビルド作業の最後に「"user32.lib"が開けません」と出たのですが
.NET2003を消さずにVC入れたのがいけなかったみたいで…
どこにパスを書いたらいいのかが分からないです。教えて偉い人!


995 名前:デフォルトの名無しさん :2007/01/09(火) 19:14:04
.NET2003は関係ない。

これ見て設定しる。
http://www.microsoft.com/japan/msdn/vstudio/express/visualc/usingpsdk/

996 名前:デフォルトの名無しさん :2007/01/09(火) 20:07:10
>>992
試しにドイツ語のVC6 MFCプロジェクト(_MBCS定義済み)を持ってきて
VC8(VS2005)で開き「バージョン情報ダイアログ」を日本語化してみた。
手順
1.プロジェクトのプロパティでリソースのカルチャを日本語にする
2.リソースビューでIDD_ABOUTBOXをシングルクリックしプロパティのLanguageを日本語に
3.リソースビューでIDD_ABOUTBOXをダブルクリックしFontを日本語Fontに変更
4.ダイアログに適当に日本語を設定しビルド

これで日本語が表示されました。あとPG内で_tsetlocaleはしておいたほうが無難。
UNICODEとMBCSで、どっちが楽かはソース見ないと判断できない。

997 名前:デフォルトの名無しさん :2007/01/09(火) 21:20:51
>>96
>>992です
ありがとう
1.プロジェクトのプロパティでリソースのカルチャを日本語にする
は直分かったのですが
2.3.のリソースビューってのは何処にあるのでしょうか?


998 名前:デフォルトの名無しさん :2007/01/09(火) 21:29:22
リソースビュー分かりました


999 名前:デフォルトの名無しさん :2007/01/09(火) 21:32:58
>>995
有難うございました。本当に2003は関係無く出来ました。
もう一つだけ質問なんですけど、「指定されたファイルが見つかりません」と
出るのは置いてる位置が悪いんでしょうか。デスクトップに置いてるファイルで
ビルドを自動でやってくれるファイルなんですけど

1000 名前:デフォルトの名無しさん :2007/01/09(火) 21:34:32
質問です。板違いだったらごめんなさい。
OS:winXP
コンパイラ:Borland C++Compiler 5.5
プログラム:#include <stdio.h>

    int main(void)
    {
  printf("hello, world\n");

  return 0;
    }
エラー:エラー E2209 a.c 1: インクルードファイル 'stdio.h' をオープンできない
   警告 W8065 a.c 5: プロトタイプ宣言のない関数 'printf' の呼び出し(関数 main )
   *** 1 errors in Compile ***

その他状況:bcc32.cfgとilink32.cfgはcfgファイルになっており、binの中に入っています。内容に間違いもありません。
      pathの末尾には;c:\borland\bcc55\binを付け加えています

 あと気になっていることで、stdio.hがローカルディスク(c)の中にないか、検索したのですが、見つかりませんでした。
 ダウンロードも何度かやり直してみたのですが、どうにもなりません。
 どうすればよいでしょうか。教えてください。お願いします。



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