★初心者にVisual C++を教えるスレ★ Part38
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2011/11/03(木) 00:54:48.61お兄ちゃんお姉ちゃん達が優しく、時には厳しく回答してくれるスレッドです。
■質問するにあたって
・エラーや警告のときはエラーメッセージを書きましょう。
・開発環境も書きましょう、特にWindowsForm、MFC、Win32アプリケーションの区別。
・できるだけ具体的に。
質問の仕方については次のページが大変参考になります。
http://www.hyuki.com/writing/techask.html
■回答するにあたって
・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。
(MSDNのどの項目だとか、何のキーワードでGoogleするとか)
・ネタや煽りは軽く流しましょう。
【過去スレ】
Part37 http://hibari.2ch.net/test/read.cgi/tech/1299982561/
Part36 ttp://hibari.2ch.net/test/read.cgi/tech/1273939582/
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/
0002デフォルトの名無しさん
2011/11/03(木) 00:57:26.21■MFC相談室 mfc22d.dll■
http://hibari.2ch.net/test/read.cgi/tech/1316080347/
Win32API質問箱 Build97
http://hibari.2ch.net/test/read.cgi/tech/1318439361/
【C++】 DirectX初心者質問スレ Part36 【C】
http://hibari.2ch.net/test/read.cgi/tech/1319032065/
C言語なら俺に聞け(入門篇) Part 54
http://pc12.2ch.net/test/read.cgi/tech/1254829314/
C++相談室 part91
http://hibari.2ch.net/test/read.cgi/tech/1315922506/
C/C++の宿題片付けます 152代目
http://hibari.2ch.net/test/read.cgi/tech/1312201995/
0003デフォルトの名無しさん
2011/11/03(木) 00:58:12.13MSDN ライブラリ
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
0004デフォルトの名無しさん
2011/11/03(木) 00:58:56.91Win7の64bitマシンを使っています
Visual C++2010を使用しています。
アクティブソリューションぷらっとホームには、x64を追加することが出来たのですが
その下のプロジェクトのぷらっとホームにx64が出ません。何故ですか?
http://up3.viploader.net/ippan/src/vlippan243062.jpg
0005デフォルトの名無しさん
2011/11/03(木) 02:31:12.00http://hibari.2ch.net/test/read.cgi/tech/1299982561/938
にょろん?
0006デフォルトの名無しさん
2011/11/03(木) 03:33:05.20乙です
40代のLinux鯖屋ですが未だにVC6でたまに仕事がありますw
未だに作法がわからず、とりあえず動くものを納品してます。
よろです。
0007デフォルトの名無しさん
2011/11/03(木) 07:30:15.00それわたしです
SDK入れたり色々してみたんですが
やっぱりうまく行きません
0008デフォルトの名無しさん
2011/11/03(木) 17:58:21.43基本ネットにつないであるデスクトップの32ビットVistaに入れたVC++2008EEはthis->とか入れたらドロップリストみたいなのが出て自動入力できるんですが
ノーパソの64ビット7に入れたVC++2010EEでは全く出てくれません。どうしてでしょうか?
0009デフォルトの名無しさん
2011/11/03(木) 18:48:11.40「#include <」とか、
「#include "」とかって書くとどうなります?
2010からヘッダファイルもインテリセンスしてくれるので動作確認できます。
ちなみに、インテリセンスさんは頻繁に気絶されるので、動かないときは再起動してあげてください。
↑で何も変化ないなら、設定切れてるかインストール失敗したのでは?
0010デフォルトの名無しさん
2011/11/03(木) 18:54:46.30ありがとうございます
#include <と書くとヘッダファイルのドロップリストがいっぱいでてきました
でもメンバは全く出ないのです
0011デフォルトの名無しさん
2011/11/03(木) 18:56:42.390012デフォルトの名無しさん
2011/11/03(木) 19:08:29.440013デフォルトの名無しさん
2011/11/03(木) 19:47:33.800014デフォルトの名無しさん
2011/11/03(木) 20:50:26.090015デフォルトの名無しさん
2011/11/05(土) 08:00:18.97ttp://msdn.microsoft.com/ja-jp/library/system.windows.forms.methodinvoker.aspx#Y0
コンパイルしようとするとかっこの対応関係でエラーが出てしまいます。
どなたかC++での書き方を教えて頂けませんか。
0016デフォルトの名無しさん
2011/11/05(土) 11:21:49.18匿名メソッドって使えたんだっけ?
0017デフォルトの名無しさん
2011/11/05(土) 12:05:03.42サンプルのままやろうとしました。
C++/CLIはサンプルが少ないので、いつもC#を参考にして色々試しているのですが、今回はどう変えればいいのか分かりませんでした。
0018デフォルトの名無しさん
2011/11/05(土) 13:33:37.66※ this.Invoke の行から始まるヤツのこと
でもデリゲートはあったはずだから、匿名メソッドの部分を通常?の関数?にして
やってみればいいんじゃね。それも分からないなら、デリゲートをちゃんと勉強してからだと思う。
で、あやふやな記憶で書いてる。間違ってたらごめん。
0019デフォルトの名無しさん
2011/11/06(日) 22:05:29.05関数化は簡単でしたが、関数で引数を受けなければならない場合、Invokeの引数は(デリゲートのインスタンス,引数)となるんですね。
アドバイスを下さった方々、ありがとうございました。
0020デフォルトの名無しさん
2011/11/06(日) 22:40:02.81遅いわよ>>1乙
0021デフォルトの名無しさん
2011/11/07(月) 00:22:30.650022デフォルトの名無しさん
2011/11/07(月) 00:40:07.38try 〜 catch とか古くは do 〜 while(false) を使って流れの中では正常ケースしか存在しないようにするとかも。
0023デフォルトの名無しさん
2011/11/07(月) 00:40:30.80o常套
0024デフォルトの名無しさん
2011/11/07(月) 01:24:06.69頭では理解しているのですがいざこういう処理をするプログラムを書けって言われて書けないことが多々あるのですがまずいのでしょうか?
また対策として何かありますか?
0025デフォルトの名無しさん
2011/11/07(月) 01:29:12.57それが普通。
その度に調べて自分の血肉にしていくしかない。
0026デフォルトの名無しさん
2011/11/07(月) 01:37:02.45自分語りのつもりはないのですが学生時代はアホだったものでこれも向いてないのかなと不安になりました
素早いレスありがとです
0027デフォルトの名無しさん
2011/11/07(月) 23:18:21.830028デフォルトの名無しさん
2011/11/11(金) 01:06:18.33これの中身を外部のプログラムなどから覗くことは出来ないでしょうか。
プロジェクトファイルが XML で書かれているので、その中に定義があると思ってたのですが、見あたらなかったです。
0029デフォルトの名無しさん
2011/11/14(月) 18:27:40.34なんという関数を利用すれば解決できるかわかりません。
び出し階層、ログ、アサート、assertで検索してみましたが、節穴でみつけられていません。
ヒントをください。
0030デフォルトの名無しさん
2011/11/14(月) 19:13:20.15スタックトレースという
こういうのを使ってごにょごにょやるようだ
http://msdn.microsoft.com/ja-jp/library/cc428994.aspx
0031デフォルトの名無しさん
2011/11/14(月) 23:56:35.07メモリリークの検出方法を調べていたんですが。
�@最初に_CrtSetDbgFlagを記述する方法と
// メイン関数
int main(int argc, char* argv[])
{
_CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );
:
}
�A最後に_CrtDumpMemoryLeaksを呼び出す方法があるようなのですが
int main(int argc, char* argv[])
{
:
_CrtDumpMemoryLeaks();
}
�@だとメモリリークが検出されず�Aだと数箇所のメモリリークが検出されてしまいます。
どちらが信用できるのでしょうか?ソースを追ってみたところ
メモリリークが発生しそうな箇所はありませんでした。
0032デフォルトの名無しさん
2011/11/15(火) 08:09:01.13mainのスコープのデストラクタは_CrtDumpMemoryLeaks();を呼んだ時点で
まだ呼ばれてはいないぞ。ヒープの解放予定のあるオブジェクトがあったら
当然誤検知
だからどちらも信用できる
ただ�@のほうが自動で全部終わったあとに調べるから使い勝手はいいと思われ
0033デフォルトの名無しさん
2011/11/16(水) 12:45:25.00そもそも、ファイルの内容がXMLとしておかしくないかチェックしてくれる便利なライブラリを紹介いただけないでしょうか?
<root>
<piyo>ababababa<hoge></piyo>
Hello World</hoge>
</root>
の場合は、<piyo>に値があるのに、閉じられる前に次のタグが始まっているからパースエラー、というようなチェックをして欲しいのです。
よろしくお願いします。
003433
2011/11/16(水) 13:07:54.11rapid_xml(もしくは、boost::property_tree)でxmlのパースができることを見つけたのですが、閉じタグをチェックしてくれないので少し困っています。
ここまでのチェックは、他のライブラリも含めて、してくれないものなのでしょうか?
<root>
<aa>えー</cc>
<bb>びー</bb>
</root>
この例の場合、<aa>の閉じタグが何故か</cc>になっているのでパースエラーになってほしいのですが、rapid_xmlだと問題なしにされてしまいます。
欲を出すと、boostライセンスのように取扱が簡単なものがよいのですが…。
MSXMLも試してみます。(…MSのは、どうしてこんなに複雑なのだろう…。)
003533
2011/11/16(水) 13:10:16.30【初心者歓迎】C/C++室 Ver.76【環境依存OK
↑のスレッドのつもりで書き込んでいました。申し訳ないです。あちらへ移動します。
0036デフォルトの名無しさん
2011/11/16(水) 16:12:15.70========== ビルド: 1 正常終了、0 失敗、0 更新不要、0 スキップ ==========
↓
========== ビルド: 正常終了 1、失敗 0、更新不要 0、スキップ 0 ==========
0037デフォルトの名無しさん
2011/11/16(水) 16:17:52.350038デフォルトの名無しさん
2011/11/16(水) 16:54:55.76msenvui.dllの中に入っている文字列リソースのようなので、
それを自己責任で書き換えてしまえばできるかもしれないけど。
0039デフォルトの名無しさん
2011/11/16(水) 19:38:05.16と某スレでは書きます。
0040デフォルトの名無しさん
2011/11/16(水) 22:49:02.71"z:\test\"という共有フォルダを作成したい。
#include "stdafx.h"
#include <direct.h>
int _tmain(int argc, _TCHAR* argv[])
{
_mkdir("z:\test\");
return 0;
}
あとは共有設定したいのですが続きをお願いします。
0041デフォルトの名無しさん
2011/11/16(水) 22:58:37.710042デフォルトの名無しさん
2011/11/17(木) 04:52:33.57net share ...
のバッチで十分な気がしないでもない
0043デフォルトの名無しさん
2011/11/17(木) 10:09:42.41構成プロパティ>リンカー>入力>追加の依存ファイル
とは、何を入力する欄なのですか?
visual c++ 2010 Express を利用してプログラムの学習をしていて、
boost c++ libraryをインストールした際は、
Program Files\Microsoft SDKs\Windows\v7.0A
にヘッダとライブラリをコピーするだけで利用できたのに対して、
libxml2をインストールした際は、上記に加えて、
構成プロパティ>リンカー>入力>追加の依存ファイル
に対して、libxml2.lib を追記しないとリンクに失敗して、LNK2001・LNK2019が発生していたことが質問の背景にあります。
以前、何かのまねをしてプロジェクトを作っていたときに、
追加の依存ファイルに、ws_32.lib だったかを追記するようにという記述を思い出したので、
試してみたら、リンクエラーが無くなって解決できました。
そして、逆に、どうして必要・不要なのか気になってきました。
よろしくお願いします。
0044デフォルトの名無しさん
2011/11/17(木) 10:36:02.61ライブラリは明示的にリンクしろと書かないかぎりリンクされない
追加の依存ファイルはリンクするライブラリを指定する場所
boostはヘッダに
#pragma comment(lib, "〜.lib")
と書いてリンカに自分のライブラリを指定しているから追加の依存ファイルに書かなくてもリンクが通る
0045デフォルトの名無しさん
2011/11/17(木) 19:13:06.020047デフォルトの名無しさん
2011/11/19(土) 14:06:07.11エラー出力の方法を模索しています
コンソールアプリならコンソールに
GUIアプリならアラートという風に出力先を静的に切り変えたいのですが
そのためのdefine定義がVCに既定であったりするのでしょうか?
0048デフォルトの名無しさん
2011/11/19(土) 14:20:39.40ちょっとプロジェクト作ってプリプロセッサの定義を見れば書いてあるぞ。
でもそんなんで切り替えるんじゃなくて、例外かなにかをそのクラスを使う側で捕捉できるようにして、
捕捉した側で出力を行うようにした方が設計的に良くないか?
0049デフォルトの名無しさん
2011/11/19(土) 14:50:36.64外部にまでひっぱりだすのが面倒臭いのでクラス内に直接書くつもりです。
本来のエラー処理の関してはおっしゃる通りだと思います。
0050デフォルトの名無しさん
2011/11/20(日) 07:34:01.71というか、やり方がわかりません。
教えて欲しいです。
C言語であれば、全ての関数はグローバル的な感じなので、適当なファイルにmain()を作って、そこから呼び出すだけだったのですが…。
自宅で趣味でプログラムをしているだけなので、殆ど試験をしていません。
が、何か寂しいです。
何かよい方法があれば教えてください。よろしくお願いします。
0051デフォルトの名無しさん
2011/11/20(日) 11:23:37.44#define private public
#endif
とか。
0052デフォルトの名無しさん
2011/11/20(日) 11:36:14.210053デフォルトの名無しさん
2011/11/20(日) 14:27:27.61プロパティページの追加のライブラリィディレクトリの項目にそれらが入っている場所
が指定されていたんですが それらを開けなくて困ってます
0054デフォルトの名無しさん
2011/11/20(日) 17:07:14.00Visual studio 2008 pro
Windowsフォームアプリケーション
【やりたいこと】
ソフト起動時から、ボタンを押した時点までの時間を表示するプログラムを作りたい
【ソース】
#include <windows.h>
#include <mmsystem.h>
#pragma comment (lib, "winmm.lib")
#include <time.h>
(中略)
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
DWORD start;
start = timeGetTime();
}
private: System::Void button13_Click(System::Object^ sender, System::EventArgs^ e) {
DWORD end;
end = timeGetTime();
MessageBox::Show(String::Format("{0}msです。",end - start));
【出力】
'start' : 定義されていない識別子です。
Loadで宣言した関数が定義されてないと言われるのを解消したいんですけどどうすればいいですか?
0055デフォルトの名無しさん
2011/11/20(日) 17:19:45.680056デフォルトの名無しさん
2011/11/20(日) 17:26:37.28できました!ありがとうございます。
0057デフォルトの名無しさん
2011/11/20(日) 19:25:22.58種類:DLL
ref classに配列を定義する場合、
staticとして定義したものと同様に扱えて(以前の内容を保持して)、
かつ、各インスタンスからは独立するようにするのはどうしたらいいのでしょうか?
0058デフォルトの名無しさん
2011/11/20(日) 20:02:53.88ベターCとして使っています。
一度作った構造体にメンバを追加したのですが、デバッガでステップを
追うと、どうもメンバが更新前の古いままのようです。
キャッシュが効いているという事でしょうか?
そのキャッシュは、どこで手動更新出来るのでしょうか?
0059デフォルトの名無しさん
2011/11/20(日) 20:20:59.14そんなもん、自分で調べろよ。いや、本当に。
http://www.google.co.jp/#sclient=psy-ab&hl=ja&source=hp&q=vc+.pdb&pbx=1&oq=vc+.pdb&aq=f&aqi=g-C2&aql=&gs_sm=e&gs_upl=11418l11721l1l12597l3l3l0l0l0l2l174l497l0.3l3l0&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=775e48388cd17464&biw=1642&bih=812
http://www.google.co.jp/#sclient=psy-ab&hl=ja&source=hp&q=vc+.lib&pbx=1&oq=vc+.lib&aq=f&aqi=g1g-C3&aql=&gs_sm=e&gs_upl=13554l14989l2l15321l6l6l0l0l0l0l207l795l2.3.1l6l0&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=775e48388cd17464&biw=1642&bih=812
>>57
それが何やるクラスなのかわかんないからアレだけど、
その配列を保持するのを独立させてシングルトンにしてみたら?
で、各クラスはそれを参照するようにするとか。
>>58
一度、クリーンするとか debug/release フォルダを削除してからしてリビルドしてみてもそうなる?
たぶん古い情報が .pdb かなにかに残ってるんじゃね。
0060デフォルトの名無しさん
2011/11/20(日) 20:59:47.32public:
static array<T>^ arr = gcnew array<T>(N){...};
006158
2011/11/20(日) 21:52:29.05クリーンすると言うのはどういう事でしょうか?
ディレクトリ削除、これは私にもすぐ理解出来たので、同じ問題が
出たらやってみようと思います。
で私は、問題の出た周辺に意味のない代入式を色々置いたり
メンバの変数名を変えたりして、無理やりねじ伏せました。
お答え有り難うございました。
#と言うか、よく起きる事なのでしょうか。
0062デフォルトの名無しさん
2011/11/20(日) 22:28:14.26>クリーン
オブジェクトファイル等の中間生成物や、exeファイル等を
削除する。
手作業ではなくて、ビルドメニューにそういうのがある。
006358
2011/11/21(月) 23:42:06.24ビルドと言うメニュー自体ないのですが・・・と思ったら、
上級者設定にしたら出現しました。
なるほど。
しかし、今度はデバッグ中に構造体のメンバの値が
表示されなくなりました。先頭アドレスのみ表示されて。
慌てて基本設定に戻しましたが復元せず。
どこをいじれば良いのでしょうか。
0064デフォルトの名無しさん
2011/11/22(火) 00:47:04.440065デフォルトの名無しさん
2011/11/26(土) 11:18:25.950066デフォルトの名無しさん
2011/11/29(火) 00:00:20.94先日勢いでVR920というセンサー付きのヘッドマウントディスプレイを購入しました。
公式サイトhttp://www.vuzix.com/_jp/support_downloads_drivers.html
からSDKをDLしてHelloTracker3というサンプルを参考に頭の向きや角度の数値を取得する最低限のコードを模索しようとしていた所
そもそも公式のHelloTracker3がコンパイル出来ず
1>cl : コマンド ライン warning D9035 : オプション 'Wp64' の使用は現在推奨されていません。今後のバージョンからは削除されます。
1>stdafx.cpp
1>c:\program files\vuzix corporation\vuzixsdk\examples\hellotracker3\stdafx.h(34) : fatal error C1083: include ファイルを開けません。'afxwin.h': No such file or directory
1>ビルドログは "file://c:\Program Files\Vuzix Corporation\VuzixSDK\examples\HelloTracker3\Debug\BuildLog.htm" に保存されました。
1>HelloTracker3 - エラー 1、警告 1
========== すべてリビルド: 0 正常終了、1 失敗、0 スキップ ==========
というエラーが表示され完全に出鼻をくじかれてしまいました。
調べてみた結果MFCというものを利用しているのでExpress2008では開発出来なさそうという事実に行き着いてしまったのですが
やはり上記のようなセンサーからの数値取得はExpress2008では無理でしょうか?
0067デフォルトの名無しさん
2011/11/29(火) 00:04:30.98無くてもいけるだろうけど
visualStudioのprofessional買った方が早い気がするな
0068デフォルトの名無しさん
2011/11/29(火) 00:19:11.44早速の返信ありがとうございます!
やはり購入したほうがスムーズなんですね・・・
下調べが足りずに買ってしまった自分がバカだったんですけどこれ以上は資金的な余裕が・・・
MFCとやらがGUIだけに使われていてセンサーからの数値取得自体には必要とされていなければ気合でなんとかなりますでしょうか
0069デフォルトの名無しさん
2011/11/29(火) 00:25:36.33ネトウヨさんがMFCなしで動くように治してくれるよ
0070デフォルトの名無しさん
2011/11/29(火) 00:49:07.31申し訳ありません・・・自力では目的達成が可能なのか不可能なのかもわからないレベルでお恥ずかしい限りです。
サンプルプログラムのフォルダをzip形式にしてUPしてみました。
http://www.dotup.org/uploda/www.dotup.org2320354.zip.html
0071デフォルトの名無しさん
2011/11/29(火) 00:49:37.470072デフォルトの名無しさん
2011/11/29(火) 01:07:56.34ほんのちょっとかじった程度でいきなりこの挑戦は思い上がりすぎだったかもしれないと反省している所ですorz
一応見渡すための3D空間とカメラ等はDXライブラリのサンプルを参考に作ってあるので、
頭の角度の数値さえ取得できればあとはなんとか自力で・・・という所です。
あきらめず自分なりにもにらめっこ挑戦してみます。
0073デフォルトの名無しさん
2011/11/29(火) 01:53:23.01int* ptr = nullptr;
ってメインスレッドでして、サブスレッド内で
ptr = new int[10];
としてすぐにサブスレッドは終了。確実に終了したことを確認した上で
メインスレッドで
delete[] ptr;
とやりました。
で、#include <crtdbg.h> を使ったところ、ptrは解放されてない、
とメモリリークが検出されました。
スレッドをまたぐメモリ確保はやっちゃだめでしょうか?
それとも単にcrtdbgが解放を検出できてないだけでしょうか?
007473
2011/11/29(火) 02:02:34.01どこかおかしいことがわかりました。ということで無視してください。
0075デフォルトの名無しさん
2011/11/29(火) 02:09:37.73#ifdef _DEBUG
#define _CRTDBG_MAP_ALLOC
#define new ::new( _NORMAL_BLOCK, __FILE__, __LINE__ )
#endif // _DEBUG
#include <Windows.h>
#include <process.h>
unsigned int WINAPI thread(void *p) {
int* &pp = *(int**)p;
pp = new int [ 100];
_endthreadex(0);
return 0;
}
int main()
{
int *p;
HANDLE hThread;
hThread = (HANDLE)_beginthreadex(NULL, 0, thread, (void*)&p, 0, NULL);
WaitForSingleObject(hThread, INFINITE);
CloseHandle(hThread);
delete [] p;
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
return 0;
}
リークしないなぁ
0076デフォルトの名無しさん
2011/11/30(水) 13:27:13.730077デフォルトの名無しさん
2011/12/01(木) 11:07:39.230078デフォルトの名無しさん
2011/12/01(木) 11:19:27.310079デフォルトの名無しさん
2011/12/01(木) 20:19:51.530080デフォルトの名無しさん
2011/12/01(木) 20:22:44.220081デフォルトの名無しさん
2011/12/04(日) 03:41:10.78Windows Vista SP2 32bit
Visual C++ 2010 Express
こちらにあるようにWinHttpRequestを使用したいと思いました。
http://msdn.microsoft.com/en-us/library/windows/desktop/aa384045(v=vs.85).aspx
デバッグしようとしたところ下記のエラーが出て対応をしました。
・error C2872: 'IServiceProvider' : あいまいなシンボルです。
"using namespace System;" と "#include <windows.h>"
を同じ名前空間に記述することが問題だとなってましたので
"using namespace System;"をコメントアウト
・error C2653: 'WinHttp' : 識別子がクラス名でも名前空間名でもありません。
#import "winhttp.dll" named_guids
と記述してGUID型のCLSIDやIIDの定義が生成しなくてはならないとありましたので
記載
コードは次レスです。
0082デフォルトの名無しさん
2011/12/04(日) 03:42:14.63#include <windows.h>
#include <stdio.h>
#include <objbase.h>
#pragma comment(lib, "ole32.lib")
#pragma comment(lib, "oleaut32.lib")
#import "winhttp.dll" named_guids
//using namespace System;
// IID for IWinHttpRequest.
const IID IID_IWinHttpRequest = {
0x06f29373,
0x5c5a,
0x4b54,
{0xb0, 0x25, 0x6e, 0xf1, 0xbf, 0x8a, 0xbf, 0x0e}
};
int main(array<System::String ^> ^args){
HRESULT hr;
hr = CoInitialize(NULL);
WinHttp::IWinHttpRequest * pIWinHttpRequest = NULL;
CLSID clsid;
hr = CLSIDFromProgID(L"WinHttp.WinHttpRequest.5.1", &clsid);
if (SUCCEEDED(hr)){
hr = CoCreateInstance(clsid,NULL,CLSCTX_INPROC_SERVER,IID_IWinHttpRequest,(void **)&pIWinHttpRequest);
}
CoUninitialize();
return 0;
}
0083デフォルトの名無しさん
2011/12/04(日) 03:46:24.60プロジェクト作成時のテンプレートは
「CLRコンソールアプリケーション」です。
CoCreateInstance呼び出しで
HRESULTのhrが【0x80004002】になってしまいます。
インターフェースがわからない??
お願いします。助けて下さい。
0084デフォルトの名無しさん
2011/12/04(日) 07:25:18.000085デフォルトの名無しさん
2011/12/04(日) 08:57:24.97008681
2011/12/04(日) 17:53:04.670087デフォルトの名無しさん
2011/12/04(日) 18:22:41.92なにか必要なライブラリかなにかが入ってないんじゃねーの?
0088デフォルトの名無しさん
2011/12/05(月) 18:30:36.09ありがとう。そして少し聞きたい。プログラムで取得できたCLSIDとレジストリに設定されているProgID、WinHttp5.1の数値が違うのだが、
あなたは一緒でしょうか?
自分はプログラムで取得したCLSIDは「00389130-0000-0000-54EF-1C00F036C15D」でした。
hr = CLSIDFromProgID(L"WinHttp.WinHttpRequest.5.1", &clsid);
- clsid {00389130-0000-0000-54EF-1C00F036C15D} _GUID
以下レジストリをWinHTTP.dllで検索しました
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{2087c2f4-2cef-4953-a8ab-66779b670495}]
@="WinHttpRequest Component version 5.1"
[HKEY_CLASSES_ROOT\CLSID\{2087c2f4-2cef-4953-a8ab-66779b670495}\InProcServer32]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,77,00,69,00,\
6e,00,68,00,74,00,74,00,70,00,2e,00,64,00,6c,00,6c,00,00,00
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOT\CLSID\{2087c2f4-2cef-4953-a8ab-66779b670495}\ProgID]
@="WinHttp.WinHttpRequest.5.1" ←◆ここです!!
[HKEY_CLASSES_ROOT\CLSID\{2087c2f4-2cef-4953-a8ab-66779b670495}\TypeLib]
@="{662901fc-6951-4854-9eb2-d9a2570f2b2e}"
[HKEY_CLASSES_ROOT\CLSID\{2087c2f4-2cef-4953-a8ab-66779b670495}\Version]
@="5.1"
008982
2011/12/05(月) 18:31:17.700090デフォルトの名無しさん
2011/12/05(月) 21:00:00.12今からC++のWin32を勉強始めても何か役に立ちますかね?
C#ってやっぱり重いし、デザインもモッサリしてるし、
ネイティブなC++のほうが難しそうだけど良いのかな?と思いました。
でも時代は64bitだし、VS2010EEでできるのはWin32ですよね。
0091デフォルトの名無しさん
2011/12/05(月) 22:15:47.240092デフォルトの名無しさん
2011/12/05(月) 22:33:44.33プログラムでの CLSID の取り方なんて忘れたよ。w
コードの clsid の中身を並べてみたけど、これで良かったんだっけか?
[プログラムコードから取得したID]
2087c2f4-2cef-4953-a8ab-66779b670495
[レジストリの値]
[HKEY_CLASSES_ROOT\CLSID\{2087c2f4-2cef-4953-a8ab-66779b670495}\ProgID]
ProgID = WinHttp.WinHttpRequest.5.1
TypeLib = {662901fc-6951-4854-9eb2-d9a2570f2b2e}
Version = 5.1
‥‥ ::CLSIDFromProgID() で取得した値はレジストリの CLSID の下のノードの名前?みたいだな。おまえのも一緒だし。
0093デフォルトの名無しさん
2011/12/05(月) 22:35:37.67C++ を自在に操れるレベルになれば、他の言語なんか怖くない。
でも大抵は C# で事足りる。十分すぎるくらい。しかも凄く簡単、ってか楽。
どこまでやるかによる。
0094デフォルトの名無しさん
2011/12/05(月) 22:55:27.47いえ、
私は00389130-0000-0000-54EF-1C00F036C15Dです。
今.netframework4アンイントールができなくて困ってます(T_T)
これやったり
regsvr32 Softpub.dll /s
regsvr32 Wintrust.dll /s
regsvr32 Initpki.dll /s
regsvr32 Mssip32.dll /s
HotFixかけたり
修復したり
復元したり
(T_T)なみだ(T_T)なみだ
0095デフォルトの名無しさん
2011/12/05(月) 23:03:08.60逆にインストールしたら欠けてた部分が補完されて正常に、なんて都合のいいことはないか。
0096デフォルトの名無しさん
2011/12/05(月) 23:04:22.920097デフォルトの名無しさん
2011/12/06(火) 00:40:04.02IID_IWinHttpRequest
009882
2011/12/06(火) 00:44:55.21感謝
http://www.sol.dti.ne.jp/~yoshinor/ni/ni0002.html
http://moz-addon.g.hatena.ne.jp/ZIGOROu/20071015/1192454217
http://www.vector.co.jp/soft/dl/win95/prog/se359660.html
趣味プログラミングは敷居が高いですね><
0099デフォルトの名無しさん
2011/12/06(火) 12:04:47.40レスありがとうございます。
やはり細かなところまで要求するとC++なんですよね。
でも大概はC#で事足りる。プログラミング歴1年の僕にでも「とりあえず」出来てしまいましたから。
C++も新規格が出たようですし、今から勉強始めても損は無さそうですね。
0100デフォルトの名無しさん
2011/12/06(火) 18:41:14.84tlhファイルを見なさい!!
0101デフォルトの名無しさん
2011/12/06(火) 20:33:24.310102デフォルトの名無しさん
2011/12/07(水) 00:31:57.55OBJ obj1[5];
OBJ obj2[5];
OBJ obj3[5];
とあって、objの中にobj1〜obj3を順に格納したいんですが、
ポインタを使うとどう書くんですか?
ポインタがいまいち分かってません。
0103デフォルトの名無しさん
2011/12/07(水) 00:39:57.99obj[ 0 ] = &obj1[ 0 ];
(以下略)
じゃないの?
0104片山博文MZ ◆0lBZNi.Q7evd
2011/12/08(木) 13:16:19.78#define BAKA for(int i = 0; i < 5; i++) obj[i] = *p++;
OBJ *p;
p = obj1; BAKA
p = obj2; BAKA
p = obj3; BAKA
0105デフォルトの名無しさん
2011/12/09(金) 12:31:39.86そのdllが無くても起動してしまって、困りました。
変なパスが通っているのかと思って、環境変数の「Path」を眺めていたら、怪しいのをみつけました。
で、それを削除して実行したところ、dllがないと言われました。
あるアプリをインストールしたら、たまたま同じdllがインストールされて、それを使って動いていました。
自分で用意したdllを強制的に使うようにしたいのですけど、どうすればいいのでしょうか?
出来れば実行ファイルのサブフォルダに格納して、それを参照させたいです。出来なければ諦めます。
0106デフォルトの名無しさん
2011/12/09(金) 12:48:41.080107デフォルトの名無しさん
2011/12/09(金) 16:08:16.550108デフォルトの名無しさん
2011/12/09(金) 22:37:06.310109デフォルトの名無しさん
2011/12/12(月) 22:30:49.92必ずexeの場所のdllが最初に検索される?
0110デフォルトの名無しさん
2011/12/14(水) 09:23:42.130111デフォルトの名無しさん
2011/12/18(日) 19:59:13.30ブラシ(Brush)の色は宣言したあとに変えることは出来るのでしょうか?
Brush^ mybrush = gcnew SolidBrush(Color::Red);
と宣言したのを
mybrush->Color = Color::Blue;
みたいなことは出来ないのでしょうか?(↑は勿論エラーになります)
Penの色や線の太さを変更できるのにBrushではできないので疑問に思いました。
0112デフォルトの名無しさん
2011/12/18(日) 20:41:14.78では?
Color プロパティは Brush クラスではなくて、SolidBrush クラスで定義されてるね。
とりあえずエラーが出たときは、その説明とか使うクラスの MSDN とかをちゃんと確認すると良いと思うぞ。
0113デフォルトの名無しさん
2011/12/18(日) 20:48:57.85解決しました。ありがとうございます
クラスの説明のサイトを見ても良く分からなかったので今まであまり見ていませんでした;;
0114デフォルトの名無しさん
2011/12/21(水) 03:00:39.630115デフォルトの名無しさん
2011/12/21(水) 03:03:18.26メニューバー>ビルド><プロジェクト>のビルド
を常にバッチビルドにする方法ありますか?
バッチビルドを開いてマウスを移動させてOKを押すのが面倒です。
Alt+BTBを覚えるのも面倒です。
0116デフォルトの名無しさん
2011/12/21(水) 06:13:21.41変な日本語で申し訳ないのですが
printf();
printf();
みたいになってしまっているとき
printf();
printf();
というように左端を揃えたいです。
何かいい方法があれば教えてください。
0117デフォルトの名無しさん
2011/12/21(水) 06:17:01.64-----printf(); ← -はスペースです
みたいになってしまっているとき
printf();
printf();
0118デフォルトの名無しさん
2011/12/21(水) 07:08:54.94Ctrl+K Ctrl+F
0119デフォルトの名無しさん
2011/12/29(木) 18:11:12.18でも俺が作ったライブラリでだけ表示されないんだけどなんぜ?
0120デフォルトの名無しさん
2011/12/30(金) 22:03:52.610121デフォルトの名無しさん
2011/12/31(土) 04:59:24.80あ?
0122片山博文MZ ◆0lBZNi.Q7evd
2011/12/31(土) 13:08:04.10http://msdn.microsoft.com/ja-jp/library/ks1ka3t6%28v=vs.80%29.aspx
0123デフォルトの名無しさん
2011/12/31(土) 13:17:05.17中国経済網は29日付で「ストライキの原因は年末のボーナス削減と韓国人従業員への差別的待遇に対する中国人従業員の不満だ」と報じた。
LGDの南京工場では26日から28日にかけて生産ラインが完全に停止し、関連工場にも影響が出た。
南京市経済開発区管理委員会に所属する呉主任は「今回の件はストライキでもサボタージュでもなく、工場が臨時休業しているだけ」と述べたが、
記事は「LGディスプレーは2011年、約670億円の赤字を出したことで、従来までは月給3カ月分だった年末ボーナスの支給そのものが難しくなった。
これは従業員の不満を招いたことに起因するストライキだ」と報じている。
http://news.searchina.ne.jp/disp.cgi?y=2011&d=1230&f=business_1230_116.shtml
0124デフォルトの名無しさん
2012/01/01(日) 18:32:38.79デストラクタで破棄しないといけないんですか?
0125デフォルトの名無しさん
2012/01/01(日) 20:20:07.850126デフォルトの名無しさん
2012/01/01(日) 21:10:00.53何を言っている?
デストラクタにはそのクラスが破棄されたときに必要な処理を書く。
デストラクタで破棄するわけじゃない。
0127デフォルトの名無しさん
2012/01/01(日) 21:27:11.09何を聞きたいのかよく分からないが、
new で動的に作成したクラスを使い終わったらどうするかという話なら
delete で削除するのが正解、デストラクタは利用者が呼び出すものではない
あるクラスAのインスタンスに付随する情報をクラスBとして動的に作成した場合の、クラスBを破棄するタイミングの話なら
クラスAのデストラクタで削除するのが自然ではある
0128デフォルトの名無しさん
2012/01/02(月) 01:35:11.70newで別のインスタンスを生成し
デストラクタでdeleteしているのですが
コンストラクタ途中で例外か例外じゃなくても
new出来なかったりで中断する必要がある場合
途中まで生成していたメンバのインスタンスが
デストラクタで解放されることは期待出来ますか?
0129デフォルトの名無しさん
2012/01/02(月) 02:15:47.55コンストラクタ内で例外を発行したら、インスタンス生成は完了しないので、デストラクタも呼ばれない
以下のような感じで処理するとか、ひと工夫必要になる
class A{
X* x;
Y* y;
A(){
try{
x = y = NULL;
x = new X; y = new Y;
catch(...) {
clear();
throw;
}
}
~A(){
clear();
}
clear(){
if (x != NULL) delete x;
if (y != NULL) delete y;
}
};
0130デフォルトの名無しさん
2012/01/02(月) 02:39:13.46A() : x(NULL), y(NULL) {
と書くのは良くないですか?
0131デフォルトの名無しさん
2012/01/02(月) 02:48:58.29メンバ初期化リストを使う方が正解
0132デフォルトの名無しさん
2012/01/02(月) 11:03:39.230133デフォルトの名無しさん
2012/01/04(水) 22:31:34.510134デフォルトの名無しさん
2012/01/05(木) 17:01:41.04アメリカの研究者の中には、今年の中国のGDPはマイナス10%ぐらいではないかと推計する人もいます。
そもそも中国の国家統計局が出している数字は、「架空の物語」です。
全国人民代表大会で決まった成長率を覆すような数字を、地方政府が上げるはずがない。16%だの24%だの、ありえない数字を出してきます。
みんなそれを知っていますから、加減してほどよい数字を作り上げる。それが国家統計局の仕事なんです。
中国の現状からすればGDPが上がるとは思えません。個人消費は明らかに減っています。住宅はといえば6500万戸が空き家状態。
企業は設備投資どころではなく、政府の財政支出も限界に来ています。
日本の新聞もようやく中国の不動産バブル崩壊について書き始めました。しかし内容は必ずしも正しくない。
不動産価格が上海で25%、北京で20%下落したといいますが、実際には40%ぐらい下がっていると思われます。
JBPRESS
http://jbpress.ismedia.jp/articles/-/34131?page=2
世界のGDP(単位10億ドル)
1位 アメリカ 14,526.55
2位 中国 5,878.26
3位 日本 5,458.80
↓
1位 アメリカ 14,526.55
2位 日本 5,458.80
3位 中国 5290.43
0135デフォルトの名無しさん
2012/01/12(木) 21:32:10.22EditBoxに関する質問なのですが、
入力が空っぽの場合には、グレー文字で入力のヒントを
表示する機能は持っていますでしょうか?
MFCのCEditクラスには該当するもの(SetCueBanner)が
見つかりましたが、SDKでは自分で
ゴリゴリ書くしかないのでしょうか?
よろしくお願いします。
0136デフォルトの名無しさん
2012/01/12(木) 23:02:12.540137デフォルトの名無しさん
2012/01/13(金) 00:15:17.21ありがとうございます。
まさか名前そのままでしたか。
WM_INITDIALOGで、
SendMessage(EditBoxのハンドル指定, EM_SETCUEBANNER, 1, (LPARAM)TEXT("ヒントです"));
と書きましたが、ヒントは表示されませんでした。
OSはWin7の64bitです。
0138デフォルトの名無しさん
2012/01/13(金) 09:34:25.12UNICODEアプリにしてる?
0139デフォルトの名無しさん
2012/01/13(金) 09:51:43.02すみません。
コモンコントロールの使用に必要な
マニフェスト作成を忘れていただけでした。
動作確認できました。
また、ユニコードで作っています。
0140デフォルトの名無しさん
2012/01/13(金) 18:24:07.97アクティブ(Debug)
Debug
Release
すべての構成
とあります。DebugとReleaseで設定を変えるということは分かるのですが
アクティブ(Debug)とすべての構成とは、何のため、どういうときに使われるものなのでしょうか?
よろしくお願いします。
0141デフォルトの名無しさん
2012/01/13(金) 19:23:06.29IDE上でDebugを選んでると、アクティブはアクティブ(Debug)となり、
構成でDebugを選んでもアクティブ(Debug)を選んでも同じ。
すべての構成は、すべての構成で共通するもの。
構成がDebugとReleaseの二つしかない場合、
その二つで同じ設定になっているものは表示され、
違う設定になっているものは空の表示がされる。
どれか設定をするとDebugとReleaseの両方に同じ設定がされる。
0142デフォルトの名無しさん
2012/01/14(土) 03:43:14.60やはりそうでしたか
0143デフォルトの名無しさん
2012/01/14(土) 21:47:14.24これはどのようにしたらこのやり方ができるのでしょうか。
DLGINITでググっても解説等が見つかりませんでした。
どうやらActiveXを使うことと関係があるらしいのですが。
0144デフォルトの名無しさん
2012/01/14(土) 23:06:50.330145デフォルトの名無しさん
2012/01/14(土) 23:12:29.11VisualStudioの使い方のことです。
0146デフォルトの名無しさん
2012/01/15(日) 03:39:10.47VC6ではダイアログにコントロールを配置するときにコンボボックスを
右クリックしてプロパティを表示すると初期文字列を設定できるけど
VS2002以降は分からない
0147デフォルトの名無しさん
2012/01/15(日) 12:18:40.280148デフォルトの名無しさん
2012/01/15(日) 14:30:37.69Dataに文字列入れたらできた。複数文字列はセミコロン区切りで。
Dataはmfcアプリのみ入力可能。
0149デフォルトの名無しさん
2012/01/17(火) 21:08:32.14C++で指定のswfのアニメーション流すことは可能なのでしょうか?
WEBカメラで画像をチャプターし、その画像の結果で
指定のswfアニメーションを流したいと考えています。
開発環境はVC2008です。
よい方法などありましたら、アドバイスお願いします。
0150デフォルトの名無しさん
2012/01/17(火) 21:31:11.240151デフォルトの名無しさん
2012/01/18(水) 00:33:47.610152デフォルトの名無しさん
2012/01/18(水) 10:28:48.35deleteし忘れのときのように出力してくれると便利なのですが。
0153デフォルトの名無しさん
2012/01/18(水) 11:27:50.98・CRT デバッグ ヒープ関数
・市販のツール
でも delete 忘れとかなら、最初の初期化と、解放後の初期化を確実にやって、
プログラムやインスタンスが終了するタイミングで、自分の持ってるポインタが NULL になっていることを
確認するのがいちばん早いと思うんだ。
0154デフォルトの名無しさん
2012/01/20(金) 21:39:50.94VC++でWindowsフォームのプログラムを組んでいるのですが、
別ファイルでextern宣言したクラス(の配列)をform1.h等で参照したいのですがコンストラクタが上手く働いてくれないのか、宣言の場所が悪いのか
ゴミ値ばかりで上手く動作してくれません。
何かヒントもらえませんか?
0155デフォルトの名無しさん
2012/01/20(金) 22:19:53.46VC++と言うと、今だに(と言うかC++/CLIが見捨てられてるだけなんだが)MFCでのプログラミング前提だから、聞くならC++/CLIと明示されてるスレで聞いた方がいい
くだすれC++/CLI(初心者用)part2
http://toro.2ch.net/test/read.cgi/tech/1268613679/
0156デフォルトの名無しさん
2012/01/20(金) 22:46:28.91他スレでもそちらに誘導されてしまいました。。
なんかマルチみたいで申し訳ないです。
そちらで質問したいと思います。
わざわざ有難うございます。
0157デフォルトの名無しさん
2012/01/21(土) 17:37:56.090158デフォルトの名無しさん
2012/01/21(土) 22:34:23.48コンソールアプリケーションでしばらく遊んでいたのですがこの度windowsフォームアプリケーションへ挑戦することにしました。
>>8でも出ているのですが、コンソールアプリケーションの時には自動でインデントしてくれていたのに、ウィンドウズフォームアプリケーションではインデントしてくれなかったり
this->と打っても反応がなかったりするのは64bitに非対応ということなのでしょうか?
ちなみにVBのVSでは正常に動いていたように思います。
一応再インストールはしてみたのですが効果なし、他の64bit使いの方のお話をお聞かせ下さい
0159デフォルトの名無しさん
2012/01/21(土) 22:40:27.580160デフォルトの名無しさん
2012/01/21(土) 22:44:15.760161デフォルトの名無しさん
2012/01/21(土) 22:59:36.47C++/CLI を使うんなら、ネイティブな C への橋渡しとかを考えている場合以外は C# でやった方がいいよ。
0162デフォルトの名無しさん
2012/01/21(土) 23:00:14.430163デフォルトの名無しさん
2012/01/22(日) 01:30:21.350164デフォルトの名無しさん
2012/01/26(木) 17:29:08.37Solution
Project1
Project2
Project1で定義されているクラスを、Project2で使用する方法を教えていただけないでしょうか?
依存関係を設定すれば使えると思ってたんですが、ハマってしまって。。。
ヘッダーをインクルードして、クラスを実体化しようとするとエラー「LNK2019: 未解決の外部シンボル」が出てしまいます。
環境はVC2002です。よろしくお願いします。
0165デフォルトの名無しさん
2012/01/26(木) 17:30:31.050166デフォルトの名無しさん
2012/01/26(木) 17:37:16.76両プロジェクトともexeの場合ってダメなんでしたっけ?
良く考えればダメですよね。。。
もうちょっと具体的に言うと、Project1が開発アプリで、Project2がテストアプリで
Project1のクラスをProject2で実体化してテストしたいんです。
良いやり方があればご教授いただきたいです。
0167デフォルトの名無しさん
2012/01/26(木) 18:02:54.86すみません、お騒がせしました
でもここに書き込んだら考えが整理された気がしますw
もっと良いやり方ってありましたっけ?有るようでしたら教えて頂ければと思います。
どうもありがとうございました。
0168デフォルトの名無しさん
2012/01/26(木) 22:05:16.82VisualStudio2010 の C++/CLI で以下の通り。
1. 同じソリューション内に form アプリケーション(Project:A)と
クラスライブラリ(Project:B)を作成
2. Project:A で参照の追加を設定し、Project:B をプロジェクトごと参照設定する
3. Project:B に適当にクラス(ClassB)とそのメソッド(ClassB::test)を作る
4. Project:A の適当なところで、 B::Class のインスタンスを作成する
5. そのクラスのインスタンスからメソッドを呼び出す (gcnew B::Class())->test()
うん。ふつーに出来た。
名前空間はちゃんと設定した? 上の例だと A とか B のことだけど。
ちなみにヘッダファイルのインクルードはやってない。
上は exe & dll だけど、マネージの実行ファイルなら exe & exe でも同じように出来る。
0169デフォルトの名無しさん
2012/01/27(金) 00:47:40.44サービスより起動しようとするとすぐに停止になってしまいます。
イベントビューアからログを見るとイベントID7034でした。
これまでは普通に起動していたんですが、
exeの中で使用しているメッセージ出力に使うファイルを、
配置してやったとたんになってしまいました。
特にこれが問題になってるとは思ってなくて、
(Visual Studio 2005でコンパイルしたexeでは問題なかったため)
Visual Studio のバージョンを変えてコンパイルしたので、
何かあるのかなと思ってます。
Visual Studio 2008でサービスを起動するコーディングをする際に、
2005と違う点は何かあるんでしょうか?
0170デフォルトの名無しさん
2012/01/27(金) 12:32:25.27アプリケーションのイベントログにエラーが出てないか?
0171デフォルトの名無しさん
2012/01/27(金) 21:04:33.860172デフォルトの名無しさん
2012/01/27(金) 23:18:13.39それが7034ですね。
>>171
ですよねー。w
コーディングを載せるわけにもいかなくて、
何を載せるべきかと。。。w
0173デフォルトの名無しさん
2012/01/28(土) 00:26:52.91それ、「プログラムは予期せず終了した」だよな。
169 だとどうとでも読めるけど、もとはサービスじゃなくて普通の exe として起動してたの?
サービスとして起動したんだとしても、やることは変わらないだろ。
・元の状態に戻して動作確認
・元の状態で VS2010 でビルドして動作確認
・いろんなところを削って、とにかくただ起動するだけの状態にして動作確認
・少しずつ元の状態に戻していきつつ、どこで異常終了するようになるかを確認
最後のが確認できれば解決したも同然だろ。
もう忘れちゃってるけど、マネージならサービスプログラムとして作ってても他の実行ファイルから
簡単に中身を参照することができるから、普通のプログラムとして起動した後にすぐに
そのサービスプログラムを参照する試験用プログラムを組めばデバッグも楽そうだよな。
まあ触りのない部分だけでもソースを晒してくれたら協力してやるよ。w
0174デフォルトの名無しさん
2012/01/28(土) 01:54:40.26いえ、最初からサービスとして起動するためのexeですよ。
んで、ちゃんと起動するんですよ。
ただ。
その処理の中で、ログを吐く処理があるんですね。
そのログは設定ファイルを読み込んで、そのファイルの中の文言を吐いてるんですけど、
設定ファイルを指定のディレクトリに置いたとたん。
起動しなくなってw
そのファイルを置いてなければ動くんですが、置いたら動かない。。。
よーわからん状態w
ただ、サービスが停止するまでのログはちゃんと吐いてるんで読み込まれてないとか、
読み込みでエラーになってるわけではなさそう。。。
0175デフォルトの名無しさん
2012/01/28(土) 11:42:43.39・単純に起動するだけ
・単純に起動するだけ & その設定ファイルを読み込むだけ
の状態にしてどうなるかを確認。
これで設定ファイルを読み込むようにして不正終了するのを確認できたら犯人が確定だろ。
現状ではそう思い込んでるだけかもしれんだろーが。まずは実証確認をするべきだ。
で、ログ出力機能があるなら、最悪、全ステップの前後にログをはさんで、場所を確定。
それで解決できないならそもそもおまえじゃどうしようもないってことじゃないのか。
どういう構造かは知らんけど、素人が動くだけのプログラムを作ったのなら、
エラー時のフォローなんて入れてないんだろうから、たとえば設定ファイルが xml 形式なら
参照先のノードがなかったり、名前空間が違ってたり、文字コードが違ってたりして
パーサが出してる例外を捕捉してないだけなんて事例はくさるほどある。
171 を自覚しててまだ続けるなら、ほんとうに触りのないレベルに削ったコードを晒せ。
以降はそしたら手伝ってやるよ。
0176デフォルトの名無しさん
2012/01/30(月) 18:17:45.787034がアプリケーションログに出てるの?
システムログじゃなくて?
まあどっちでもいいや
見るべきところがはっきりしてるのにグダグダやってるようじゃ
「お前には無理」としかいいよがない
0177デフォルトの名無しさん
2012/01/31(火) 18:56:00.30POD型の std::vector なんかで使うと
バイナリコードでは最適化されて
REP MOVSQ 命令になってくれたりしますか?
0178デフォルトの名無しさん
2012/01/31(火) 21:13:33.260179177
2012/01/31(火) 23:51:38.39コピー処理はアセンブラ使った方が速いのかな・・・と。
0180デフォルトの名無しさん
2012/02/01(水) 04:47:43.0520行程度の参考書のIF文のサンプルコードを書き込み、
デバッグで実行しただけで固まりそうになる。
VS 2010を買うべきか、VS11まで待つべきか。
0181デフォルトの名無しさん
2012/02/01(水) 04:59:27.61VS11が出たらまた買えばいい
0182デフォルトの名無しさん
2012/02/05(日) 15:12:37.88#include <Windows.h>
static const CHAR str[] = "いやんばか〜ん";
static CHAR func(int x)
{
return str[x];
}
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
return 0;
}
ご覧の通り、strはfunc()から参照されていますが、
func()はどこからも参照されていない状態です。
これのReleaseビルドを行うと、不要なはずの"いやんばか〜ん"が
なぜかexeファイルの中に埋め込まれてしまうのですが、
これが埋め込まれないようにする方法があれば教えてください。
Visual C++の2005でも、2010 Expressでも結果は同じでした。
いずれもプロパティはデフォルトのまま使っているので、
"/OPT:REF"は有効になっているはずなのですが・・・。
0183デフォルトの名無しさん
2012/02/05(日) 15:18:54.65static const CHAR str[] = "いやんばか〜ん";
#endif
0184デフォルトの名無しさん
2012/02/05(日) 15:20:29.46どこで使われてるかわかったもんじゃないし、実行時の速度に影響するわけでもなし。
0185デフォルトの名無しさん
2012/02/05(日) 15:34:06.36・「はず」じゃなくて、自分で設定して試してみた?
・VC2010 の Win32 コンソールプログラムで試した
- "return str[x];" の行をそのまま -> 実行ファイルに文字列あり
- "return str[x];" の行を retuen NULL; に -> 実行ファイルに文字列なし
結論
/OPT:REF を付けても実行ファイルに出力されない関数内とかを含めてどこかで参照してると
実行ファイルにその参照してるデータも出力されるっぽい。
対策案
しかたないので、使わない部分を #ifdef で囲って切り替えられるようにするとか?
0186デフォルトの名無しさん
2012/02/05(日) 17:40:20.25>>183
#ifdefはどうしてもという場合の最終手段ですねw
>>184
そういうものなんですかねぇ・・・。
static宣言をしていますし、少なくともそのファイル内で
参照されていなければ不要なのは明らかだと思ったのですが・・・。
ちなみにリテラル文字列ではなく配列要素を直接指定しても同じでした。
>>185
すみません、言い方が悪かったです。プロジェクト作成直後の
Releaseビルドの設定は/OPT:REFになっているので、
参照されない関数やデータは削除される「はず」という意味でした。
その後、いろいろ試してみたところ次のことが分かりました。(いずれも2010 Express)
・exeに埋め込まれているのはデータのみで、関数本体は削除されている。
・constを外してもやはりデータは残る(セクションの位置は移動する)。
・データを関数の外ではなく、関数内で直接定義すればデータも削除される。
・複数の関数から同じデータを参照する場合でも、それぞれの関数内で定義すれば
不要であればデータは削除されるし、必要な場合でも1つにまとめられる。
というわけで、たとえ同じデータであっても関数の外には出さずに、
各関数内で定義することでこちらが望む動作になるようです。
とりあえずこれで何とかなりそうです。どうもありがとうございました。
0187デフォルトの名無しさん
2012/02/06(月) 20:05:05.09しようと頑張っているのですが、どうしてもjpeg_create_compressで落ちてしまいます。
struct jpeg_compress_struct comp;
struct jpeg_error_mgr jerr;
comp.err = jpeg_std_error(&jerr);
jpeg_create_compress(&comp); ←ここでおちます;;
0188デフォルトの名無しさん
2012/02/06(月) 20:12:32.880189デフォルトの名無しさん
2012/02/06(月) 20:57:36.390190デフォルトの名無しさん
2012/02/12(日) 18:13:21.14hとかcppファイルは関連付けられていてvisualstudioで開くでのですが、
これらを他のツールから開くときにコマンドラインパラメータ等で行数を指定したりできますか?
開いた瞬間に指定行に移動するようにしたいのですが。
0191デフォルトの名無しさん
2012/02/12(日) 18:32:37.85そのツールにそういう機能があるかどうか、による。
0192デフォルトの名無しさん
2012/02/12(日) 18:41:43.95すいません、書き方が悪かったです。
他のツールからVCExpress.exeを指定してVCExpress.exeで開くという意味です。
どうもググってみましたがそういうスイッチは見当たらないようですね。
0193デフォルトの名無しさん
2012/02/12(日) 21:00:59.010194デフォルトの名無しさん
2012/02/14(火) 13:10:30.960195デフォルトの名無しさん
2012/02/14(火) 13:35:11.20こういうこと?
0196デフォルトの名無しさん
2012/02/19(日) 11:14:57.83最後まで処理した後、勝手にコンソール画面を閉じて終了してしまいますが、
「デバッグなしで開始」で実行すると、コンソール画面を表示したままにしてくれます。
このような違いはなぜ起こるのでしょうか?
「デバッグ開始」のこの仕様は不便に思うのですが、
そのようにしてまで大事なことが他にあるのでしょうか?
0197デフォルトの名無しさん
2012/02/19(日) 11:39:00.30似たような疑問はたくさんあるみたいだから、ぐーぐる先生に質問してみるとか。
if ( ::IsDebuggerPresent() ) system("pause"); みたいなコードを勝手に付けてるんじゃない?
0198デフォルトの名無しさん
2012/02/19(日) 15:07:35.26デバッグしてるのに、終了まで流すのは普通ありえないから
0199196
2012/02/19(日) 15:10:27.22調べてみたんですが、最後止まらずに終わってしまう理由については分かりませんでした。
>>198
なるほど、そういう前提での仕組みですね。
ありがとうございました
0200デフォルトの名無しさん
2012/02/19(日) 17:11:34.751.ラベルと変数を3つずつ(時間、分、秒)用意
2.ボタンを押すとタイマー(intervalは1000=1秒)が起動
3.イベントが発生する度に「秒」の変数を+1する
4.「秒」の変数が59以上になったら「秒」の変数に0を代入して「分」の変数を+1する。分→時間も同様
Windowsフォームアプリケーションのテンプレートから、上のようなタイマーをつくろうとして、
自分が他のタイマーツールと比較した時はズレはなかったのですが、
他の人が試したところ、1分経つ毎に1秒ズレているようなんです。
これはSystem.Windows.Forms::Timer(?)が何かに依存していてダメなんでしょうか?
それともそんなことはなく、文に問題があるのでしょうか?
0201デフォルトの名無しさん
2012/02/19(日) 17:22:55.60現在時間をタイマーに依存するのがダメ、そこまでの精度はない
タイマーイベントの中で現在の時刻を都度取得すればいい
0202デフォルトの名無しさん
2012/02/19(日) 18:00:05.23つまり
1.変数:時間、分、秒、基準時刻を用意
2.タイマーを起動するボタンを押した時の現在時刻を取得、変数:基準時刻に代入
3.タイマーイベント内で現在時刻を取得、基準時刻と現在時刻の相対時刻を取得。変数:時間、分、秒に代入
4.現在時刻を変数:基準時刻に代入
こんな感じにすれば一時停止にも対応出来るって感じですかね
なんとなくつかめました、ありがとうございます
0203デフォルトの名無しさん
2012/02/25(土) 16:34:01.56↓問題です。
http://odz.sakura.ne.jp/projecteuler/index.php?cmd=read&page=Problem%2012
自分はこのようにプログラムを書いたのですが、
実行時間が長すぎることが気にかかります。
http://codepad.org/csyM6H64
どのように改善すれば時間短縮することができるのでしょうか。
お願いします。
このプログラムは、偶数か奇数かなら、
偶数の方が約数の数が多いだろう と思って作ったので、偶数だけを対象にしています。
0204デフォルトの名無しさん
2012/02/25(土) 21:47:13.56宿題スレに行くべきだね
完全力技でなく、map などを使って
1. 一旦素因数分解して、素因数分解の結果から解を求める
2. 素因数への分解仮定で、すでに計算結果の出てるものは再利用する
とかやればいくらか早くなりそうな感じはするけど
0205204
2012/02/26(日) 02:13:52.34失礼、見直したら宿題というわけではないのか
Visual C++でもない気がするけどどのスレなのか分からないから答えておくと
以下の2点だけでそれなりに改善できそうな気がする (>>204は考えてみたら面倒な割にコストが微妙そうだった)
1. 除算するとき、除数と商は対になるはずなので、計算は半分で良い
20の約数(1,2,4,5,10,20)なら
20/4が割り切れた時点で、4と5の両方が求められる
2. sqrt(sum)で除数と商が等しい状態になる、それ以上は計算しなくてよい
具体的には
sum2 = sum >> 1;
for(int idx = 3; idx < sum2; idx++){
を
int sum2 = int(sqrt((double)sum));
for(int idx = 3; idx < sum2; idx++){
として、
if (!(sum % idx)) {count++;}
を
if (!(sum % idx)) {
count++;
int div = sum / idx;
if (div != idx) {count++;} //除数と商が等しい場合を除き、対としてカウントする
}
とする
あと、数値が連続なら特定以上の約数を持つ最小の数値が2で割り切れるのは確実と思うけど、
対象が連続でないので、偶数であることは保証されないと考えるほうが安全と思う
0206デフォルトの名無しさん
2012/02/26(日) 14:44:39.25なるほど!
約数を根本的に考えればそうなりますね!
そんなことにも気づかないなんてばかでした・・・。
それと、
if (!(sum % idx)) {count++;}
を
if (!(sum % idx)) {
count++;
int div = sum / idx;
if (div != idx) {count++;} //除数と商が等しい場合を除き、対としてカウントする
}
とする
のところは、
for(int idx = 3; idx < sum2; idx++){
if(!(sum % idx)){
count += 2;
}
}
if(idx == sum2){
count--;
}
とした方が若干速いと思います。
ありがとうございました!
0207デフォルトの名無しさん
2012/03/10(土) 21:55:24.62フォーム上にあるButtunを押すとフォーム上に線が出てくるようにしたいです。
んでそれは完成しました。
以下、質問です。
クラスウィザードを使って描画クラス(Draw.hとDraw.cpp)を作り、
描画オブジェクトを分離しようとしました。
しかし、Draw.hからFormに線を引くオブジェクトを作成する方法が分かりません。
フォーム上のボタンに書き込んだ
Graphics^ gr2 = this->CreateGraphics();
のthisの部分を
System::Windows::Formsに書き換えるだけじゃ駄目なんですか?
ちょっと分かりにくい質問ですがどなたか回答いただけると幸いです
0208デフォルトの名無しさん
2012/03/10(土) 21:55:47.640209デフォルトの名無しさん
2012/03/12(月) 02:02:52.540210デフォルトの名無しさん
2012/03/12(月) 09:25:48.150211デフォルトの名無しさん
2012/03/12(月) 09:58:12.990212デフォルトの名無しさん
2012/03/12(月) 10:41:04.850213デフォルトの名無しさん
2012/03/12(月) 11:05:01.11そのレベルでC++/CLIは無駄な気がする。
FormやりたきゃC#、C++やりたきゃCLIじゃないほう
両方同時にやってもC++/CLIやるよりまし。
0214デフォルトの名無しさん
2012/03/12(月) 21:21:25.38基本的に上に同じなんだが。
やり方の方ね。
そりゃダメだろ。コンパイルも通らないんじゃないの?
是非はともかく、一番簡単な方法は form のクラスに this->CreateGraphics(); を返すメソッドなりを作って、
Draw.cpp の方でそれを受け取って描けばいいんじゃね?
0215デフォルトの名無しさん
2012/03/13(火) 12:58:49.23具体的には、
「'BOOL' : ブール値を 'true' または 'false' に強制的に設定します」という
警告が大量に出てきて本当にエラーが出ているところが分からなくなるので、
なるべくソースコードは変更せず警告を消す方法が無いかを探しています。
何とかならないでしょうか
0216デフォルトの名無しさん
2012/03/13(火) 12:59:59.72VisualC++2008ExpressEditionを使用しています。
0217デフォルトの名無しさん
2012/03/13(火) 13:12:57.34typedefで定義しちゃうとか
0218デフォルトの名無しさん
2012/03/13(火) 13:47:58.95だったな。
0219デフォルトの名無しさん
2012/03/13(火) 14:08:07.02http://lmgtfy.com/?q=vc+%E8%AD%A6%E5%91%8A
0220デフォルトの名無しさん
2012/03/13(火) 19:32:12.17先生方あざ〜す。
0221デフォルトの名無しさん
2012/03/13(火) 20:59:11.97BOOL a = TRUE;
bool b = a;
とかやってんだろ? だったら、
bool c = ( a != FALSE );
とかって書き直してやれば済むじゃん。
0222デフォルトの名無しさん
2012/03/15(木) 14:09:34.11#include<string>を使えばいいんですかね?
具体的に言えば、
array[0] = 1
array[1] = 2
array[2] = 3
array[3] = 1
array[4] = 2
array[5] = 3
となっているときに、
array[0]~array[2]までを連結させた数字(123)と、
array[3]~array[5]までを連結させた数字とが等しいですね
って出力してくれる関数を探してます。
find()とか使うといいのかなと考えてたんですが、
文字列にしか使えないって書いてあるので、
配列自体に簡単に使える関数はありますか?
0223デフォルトの名無しさん
2012/03/15(木) 14:25:32.76自分で作るしかない
0224デフォルトの名無しさん
2012/03/15(木) 15:08:29.50わかりました。
ありがとうございます。
0225デフォルトの名無しさん
2012/03/15(木) 20:18:14.02memcmp(&array[0], &array[3], sizeof(array[0])*3)
とかで代用できそう
0226デフォルトの名無しさん
2012/03/16(金) 15:31:25.54命令には全く書いていない変数を勝手にインクリメントするのでマジうざいです。
そのプロジェクトを削除してソースコードだけ新規プロジェクトに移植すると直ります。
これはどうしてなんでしょうか?
0227デフォルトの名無しさん
2012/03/16(金) 15:34:32.570228デフォルトの名無しさん
2012/03/16(金) 15:41:31.29内容が変わる位置は特定してるんですが、手の出しようがありません。
0229デフォルトの名無しさん
2012/03/16(金) 16:02:23.830230デフォルトの名無しさん
2012/03/16(金) 16:21:43.31ある配列の値が変更された際に、変更した分だけグローバル変数の値が変わるようです。
もちろん配列にセットしているわけじゃありません。
変数名で全文検索しましたが、明示的に指示してはいませんでした。
スコープを考えてもそれは考えにいです。
0231デフォルトの名無しさん
2012/03/16(金) 17:47:27.220232デフォルトの名無しさん
2012/03/16(金) 19:14:37.540233デフォルトの名無しさん
2012/03/16(金) 19:21:57.820234デフォルトの名無しさん
2012/03/22(木) 23:32:35.36GUIから作るのかデータ構造から作るのかどっちなの?
0235デフォルトの名無しさん
2012/03/22(木) 23:43:12.85経験的には顧客に見せるためにGUIが先に出来上がるケースが多いが
しかし作ること自体は同時進行(´・ω・`)
0236デフォルトの名無しさん
2012/03/22(木) 23:43:23.27V作りながらVM作る
0237営利利用に関するLR審議中@詳細は自治スレへ
2012/04/04(水) 22:49:55.84{
if (!CWnd::PreCreateWindow(cs))
return FALSE;
cs.lpszClass = AfxRegisterWndClass(
CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS,
::LoadCursor(NULL, IDC_ARROW),
(HBRUSH)::GetStockObject(LTGRAY_BRUSH),
NULL);
return TRUE;
}
0238営利利用に関するLR審議中@詳細は自治スレへ
2012/04/04(水) 22:50:45.57{
BOOL bool1 = CWnd::PreCreateWindow(cs);
if (!bool1)
return FALSE;
UINT nClassStyle = (UINT)(CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS);
/* WINUSERAPI */ HCURSOR /* WINAPI */ hCursor = ::LoadCursor(NULL, IDC_ARROW);
/* WINGDIAPI */ HGDIOBJ /* WINAPI */ hGDIObj = ::GetStockObject(LTGRAY_BRUSH);
HBRUSH hbrBackground = (HBRUSH)hGDIObj;
cs.lpszClass = AfxRegisterWndClass(nClassStyle, hCursor, hbrBackground, NULL);
return TRUE;
}
0239営利利用に関するLR審議中@詳細は自治スレへ
2012/04/04(水) 22:52:25.34>>238のようにコードを書くのは異常かいな。
0240営利利用に関するLR審議中@詳細は自治スレへ
2012/04/04(水) 23:05:39.21自分も程度の差はあるけど 237 ダイレクトな書き方はあんまりしない。
0241営利利用に関するLR審議中@詳細は自治スレへ
2012/04/05(木) 02:25:10.04変数の準備と書き込みと破棄の3つの動作がまるまる無駄になってる
この関数が1秒間に何回も呼び出されるようなシロモノだとパフォーマンスにクリティカルなダメージが出る
といっても、コンパイラが潰してくれるかな^^
0242営利利用に関するLR審議中@詳細は自治スレへ
2012/04/05(木) 07:23:23.720243デフォルトの名無しさん
2012/04/30(月) 16:46:18.04Test.dllでCTestClsクラスを __declspecエクスポートし、これを同じくVC側のEXEで使用すると、
実行時に「プロシージャエントリポイント ??1CTestCls@@UAE@XZがダイナミックリンクライブラリTest.dllから見つかりませんでした」
というエラーが出て終了します。DLL、EXEともにビルドは通っています。
ttp://www.kab-studio.biz/Programing/Codian/DLL_Hook_SClass/05.html
を完全に再現する手順を踏んでいます。
EXEのコードはMFC Appウィザードから作ったスケルトンにCTestClsを宣言を追加し
BOOL CWindowtestApp::InitInstance()
{
:
CTestCls test;
}
のみ。CTestClsはメソッド、メンバ変数のない空クラスにしています。
ちなみに、Test.dllで同様にエクスポートした関数は正常に動作します。
原因と対処法を教えてください。
環境
OS:Windows Vista Home
IDE:Visual Studio 6.0 SP2
0244デフォルトの名無しさん
2012/04/30(月) 17:54:33.940245243
2012/04/30(月) 21:05:36.55ありがとうございます。
書き忘れましたので追加します。
ビルド構成はdebugでプロジェクトからF5実行してテストしています。
レスを頂く前に、プロジェクトフォルダに置いたtest.dllをdebugフォルダにコピーして
deubgフォルダのexeを起動したら正常動作し、
何の気なしに再度プロジェクトを走らせたらエラーは消えました。
なので、原因は同名DLLが複数あることではなかったと想像します。
次に、動作の異なるtest.dllを作ってそれぞれに配置するとdeubgフォルダの方が動くようですが、
debugフォルダのDLLを削除したり名前を変更するとプロジェクトフォルダのDLLが適用されます。
逆にプロジェクトフォルダのDLLを削除したらdebugフォルダのtest.dllが動きます。
現状がこのように変わりましたので、エラーの原因が未だ不明ですし、
VSがdebug→プロジェクトフォルダと上位に向かってDLL検索してるのも気持ち悪いです。
0246デフォルトの名無しさん
2012/04/30(月) 21:12:53.830247243
2012/04/30(月) 21:27:03.02それなら同名DLLが両方にあった場合にdebugフォルダの方が動くのはおかしいですよね。
とりあえず優先順位についてはこっちでどうこう言ってもしょうがないのでそれと憶えれば解決しますが、
エラーメッセージの原因が知りたいです。
0248デフォルトの名無しさん
2012/04/30(月) 21:57:41.770249243
2012/04/30(月) 22:16:02.72>>245で書いたように、現在は複数あってもエラーが出ないから原因はそれではないだろうと考えているのです。
昔は複数あったことでエラーになったと仮定して、今は複数あって正常ならその差はなんですか、ということです。
プロジェクトやIDEの設定は変更していません。
バージョンを分けたのは、どっちのフォルダに置いても動くので優先順位を確認するためにしたという
手順によるもので、エラーが出ていた時に複数バージョンあったわけではありません。
0250デフォルトの名無しさん
2012/04/30(月) 22:25:15.25エラーメッセージの原因って
>??1CTestCls@@UAE@XZがダイナミックリンクライブラリTest.dllから見つかりませんでした
って、いってるんだから、原因はそれでしょ
あとはどう調査するかで、Test.dllで公開してる名前の一覧を
> dumpbin /exports test.dll
で確認してみるとか
仮にdllが正しかったとしても、ビルド時の.libファイルが古かった可能性もあるかもしれん
その場合はexe側のimport情報も出力して付き合わせてみるとか
あと、dllの検索順は
1. 実行ファイル(exe)が存在するディレクトリ
2. windowsシステムディレクトリとか
3. カレントディレクトリ
4. 環境変数 PATH に設定されてたディレクトリ
みたいになるので、debugフォルダ=>プロジェクトフォルダは別に上位に向かってdll検索するわけではなく、フォルダ検索の優先順位があるだけの話
よくわからなくて質問してるはずなのに246のアドバイスをおかしいとか断言するのはどうかと思う
0251デフォルトの名無しさん
2012/04/30(月) 23:08:48.05うわがきしてるじゃねーか
0252243
2012/04/30(月) 23:13:21.01「エントリポイントが見つからない」というメッセージから、
直接の原因がそれだという程度の想像はつきます。見つからない原因が分らないという意味でした。
>よくわからなくて質問してるはずなのに246のアドバイスをおかしいとか断言するのはどうかと思う
>>246さんの言うとおりプロジェクトフォルダがデフォルトなら、
他のものが優先されるのが「当たり前」というのは筋が通らないと思いませんか?
デフォルトに優先するものがあるなら、優先順位を決定する設定値があるか、
そもそもデフォルトがプロジェクトフォルダではないと考えるのが正当ではないかと思った次第です。
検索順については副次的な疑問だったのですが、丁寧にありがとうございます。
もう一度最初から作り直してエラーを再現させてから、教えて頂いた方法で探ってみます。
ありがとうございました。
0253デフォルトの名無しさん
2012/04/30(月) 23:21:16.520254243
2012/04/30(月) 23:38:02.45二つのフォルダに完全に同一のDLLファイルがあり、その片方にさらに同一のものをコピーして
ファイルに差分は無くとも「上書きした」という情報を得てエラーを解消するということがあるということですか?
単にオペレーションの差という点でのご指摘であれば、そもそもdebugフォルダに
test.dllがあったかどうかは憶えていないので、上書きかどうかは不明です。
0255243
2012/04/30(月) 23:54:14.06エラーが出なくなった時点ではバージョンはひとつでした。
時系列では以下のようになります。
0.DLLビルド(debug構成の出力のみ。以下同様)、EXEプロジェクト作成(libファイルのフォルダ指定はDLLプロジェクトのdebugフォルダ)
1.EXEプロジェクト実行→エラー(エントリポイントが見つかりません)
2.EXEプロジェクトフォルダのdllをdebugフォルダにコピーしてdeubgフォルダのexe起動→正常
3.EXEプロジェクト実行→正常
4.なぜEXEプロジェクトが正常動作するようになったのか不明なため、片方のフォルダからdllを削除したり
バージョンを分けて両方のフォルダにバージョン違いのdllを配置して優先順位の検証
そんなこと有り得ないというのであれば、私の記憶違いがあると思います。
アドバイスを下さった皆様ありがとうございます。
これらを元に0からチェック項目を作ってやり直してみます。
0256デフォルトの名無しさん
2012/05/01(火) 11:07:16.24優先順位はちゃんとドキュメントに書かれてるだろ
あたりまえなの
0257デフォルトの名無しさん
2012/05/01(火) 11:49:55.540258デフォルトの名無しさん
2012/05/01(火) 14:07:46.600259デフォルトの名無しさん
2012/05/01(火) 14:12:52.82実行モジュールがある場所がデフォだからdebugフォルダが優先されるのは当たり前、
と書くべきなのに、
「プロジェクトフォルダがデフォだからdebugフォルダが優先されるのは当たり前」
というのが滅茶苦茶。
0260デフォルトの名無しさん
2012/05/01(火) 14:12:15.040261デフォルトの名無しさん
2012/05/01(火) 14:15:01.04マジか? Win95/98でも2010使えるのか(めっちゃ重そうだけど)。
ということはexpressが使えるわけか。正直インストールできるか不安だけど。
0262デフォルトの名無しさん
2012/05/01(火) 14:42:12.15作業フォルダのデフォルトがプロジェクトフォルダだって書いてるだけだろ
別に言ってることはおかしくない
それに優先に関しては言及してない
0263デフォルトの名無しさん
2012/05/01(火) 15:52:56.16優先順位について言及してなければ>>246の主語・主節はなんだ?
何が当たり前なんだ? それは文章としておかしいぞ。
つーか、デフォルトの作業フォルダはexeの出力先だろ。
0264デフォルトの名無しさん
2012/05/01(火) 16:29:37.45>debugフォルダのDLLを削除したり名前を変更するとプロジェクトフォルダのDLLが適用されます。
ここだろ
>つーか、デフォルトの作業フォルダはexeの出力先だろ。
違うよ
〜.vcxprojがあるフォルダが作業フォルダになる
0265デフォルトの名無しさん
2012/05/01(火) 17:26:52.52お前頭おかしいんじゃないの?
>debugフォルダのDLLを削除したり名前を変更するとプロジェクトフォルダのDLLが適用されます。
「当たり前」の主語が↑ということは間接的に優先順位に言及してるんだけど。
しかもなんで書いた本人にしか分らない主語を省略してるんだよwww
0266デフォルトの名無しさん
2012/05/01(火) 18:09:12.11動作時、VBのようにエラーでとめるような手法はありますか?
int a[10];
int b ;
// OK
b = 5;
a[b] = 3;
// NG
b = -1;
a[b] = 3;
// NG
b = 15;
a[b] = 3;
Cの場合普通に動いてしまい、
メモリリークした値をそのまま使い続け
とまるときととまらないときがあって困っています。
0267デフォルトの名無しさん
2012/05/01(火) 18:18:37.340268デフォルトの名無しさん
2012/05/01(火) 19:02:08.69とか出来なかったっけ。
0269デフォルトの名無しさん
2012/05/03(木) 19:11:21.90// #include <array>
std::array<int, 10> a; // VC++ 2008だとstd::tr1::arrayだったはず。
int b;
b = 15;
a.at(b) = 3;
a[b] = 3;とも書ける。ただし、この場合、チェックされるのはデバッグビルドのときだけ。
0270片山博文MZボット ◆0lBZNi.Q7evd
2012/05/05(土) 17:07:17.980271デフォルトの名無しさん
2012/05/08(火) 18:28:47.55x86のPCで64bit用のを作れるのか、それともx64のPCで64bit用のを作れるようになるのか
どっちなんでしょ
参考URL
ttp://d.hatena.ne.jp/torutk/20100927/p1
0272デフォルトの名無しさん
2012/05/08(火) 18:52:16.040273デフォルトの名無しさん
2012/05/08(火) 18:53:07.720274デフォルトの名無しさん
2012/05/17(木) 22:25:37.08コントロールがVC#やVB.NETと比べると段ちだし・・・
やりたいことは、listとtreeを結合したようなVS2010のウォッチウィンドウを
作りたい
0275デフォルトの名無しさん
2012/05/17(木) 22:27:45.080276デフォルトの名無しさん
2012/05/17(木) 22:47:29.61作りたい
0277デフォルトの名無しさん
2012/05/17(木) 22:52:47.070278デフォルトの名無しさん
2012/05/17(木) 22:56:07.95説得力のあるお言葉ですねw
0279デフォルトの名無しさん
2012/05/17(木) 23:09:06.89どうせアマチュアでしょ?
0280デフォルトの名無しさん
2012/05/17(木) 23:24:36.65仕事以外でそんなことするほど、暇じゃないし。
ヲタでもありません。
0281デフォルトの名無しさん
2012/05/17(木) 23:33:10.240282デフォルトの名無しさん
2012/05/17(木) 23:43:50.630283デフォルトの名無しさん
2012/05/18(金) 00:08:56.59好き好んで作りたいわけでない
作らざるを得ない
0284デフォルトの名無しさん
2012/05/18(金) 00:20:47.41アマチュアなら教えてやったんだがな
0285デフォルトの名無しさん
2012/05/18(金) 00:21:06.71揚げ足取りをすると、自分で「作りたい」って書いてるし。
で、そんなこたどうでもいいんだが、結局どうして欲しいんだよ。
技術者の端くれなら、その程度の説明くらいはちゃんとしろ。
0286デフォルトの名無しさん
2012/05/18(金) 00:28:19.21なんとでもいえるわなwww
0287デフォルトの名無しさん
2012/05/19(土) 15:59:31.16リソーススクリプトを覚えれば自由自在にGUIを作れるよ
MSDNの英語版に詳しく載ってるから勉強してみたら
0288デフォルトの名無しさん
2012/05/20(日) 05:26:03.56printf.c
printf.c(1): fatal error C1083: include ファイルを開けません。'stdio.h': No such file or directory
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
このエラーにはどうすればいいのでしょうか
サンプルを使っている為ソースコードには問題ないのでしょうが・・・
WinXP
0289288
2012/05/20(日) 05:26:59.12途中送信してしまいした
WinXP SP3
VC2010です
よろしくお願いします
0290デフォルトの名無しさん
2012/05/20(日) 07:09:28.510291デフォルトの名無しさん
2012/05/25(金) 19:10:45.19C#から手を広げてみたらIDEまで扱い辛い・・・
0292デフォルトの名無しさん
2012/05/25(金) 20:43:10.20ネイティブが生成できないから、c#で作ってもなんの役にも立たんがw
0293デフォルトの名無しさん
2012/05/26(土) 00:11:38.84ものすごく壁が高い・・・
まったくGUIが作成できないんですが、VC+++MFCってGUIを作成するものじゃなくて、
ビジネスロジックだけを記述するものとしての扱いなのでしょうか?
0294デフォルトの名無しさん
2012/05/26(土) 00:17:38.370295デフォルトの名無しさん
2012/05/26(土) 00:52:08.27っていうかリソースエディタなんてまどろ☆コシイもの使わないで
自前でCreateWindowしようず
0296デフォルトの名無しさん
2012/05/26(土) 01:36:54.130297デフォルトの名無しさん
2012/05/26(土) 05:12:39.12.NETFrameworkの中にFormアプリのパーツが入ってんでしょ
0298デフォルトの名無しさん
2012/05/26(土) 10:37:46.68おっさん言われることを承知で書いてみる。
自分の場合は、敢えてテキストエディタで GUI 部分書いたり、Windows API だけで書いたりして遊んでたんだがな。
0299デフォルトの名無しさん
2012/05/26(土) 10:58:27.253DSMAXのようなGUIを作ろうとすると、かなり苦労するよ
0300デフォルトの名無しさん
2012/05/26(土) 12:27:52.15単にリソースを手書きしないですむだけだったVC++4に対して、
ポトペタのDelphiやVisual Cafe(ただし不安定w)やVB4が全盛だったから。
なつかしす。
0301デフォルトの名無しさん
2012/05/28(月) 18:39:48.240302片山博文MZボット ◆0lBZNi.Q7evd
2012/05/30(水) 11:17:09.67アプリを常時起動しておいて、PCを使わないときはアプリを起動したまま、
休止状態にする。休止状態にするには、終了オプションでHを押す。
0303デフォルトの名無しさん
2012/05/30(水) 13:38:57.35「男は黙ってリソーススクリプト」
0304デフォルトの名無しさん
2012/05/30(水) 16:46:27.92日本政府による積極的なPRも奏功。若者の心をとらえ、西部ムンバイでは愛好会の活動も本格化している。
「ストーリーが奥深く、登場人物に感情移入しやすい。シリアスな展開の中に笑いがあるなど、飽きが来ない構成も魅力」
アニメファンが集う「ムンバイ・アニメ・クラブ」会長のラチタ・サハさん(23)が日本アニメの魅力を説く。
同クラブは2010年に約10人で発足し、今では会員数が1000人を超える。月1回の会合では、
アニメソングのカラオケや、アニメの登場人物に似せた衣装を着用する「コスプレ」も楽しむ。
インドでは今秋から、国民的球技クリケット版「巨人の星」の放送が決まっているが、関心はまだ低く、
視聴可能な「クレヨンしんちゃん」などのほか、日本でも話題の「ONE PIECE(ワンピース)」が人気だ。
「作品からあふれ出る日本文化に興味がある」(サハさん)。他国のアニメに比べて緻密に表現された日本の街並みなどの描写や、高度な映像技法などへの評価も高い。
日本の経済産業省が3月にムンバイで開いた日本アニメなどを紹介する見本市は好評だった。
アニメソングを熱唱したメンバーのミニスカートのコスプレ姿は、全身を包む女性の伝統衣装サリーが一般的な同国の観衆の目をくぎ付けにした。
ファン層は確実に広がりつつあるが、インドでは新作DVDなどの入手が難しいのも現実だ。
「もっと手軽にアニメ関連商品が手に入るようになれば」とサハさんは期待している。
http://www.sankeibiz.jp/macro/news/120530/mcb1205300502005-n1.htm
0305デフォルトの名無しさん
2012/05/31(木) 15:24:53.130306デフォルトの名無しさん
2012/06/01(金) 21:17:53.03305 :デフォルトの名無しさん:2012/05/31(木) 15:24:53.13
305 :デフォルトの名無しさん:2012/05/31(木) 15:24:53.13
305 :デフォルトの名無しさん:2012/05/31(木) 15:24:53.13
305 :デフォルトの名無しさん:2012/05/31(木) 15:24:53.13
0307デフォルトの名無しさん
2012/06/01(金) 21:36:04.50お前たちの時代は終わった
0308デフォルトの名無しさん
2012/06/02(土) 17:49:00.64真の男は黙ってCreateWindow
0309デフォルトの名無しさん
2012/06/03(日) 00:21:45.140310デフォルトの名無しさん
2012/06/03(日) 00:22:40.050311デフォルトの名無しさん
2012/06/03(日) 00:56:01.71ウィンドウの一種としてのコントロールなら、やりようはあったんじゃなかったっけ。
0312デフォルトの名無しさん
2012/06/03(日) 01:27:10.29イベントとかデータ受け渡しとか面倒なだけ
0313デフォルトの名無しさん
2012/06/03(日) 03:53:22.77コントロールもWindowであり
もちろんダイアログもWindowsなので
結果として、コントロールはありとあらゆる場所に描画できる。
0314デフォルトの名無しさん
2012/06/03(日) 03:53:58.09正:もちろんダイアログもWindowなので
0315デフォルトの名無しさん
2012/06/03(日) 04:22:08.43しょぼいコントロールしかCreateWindowできないようですが?
C#にあるような、グリッドコントール(チェック、コンボ等あるやつ)を貼り付けたいです。
0316デフォルトの名無しさん
2012/06/03(日) 04:25:57.82codepadあたりから探してくるか自分で作るしかない
0317デフォルトの名無しさん
2012/06/03(日) 11:17:03.25C#にあるようなリッチなコントロールの一部はMFCにもないからな。
0318デフォルトの名無しさん
2012/06/03(日) 12:30:41.380319デフォルトの名無しさん
2012/06/03(日) 12:31:58.540320デフォルトの名無しさん
2012/06/03(日) 14:09:59.74ただし作る人の腕による。
0321デフォルトの名無しさん
2012/06/03(日) 19:11:51.31listctrlやtreectrlの使い方とかばっか、そんなのMSDN見れば誰でもわかるっての
listctrlを改造して、セルにコンボボックスやプログレスバーやスライダやツリーを合体させた
コントロールの作り方なんて全くない・・・
英語が苦手じゃなかったらな〜
0322デフォルトの名無しさん
2012/06/03(日) 20:15:46.06イメージ出来んが。w
真面目に。
リストコントロールや Microsoft FlexGrid Control とかにコンボボックス貼り付けて入力可能にしたり、の
複数コントロールをまとめてひとつのコントロールに見せるな程度のことなら昔作ってたぜ。
その「大抵おんなじことばっか」の日本語サイトを参考にしつつ。
おまえって 309 ? だったら足りないのはサイトじゃなくておまえの情報収集能力だよ。
つまんない言い訳してないでとっととやれよ。
0323デフォルトの名無しさん
2012/06/03(日) 20:29:02.74そんなコントロールの使い道があるのか?w
0324デフォルトの名無しさん
2012/06/03(日) 20:38:56.28ってのは当たらずとも遠からず
どのHPも、本にのってるサンプルプログラムを書いているだけのが多い
VC++で最初に躓くところだろうな。
通り一辺倒のアプリはすぐ作れるようになるけど、ちょっと変わった要求がきたら
とたんに、どこをどういじればいいかわからなくなる。
0325デフォルトの名無しさん
2012/06/04(月) 21:21:06.07プログラミングWindowsみたいに、基礎からしっかり教えてくれる本なら、
どんな要求にも答えられる実力がつく。
0326デフォルトの名無しさん
2012/06/04(月) 21:25:51.54を読んだことがあるのか?
当たり前のことしか書いてないぞ
何が名著なのかさっぱり???
0327デフォルトの名無しさん
2012/06/04(月) 21:26:14.97最近だと.NET FrameworkとC#とかもごっちゃになってるね
0328デフォルトの名無しさん
2012/06/04(月) 21:58:33.68初心者には敷居が高すぎる気もするが。
0329デフォルトの名無しさん
2012/06/04(月) 22:29:52.05プログラミンWindowsはその当たり前を懇切丁寧に教えてくれる。
世界が認める名著なんだから、それが名著でないと思えるなら、
おまえはよっぽどの天才か、よっぽどのアホか、どっちかだw
0330デフォルトの名無しさん
2012/06/04(月) 22:37:35.80Windowsでプログラムを作ってる人なら誰でも知ってることばっかだぞ
まぁ、VBやC#みたいな似非なら目からうろこだろうな
0331デフォルトの名無しさん
2012/06/04(月) 22:43:37.89基礎なんだから、「Windowsでプログラムを作ってる人なら誰でも知ってることばっか」
に決まってるだろ。何をいいたいんだ、おまえはw
0332デフォルトの名無しさん
2012/06/04(月) 22:45:24.69なにを、顔真っ赤にしてんの?
何をいいたいんだ、おまえはw
0333デフォルトの名無しさん
2012/06/04(月) 22:51:31.23>を読んだことがあるのか?
>当たり前のことしか書いてないぞ
>何が名著なのかさっぱり???
だめだ、こいつはw
アホだったよ。
0334デフォルトの名無しさん
2012/06/04(月) 23:14:17.08キチガイ?
0335デフォルトの名無しさん
2012/06/05(火) 00:57:06.78コミュ障を自慢して嬉しいのか。
0336デフォルトの名無しさん
2012/06/05(火) 07:11:55.840337デフォルトの名無しさん
2012/06/05(火) 12:42:16.25韓国テレビの番組で日本海表記の地図を使用し、非難殺到=韓国
韓国MBC放送の日曜番組『出発! ビデオ旅行』の3日の放送で、「日本海」と表記
した地図を使用していたとして、韓国世論から非難が巻き起こった。多数の韓国メディアが4日、大きく取り上げた。
『出発! ビデオ旅行』は新作映画の紹介から名作など、さまざまなジャンルの映画を
紹介する番組。3日の放送で日本海が「SEA OF JAPAN」と表記された世界地図を
使用したという。
番組放送後に視聴者掲示板には、抗議や非難の書き込みが殺到した。番組の制作陣は
世論の非難を受けた当日、公式サイトに謝罪文を掲載し「今後はこのようなミスを絶対に
しないように最善を尽くす」との立場を表明した。しかし、同番組の5月6日の放送分で
も日本海と表記された地図を使用したことが発覚し、番組やテレビ局への非難はしばらく続く見通しだ。
韓国メディアは「目を疑う場面が電波に乗った」「東海ではなく日本海と表記した地図
を使用して視聴者の怒りを買った」などと伝えた。現在MBC放送は2月から突入した
ストライキがまた続いており番組に支障をもたらしていることも「ミス」の原因とみるメディアもある。
0338デフォルトの名無しさん
2012/06/05(火) 18:35:00.570339デフォルトの名無しさん
2012/06/05(火) 23:41:35.490340デフォルトの名無しさん
2012/06/06(水) 11:14:21.180341デフォルトの名無しさん
2012/06/06(水) 19:12:58.27と
char *word[] でポインタの位置が違うのですが、これには違いがあるんですか?
0342デフォルトの名無しさん
2012/06/06(水) 19:23:00.050343デフォルトの名無しさん
2012/06/06(水) 20:17:59.16フジテレビ電話したら今日の番組の変更は無いと言われた
「皇族の方が亡くなられたのに変更はしないんですか?」
と聞いたら
「今のところありません。よろしくお願いします」だと
国の一大事に捏造人気アイドルの茶番をやるつもりらしい
津田大介 @tsuda
別にAKBに恨みはないし、がんばっていただきたいなと思うけど、国民的に大きく報じる話題は
ほかにもっともっとたくさんありますよねじっさい……。テレビは特に貴重な電波資源使ってるんだし。
http://twitter.com/tsuda/status/210265622502842368
東浩紀 @hazuma
同意。
http://twitter.com/hazuma/status/210266350730481664
0344デフォルトの名無しさん
2012/06/06(水) 22:35:02.26とりあえず他人様に理解していただけるように書き直せ。
0345デフォルトの名無しさん
2012/06/07(木) 09:14:27.26*の前後のスペースはあってもなくても良い
つまりどっちも一緒
>>344
理解してやれよ
0346デフォルトの名無しさん
2012/06/07(木) 11:54:09.83でもいいし
0347341です
2012/06/07(木) 15:23:59.990348デフォルトの名無しさん
2012/06/07(木) 15:32:54.98三笠宮寛仁さまの逝去に当たって(談話)
社会民主党党首 福島みずほ
本日、 三笠宮寛仁さまが入院先の病院で逝去されました。
「ヒゲの殿下」の愛称で親しまれ、障害者問題をはじめスポーツ、青少年育成などの諸活動に熱心に取り組まれた
三笠宮寛仁さまのご訃報に接し、悲しみの念を禁じ得ません。つつしんでご冥福をお祈り申し上げます。
http://www5.sdp.or.jp/comment/2012/dannwa120606.htm
民主党 http://www.dpj.or.jp/
なし
自民党 http://www.jimin.jp/
なし
公明党 http://www.komei.or.jp/
なし
共産党 http://www.jcp.or.jp/
なし
0349デフォルトの名無しさん
2012/06/23(土) 23:20:53.461000 :uy ◆xVOGOO9ev6 :2012/06/23(土) 12:35:29.68
俺は動的言語の問題点をいくつあげてもwwwww
静的言語よりはマシだと確信してるわwwwwwwwwwwwwwwwww
静的言語の問題点をなぜ挙げないかって??
見放してるから、問題点を指摘さえしないってことだよwwwwwwwwwww
気づけバカwwwwwwwwwwwwwww
0350デフォルトの名無しさん
2012/06/23(土) 23:54:03.540351デフォルトの名無しさん
2012/06/27(水) 23:35:49.89OSはWindows7 homeです。
ResEditでのボタンのグラフィックは
グラデーションのかかったVB2010で作った時と同じ形のボタンなのですが
Visual C++からCreateDialogParamでこのリソースを呼び出すと
四角いXPのときのようなグラフィックのボタンになってしまいます。
他のコントローラもXPのようなかくばった感じのグラフィックになってしまいます。
機能は問題ないのですが、VB2010でつくったボタンのようにみせたいのですが
原因わかりましたら教えてください。
0352デフォルトの名無しさん
2012/06/27(水) 23:43:41.690353デフォルトの名無しさん
2012/06/28(木) 10:06:10.88o 2000のような
でした
すみません
0354デフォルトの名無しさん
2012/06/28(木) 13:59:11.16ありがとう なおりました
0355デフォルトの名無しさん
2012/06/30(土) 08:45:45.740356デフォルトの名無しさん
2012/07/05(木) 21:30:07.35メンバに対してじゃなく、1文字目から自動的にインテリセンスがポップする"IntelliSense Everywhere"
って機能は体験版には付いていないでしょうか?
一応ctrl+スペースで強制的に起動はできるけど、オプションに自動で起動しそうな項目はなかったし
ヤフーでしらべると怪しげなパッチばかりヒットする・・・
0357デフォルトの名無しさん
2012/07/06(金) 00:54:44.18既存のC言語で書かれているプログラムを、Windows上で実行しようとしています。
C言語で書かれているプログラムはGUIで、大きく分けて、実際に処理が書かれているファイル(ソース)と、
線や枠などの図形の(視覚的な)情報が書かれているファイルの2種類です。
質問:既存のファイルを使って作成したいのですが、新規プロジェクト作成で、プロジェクトの種類は何で作り始めれば良いでしょうか?
いろいろネットで調べてみたところ、最終的に作りたい形はSDIで複数ビューがある感じが一番近いと思いました。
環境
Visual C++ 6.0
Windows XP(そのうちWindows7予定)
0358デフォルトの名無しさん
2012/07/06(金) 01:00:49.030359デフォルトの名無しさん
2012/07/07(土) 21:05:50.46TRACE(_T("%s\n"), c);
_CrtDbgReport: String too long or IO Error_CrtDbgReport
とエラーが出力されます
「あ」と表示をを期待しているのですが、どうすればいいの?
0360デフォルトの名無しさん
2012/07/07(土) 21:13:26.15じゃダメかしらん?
0361デフォルトの名無しさん
2012/07/07(土) 22:19:42.950362デフォルトの名無しさん
2012/07/08(日) 11:17:11.180363デフォルトの名無しさん
2012/07/08(日) 11:29:42.65じゃダメかしらん?
あるいは Japanese_Japan.932
0364デフォルトの名無しさん
2012/07/08(日) 11:36:15.99>>360さんのやりかたでもOKでした。
0365デフォルトの名無しさん
2012/07/08(日) 13:30:42.30昔のプログラムなんですけど、
int86(0x5,&inregs,&outregs); //←(0x5の他にも「0x11」「0x14」「0x17」「0x21」「0x5f」もありました。)
このような関数が出てきました。
調べたところによると、<dos.h>で宣言されているようで、DOSファンクションコールみたいです(?)。
上記0x5(また、他5つ)の処理は具体的にどのような処理を行っていて、それをVisual C++内で記述(C言語化orC++言語化)するには
どうすれば良いでしょうか?
環境は
windows 7
VC6
0366デフォルトの名無しさん
2012/07/08(日) 13:46:18.88アセンブラの知識無いと理解困難。
ほとんどの機能は標準関数で使える。
それでも興味あるならDOS ファンクションコールで検索してみて。
0367デフォルトの名無しさん
2012/07/08(日) 13:55:03.600368デフォルトの名無しさん
2012/07/08(日) 14:05:51.120369デフォルトの名無しさん
2012/07/08(日) 16:52:44.71ttp://www.datadoctor.biz/jp/data_recovery_programming_book_chapter8-page12.html
ttp://support.microsoft.com/kb/48744/ja
ttp://rarara.cafe.coocan.jp/cgi-bin/lng/vc/vclng.cgi?print+200011/00110003.txt
ttp://www2.muroran-it.ac.jp/circle/mpc/front/old1/program/pc98dos/dosinit.html
0370デフォルトの名無しさん
2012/07/08(日) 18:27:46.92参考書に載ってるサンプルプログラムをどんどん手打ちして実行したいのですが、
同じプロジェクトの中にプログラムを複数置いてビルドすると、
「main()関数が複数定義されてます!」というような内容のメッセージが出て怒られてしまいます
これを回避するには、サンプルプログラムごとに新しいプロジェクトを作成するしかないのでしょうか?
0371デフォルトの名無しさん
2012/07/08(日) 18:30:20.090372デフォルトの名無しさん
2012/07/08(日) 19:05:12.45osでも書くつもりか?
0373デフォルトの名無しさん
2012/07/08(日) 19:11:49.22ソースファイルのフォルダに →main.cpp , sub.cpp
ヘッダファイルのフォルダに →main.h , sub.h
を作り
main.cpp内で、"main.h"をインクルード
main.h内で、<iostream> と "sub.h"をインクルード
sub.cpp内で、"sub.h"をインクルード
sub.hでは何もインクルードしない
(sub.hでサンプルクラスなどを宣言をして、sub.cppでそのメンバ関数などの処理を記述しています)
という風にしているのですが
main.cpp内でsubで定義したクラスを使おうとすると、コンパイラに「そんなものないよ」って言われてしまいます。
(VCは同プロジェクト内に突っ込んでいれば勝手に分割コンパイルしてくれるんですよね?)
試しにmain.h内のインクルードを"sub.h"から"sub.cpp"にしたらコンパイル通って希望通りに動くのですが
cppファイルをインクルードすると分割してる意味がないんですよね?(コンパイルの速度など
0374デフォルトの名無しさん
2012/07/08(日) 20:10:10.56お前が生きててなんになるの?
人体実験サンプル?
0375デフォルトの名無しさん
2012/07/08(日) 21:40:36.33main で参照してる sub のメンバ関数や変数なりの宣言を本当にすべて sub.h でやってる?
もしやってるならよくわかんないな。ソースをどっかにあげてくれたらみれるかも。
ちなみに自分なら、sub.h のインクルードは main.cpp でやる。
ヘッダファイルにインクルードがあると後で面倒なことになることもあるから。
0376デフォルトの名無しさん
2012/07/08(日) 22:12:47.24.net のアプリになるんですか?
vc++でのネイティブアプリは作成できなくなったんですか?
0377デフォルトの名無しさん
2012/07/08(日) 22:17:42.300378デフォルトの名無しさん
2012/07/08(日) 22:54:21.95VC++
+ CLR
+ Win32
みたいなツリーが出てこない? これの Win32 以下のを選ぶとネイティブなのになるよ。
※ Express の場合
0379デフォルトの名無しさん
2012/07/09(月) 03:54:06.94とエラーがでます。
解決方法を教えてください!
0380デフォルトの名無しさん
2012/07/09(月) 08:27:14.130381デフォルトの名無しさん
2012/07/09(月) 09:58:16.32フォームアプリ==.NETだから
これは昔からそうだろ
0382デフォルトの名無しさん
2012/07/09(月) 21:30:33.62コード晒してなくてすみません、色々試したり調べたりした結果、
どうもテンプレートを使っていたのが問題だったみたいです。
質問する上で重要なことじゃないと思ったのに犯人だったとは・・・。初心者で申し訳ないです
0383デフォルトの名無しさん
2012/07/09(月) 21:52:09.11まあ頑張れ。w
0384デフォルトの名無しさん
2012/07/11(水) 20:55:25.470385デフォルトの名無しさん
2012/07/11(水) 22:28:47.170386デフォルトの名無しさん
2012/07/11(水) 22:32:46.290387デフォルトの名無しさん
2012/07/11(水) 22:57:43.24イミフ
0388片山博文MZボット ◆0lBZNi.Q7evd
2012/07/12(木) 00:26:28.17ステータスバーをサブクラス化
0389デフォルトの名無しさん
2012/07/14(土) 17:00:30.95Win32APIでのプログラムは始めてで、いろいろと調べながら少しずつやっています。
描画について分からないことがあるので教えてください。
ttp://www.geocities.jp/ky_webid/win32c/009.html
などを参考に描画を学んでいますが、描画の記述は全てウィンドウプロシージャ内のWM_PAINTに書かないといけないのでしょうか?
自分が今作ろうとしているのは、
1.複数のページ(?)からなる。
2.各ページのウィンドウのクライアント領域内に、多くの線や図形、文字を描画する。
3.図形の領域内を左クリックするとページ移動
このような作品を構想中です。
イメージとしては、まずメインとなる目次のページ(親ページ)を描画(線、図形、文字)。
親ページには、各章(子ページ)に飛ぶための図形が複数用意されている。
図形の領域内で左クリックが起こったら、目次のページの描画を消して、子ページの描画を行う(子ページへ飛ぶ)
子ページには、親ページに戻る図形や、孫ページに進む図形が用意されている。
孫ページには、親ページにまで戻る図形や、子ページに戻る図形(場合によってはひ孫に進む図形)がある。
まとめますと、ウィンドウのクライアント領域のある範囲(図形内)をクリックすると、元の描画とは違った新しい描画を行いたいのです。
サンプルプログラムみたいに、WM_PAINT内に描画処理を全て書くとなると、すごく長くなってしまう気がします。
1ページに少なくても20個の描画処理は作るつもりです。(それが複数ページ)
何か良い方法はないでしょうか?
0390デフォルトの名無しさん
2012/07/14(土) 17:45:25.940391デフォルトの名無しさん
2012/07/14(土) 20:55:51.47一般的(だと思ってる)な考え方として、Windows のイベントを処理する関数には 0.1 秒ルールってのがあったと思う。
時間(手間)の掛かる処理は別のところでやっておいて、それ系の関数はすぐに処理を終える(呼び出し元に返す)っての。
この場合は、描画は別のところでやっておいて OnPaint(仮) ではあらかじめ描いておいた絵をコピーして終わりにする。
0392デフォルトの名無しさん
2012/07/15(日) 15:24:31.74HDC dc=GetDC(hwnd);
HDC memdc=CreateCompatibleDC(dc);
あとは >>391 さんの言う通り
0393デフォルトの名無しさん
2012/07/15(日) 15:53:22.30ごくろうなこってw
0394デフォルトの名無しさん
2012/07/15(日) 16:00:13.020395デフォルトの名無しさん
2012/07/15(日) 16:59:53.350396デフォルトの名無しさん
2012/07/15(日) 19:26:31.82CADみたいなアプリを作成していまして
ユーザからの入力は1234.567mmのオーダーでテキストボックスより入力されてきます。
0397デフォルトの名無しさん
2012/07/15(日) 20:17:01.77アフォですか?
0398デフォルトの名無しさん
2012/07/15(日) 23:40:07.88質問をするならなにが分からないのか具体的に聞くようにしようよ。
CAD みたいなアプリを作ってるってことは素人さんじゃないんだよね?
0399デフォルトの名無しさん
2012/07/16(月) 00:58:28.63やりたいことは、
1234.567mmのオーダーでユーザが入力する
その際のオフスクリーン用のDDBを作成する際のサイズの決定の仕方がわからない
0400デフォルトの名無しさん
2012/07/16(月) 07:22:24.50アフォですか?
0401デフォルトの名無しさん
2012/07/16(月) 09:04:25.96http://engawa.2ch.net/test/read.cgi/poverty/1342345292/
K-POP起用で露骨に視聴率が下がる!?フジテレビは「韓流偏向」を方向転換か?
韓流、K-POPでは視聴率が取れない
2012年7月10日、日刊サイゾーが、韓流やK-POPでは視聴率が取れないという声がフジテレビ内部から
上がっていると報じた。昨年、高岡蒼佑のツイッターの発言に端を発した「韓流偏重」のフジテレビに
対する反発が予想以上に大きなダメージを与えているとのことである。
日刊サイゾーではフジテレビ関係者に取材したコメントとして、K-POPアイドルを出演させると番組の
視聴率が露骨に落ちるという話を紹介している。このことにスタッフは悩んでいるという。
このため、フジテレビが韓流ブームを演出し続けることは近く困難になってくるだろうとしている。
フジテレビ番組の異変
確かにこの報道を裏付けるような現象が出ている。当サイトでもすでに報じているが、8月8日の
「FNSうたの夏まつり」にK-POPアーティストの名前がない。
また、7月9日放送の2時間特番「夏がた!!HEY!HEY!HEY!お台場“生”の歌祭り」でも
K-POPアーティストで出演するのは東方神起だけであった。以前であればもっと多くのK-POP、
韓流アイドルが出演していたのである。
果たして、フジテレビは視聴率の低下により「韓流偏向路線」の方向転換を余儀なく
されるのであろうか?
今後の動きをよく観察していきたい。
http://www.otonano-kaisha.com/news_SOeAukIik.html
http://www.otonano-kaisha.com/files/655/b22d79919f3b18b0d3ac4c59d9d14056.jpg
0402デフォルトの名無しさん
2012/07/16(月) 09:15:04.140403デフォルトの名無しさん
2012/07/16(月) 10:37:34.57゙'. '.;`i i、 ノ .、″
゙'. ,ト `i、 `i、 .、″
| .,.:/"" ゙‐,. ` /
` .,-''ヽ"` ヽ,,,、 !
、,、‐'゙l‐、 .丿 : ':、
、/ヽヽ‐ヽ、;,,,,,,,,,-.ッ:''` .,"-、
,r"ツぃ丶 `````` ../ `i、
,.イ:、ヽ/ー`-、-ヽヽヽ、−´ .l゙`-、
_,,l゙-:ヽ,;、、 、、丶 ゙i、,,、
,<_ l_ヽ冫`'`-、;,,,、、、、.............,,,,、.-`": │ `i、
、、::|、、、ヽ,、、. ```: : : ``` 、.、'` .|丶、
.l","ヽ、,"、,"'、ぃ、、,、、、、.、、、.、、、_、.,,.ヽ´ l゙ ゙).._
,、':゙l:、、`:ヽ、`:、 : `"```¬――'''"`゙^` : ..、丶 .l゙ `ヽ
,i´.、ヽ".、".、"'ヽヽ;,:、........、 、、...,,,、−‘` 、‐ |゙゙:‐,
,.-l,i´.、".`ヽ,,,.".` `゙゙'"`'-ー"``"``r-ー`'": _.‐′ 丿 ,!
j".、'ヽ,".、".、"`''`ー、._、、、 、._,、..-‐:'''′ .、,:" 丿
゙l,"`"`''ヽヽ"`"` ```゙'''"ヽ∠、、、、ぃ-`''''": ` 、._./` ._/`
`'i`ヽヽヽ`''ーi、、、: : 、.,-‐'` 、/`
``ヽン'`"` : `~``―ヽ::,,,,,,,,,,.....................,,,,.ー'``^ ,、‐'"`
`"'゙―-、,,,,..、、 : ..,、ー'"'`
: `‘"`―---------‐ヽ``"''''''""
0404デフォルトの名無しさん
2012/07/16(月) 11:35:46.31いや、だから。
「同じようなことしか書いてない」記事のどこが分からないのか具体的に書いてみそ。
この質問はさ、おまえがなにをどの程度理解してるかを判断する物差しにもなるんだよ。
こんなのを一から書いてやれるほど人が良くないモン。自分は。
で、その上で。
「画面に描画する」だけなら、実際の長さなんてどうでもいい。
ユーザが見た目で「自分が入力した値が反映されている」と思えばいいわけでさ。
要するに(たとえば)画面に表示してる「白紙の大きさが」ユーザが入力した縦横比になってればそう感じるだろ?
これはたとえば拡大縮小表示をするときのことを考えてみれば理解しやすいと思う。
ほんとうに pixel <-> ユーザの指定したサイズ の変換を考えなければならないのは印刷のときくらいじゃねぇかな。
と、起き抜けの寝ぼけた頭で書いてみた。
あと、同じような分野の質問だと思うから書くけど、違ってたらごめんな。
おまえさんが 389 なら、前の質問への対応をちゃんとしてから次のことを書くようにした方がいいよ。
0405デフォルトの名無しさん
2012/07/16(月) 11:50:57.77389ではありません。
CClientDC cdc(this);
bitmap.CreateCompatibleBitmap(&cdc,::GetSystemMetrics(SM_CXSCREEN),::GetSystemMetrics(SM_CYSCREEN));
memDC.CreateCompatibleDC(&cdc)
memDC.SelectObject(&bitmap);
memDC.SetMapMode(MM_ANISOTROPIC);
memDC.SetWindowExt(1,-1);
memDC.SetViewportExt(1,1);
このメモリデバイスコンテキストに
(0,0)から(1234567,1234567)までLineTo して
デバイスコンテキストにBitBltしたいです。 (ディスプレイ上に実際の長さではなくていいです)
ようするに、AutoCadみたいに、大きな構造物でもディスプレイ上に表示できるようにしたい
0406デフォルトの名無しさん
2012/07/16(月) 14:12:06.73経緯見てないけど
データは独自に持っていて
必要に応じて描画時にスケールすればいいだろ
0407デフォルトの名無しさん
2012/07/16(月) 18:50:27.57上のを見るとデバイスコンテキストを作成してるだけだよね。
それぞれの行の処理の意味は分かってるのかな。
あと、前の自分のレスの真ん中辺りを読んでる?
たとえば WindowsAPI かなにかで pixel <-> ユーザの指定したサイズ の変換をするようなのはないと思う。
プログラムを作る上で、「1mm を * ドットで表現するね」って規則を自分で作っちゃっていいんだよ。
おまえさんの例なら、「スクリーン1画面分を A4 横の大きさとして表示する」とか。(※あくまで例)
そこまで決めちゃえば簡単だろ。
A4 の長い辺の長さがスクリーンの横方向の解像度ってことになるんだから、変換式は自動的に出る。
自分ならその辺りの変換を勝手にやってくれる中間クラスを間にはさむ。
で、その上で、なんだが。
印刷するときにはプリンタの性能を考えてあげなくちゃならない。
印刷 vc dpi とかでググればヒントは沢山あると思うが。( dpi = dot per inch )
0408デフォルトの名無しさん
2012/07/16(月) 19:22:24.33???
GetSystemMetrics(SM_CXSCREEN) ⇒1920
GetSystemMetrics(SM_CYSCREEN): ⇒1080
なので、1920×1080のビットマップを作成しているのに、(1234567,1234567)までLineToなんてできますか?
だから、サイズの決定の仕方がわからない
といっているのですが・・・みなまでいわないとわからないかな・・・
0409デフォルトの名無しさん
2012/07/16(月) 19:39:18.730410デフォルトの名無しさん
2012/07/16(月) 19:55:41.51作ってみれば・・・
0411デフォルトの名無しさん
2012/07/16(月) 19:56:29.59ソレ以外の番組も吉本芸人とかがクチャクチャくだらねえことやってるだけだし
そっちも問題視しろよwww
いやなら見るなとかホザいてたのも吉本芸人だっけ?ざまあねえなwww
0412デフォルトの名無しさん
2012/07/16(月) 21:29:30.21求める答えしか目に入れる気がないのかね。
0413デフォルトの名無しさん
2012/07/16(月) 21:45:56.11飲食店など韓国の自営業者が全国規模で、流通大手ロッテグループ製品の不買運動に乗り出した。
大型スーパーの進出で商圏を奪われ生き残りの危機に立たされているとし、コルモク(路地)商圏
生存消費者連盟と有権者市民運動が、酒類を扱う飲食店や宿泊業など小規模商工業者団体の
会員らとともに16日、不買運動を開始した。
これら団体は先月末、韓国チェーンストア協会に対し、大型スーパーの義務休業の順守やクレジット
カード手数料体系の改編受け入れなどを要求した。しかし成果が得られなかったことから、今月13日、
ロッテグループに闘争の意志を書面で伝えた。要求が受け入れられるまで無期限で不買運動を続ける。
ロッテグループのウイスキー「スコッチブルー」は国産ウイスキー市場で現在3位、焼酎「チョウムチョロム」
は「チャミスル」と激戦を繰り広げている。飲食店やカラオケ店でこれら酒類やミネラルウォーター、
清涼飲料が販売されなくなれば、ロッテは大きな打撃を受ける。
また、小規模商工業者側とその家族、市民団体を合わせた約600万人は、ロッテ百貨店やロッテマート、
ロッテスーパーなどの小売店を利用しないことにした。菓子類や氷菓、ハンバーガーなども不買運動の
対象とする。
さらに、外食分野などの小規模商工業者団体や市民団体にも、不買運動への協力を呼びかけている。
http://m.yna.co.kr/mob2/jp/contents_jp.jsp?cid=AJP20120716001400882&domain=6&ctype=A&site=0100000000&mobile
関連記事
韓国・ロッテ製菓など製造のアイスクリーム8種から基準値以上の細菌検出
http://news.livedoor.com/article/detail/6723748/
0414389です
2012/07/17(火) 00:01:07.73ダブルバッファリングを調べながら作ってみました。
ttp://blog.goo.ne.jp/masaki_goo_2006/e/d3c18365234ffb3383f5c30e32c83cf5
ここを参考に、
WM_CREATE→オフスクリーンのDC作成
WM_PAINT→オフスクリーンを表画面にコピー
動作確認の為に、WM_LBUTTONDOWN→描画する関数呼び出し
描画する関数→MoveToとLineToで線1本だけの処理
このように作ってみました。
しかし、初期は真っ白の表画面が、クリックすると真っ黒になってしまい、思ったような動作を確認することが出来ませんでした。
サンプルプログラムをほぼコピペしているのですが、どう言った原因なんでしょうか?
0415デフォルトの名無しさん
2012/07/17(火) 00:09:24.370416デフォルトの名無しさん
2012/07/17(火) 00:36:25.00コピペを理解しないままやってて必要な処理が抜けてるんだろ。でもそんなのこれだけの情報で分かるわけないだろが。
その練習用?のコードをどっかにあげてごらん。暇な人が教えてくれるから。
0417デフォルトの名無しさん
2012/07/17(火) 01:49:40.520418デフォルトの名無しさん
2012/07/17(火) 01:50:03.4312,13年前はよくやったがな
0419デフォルトの名無しさん
2012/07/17(火) 06:01:47.250420デフォルトの名無しさん
2012/07/17(火) 07:42:24.38http://engawa.2ch.net/test/read.cgi/poverty/1342475312/
統一費用準備で募金 前原氏
韓国統一省によると、ソウル訪問中の民主党の前原誠司政調会長は16日、柳佑益統一相との会談の席
で、李明博政権が将来の南北統一に備えて設けた「統一勘定」の積み立てに協力するとして、柳氏に募金
を託した。募金額は不明。
柳氏は「これは前原氏だけでなく日本国民の思いがこもったもの」と述べ、前原氏に感謝した。
韓国政府は、20年後に南北が統一すれば最低55兆ウォン(約3兆8千億円)のコストがかかるとの試算
を受け、統一を意識し備える風潮をつくろうと統一勘定を設け、国民に募金を呼び掛けている。(共同)
ソース:MSN産経ニュース 2012.7.16 23:13
http://sankei.jp.msn.com/world/news/120716/kor12071623150005-n1.htm
0421デフォルトの名無しさん
2012/07/17(火) 22:57:22.280422デフォルトの名無しさん
2012/07/17(火) 23:12:35.110423デフォルトの名無しさん
2012/07/17(火) 23:35:55.440424デフォルトの名無しさん
2012/07/18(水) 00:13:20.060425389です
2012/07/18(水) 00:27:55.82初期の真っ白画面→右クリック→描画された画面
となることが確認出来ました。いらないと思って一部省いていた処理を追加することで出来ました。
まだ、ダブルバッファリングの下準備の確認が出来た程度で、本来のプログラムは手付かずですが、調べながら頑張っていきます。
また分からなくて詰まった時に質問するかもしれないので、その時はよろしくお願いします。
0426デフォルトの名無しさん
2012/07/18(水) 09:03:42.13http://engawa.2ch.net/test/read.cgi/poverty/1342528699/
麗水エキスポ:1000ウォンの深夜入場券発行へ
麗水エキスポの入場者数が目標を大幅に下回っていることを受け、
韓国政府は1000ウォン(約69円)の深夜入場券を発行することを決めた。
http://www.chosunonline.com/site/data/html_dir/2012/07/17/2012071701101.html
0427デフォルトの名無しさん
2012/07/22(日) 00:48:28.12http://kohada.2ch.net/test/read.cgi/prog/1201041826/66
「export」キーワードが実装されたVC++のバージョンを教えてください。
0428デフォルトの名無しさん
2012/07/22(日) 00:51:15.23ちゃんとそのスレにここに書いた趣旨書いとけよ
0429デフォルトの名無しさん
2012/07/22(日) 00:58:10.22ありがとうございます。趣旨の件、了解です。
ところでないんですか?未実装な処理系って結構多いんでしょうか?
0430デフォルトの名無しさん
2012/07/22(日) 02:33:15.38イエス、ほとんどの処理系で実装されていない。
だから、2011年のC++の標準規格改定でexportの機能は廃止された。
0431デフォルトの名無しさん
2012/07/22(日) 11:37:50.16http://engawa.2ch.net/test/read.cgi/poverty/1342832178/
画面に残像が残る、いわゆる”焼付き現象”は今に始まったことではありませんが、Galaxy S IIIのマニュアルに記載されている「画
面劣化によるムラが発生した場合、サムスンは責任を負いません。」という一文(韓国版のみ?)が原因で、議論がいつもより激し
くなっているようです。サムスンはこの記述に対し謝罪し、内容の修正を行うとコメントしたそうです。
そうした中、Galaxy S IIIの焼付き現象について、韓国メディアのetnewsが検証を行いました。
検証に用いたのは、韓国版Galaxy S III LTEと、IPS液晶を搭載する「Optimus LTE II」。それぞれに白と黒のチェック柄を24時間連
続で表示させ続け、表示を元に戻した時の残像の様子を確認しました。
http://www.youtube.com/watch?v=OIqqnnb1LBw
結果、Galaxy S IIIでは、ホーム画面に戻った後にも、テスト用のチェック柄が画面に残りました。背景を青色にすると顕著です。一
方、液晶を採用するOptimus LTE IIでは画面の異常は確認できませんでした。
そしてその後12時間電源をOFFにし、再度確認してみても、残像は表示され続けたままでした。
焼き付きの原因は、AMOLEDで使われる赤、緑、青の発行体のそれぞれで寿命が異なることにあります。寿命が異なることで、同
じ時間発光させ続けることで、一部分だけが暗くなり、画面にムラが生じるというわけです。特に青は寿命が極端に短いとされてい
ます。
AMOLEDは高いコントラスト、応答性、構造的に薄くできるなど、液晶と比べて多くの利点もあります。しかし”寿命が短い”という欠
点も抱えているようです。今のところ根本的な解決は不可能で、寿命を延ばすことが最善策であるとされています。
しかし24時間でこうも簡単に焼き付くものなのですね。ここまで顕著な結果を望まなければ、あるいは数時間で焼付きを体験できる
かもしれません。しかも一度焼き付くと、元に戻すことはできません。
http://www.datacider.com/28903.php
http://www.datacider.com/wp-content/uploads/2012/07/galaxys3_barn.jpg
0432デフォルトの名無しさん
2012/07/22(日) 17:57:44.16みたいなHPってどうよ
ほかのページにも書いてあることをそのまま書いて自己満足してるだけじゃね?
車輪の再発明
この程度で、winプログラマなんて思ってるじゃないだろうねw
0433デフォルトの名無しさん
2012/07/22(日) 18:07:40.54プロジェクト名にAbcとすると、
CAbcApp,CAbcView,CAbcDocクラスが作成されますが、
これのプロジェクト名をDefに変えたいのですがどうすればいいですか?
0434デフォルトの名無しさん
2012/07/22(日) 18:49:55.10・事前に中間ファイルなど、なくてもいいファイルをすべて削除する
・ファイルやフォルダの名称を変更する
・grep置換が出来るテキストエディタで、プロジェクトフォルダ以下のすべてのファイルを全置換する
0435デフォルトの名無しさん
2012/07/22(日) 19:11:58.570436デフォルトの名無しさん
2012/07/22(日) 23:47:08.59データグリッドビューを使ったプログラムなんですが、
入力したパラメータの大小でそのパラメータの入力されている
セルの背景色を変えるようなプログラムを組みたいのですが、どうしたらいいでしょうか?
0437デフォルトの名無しさん
2012/07/22(日) 23:51:14.140438デフォルトの名無しさん
2012/07/23(月) 00:33:00.09だったら vc++ DataGridView セル 背景色 あたりでグーグル先生に聞いてくれ。(そっちの方が早い)
もし、アンマネージのグリッドのことでも、Microsft なんとかって最初から付いてたやつのことなら、普通に変えてたような気がするんだけど。
どっちか分からんのに調べるのもな。。。
環境はちゃんと書くようにしてくれ。
0439デフォルトの名無しさん
2012/07/23(月) 00:35:16.02それは、、一から教えるのは勘弁。
自分なら入力値の変更イベントで勝手に色を変えるラッパークラスなりを作るだろうけど。
0440デフォルトの名無しさん
2012/07/23(月) 00:43:28.62スレタイを声に出して読んでみて
0441デフォルトの名無しさん
2012/07/23(月) 01:04:13.930442デフォルトの名無しさん
2012/07/23(月) 01:07:03.22スレタイの 「を」 以降を声に出して読んでみて
0443デフォルトの名無しさん
2012/07/23(月) 02:50:44.150444デフォルトの名無しさん
2012/07/23(月) 04:50:56.380445デフォルトの名無しさん
2012/07/24(火) 17:55:09.70属国の歴史しか無くて、ずっと独自文化がゼロなのはなぜなのか本当に良く判るわw
< #`Д´> <うぎゃああああ!!フランス人までネトウヨの嫌韓厨だったニダーーー!!!ネトウヨ!ネトウヨ!ネトウヨ!!
■フランスメディア「KPOPに独自性は感じられない」「日本や米国の模倣」「商業主義」「つまらない」
パリで韓流コンサート「日本文化から韓国を知った」
2011/06/14(火) 09:45
一方、コンサートが終了した現在、当日の模様について報道しているフランスのメディアは
比較的少ない。この状況下、コンサートの模様を報じているのは、フランスのニュースサイト「Rue89」だ。
中でも目立つのが、K−POPは特に独自性が感じられないという意見だ。これまでフランスでファン層を
増やしてきたJ−POP、ひいては米国のポップスを踏襲しており、商業主義的な音作りだという意見や、
演奏がコンピューター管理されているためか野性味に欠けるといった意見が寄せられている。
http://news.searchina.ne.jp/disp.cgi?y=2011&d=0614&f=national_0614_016.shtml
0446デフォルトの名無しさん
2012/07/24(火) 19:18:30.860447デフォルトの名無しさん
2012/07/28(土) 09:12:38.31使用するキーは、「0」〜「9」の数字キー、プラスマイナスを判定する「-」キー、少数点の「.」キー、決定の「Enter」キーです。
WndProc(ウィンドウプロシージャ)内のWM_KEYDOWNメッセージで押されたキーを認識してるのですが、
case WM_KEYDOWN:
if( wp == VK_RETURN ){
エンターキー処理;
} else if( wp == '0'){
「0」キー処理;
}
こんな感じで数字とエンターキーは認識出来たのですが、「 - 」「 . 」この2つが認識できませんでした。
「 - 」「 . 」この2つが押されたことを認識する方法を教えてください。
XP VC++6
0448デフォルトの名無しさん
2012/07/28(土) 09:19:33.160449デフォルトの名無しさん
2012/07/29(日) 15:38:09.00うちとこでは WM_KEYDOWN の、
switch( wp ) {
case VK_SUBTRACT: // '-'
case VK_DECIMAL: // '.'
break;
}
で普通に行けたけど。
エンターキーとかが拾えてるなら、そこにブレークポイントを置いてキーを押してみればどんな値が来るか分かるじゃん。
分かったら例示にある VK_RETURN の「定義で移動」で定義元に飛んで、上で確認した値に該当する define 定義を見つけられるよ。
0450デフォルトの名無しさん
2012/07/29(日) 15:38:36.41x 解説
o 解決
0451デフォルトの名無しさん
2012/07/29(日) 15:44:29.600452デフォルトの名無しさん
2012/07/29(日) 20:12:47.400453デフォルトの名無しさん
2012/08/02(木) 17:50:09.68どうやって使うのですか?
using namespace System;
int main()
{
return 0;
}
エラー
'System' : この名前を指定された名前空間は存在しません。
0454デフォルトの名無しさん
2012/08/02(木) 17:55:33.04ttp://eternalwindows.jp/unmanaged/host/host01.html
0455デフォルトの名無しさん
2012/08/02(木) 19:17:26.38ありがとうございました
0456デフォルトの名無しさん
2012/08/07(火) 02:43:20.16C言語でシリアル通信を行ってデータの送受信を行おうと思っています。(Visual c++ 6のwin32api)
CreateFileやReadFile、WriteFileなどの関数を使って送受信をしようと思っています。
しかし、自分側のプログラムは(多分)出来たのですが、(通信)相手側がまだ完成していないので、
自分側のプログラムだけでも正しく動作してるのか確認(デバッグ)したいのです。
そこでPC2台を繋げて、自分のプログラムが通信(送信・受信)したいタイミングで、もう1台のPCからデータを送ったり、
受信した内容を確認したいのですが、どのように行えば良いでしょうか?
教授の助言では、teratermを使って・・・とのことですが。。。
teratermの使い方をいろいろ調べた結果、両方のPCでteratermを起動させ、A側で「a」を押すと、B側のteratermにaが表示される(その逆も)
くらいは出来たのですが、この方法を用いてVC6で作ったwin32apiの動作を確認する方法が分かりません。
0457デフォルトの名無しさん
2012/08/07(火) 08:34:21.71相手側のアプリの替わりにteratermを使うんだよ
0458デフォルトの名無しさん
2012/08/07(火) 10:44:06.560459デフォルトの名無しさん
2012/08/07(火) 21:09:11.54それをちっと弄って相手側の役割をするように変えてやればいいんじゃねーか?
0460デフォルトの名無しさん
2012/08/15(水) 01:15:26.56Windowsフォームアプリケーションを使用して、フォルダ作成プログラムを作ろうとしているのですが、
どうもうまくいきません。
フォームはテキストボックス、ボタンからなり、テキストボックスに文字列を入力し、ボタンを押すと
入力した文字列名でフォルダが作成されるというプログラムです。
書いたコードを以下のサイトに張り付けたので、どうすればうまくいくかご教示お願いします。
http://ideone.com/TWwHO
0461デフォルトの名無しさん
2012/08/15(水) 01:56:41.54using namespace System::Runtime::InteropServices;
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
System::String ^ str = this->textBox1->Text;
char* str1 = (char*)(void*)Marshal::StringToHGlobalAnsi(str);
_mkdir(str1);
}
0462デフォルトの名無しさん
2012/08/15(水) 10:10:11.140463デフォルトの名無しさん
2012/08/15(水) 10:19:51.110464デフォルトの名無しさん
2012/08/15(水) 12:49:30.440465デフォルトの名無しさん
2012/08/15(水) 21:42:56.31どんなトラップなんだと。w
0466デフォルトの名無しさん
2012/08/16(木) 16:32:01.020467デフォルトの名無しさん
2012/08/22(水) 18:02:31.68XMLファイルを読み込んで、配列かArrayListに格納するコードを書こうと思っています。
上記のようなことを行うにはどのような方法が簡単かつ適切でしょうか?
また、C#のようにXMLスキーマを用いて、データセットにXMLの値を格納する方法はC++でも可能でしょうか?
ぐぐっても半端な情報が散見するばかりで、少し途方に暮れています。
0468デフォルトの名無しさん
2012/08/22(水) 18:19:07.000469デフォルトの名無しさん
2012/08/22(水) 19:18:28.91ありがとうございます。
ただ、Boost導入は難しい環境にて作成しております。(情報不足で申し訳ありません
Boostを使わずに実現する方法はないでしょうか?
0470デフォルトの名無しさん
2012/08/22(水) 20:30:02.720471デフォルトの名無しさん
2012/08/23(木) 01:25:19.39・DeleteObject
・DeleteDC
・ReleaceDC
・DestroyMenu
・FreeLibrary
・DragFinish
・FreeConsole
・GlobalUnlock
・ReleaseMutex
・CloseHandle
・etc
なども処理されて無い場合確認できるものが存在するのですか?
0472デフォルトの名無しさん
2012/08/23(木) 01:33:38.730473デフォルトの名無しさん
2012/08/23(木) 17:51:53.90ありがとうございました
0474デフォルトの名無しさん
2012/08/26(日) 21:06:18.92XP以前ならクラシックスタイル
XPならXPスタイル
VistaならVistaスタイル
7なら7スタイル
で表示するようにするにはどうすればいいですか?
それぞれ別の設定でビルドするしかないですか?
0475デフォルトの名無しさん
2012/08/26(日) 21:52:41.140476デフォルトの名無しさん
2012/08/26(日) 22:45:28.41ありがとうございました
0477デフォルトの名無しさん
2012/08/26(日) 22:56:28.91<assemblyIdentity
・・・
name="この部分"
・・・
/>
<description>この部分</description>
タスクマネージャのプロセスタブにある「説明」の欄に表示されたり
プロパティでは表示されないみたいですが
また別物なんですか?
0478デフォルトの名無しさん
2012/08/26(日) 23:04:24.060479デフォルトの名無しさん
2012/08/26(日) 23:42:01.08内部で使用されるだけなんですね
0480デフォルトの名無しさん
2012/08/27(月) 00:43:56.58ソース上だと#defineで分岐するとビルド時のシステムに搭載されているCPUを気にしなくてもいいのですが
.xml上で自動で搭載されているCPUに合った値を使用する方法はありますか?
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="x86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>
またOSによってビジュアルスタイルが変わると思うのですが
dllを読み込むのだからOSが使用できるビジュアルスタイルが自動的に描画される
という認識であってますか?
0481デフォルトの名無しさん
2012/09/04(火) 01:45:17.53ダイアログにはリストボックスがあり、スレッドの中でリストボックスにアイテムを追加したいと考えています。
MFCを使用しています。スレッドは_beginThreadで呼び出しています。
リストボックスのオブジェクトを取得するために以下のようにして取得をしたいと考えています。
CListBox* List = (CListBox*)GetDlgItem(リストボックスのID);
この処理はダイアログ::OnInitDialog()のような継承を行った部分の中では問題なく使用できるのを確認したのですが、
これを使ってスレッド内でオブジェクトを取得するにはどうしたらいいか悩んでいます。
スレッドは以下のような関数を呼び出しています。
void Thread(void* p){
//処理
}
スレッドの中でリストボックスのオブジェクトを取得してリストボックスにアイテムを追加する方法の知恵を授けては頂けませんでしょうか
0482デフォルトの名無しさん
2012/09/04(火) 01:47:56.440483デフォルトの名無しさん
2012/09/04(火) 02:05:55.94なるほど
先にCListBox* List = (CListBox*)GetDlgItem(リストボックスのID);として
_beginThread(Thread,0,List);のように引数にListを渡すということでしょうか?
この考え方が間違ってたら申し訳ありません。
0484デフォルトの名無しさん
2012/09/04(火) 02:10:28.960485デフォルトの名無しさん
2012/09/04(火) 02:21:04.38それだと複数引数で渡したい場合は構造体にでも入れて渡せば問題なさそうです。
回答ありがとうございます。非常に助かりました。
0486デフォルトの名無しさん
2012/09/04(火) 21:56:06.00そもそもワーカースレッドの中で画面アイテムの更新て出来たっけ?
そう言う場合、リストボックスに入れるデータを格納したバッファなりを作って、スレッドではそこにデータを格納。
続けてウィンドウメッセージかなにかでウィンドウにメッセージを送ってメインスレッド(て言うんだっけ)でリストを更新、
て流れでいつも作ってた。
0487デフォルトの名無しさん
2012/09/04(火) 22:20:13.570488デフォルトの名無しさん
2012/09/05(水) 11:30:23.73Photoshop CS5のプラグインを作りたくて
Visual Studio 2010 Express (C++)をインストールして
次に、
PhotoshopCS5 SDK(forWindows)
ttp://www.adobe.com/devnet/photoshop/sdk.html
をダウンロード
試しにサンプルでもと思い。
「\adobe_photoshop_cs5_sdk_win\pluginsdk\samplecode\selection\selectoramashape\win」内の
「SelectoramaShape.vcproj」をダブルクリック!!
VS「変換ウィザードへようこそ」???→なんか知らんが、完了!
VS「変換中にエラーがあったよ」→閉じる。。。
ソリューションファイルからならイケる!(ってどっかのサイトに書いてあった)
VS「変換ウィザード。。。。
みたいな事になってます。
環境はWindows7で
変換レポートの中のエラーは
「Converting project file '***\SelectoramaShape.vcproj'Failed to upgrade platform 'x64'. Please make sure you have it installed under '%vctargetspath%\platforms\x64'
VCWebServiceProxyGeneratorTool is no longer supported. The tool has been removed from your project settings.
Attribute 'Detect64BitPortabilityProblems' of 'VCCLCompilerTool' is not supported in this version and has been removed during conversion.
Failed to upgrade 'Debug|x64'. Please make sure you have the corresponding platform installed under '%vctargetspath%\platforms\x64'
The project configuration dimension name/value "(Platform, Win32)" was not found in the project manifest.
プロジェクトはアップグレードに失敗しました。
」です。
お願いします。助けて下さい。
0489デフォルトの名無しさん
2012/09/05(水) 11:51:15.84環境は64bit?
そのVC++はSDK追加して64bitコンパイルできるようにしてる?
0490デフォルトの名無しさん
2012/09/05(水) 11:54:32.792010用に書き換えるか、とりあえず2008で試してみては
0491sage
2012/09/05(水) 12:07:50.84>>490
なるほど。そういうことだったんですね。
ちょっと2008インスコしてきます。
2008も64bitコンパイルできるように設定しないとだめっすか?
0492デフォルトの名無しさん
2012/09/05(水) 12:21:23.20あとx64使えるようにするのは2008は面倒だよ。
そのエラーが出てプロジェクト開けないの?
開けてるならWin32のみ使えばいいんで問題ないと思うけど。
0493デフォルトの名無しさん
2012/09/05(水) 12:49:22.38あやうく2010消すとこでした。^^;
エラーが出てプロジェクトが開けないんです。
左のソリューションエクスプローラーに
・SelectoramaShape(利用不可)
プロジェクト ファイルはアンロードされました。
みたいな感じで表示されてます。
0494デフォルトの名無しさん
2012/09/05(水) 12:52:48.98ググって試してみりゃいい。
あとvcprojをテキストエディタで開いてx64のブロック消すとか
0495デフォルトの名無しさん
2012/09/05(水) 14:00:07.48VC++2008で64bitでビルド実行できるようになって、その後2010で使いたいなら
2008を残したまま2010インストール
→2010で64bitビルド実行できるようにする(テストプログラムでも作って確認)
→2010でSelectoramaShape?のソリューションを開く
→ウィザード変換
→プロジェクトのプロパティ->構成プロパティ->全般->プラットフォーム ツールセットv90でリビルド
→エラー無し確認後v90をv100にしてリビルド
→エラー無し確認
これで以降はVC++2010のみで管理可能になると思う
0496デフォルトの名無しさん
2012/09/05(水) 16:37:05.62__declspec(noinline) void __stdcall foo1(FOO h){
printf("%d %x %d %s", h.a, h.b, h.c, h.d);
}
__declspec(noinline) void __stdcall foo2(int a, int *b, long c, char *d){
printf("%d %x %d %s", a, b, c, d);
}
typedef void (__stdcall *FOO1)(FOO);
typedef void (__stdcall *FOO2)(int, void *, long, char *);
int _tmain(int argc, _TCHAR* argv[]){
FOO h = { 6, &h.a, 8, "abc", };
foo1(h);
((FOO1)foo2)(h);
foo2(h.a, h.b, h.c, h.d);
((FOO2)foo1)(h.a, h.b, h.c, h.d);
return 0;
}
最適化するとfoo2はfoo1と同じと見なされ、消えてしまいました。
しかし、呼び出し方は全く異なります。
foo2はpushで引数を入れていますが、
foo1はスタックポインタを進めて、全部movしていました。
するとfoo1は呼び出しコストが高くなるので
FOO2にキャストしてから呼んでみたところ
foo2と同じようにpushで引数を入れてくれました。
このような、引数と構造体の置き換えは、
アライメントが違ったり、浮動小数が入っていると
できない場合もあると思いますが、他にできないパターンが
あったら教えてください。
0497デフォルトの名無しさん
2012/09/06(木) 04:13:40.82え? 逆じゃないの?
プッシュはmuvより複雑で面倒な命令だから、実行時間が長くなるんじゃない?
試しに何回も呼び出しを繰り返させて実行時間を計ってみ?
0498デフォルトの名無しさん
2012/09/06(木) 11:03:53.54>え? 逆じゃないの?
>プッシュはmuvより複雑で面倒な命令だから、実行時間が長くなるんじゃない?
すみません、おっしゃる通りでした。
以下のようにベンチしたところ、若干foo1呼び出しの方が速かったです。
http://ideone.com/2rTrd
コードが明らかに長くなるので、それだけ見て勘違いしておりました。
となると、サイズより速度を優先する最適化で、pushをmovに置き換える
コードが生成されないのはなぜですか?
また、((FOO1)foo2)(h);の行が入っていない場合、
foo2はfoo1に統合されませんでした。
しかも、関数自体はfoo1より、統合されないfoo2の方が速かったです。
謎だらけです。
0499デフォルトの名無しさん
2012/09/06(木) 14:08:24.61>>495
ありがとうございます。
なんとかできました。
できたはできたんですが、
自分が作りたかったプラグインはすでに存在してました orz
0500デフォルトの名無しさん
2012/09/06(木) 15:42:04.15呼び出し時に構造体から変数に置き換えるか、関数内で置き換えるかの違いかと。
0501デフォルトの名無しさん
2012/09/06(木) 15:59:16.260502デフォルトの名無しさん
2012/09/06(木) 16:20:31.700503デフォルトの名無しさん
2012/09/06(木) 21:38:56.41関数内では構造体使わない方が速い
グローバル構造体宣言して使いまわすとか無しな
0504デフォルトの名無しさん
2012/09/07(金) 14:46:45.00time_t time = time(NULL);
struct tm *ptime = localtime(&time);
として、YYYYMMやMM:DDのような書式にあわせた日付を取得する方法としてどのような方法があるのでしょうか?
YYYYと書式を設定したら2012、YYYY/MMと設定したら2012/09のようになるイメージです。
0505デフォルトの名無しさん
2012/09/07(金) 16:52:48.330506デフォルトの名無しさん
2012/09/07(金) 16:55:36.66つ ttp://msdn.microsoft.com/ja-jp/library/fe06s4ak%28v=vs.90%29.aspx
0507デフォルトの名無しさん
2012/09/09(日) 04:03:06.58フィルタの振り分けとか
Main
->main.cpp
->main.h
ProjectName
->ProjectName.cpp
->ProjectName.h
自作外部ファイル用
->FileName1.cpp
->FileName1.h
->etc
こんな感じ?
0508デフォルトの名無しさん
2012/09/09(日) 13:41:30.090509デフォルトの名無しさん
2012/09/10(月) 09:34:58.52>>505 >>506
こんな関数があったんですね。わざわざURLまで貼っていただいてありがとうございます。
0510デフォルトの名無しさん
2012/09/11(火) 21:03:25.31UDP通信の簡単なアプリケーションを作成中なのですが、
recvfrom()を実行するとデータを受信するまで終了できませんです。
0511デフォルトの名無しさん
2012/09/11(火) 21:09:48.750512デフォルトの名無しさん
2012/09/11(火) 22:12:18.61混合型はサポートされていませんと出ます。
どうすればいいですか?
0513デフォルトの名無しさん
2012/09/11(火) 22:47:17.96C#を使う->正解
0514デフォルトの名無しさん
2012/09/13(木) 17:53:59.24ソフトがクラッシュすると、デッバッグが起動するんですけど
これを解除するにはどうすればいい?
0515デフォルトの名無しさん
2012/09/13(木) 21:35:37.48標準デバッガの設定だな。
XP以前だったらDrワトソンを標準デバッガに設定し直せば良い。
drwtsn32.exe -i
だったかな。いま7だから試せんわ。
もしOSがVISTA以降だったら、そもそもDrワトソンが無いので、レジストリの
HKEY_LOCALMACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\AeDebug
を弄れは良い。
見て想像は付くと思うが、解らんかったらググれ。
0516デフォルトの名無しさん
2012/09/13(木) 21:40:19.12VC++6.0を使用してtry catchで例外処理をしているのですが、VC++6.0ではVBのようにexceptionのような色々なエラーをキャッチできて、
詳細なエラーメッセージを取得することができる手段はないのでしょうか?
0517デフォルトの名無しさん
2012/09/13(木) 21:52:41.370518デフォルトの名無しさん
2012/09/13(木) 21:59:51.790519デフォルトの名無しさん
2012/09/13(木) 22:36:46.06なにこれ??使いにくいぃぃぃいいいいい!!
皆さん使ってますか??
0520デフォルトの名無しさん
2012/09/13(木) 22:37:29.82error C4368: cannot define '_test_main' as a member of managed 'NAMAI::Form1': mixed types are not supported
error C2678: binary '=' : no operator found which takes a left-hand operand of type 'NAMAI::TEST_main' (or there is no acceptable conversion)
could be 'NAMAI::TEST_main &NAMAI::TEST_main::operator =(const NAMAI::TEST_main &)' while trying to match the argument list '(NAMAI::TEST_main, NAMAI::TEST_main *)'
別ファイルのTEST_mainをフォーム1で生成したいのですが、エラーの解決方法を教えていただけないでしょうか。
よろしくお願いします。
>>HOGE.h
namespace NAMAI
{
class TEST_main { public: void TEST(void); };
}
>>Form1.h
#pragma once
#include "HOGE.h"
namespace NAMAI {
public ref class Form1 : public System::Windows::Forms::Form
{
public:
TEST_main _test_main;
Form1(void){
InitializeComponent();
InitializeTEST();
}
void InitializeTEST() { _test_main = new TEST_main; }
};
}
0521デフォルトの名無しさん
2012/09/13(木) 23:07:34.350522デフォルトの名無しさん
2012/09/17(月) 17:23:05.36じゃあなんあのさぁああああああああああああ!!!!!
0523デフォルトの名無しさん
2012/09/17(月) 17:36:08.090524デフォルトの名無しさん
2012/09/23(日) 03:01:33.57malloc/freeでfree忘れを検知するだけでいい
それができたらそこにGetDC/ReleaseDCとかも判定できるようにしようと思ってんだけど
0525デフォルトの名無しさん
2012/09/24(月) 18:07:31.98彼女が出来ません、どうしたら良いですか
0526デフォルトの名無しさん
2012/09/24(月) 18:17:35.730527片山博文MZボット ◆0lBZNi.Q7evd
2012/09/24(月) 18:59:17.08プリプロセッサーでフック。
#define malloc mymalloc
...
atexit関数かstaticオブジェクトのデストラクタでチェック。
0528デフォルトの名無しさん
2012/09/24(月) 19:10:38.890529デフォルトの名無しさん
2012/09/24(月) 19:56:58.97{} の後ろに ; が要らないのはなぜですか?
たとえば
class Hoge {
int a;
public:
Hoge() : a(0) {};
~Hoge() {};
void Hage(void);
void Fuga(void) {a=1;};
};
みたいなとき
class Hoge {
int a;
public:
Hoge() : a(0) {}
~Hoge() {}
void Hage(void);
void Fuga(void) {a=1;}
};
で良いんですよね?
だとすると逆に
void Hage(void)
で怒られるのも謎
0530デフォルトの名無しさん
2012/09/24(月) 20:02:56.430531デフォルトの名無しさん
2012/09/24(月) 20:04:29.16関数書くときもいらないだろ
いつもわざわざ
void func() { };って書いてたのか?
0532デフォルトの名無しさん
2012/09/24(月) 20:06:53.190533デフォルトの名無しさん
2012/09/24(月) 20:08:11.700534デフォルトの名無しさん
2012/09/24(月) 20:08:28.470535デフォルトの名無しさん
2012/09/25(火) 21:35:14.700536デフォルトの名無しさん
2012/09/25(火) 22:24:58.02断食で煩悩を断ってください
0537デフォルトの名無しさん
2012/09/25(火) 23:31:20.62興味のあるライブラリをさわってみる
サンプルをうごかしてみる
ちょっと変更してうごかしてみる
0538デフォルトの名無しさん
2012/09/25(火) 23:44:32.53やっぱり普通に言語の勉強するよりも動かしたほうがいいんですね
0539デフォルトの名無しさん
2012/09/26(水) 08:21:09.71って書き方してるソースも見たことあるわ
0540デフォルトの名無しさん
2012/09/26(水) 13:29:08.57そのポインタの値がNULLかどうかチェックする必要はありますか?
具体的には、
try{
do something;
}
catch(char *hoge){
printf("received exception: %s", hoge);
}
としたい場合、
catch(char *hoge){
if(hoge){
printf("received exception: %s", hoge);
}
}
と書くべきかどうかです。
この場合は throw してる側で hoge が動的か静的かで違うと思いますが、
動的に hoge が生成されるような場合についてです。
0541デフォルトの名無しさん
2012/09/26(水) 13:31:52.59誤 received exception
正 caught exception
0542デフォルトの名無しさん
2012/09/26(水) 13:55:26.100543デフォルトの名無しさん
2012/09/26(水) 14:03:10.45既に別の例外が発生しているか
強制終了されている状況じゃないかな
0544デフォルトの名無しさん
2012/09/26(水) 14:45:04.26それよりお前
delete hoge;
し忘れてるぞ
0545デフォルトの名無しさん
2012/09/26(水) 21:26:41.46>>540
それって状況によるかも知れないから、どうしても心配ならこんな風に書いたりすることもある。
まあこれもどうでもいいかもしれんが。
printf("received exception: %s", hoge == NULL ? "NULL" : hoge );
0546デフォルトの名無しさん
2012/09/26(水) 23:34:50.18http://msdn.microsoft.com/ja-jp/library/9yb4317s.aspx
に書かれている通り行ったのですが、試しに sizeof(void*) を出力させたところ 4 となりました
これは通常だと8となるはずなのですがどうなのでしょう
0547デフォルトの名無しさん
2012/09/26(水) 23:58:08.730548デフォルトの名無しさん
2012/09/26(水) 23:59:56.26どうやって設定するのですか
0549デフォルトの名無しさん
2012/09/27(木) 09:59:33.250550デフォルトの名無しさん
2012/09/28(金) 19:51:36.48ありがとう
0551デフォルトの名無しさん
2012/09/29(土) 10:04:12.90VisualStudio 2010 で C++ を使い、Win32 アプリを作っています。
アプリ実行時に、IDE 上に任意のログを出力する機能ってありますでしょうか?
やりたいのは、Eclipse / Android 開発で、Log.e を Logcat で捕まえるようなものです。
リアルタイムで実行状況を確認したいときに使いたいです。
0552デフォルトの名無しさん
2012/09/29(土) 10:17:37.470553551
2012/09/29(土) 10:47:50.910554デフォルトの名無しさん
2012/10/01(月) 02:46:20.20Vistaや7のAeroのGUIで、ボタンにカーソルを合わせると徐々に青っぽくなって
カーソルをはずすと、また元に戻っていくようなアニメーションっぽいのを
やりたいんですが、この処理は自分でタイマー使ってやる以外に方法はありますか?
0555デフォルトの名無しさん
2012/10/01(月) 04:51:11.160556デフォルトの名無しさん
2012/10/05(金) 12:04:40.080557片山博文MZボット ◆0lBZNi.Q7evd
2012/10/05(金) 16:16:50.27printf("%.*s\n", 4, "TESTTEST"); // TESTと表示。
0558デフォルトの名無しさん
2012/10/05(金) 19:29:48.17やさしさ乙
0559デフォルトの名無しさん
2012/10/05(金) 20:13:25.320560デフォルトの名無しさん
2012/10/05(金) 20:17:05.380561デフォルトの名無しさん
2012/10/05(金) 20:37:52.16hogehoge;
}
これだとバグ出るよね
0562デフォルトの名無しさん
2012/10/05(金) 21:19:10.75sizeof(buffer) / sizeof(buffer[0])かポインタでなければ_countof(buffer)がいい
0563デフォルトの名無しさん
2012/10/06(土) 16:03:54.56これって buffer が配列じゃなくてポインタのときは駄目じゃない?
0564デフォルトの名無しさん
2012/10/06(土) 16:48:03.890565デフォルトの名無しさん
2012/10/06(土) 16:52:19.50printf("%d", _countof(buffer));
0566デフォルトの名無しさん
2012/10/06(土) 16:58:29.23ちゃんとコンパイルエラーになるから大丈夫
0567デフォルトの名無しさん
2012/10/06(土) 17:14:27.83○ sizeof(buffer) / sizeof(buffer[0])
○ _countof(buffer)
char *buffer = (char*)malloc(sizeof(char) * N);
× sizeof(buffer) / sizeof(buffer[0])
× _countof(buffer)
○ int size = sizeof(char) * N;
0568デフォルトの名無しさん
2012/10/06(土) 17:17:14.26コンパイルエラー出すための仕組みなんか
誤解してたわ
0569デフォルトの名無しさん
2012/10/06(土) 17:25:52.36× sizeof(buffer) / sizeof(buffer[0]) // コンパイルエラーにならなくて実行時誤動作
× _countof(buffer) // コンパイルエラーになるから大丈夫
0570デフォルトの名無しさん
2012/10/07(日) 01:23:43.90次のエラーが解決できず、かなり苦労しています
LINK : fatal error LNK1104: ファイル 'glut32.lib' を開くことができません。
調べてでてきた
・glut32.dllを"C:\Windows\System32"に入れる
・glut32.dllを"〜〜.vcproj"と同じフォルダに入れる
・プロジェクト→既存項目を追加→glut32.dllを選択
をすべて試してみたのですが、エラーが消えません・・・
環境はVisual C++ 2008、Windows7の64bit、プロジェクト自体は"Win32"です。
どうかよろしくお願いします・・・
0571デフォルトの名無しさん
2012/10/07(日) 01:56:52.250572デフォルトの名無しさん
2012/10/07(日) 01:59:53.670573デフォルトの名無しさん
2012/10/07(日) 02:05:55.88/ / バカッ
//⌒)∩__∩
/.| .| ノ ヽ
/ | | ● ● |
/ | 彡 ( _●_) ミ 馬鹿には無理
/ | ヽ |∪| /_
// │ ヽノ \/
" ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
0574デフォルトの名無しさん
2012/10/07(日) 02:49:45.32>>572
glut32.libがあるディレクトリを含めていませんでした!!
ありがとうございます、無事にコンパイルが通りました!!
0575デフォルトの名無しさん
2012/10/07(日) 12:03:00.670576デフォルトの名無しさん
2012/10/07(日) 15:19:15.62「遊ぼう」って言う。
「もう遊ばない」って言うと
「ごめんね」って言う。
そうして、あとでかわいそうになって
「遊ぼう」って言うと
「もう遊ばない」って言う。
こだまでしょうか?
いいえ、馬鹿には無理です。
0577デフォルトの名無しさん
2012/10/07(日) 15:57:37.450578デフォルトの名無しさん
2012/10/07(日) 16:36:41.54Cでコンパイルしたときと
C++でコンパイルしたときとでは
出来上がるプログラムのサイズは変わりますか?
0579デフォルトの名無しさん
2012/10/07(日) 16:52:07.070580デフォルトの名無しさん
2012/10/07(日) 17:55:47.96リンケージの名前のつけかた違うからちょっとは違うだろうけど、、
0581デフォルトの名無しさん
2012/10/07(日) 17:59:07.250582デフォルトの名無しさん
2012/10/07(日) 20:06:38.430583デフォルトの名無しさん
2012/10/07(日) 20:52:56.230584デフォルトの名無しさん
2012/10/07(日) 23:01:33.290585デフォルトの名無しさん
2012/10/08(月) 18:24:19.310586デフォルトの名無しさん
2012/10/10(水) 13:43:23.50いくつかのサイトを見ても解決しなかった疑問があるので教えてください。
配列として new したポインタの delete について、
あるサイトでは、
>重要なのはdelete演算子の使い方です。
>new演算子を使って配列を確保した場合、delete演算子にも[]を付けなけ ればなりません。
>これを付けないと、正しく解放できません
>(恐らく、配列の先頭の要素についてだけ解放されるが、 それすらも保証されている訳ではない)。
>この[]の付け忘れは非常によくある間違いです。コンパイルは普通に成功 してしまうので気をつけて下さい。
と書かれていました。
一応言われている意味は判るのですが、なぜ [] を付けると「正しく解放できる」のかが判りません。
たとえば、内部で int *p = new int[n]; した int *p を返す関数 Hoge があるとします。
int *Hoge(size_t n){
int *p = new int[n];
return p;
}
これを main 側で受け取って delete[] するケースですが、
int *q = Hoge(N);
delete [] q;
と書くのが正常である。ということになると思いますが、
delete q; だと先頭の 1 要素だけ削除され(るかもしれない)、
delete [] q; だと N 個の要素が削除されるという意味になると思うのですが、
そもそもここで q のサイズを把握することはコンパイラには可能なのでしょうか?
実行時にしか決まらないと思います。
delete [N] q; と書くべきですよね?(書けないけど)
0587デフォルトの名無しさん
2012/10/10(水) 13:46:18.40int *q = Hoge(N);
delete [] q;
で、正しく N 個の要素を削除出来る仕組みが(確保されたオブジェクトの方とかに)あるのなら、
そもそも、
delete q;
と書いても大丈夫のような気がするのです。
0588デフォルトの名無しさん
2012/10/10(水) 13:47:13.04よろしくお願いします。
0589デフォルトの名無しさん
2012/10/10(水) 13:49:58.26試して味噌
0590デフォルトの名無しさん
2012/10/10(水) 13:50:28.580591デフォルトの名無しさん
2012/10/10(水) 13:51:41.94それは判るんです。
疑問点は [] があるときは要素数がなぜ判るのか?って所です。
0592デフォルトの名無しさん
2012/10/10(水) 13:55:23.89ほんとの疑問点は、配列だとわかってるくせに
なぜ [] を指定しないとちゃんと呼んでくれないの?
じゃないのか?
0593デフォルトの名無しさん
2012/10/10(水) 13:56:55.44するとp[-3]あたりに確保した要素数が入ってあったり
0594デフォルトの名無しさん
2012/10/10(水) 13:59:54.45やってみます。
>>593
それが出来るなら、delete p; でも良いような気がしてるんです。
0595デフォルトの名無しさん
2012/10/10(水) 14:01:41.880596デフォルトの名無しさん
2012/10/10(水) 14:01:46.27>>593
あと、sizeof(p) とかは動的な場合は取れない(コンパイルエラー?)ですが、
「本当は判る。」ってことになりますよね?
0597デフォルトの名無しさん
2012/10/10(水) 14:02:32.11じゃあ一個だけ消したいときはどうすんの?
0598デフォルトの名無しさん
2012/10/10(水) 14:03:46.08>>595
ああ、
free だと p[-3] を使って常に全部解放されるけど、
delete だと p[-3] は見なくて、
delete [] のときだけ、p[-3] を見るってことですか。
0599デフォルトの名無しさん
2012/10/10(水) 14:04:49.35それはもちろん、
delete p[0];
とかで可能ではないですか?
0600デフォルトの名無しさん
2012/10/10(水) 14:09:19.96それに気付いた禿が delete [] を追加した。
0601デフォルトの名無しさん
2012/10/10(水) 14:19:21.28VC++ 2008 Express でアセンブラ出力してみましたが、
delete q; も delete [] q; も同じコードが吐かれてますね。・・・ orz
0602デフォルトの名無しさん
2012/10/10(水) 14:38:30.96さっきのは最適化されてたのだろうか。・・・ orz
0603デフォルトの名無しさん
2012/10/10(水) 14:41:25.060604デフォルトの名無しさん
2012/10/10(水) 14:43:43.18確かにそうなってますね。
そもそも、 delete で配列全部のデストラクタ呼べば良いのに、
(個別の要素を消したければ、 delete p[] で可能。)
なんでわざわざこんな変な仕様にしたんだろ。
間違いコード誘発しまくりですよね。
0605デフォルトの名無しさん
2012/10/10(水) 14:54:38.31*(size_t *)((unsigned char *)&p[0] - 4)
で参照したら確保した要素数と同じ数が取れました。
本当にありがとうございました。
0606デフォルトの名無しさん
2012/10/10(水) 14:57:41.96>>600
>>605
それ64bitだと動かなくなるよ
0607デフォルトの名無しさん
2012/10/10(水) 15:03:42.61禿も言ってるようにvector使え
そもそもdelete &p[n]で個別の要素が消せるとして何が嬉しいんだ
配列の要素を消したら最後forで処理できなくなるだろうに
0608デフォルトの名無しさん
2012/10/10(水) 15:20:09.52それはどうでもいいんです。
delete と delete [] の使い分けがどうして必要なのかなと思ったので。
0609デフォルトの名無しさん
2012/10/10(水) 15:21:29.50>>595
0610デフォルトの名無しさん
2012/10/10(水) 15:22:59.740611デフォルトの名無しさん
2012/10/10(水) 15:24:21.430612デフォルトの名無しさん
2012/10/10(水) 15:25:01.440613デフォルトの名無しさん
2012/10/10(水) 15:33:46.06>607
0614デフォルトの名無しさん
2012/10/10(水) 16:44:34.250615デフォルトの名無しさん
2012/10/10(水) 17:08:25.96>>605
0616デフォルトの名無しさん
2012/10/10(水) 17:53:43.600617デフォルトの名無しさん
2012/10/11(木) 05:52:17.82char *p = new char[N] のときは
delete p; で桶なんだな
0618デフォルトの名無しさん
2012/10/11(木) 09:22:31.850619デフォルトの名無しさん
2012/10/28(日) 21:46:47.23コンパイラの実装にもよるが、確かポインタpが指す先頭byteの前の
4byte領域にnewで確保した領域のサイズ(バイト数)が記憶されていた
ような。
delete [] p;
した時はこのサイズを読みに行って正しく解放している。
0620デフォルトの名無しさん
2012/10/28(日) 23:19:37.75>605
0621デフォルトの名無しさん
2012/10/31(水) 17:10:08.11ソリューションプロジェクトの中にいくつかプロジェクトを用意しているのですが、どのプロジェクトを実行しようとしても、必ず一番上にあるプロジェクトが実行されてしまいます。
手順としては
1.ソリューションエクスプローラーから特定のプロジェクトを右クリックしてリビルド
2.デバッグなしで開始
です。
別のソリューションプロジェクトを作成すれば別のプロジェクトを一つだけ実行できるようになるのですが、大変面倒なため一つのソリューションプロジェクト内で個々のプロジェクトを実行できるようにしたいです
Visual C++2010 , WIndows 7 64ビット
0622デフォルトの名無しさん
2012/10/31(水) 17:13:40.44してやればいけるけど、デバッグなしで開始を右クリックメニューに入れちゃうとか
0623デフォルトの名無しさん
2012/10/31(水) 17:20:51.31その一番上のプロジェクトが太字になってたら
>>622の言う通りスタートアッププロジェクトに指定されてる
0624デフォルトの名無しさん
2012/10/31(水) 17:51:31.75ちなみにスタートアッププロジェクトをどのプロジェクトにも設定しない方法はありますか?
難しいプログラムは作らないためにひとまとめでデバッグするような機会はないので、可能であれば外したいです
0625デフォルトの名無しさん
2012/10/31(水) 17:59:05.750626デフォルトの名無しさん
2012/10/31(水) 18:01:29.97どのプロジェクトにも設定しないと言う事は実行しない事になる
つまりビルドだけすれば望みの動作になる
0627デフォルトの名無しさん
2012/11/01(木) 06:18:27.78無料版2010で使えるソフトが、手持ちの有料版2003だと
DC_PEN
DC_BRUSH
SetDCPenColor
SetDCBrushColor
あたりでエラーになります。
参照:
http://blog.goo.ne.jp/masaki_goo_2006/e/d3c18365234ffb3383f5c30e32c83cf5
他の関数使うとか代替方法あります?
なければ2003より上のを買わなきゃダメですかねぇ。
0628デフォルトの名無しさん
2012/11/01(木) 08:27:21.790629デフォルトの名無しさん
2012/11/01(木) 11:06:01.910630デフォルトの名無しさん
2012/11/01(木) 14:59:17.340631デフォルトの名無しさん
2012/11/03(土) 13:32:34.11「マルチバイト文字」と「Unicode」は分かるのですが、
「設定なし」とは具体的にどういう扱いになるのでしょうか??
「マルチバイト文字」としたときの記述法でコンパイルできるので、
「マルチバイト文字」になっているのでしょうか??
0632デフォルトの名無しさん
2012/11/03(土) 17:48:58.88VC2005デコンパイルすると誤動作するとか、もしくは2010や2012で誤動作するとかが起きかねないから。
逆に、他の処理系から移植しようとして(つまり手元にあるのが2008じゃない)の質問ならしかたないが...
0633デフォルトの名無しさん
2012/11/03(土) 18:57:26.742、ボタンを押したらファイルを一つずつ指定のアプリで開く
3、開いたアプリにキー操作を送る
4、CPU使用率で2の動作を連続してできるようにする
これがやりたいことなんだけど1の段階で躓いてます。
ヒントお願いします。
0634デフォルトの名無しさん
2012/11/03(土) 19:48:48.030635631
2012/11/03(土) 22:24:51.72>そういう処理系依存の記述は互換性をそこなうので避けるべき
処理系依存とはどの設定のときのことを指すのでしょうか?
Unicodeの場合、w付きのAPIやリテラル文字列の前にLを付けたりと、
気持ち悪いので使いたくないです。
Unicode、マルチバイト文字のいずれでもコンパイルできるようにする
t付きのマクロも同様です。
これらを付けなくてもよい「設定なし」あるいは「マルチバイト文字」が
良いのですが、デメリットは何でしょうか?
多言語対応が難しいかもしれませんが、日本語だけでよいです。
0636デフォルトの名無しさん
2012/11/03(土) 23:22:40.63予期せぬ誤動作でデバッグ作業が長引く恐れがある。
>Unicodeの場合、w付きのAPIやリテラル文字列の前にLを付けたりと、気持ち悪いので
とか、
>Unicode、マルチバイト文字のいずれでもコンパイルできるようにする、t付きのマクロも
とかが、まさに、その危険を避けるための手順。
Windowsバージョンが変わると動作しなかったり動作異常を引き起こしたりしてユーザが苦労するソフトを作る茨の道へまっしぐらだぞ、それ。
0637631
2012/11/03(土) 23:32:07.17分かりました。
w付きAPIやL付きリテラル文字のほうがまだマシなので、
Unicodeが書くことにします。
ありがとうございました。
0638デフォルトの名無しさん
2012/11/03(土) 23:43:01.63今後の再利用の可能性も無い。
という条件だったら、移植性とか互換性を考える必要は無い。
0639デフォルトの名無しさん
2012/11/04(日) 00:02:34.05メッセージボックスが出ません・・・
MessageBox(NULL,"Hello,world!","Foo", MB_OK);
とすると、NULLとMB_OKが「定義されていない識別子」でコンパイルエラーとなります。
どうすれば解決できますか。
C++でコンソールアプリケーションはゴリゴリ書けますが
Windowsフォームアプリケーションは今日始めたばかりです。
環境はVisualC++ 2010 Express、Windows7 64bitです
0640デフォルトの名無しさん
2012/11/04(日) 00:05:36.090641639
2012/11/04(日) 00:13:08.19Windowsアプリを作りたいだけなので、他に良い手段あればそれにしようと思います。
おすすめあればご教示頂けませんか。
C++しか知りませんが、必要とあれば他の言語も覚えます。
スレチでしたら誘導頂けると有り難く・・・
0642デフォルトの名無しさん
2012/11/04(日) 00:18:02.99フォーム使おうとしてC++/CLIはありえん
C#覚えて使った方がよっぽどいい
0643デフォルトの名無しさん
2012/11/04(日) 08:15:00.90C++/CLIでフォーム作って処理は全部C++&APIで書いているけど
画面周りだけならそんなに使い勝手悪くないよ
0644デフォルトの名無しさん
2012/11/04(日) 11:00:12.130645デフォルトの名無しさん
2012/11/04(日) 11:44:39.43C# で同じ処理を書いた後に同じことを言えるかというと。。。
言語として悪くはないと思うけど、C# と同じことを出来るようにするためにメンドくさくなってるなら、
初めから C# で書いた方が色々と素直なので、自分は C# で書くことの方が多い。
自分は C++ 好きだから、最初は C++/CLI で書いてたんだけどね。
で、後学のために、いろいろなことを知ってる >>644 さんに問題点をご教示いただきたいなぁ。
0646デフォルトの名無しさん
2012/11/04(日) 17:49:20.04しかし、GUI部分はC#、カーネル部分はC++、でファイルを通してデータの
受け渡しができるならGUIにはC#を使う。
0647デフォルトの名無しさん
2012/11/05(月) 11:15:48.382、ボタンを押したらファイルを一つずつ指定のアプリで開く
3、開いたアプリにキー操作を送る
4、CPU使用率で2の動作を連続してできるようにする
何とか1はクリアーしました。2のリストボックスに表示された拡張子がflvの
ファイルを開くというので止まってます。
理想は、リストボックスに表示されてる複数のファイルを関連付けされてる
アプリで開きキー操作を送ることです。ヒントください。
0648デフォルトの名無しさん
2012/11/05(月) 12:03:46.49アプリで開きキー操作を送ること
複数選択した項目を取りだす方法はわかってるの?
関連付けされたアプリを起動する方法がわからないの?
開いたアプリにキー操作を送る方法がわからないの?
どれよ
0649デフォルトの名無しさん
2012/11/05(月) 12:13:16.29全部わかりません。
そもそもなんだけどリストボックスにファイル名を表示することもあってるかどうか・・・
リストボックスに表示されてるflvファイルを順に開きキー操作を送るというプログラムなんだけど
1、ボタンを押しリストボックスのファイル開きキー操作送る
2、CPU使用率を確認し1の動作をする
3、リストボックス表示のファイル全てを1、2の動作で終了させる
0650デフォルトの名無しさん
2012/11/05(月) 15:51:23.67Win32APIの範囲になってしまってるよ
とりあえずShellExecuteで関連付けを使用したオープンができる
後はあっちで聞いた方がいい
0651デフォルトの名無しさん
2012/11/05(月) 15:58:17.05答える方も個別なら回答しやすい部分もあるだろうし。
0652デフォルトの名無しさん
2012/11/05(月) 17:30:45.15了解
移動します
0653デフォルトの名無しさん
2012/11/07(水) 20:47:24.49uint とか ulong に変換する関数はありますか?
0654デフォルトの名無しさん
2012/11/07(水) 21:02:06.55wistringstream w(a);
w >> hex >> h;
0655デフォルトの名無しさん
2012/11/07(水) 22:53:54.01ありがとうございます!!!
0656デフォルトの名無しさん
2012/11/07(水) 23:39:43.50#include <stdio.h>
int main()
{
int x;
printf("%d\n", x); /* xの値は不明*/
printf("%d\n", x=4); /*代入式 x = 4の値を表示:*/
printf("%d\n", x); /* x に4が代入されたかを確認*/
x = 6; /*xに別の値を代入*/
printf("%d\n", x); /* xに6が代入されたかを確認*/
x = x + 4; /*x の値を 4 大きくする*/
printf("%d\n", x); /*それを確認*/
return 0;
}
をVisualStudio2010で実行すると、必ず 4行目 x; のところでコンパイルエラーになります。
本の通り書いてるのですが、本当なら、表示が
750
4
4
6
10
と、なるそうなんですが、何がおかしいのでしょうか? 教えて下さい。
0657デフォルトの名無しさん
2012/11/07(水) 23:50:43.64別にならんが
4行目ってどこだよ
0658デフォルトの名無しさん
2012/11/08(木) 00:11:25.16でコンパイルエラーになったときのメッセージを含めてそのまま貼って
0659デフォルトの名無しさん
2012/11/08(木) 00:45:40.01Run-Time Check Failure #3 - The variable'x' is being used
Without being initialised.
(Press Retry to debug the application)
とでます
0660デフォルトの名無しさん
2012/11/08(木) 00:51:53.900661デフォルトの名無しさん
2012/11/08(木) 01:32:02.52printf("%d\n", x); /* xの値は不明*/
意図してやっているんだから、それで良いんじゃない?
それでコンパイルが通らないなら、nt x=750; とかする
0662デフォルトの名無しさん
2012/11/08(木) 01:34:29.640663デフォルトの名無しさん
2012/11/08(木) 02:08:15.23どういう値になるか不明なんじゃないの?
0664デフォルトの名無しさん
2012/11/08(木) 02:14:03.19ただ例として出しただけで
0665デフォルトの名無しさん
2012/11/08(木) 03:42:24.83どの環境でも750になるわけではない
0666デフォルトの名無しさん
2012/11/08(木) 20:55:53.60ある与えられた文字列をバイナリに変換して16バイトのバイト配列に入れる
与えられる文字列は、バイナリ変換した時に128bitまでに収まる数値の文字列とする
という問題で困ってます
例:
"1234"
→1234(4D2h)
→00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,00h,04h,D2h
で、QWORD以上は整数値にできずに困っています。
"18446744073709551616"
→10000000000000000h
→00h,00h,00h,00h,00h,00h,00h,01h,00h,00h,00h,00h,00h,00h,00h,00h,
どのように処理すればいいのでしょうか?
0667デフォルトの名無しさん
2012/11/08(木) 20:57:57.060668666
2012/11/08(木) 21:05:41.81>>667
学生ではないのですが、通信仕様を渡されてやっといてという事なので、一応宿題になるのですかね?
授業単元とかないので迷ったのですが、向こうで聞いてみます。
ありがとうございました。
0669デフォルトの名無しさん
2012/11/08(木) 21:26:18.270670デフォルトの名無しさん
2012/11/09(金) 13:01:20.92この文を消すもしくはコメントアウトすると
エラー1error LNK1123: COFF への変換中に障害が発生しました: ファイルが無効であるか、または壊れています。
というエラーがでます。なんで文を消すだけでエラーになるのかがわからない。
0671デフォルトの名無しさん
2012/11/09(金) 13:30:26.31同じエラーでる・・・ファイルがひらけないってやつが
0672デフォルトの名無しさん
2012/11/09(金) 14:17:31.56ウィンドウの見えない
ゾンビプロセスが残ってるんだろ
タスクマネージャで心当たりのあるexeを終了させてみれば桶
0673デフォルトの名無しさん
2012/11/09(金) 15:07:26.481> stdafx.cpp
1> 999.cpp
1> AssemblyInfo.cpp
1> コードを生成中...
1> .NETFramework,Version=v4.0.AssemblyAttributes.cpp
1>LINK : fatal error LNK1104: ファイル 'OLDNAMES.lib' を開くことができません。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
こんなエラーがでる。まったくプログラムとか記載する前の状態です。
0674デフォルトの名無しさん
2012/11/09(金) 16:14:53.200675デフォルトの名無しさん
2012/11/09(金) 18:10:13.160676デフォルトの名無しさん
2012/11/09(金) 19:12:54.11俺のc++人生終わったかw
まだ入門レベルなのに('A`)
0677デフォルトの名無しさん
2012/11/09(金) 19:16:23.80VC++って、1文字目が数値のプロジェクトって作れるんですか?
0678デフォルトの名無しさん
2012/11/09(金) 19:32:15.69OSの再インストール
0679デフォルトの名無しさん
2012/11/15(木) 06:57:05.16とでるんですがmain(){}だけのファイルをコンパイルしてもでます。
解決方法ありましたらおねがいします
0680デフォルトの名無しさん
2012/11/15(木) 11:37:40.47typedef struct _HOGE
{
CString str1;
CString str2;
CString str3;
} HOGE;
HOGE *hoge = (HOGE*)HeapAlloc(GetProcessHeap(), 0, sizeof(HOGE));
0681デフォルトの名無しさん
2012/11/15(木) 12:25:07.100682デフォルトの名無しさん
2012/11/15(木) 12:41:15.230683デフォルトの名無しさん
2012/11/15(木) 13:22:50.91ありがと
0684デフォルトの名無しさん
2012/11/19(月) 23:12:15.060685デフォルトの名無しさん
2012/11/27(火) 01:33:59.970686デフォルトの名無しさん
2012/12/02(日) 14:07:19.69コードをそのまま(変更せず)にビルドしようとするとエラーが出ます
どうしたらいいですか?
0687デフォルトの名無しさん
2012/12/02(日) 15:05:08.260688デフォルトの名無しさん
2012/12/05(水) 23:25:32.180689デフォルトの名無しさん
2012/12/07(金) 01:28:27.62が、検索してみるとリソースダイアログ上で張り付けたコントロールの取得方法ばかり見つかり、結局方法が分かりませんでした…。
コモンコントロール(EditとかTreeViewとか)と同じような感じで使用したいだけなのですが、
どのようにすると可能でしょうか。
Doc/Viewの分離はしておらず、CHtmlViewは利用できませんでした。
comでIWebBrowser2をCoCreateInstanceしてみた所、成功してはいたようだったのですが
HWNDの値の取得もCreateWindowもしておらず、どのようにサイズ変更すればよいのかなど分かりませんでした。
技術的な面では、Vista以降あたりで動作してくれればよいと考えております。
ご助力お願いいたします。
0690デフォルトの名無しさん
2012/12/07(金) 06:31:51.54self.ie.LoadUrl(self.current)
self.ie.Navigate(URL)
0691デフォルトの名無しさん
2012/12/11(火) 16:06:33.83>>66の人と全く同じことをしたいと考えています。
ヘッドマウントディスプレイのセンサー値を取得して、
別プログラムの中での視点移動に連動できるようにしたいです。
公式のサンプルは問題なく実行できました。
ウィンドウに表示したりといったGUIの部分は不要で、
数値だけ取得して、ソケット通信で別プログラムに渡せば実現可能だと
考えていますが、サンプルを眺めてもどこをどういじればいいのか分からない状態です。
0692デフォルトの名無しさん
2012/12/11(火) 16:13:08.23ちょちょいっと教えてどうにかなるとはとてもじゃないが思えないんだが
なのでこんな場所ではなく、まともな人に対価を支払って教えてもらうのが一番正しい選択だと思いました。
0693デフォルトの名無しさん
2012/12/14(金) 21:45:02.01戻り値を指定出来ません
例外をださずにNULLを返すにはどうすればいいのでしょう?
0694デフォルトの名無しさん
2012/12/14(金) 22:00:46.700695デフォルトの名無しさん
2012/12/19(水) 20:58:29.020696デフォルトの名無しさん
2012/12/19(水) 21:04:56.220697デフォルトの名無しさん
2012/12/20(木) 10:41:23.770698デフォルトの名無しさん
2012/12/20(木) 11:12:49.540699教えてちゃん
2012/12/20(木) 12:45:14.11OSはXPSP3、開発はVS2010を使用、
プログラムの内容は下記と大体同じで、違うのはCOM1ではなくてパイプを使っている点。
http://msdn.microsoft.com/en-us/library/aa363201.aspx
書いているプログラム(クライアント側)
HANDLE hpipe = CreateFile(L"\\\\.\\pipe\\test", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
if(hpipe == INVALID_HANDLE_VALUE) return;
BOOL ret;
COMMPROP prop;
DCB dcb;
COMMTIMEOUTS timeout;
ret = GetCommProperties(hpipe, &prop); // ステップ実行で確認→1つも成功しない。 @err=1
ret = GetCommState(hpipe, &dcb);
ret = GetCommTimeouts( hpipe, &timeout); // SetCommTimeoutsもできない。
// ReadFile, WriteFile は成功する。
CloseHandle( hpipe );
よろしくおねがいします
0700デフォルトの名無しさん
2012/12/20(木) 12:59:36.970702699
2012/12/20(木) 13:47:31.72とりあえずあきらめます。
http://stackoverflow.com/questions/13767989/named-pipe-reading-timeout
0703デフォルトの名無しさん
2012/12/21(金) 02:27:00.96「Win32スレッド」というスレッドが3つ立ち上がり、
ダイアログを閉じた後でもそのまま居残り続けます。
何なんすかこれ?
0704デフォルトの名無しさん
2012/12/21(金) 02:31:06.880705デフォルトの名無しさん
2012/12/22(土) 21:22:36.15気にする必要なし
0706703
2012/12/22(土) 21:37:31.37オープンダイアログが開くところでブレークかけてコールスタック見てみましたが、
GetOpenFileNameをコールしている自分の関数より上のものは見られませんでした。
>>705
了解です!
0707デフォルトの名無しさん
2012/12/25(火) 23:56:48.480708デフォルトの名無しさん
2012/12/25(火) 23:58:29.980709デフォルトの名無しさん
2012/12/26(水) 00:13:13.78.hでも.hppでも動作に違いが無いように思います
単にコンパイラがC++だから両方ともC++としてコンパイルされているということでしょうか
0710デフォルトの名無しさん
2012/12/26(水) 00:45:27.63「使われることもある」拡張子じゃなかった?
C++ でも普通のヘッダファイルは .h だろ。
0711デフォルトの名無しさん
2012/12/26(水) 10:32:52.59#include <cstdio>
とか
#include <strstream>
とか
.h
無いのが普通
0712デフォルトの名無しさん
2012/12/26(水) 11:27:55.250713デフォルトの名無しさん
2012/12/26(水) 22:40:44.840714デフォルトの名無しさん
2012/12/26(水) 22:43:10.910715デフォルトの名無しさん
2012/12/27(木) 04:12:25.920716デフォルトの名無しさん
2012/12/27(木) 08:09:17.01すみません、説明が抜けていました...別プロセスのウィンドウがサブクラス化されているか判定したいのです。
0717デフォルトの名無しさん
2012/12/27(木) 17:54:51.80そう思い、VC++でソースファイル名をxxx.cで書いてコンパイルエラーがorz
0718デフォルトの名無しさん
2012/12/31(月) 10:24:56.51コンパイルオプション付けるくらいなら拡張子替えるけどな。
0719デフォルトの名無しさん
2013/01/07(月) 20:07:13.66多重にサブクラス化して
(そのサブクラス化をやめようとする以外の状況で)
どういうエラーになるのか分からないけど、
GetClassInfoExで元々のウィンドウプロシージャが取得できるかもしれない。
別プロセスのウィンドウに対してGetClassInfoExでそれが取得できるのか知らないけど。
0720デフォルトの名無しさん
2013/01/07(月) 20:09:54.18にて chart control でグラフ表示をしています
そこでchart controlの使い方で質問なんですが
たとえばタイマーなどで以下のようなプログラムをループさせていて
for(int i= 0; i>100; i++){
chart1->Series[0]->Points->Add(i);
}
コンパイルしてグラフをみていくとX軸が1づつ増えて自動でX軸のMAXを延長してくれますが
このときにX軸を0からMAXまでではなく最新の20だけ(iが80ならminが60、max80)みたいに
X軸の範囲を決めて使うことって可能でしょうか?
よろしくお願いします
0721デフォルトの名無しさん
2013/01/12(土) 15:19:31.20GetLastError関数によるとエラーは1407(Cannot find window class)とのこと
一方で、一つのメソッドの中で順に呼び出すとエラーなく実行された
MSDNによるとCreateWindowEx関数が失敗する原因は、
?パラメータに無効な値が指定された。
?システムクラスを登録したモジュールが別のモジュールである。
?WH_CBT フックがインストールされており、失敗コードを返した。
?WM_CREATE または WM_NCCREATE のウィンドウプロシージャが失敗した。
の四つであるそうで、二つ目の「?システムクラスを登録したモジュールが別のモジュールである。」の項にあることが原因であるように思われます
つきましては、質問なのですが、この「?システムクラスを登録したモジュールが別のモジュールである。」というのはどういう意味なのか(モジュールとは一体何のことを指して言っているのか)、
二つの関数を別のメソッドで呼び出すことはできないのかについて、どなたかご教示頂けないでしょうか
0722デフォルトの名無しさん
2013/01/12(土) 17:33:46.730723デフォルトの名無しさん
2013/01/12(土) 23:59:18.83ありがとうございます!
このレスで自らの過ちが明確にわかりました。自分がまぬけでした
RegisterClassEx関数を呼び出すメソッドの方に、「this->hInstance = hInstance;」と書き加えたところ正常に動作しました
0724デフォルトの名無しさん
2013/01/16(水) 15:23:13.91のですが、強制的にweb browserの中で開く方法を教えてください
VisualBasic2010
0725デフォルトの名無しさん
2013/01/20(日) 18:58:09.52googleで検索してみたもののはっきりと説明のされたサイトが見つかりません
0726デフォルトの名無しさん
2013/01/21(月) 00:05:24.85たとえばstd::vector<int>とかしたときに定義が作成できないから
0727デフォルトの名無しさん
2013/01/21(月) 00:19:29.40まとめておけばいいんだっけ?
それが嫌なら全部ヘッダに書け、と
0728デフォルトの名無しさん
2013/01/21(月) 00:20:49.280729デフォルトの名無しさん
2013/01/21(月) 15:49:20.790730デフォルトの名無しさん
2013/01/21(月) 15:51:14.270731デフォルトの名無しさん
2013/01/21(月) 16:02:15.64ソースファイルを一つですることに慣れてしまってコンパイルに掛かる時間だったり公開するときに恥ずかしかったりで分けてできるようになりたいたいと思ったのですが今までと勝手が違ったりで
0732デフォルトの名無しさん
2013/01/21(月) 16:41:12.37C言語入門書の次に読む本
みたいなタイトルの本には、それっぽいのが載ってた
まあ、分割コンパイルでググれば良いと思う
0733デフォルトの名無しさん
2013/01/21(月) 16:55:07.48ありがとうございます!
0734デフォルトの名無しさん
2013/01/22(火) 07:29:01.77今でもテンプレートとか使うとわかんなくなる
0735デフォルトの名無しさん
2013/01/24(木) 01:54:05.47while文を終了した時にcmd.exeが終了しません。
コマンドプロンプトのアプリケーションの終了でも
プロセスの終了でも終了できず、パソコンの電源ボタンを
押すしか対処できません。
ビルドも正常にできて、正常に実行されますが、
終了がうまくいきません、どうしたらいいのでしょうか?
0736デフォルトの名無しさん
2013/01/24(木) 02:37:22.000737デフォルトの名無しさん
2013/01/24(木) 14:49:38.580738デフォルトの名無しさん
2013/01/27(日) 00:17:51.13また使う意味は?
0739デフォルトの名無しさん
2013/01/27(日) 00:48:10.490740デフォルトの名無しさん
2013/01/27(日) 01:59:20.84つまり
propertyキーワードの中にgetとsetの定義がされてあって
入力のときはset,出力のときはgetが自動で使われるということ?
0741デフォルトの名無しさん
2013/01/27(日) 12:28:37.67C#の機能の一つだったものを、VC++独自の拡張として導入したもの
「C# property」で検索すれば出てくる
0742デフォルトの名無しさん
2013/01/30(水) 11:55:40.70デバッガ上ではどうなるの?
0743デフォルトの名無しさん
2013/02/02(土) 21:29:21.69ファイルはlibcurl-7.19.3-win32-ssl-msvc.zipとcurl-7.28.1.zipをDLしました。
環境はwindows7 64bit、Visual C++ 2010 Expressで、WIN32コンソールアプリです。
0744デフォルトの名無しさん
2013/02/03(日) 11:24:20.61普通にincludeとlibの設定すれば行けると思うけど。
プロパティで言えば
VC++ディレクトリのライブラリティレクトリ、
C/C++の追加のインクルードディレクトリ、
リンカー 入力 の追加の依存ファイル、
の3つかな。
DLL使うならそれなりの設定やコピーもね。
0746デフォルトの名無しさん
2013/02/04(月) 21:50:40.98特定のアプリケーションごとに動作を切り替えるような処理を作るのに
参考になるようなページはありますか?
もしくはこういうワードで調べると出てくる、といったものでも結構です。
ご存知のかたお願いします。
0747デフォルトの名無しさん
2013/02/04(月) 21:55:35.510748デフォルトの名無しさん
2013/02/05(火) 14:59:36.63C.cppでメンバに値を代入すると波線が引かれ定義されていないと言われる
でもそこで右クリックから宣言へ移動や定義へ移動をするとB.cppの実体宣言したところに飛ばされる
いろいろ試行錯誤したけどついに意味がわからなくなりました
どういうことなんでしょうか VC++です
0749デフォルトの名無しさん
2013/02/05(火) 15:04:27.750750デフォルトの名無しさん
2013/02/05(火) 15:32:23.370751デフォルトの名無しさん
2013/02/05(火) 16:04:18.040752デフォルトの名無しさん
2013/02/05(火) 22:05:19.20インテリセンスでそういうのなら、正常な状態でもたまになったような。
0753デフォルトの名無しさん
2013/02/05(火) 22:15:31.78インクルードは大丈夫なはず
ファイル分割前は
typedef struct tagABC
{
typedef struct tagXYZ
{
inti;
doublej;
}XYZ;
XYZ xyz[10];
}ABC;
ABC abc[5];
abc[0].xyz[0].i=1;
みたいに書いてたんだけど (すいませんレス分けます)
0754デフォルトの名無しさん
2013/02/05(火) 22:17:43.40A.hに
typedef struct tagABC
{
typedef struct tagXYZ
{
inti;
doublej;
}XYZ;
XYZ xyz[10];
}ABC;
B.cppに
ABC abc[5];
で、C.cppで
abc[0].xyz[0].i=1;//識別子abcが定義されていません (abcに波線)
で、ビルドしたら
C.cpp(○○): error C2065: 'abc' : 定義されていない識別子です。
っていう状況
多分B.cppの実体宣言がちゃんと出来てないんだと思う
あとXYZはこのままでいいのか疑問
でもB.cppでABCと同じようにしようとしたらエラー吐かれる
0755デフォルトの名無しさん
2013/02/05(火) 22:29:01.410756デフォルトの名無しさん
2013/02/05(火) 22:32:19.06A.h内でextern ABC abc[5];
A.hをB.cpp C.cppでインクルード
使用したい.cppではextern無しでABC abc[5];
0757デフォルトの名無しさん
2013/02/05(火) 22:45:03.04なんか焦ってて飛んでました
わざわざtodoまで書いて下さってありがとうございます
0758デフォルトの名無しさん
2013/02/06(水) 00:09:52.820759デフォルトの名無しさん
2013/02/06(水) 17:07:25.80bool Hoge(bool);
int Hoge(int);
を定義したのですが
コンパイルしようとすると
区別出来ないと言われてるみたいです
どうすれば回避できますか?
0760デフォルトの名無しさん
2013/02/06(水) 17:08:24.49int Hoge(bool);
int Hoge(int);
です
0761デフォルトの名無しさん
2013/02/06(水) 17:24:16.72問題ない
0762デフォルトの名無しさん
2013/02/06(水) 17:25:53.780763デフォルトの名無しさん
2013/02/06(水) 17:26:49.760764デフォルトの名無しさん
2013/02/06(水) 19:24:08.770765デフォルトの名無しさん
2013/02/06(水) 19:49:50.78ありがとうございました。
Express使おうと思ってますのでWTLでも入れてみようかと思ってるんですが
MFCじゃなくてもこの関数って使えますか
0766デフォルトの名無しさん
2013/02/07(木) 08:14:46.38まさにそれです
ありがとうございますた
0767デフォルトの名無しさん
2013/02/07(木) 10:23:35.030768デフォルトの名無しさん
2013/02/07(木) 10:46:05.55マスゴミのやらせや印象操作と同じで
捏造やりたい放題
0769デフォルトの名無しさん
2013/02/07(木) 11:03:41.06ふつうは、自演なんていう発想をしない
0770デフォルトの名無しさん
2013/02/07(木) 11:04:20.700771デフォルトの名無しさん
2013/02/07(木) 19:30:51.75そのせいでデバッグが始まるのに10秒くらいかかる
ntdllのpdbなんていらないよー
どうしたらいいの
0772デフォルトの名無しさん
2013/02/08(金) 12:29:12.610773デフォルトの名無しさん
2013/02/09(土) 11:05:32.280774デフォルトの名無しさん
2013/02/09(土) 16:23:20.51gcc -E -dM -x c++ -std=c++11 /dev/null | sort
みたいなのと同じことができればOKです
cl /E までは同じようなオプションがあるんだけど、 -dM 相当のオプションってどれなんでしょうか?
cl /? 見てる限りだとわからないです・・
0775デフォルトの名無しさん
2013/02/10(日) 02:57:35.94途方もないコードのデバック途中で寝たくなったときってどうしてる?
今、言ったん寝て昼から同じ所スタートでデバックし直したいんだけど…
0776デフォルトの名無しさん
2013/02/10(日) 10:31:57.09状況が許されるなら寝ればいい。頭が硬くなってるならそれ以上のものはない。
許されないなら、エナジードリンク系でものみながらしなない程度に頑張れ。
0777デフォルトの名無しさん
2013/02/10(日) 11:33:41.860778デフォルトの名無しさん
2013/02/10(日) 12:20:45.97疲れてるときに単純にひとりで寝た日には起きたときにはすべてが終わってたりするから怖いよな。。
0779デフォルトの名無しさん
2013/02/10(日) 12:37:56.25そんなもんかなあ。
0780デフォルトの名無しさん
2013/02/11(月) 19:53:41.10ありがとう!設定をいじってみる
0781デフォルトの名無しさん
2013/03/03(日) 11:01:21.58自分の型みたいなのが出来たから空のプロジェクトで作るようになった
今までに作ったソースを全て自分の型Verに書き換えないと
なんか仕事やり残した感があって気持ち悪い
他の人はこういう経験ある?
あるけど書き換えずに新しいのだけ自分の型Verにしてる?
0782デフォルトの名無しさん
2013/03/03(日) 11:15:36.090783デフォルトの名無しさん
2013/03/03(日) 11:25:21.95趣味としてなら、次に必要になったときに最初から作り直す。
0784デフォルトの名無しさん
2013/03/03(日) 13:04:30.30分かる分かるw
自分の場合は、新しく作るときに適用するようにして、
過去のは基本的にいじらないなぁ。
でも、新しく作る度に洗練されていく感があって楽しいよ。
0785デフォルトの名無しさん
2013/03/03(日) 13:05:00.800786デフォルトの名無しさん
2013/03/03(日) 21:10:13.68ユーザー定義のメッセージを使用してアドレスを渡すくらいしかないですか?
サブクラス化する時に一緒に渡せると楽なのですが
0787デフォルトの名無しさん
2013/03/03(日) 21:22:09.760788デフォルトの名無しさん
2013/03/03(日) 21:35:51.87メッセージの方法知ってるならそれ使えばいい。どんな方法でも渡せればいいんだから多少効率悪くても気にするなって
データ量や用途によって使い分けるものだから、それでも気になるならマルチしてないでぐぐって解決しとけ
0789デフォルトの名無しさん
2013/03/03(日) 21:36:32.22RemoveWindowSubclass(hWnd, Proc, id);
DefSubclassProc(hWnd, Msg, wParam, lParam);
でいいんじゃね
0790デフォルトの名無しさん
2013/03/03(日) 21:40:20.39レス付きにくくさせるために言ってるのか?
0791デフォルトの名無しさん
2013/03/03(日) 21:47:51.700792デフォルトの名無しさん
2013/03/03(日) 21:53:14.620793デフォルトの名無しさん
2013/03/03(日) 23:25:29.88ありがとうございます
dataとして一緒に渡せました
0794デフォルトの名無しさん
2013/03/10(日) 16:49:11.642010のCLRのWindowsフォームアプリで
一問一答形式の問題を作ってるんですが
回答を入力した後、正解かどうか判別して結果表示するプログラムはどうすれば作れますか?
問題文のLabelに文を入れ、回答欄と結果表示用のTextBoxとLabelを置くところまではできたんですが
0795デフォルトの名無しさん
2013/03/10(日) 16:50:50.230796デフォルトの名無しさん
2013/03/10(日) 17:03:12.390797デフォルトの名無しさん
2013/03/10(日) 17:05:18.710798>>794
2013/03/10(日) 17:11:23.86VisualC#最適ってことはよく聞くけど、実感としてにどれくらい便利か分からない(理解できる知識もない)から
C#を独自に学ぶべきか判断できない感じです
0799デフォルトの名無しさん
2013/03/10(日) 17:41:36.81これをそのレベルから始めるなら、C#で同じことやるやり方覚えてから
C++に戻った方が進みが早い気はする・・・
回答したらボタンかなんか押して、そのタイミングで判定するんじゃないの?
ボタン並べてダブルクリックすれば、メソッドできるからそこでやればいいと思うよ。
0800デフォルトの名無しさん
2013/03/10(日) 21:47:51.941,質問1,選択肢a,選択肢b,選択肢c,答えb<CR+LF>
2,質問2,選択肢d,選択肢e,選択肢f,答えd<CR+LF>
3,質問3,選択肢g,選択肢h,選択肢i,答えi<CR+LF>
テーブルに突っ込んで、順次それ表示して「答え合わせ」ボタン押したら答えと比較して合否表示
する感じでいいんじゃねーの?まずは
0801デフォルトの名無しさん
2013/03/10(日) 22:09:29.01TextBoxに文字列を表示する方法
フォームに答えを選ぶボタンをおいて、そのボタンが押されたかどうかを判別する方法
まずはこの3つができるようにならないと。
0802デフォルトの名無しさん
2013/03/10(日) 22:34:38.16言語問わないならどれで書いてもいい、むしろ求める方向(言語学習したいのか、ものが出来上がればいいのか)
にしたがえばいいのだよ
0803デフォルトの名無しさん
2013/03/11(月) 18:12:52.07これやってるんだけど最後のデパックでエラーになってしまう
1>------ ビルド開始: プロジェクト: test, 構成: Debug Win32 ------
1> DrawPixel.cpp
1>c:\users\www\documents\visual studio 2010\projects\test\test\drawpixel.cpp(1): fatal error C1083: include ファイルを開けません。'DxLib.h': No such file or directory
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
てでるんだけどどこが悪いんですか?
VisualC++ 2010 Express Edition のWin32です
0804デフォルトの名無しさん
2013/03/11(月) 18:15:54.47を全部行ってないから
0805デフォルトの名無しさん
2013/03/11(月) 18:34:30.68サイト見てみたけど、そのエラーは
↓がうまくできてない
�E 『追加のインクルードディレクトリ』の項目にDXライブラリのパッケージ内に入っている
『プロジェクトに追加すべきファイル_VC用』フォルダのパスを入力してから、
再度ダイアログ右下にある『適用』ボタンを押します。
( パスの例→ c:\DxLib_VC\プロジェクトに追加すべきファイル_VC用
なお、DXライブラリをマイドキュメントフォルダに入れるとこれらのパス指定が面倒になりますので
DXライブラリはなるべく浅いフォルダに入れておくことをお勧めします )
0806デフォルトの名無しさん
2013/03/11(月) 22:33:25.370807デフォルトの名無しさん
2013/03/11(月) 23:16:04.130808デフォルトの名無しさん
2013/03/11(月) 23:45:42.180809デフォルトの名無しさん
2013/03/12(火) 00:28:48.97strcpy_s(buf1, n, buf2)
strncpy_s(buf1, n, buf2, m)
memcpy_s(buf1, n, buf2, m)
memmove_s(buf1, n, buf2, m)
のn > mが明らかな時は
strcpy_s(buf1, m + 1, buf2)
strncpy_s(buf1, m + 1, buf2, m)
memcpy_s(buf1, m, buf2, m)
memmove_s(buf1, m, buf2, m)
としても問題ない・・・ですよね?
またn > 100, m < 10の時
memcpy_s(buf1, 50, buf2, m)
みたいに適当な値を入れるのはあまりよくないのでしょうか?
これならいっそのこと警告を無視して「_s」の無い関数を使ったほうがいいのでしょうか?
0810デフォルトの名無しさん
2013/03/12(火) 00:40:22.08それ以下でも動くけど使い方としては間違っている。
0811デフォルトの名無しさん
2013/03/12(火) 00:49:44.72中途半端に_sを使うぐらいなら、警告無視して従来のでやってた方がいいと思うよ
0812809
2013/03/12(火) 02:03:10.05char buf[100] = "aaabbbcccdddeee";
char *buf1 = strchr(buf, 'd');
char buf2[] = "CCCDDD";
memcpy_s(buf1 - 3, sizeof(buf) - (buf1 - 3 - buf), buf2, 3);
みたいな時
memcpy_s(buf1 - 3, 3, buf2, 3);
としても期待した結果(buf:aaabbbCCCdddeee)が得られたので計算するのが何だか無駄に思えて・・・
上の第2引数の計算式もあってるか不安になりますし。
でもやっぱり下では何か問題があるのでしょうか?
0813デフォルトの名無しさん
2013/03/12(火) 02:05:58.430814デフォルトの名無しさん
2013/03/12(火) 03:35:05.300815デフォルトの名無しさん
2013/03/12(火) 08:17:17.77>すいません、例えば
>char buf[100] = "aaabbbcccdddeee";
>char *buf1 = strchr(buf, 'd');
>char buf2[] = "CCCDDD";
>memcpy_s(buf1 - 3, sizeof(buf) - (buf1 - 3 - buf), buf2, 3);
strchr(buf,'d')で得られるポインタの3文字前が有効なんて仮定の話はしたくない。
>memcpy_s(buf1, sizeof(buf) - (buf1 - buf), buf2, 3);
これなら正しい
0816デフォルトの名無しさん
2013/03/12(火) 09:36:09.640817デフォルトの名無しさん
2013/03/12(火) 09:43:16.760818デフォルトの名無しさん
2013/03/12(火) 09:58:41.640819デフォルトの名無しさん
2013/03/12(火) 10:11:11.761バイトの幅が8ビットとは限らないけど。
0820デフォルトの名無しさん
2013/03/12(火) 12:07:26.450821809
2013/03/12(火) 12:12:41.81少し調べ直しました。意図しない領域への書き込みを防ぐためですよね。
書き込み先のサイズが書き込むサイズより大きいのが明らかなら
この問題は起こりえないので_s無しの関数を使った"方がいい"、と解釈してもいいですか?
警告を消すためだけに_s付きの関数を使ってその上書き込み先のサイズの計算を大着するのはやっぱ言語道断なんでしょうか・・・
>>815
それは考えてなかったです。
確かに計算したアドレスが有効と断定するのは良くないですよね。
ただ実際有効で無いと困るので3行目と4行目の間に
if (buf1 - buf < 3 ) return 0;
を挿入しようと思います。これなら問題無い・・・ですよね?
0822デフォルトの名無しさん
2013/03/12(火) 12:17:04.95_CRT_SECURE_NO_WARNINGS
定義した方がまだまし。
0823809
2013/03/12(火) 12:53:07.25そういう風に警告を消せる事は知りませんでした。
これを定義して書き込み先のサイズが大きいところは_s無しの関数を使うことにします。
みなさんありがとうございました。
0824デフォルトの名無しさん
2013/03/12(火) 12:53:45.87>>812の例なら
strchrでNULLが返ったときのチェック
buf[-1]やbuf[100]に書き込まないようにチェック
この2つのエラー処理をしておけばいいというか、_sを使うよりそうしといた方がいいし、
もっと言えばstrcpyやstrcpy_sなんて捨ててCStringA::Replace使った方がいいでしょ
0826デフォルトの名無しさん
2013/03/13(水) 17:50:33.34そもそもCreateWindowExで新しいウィンドウを作った直後にGetWindowLongでdwStyleを取得すると、最初に指定した値とは全然関係のない値が帰ってきていました
どうすればいいのでしょう
0827デフォルトの名無しさん
2013/03/13(水) 22:23:30.13ウィンドウのクラス名とスタイルの値をさらせ
0828デフォルトの名無しさん
2013/03/14(木) 01:00:39.27明解C言語入門編では このコードに12と入力すると0 1 2 3・・・
と数字の間に間隔が空くはずなのですがコードを打ってデバッグしてみると間隔があきません。
01234・・・ という感じになってしまいます。
環境はVisual C++2010 Expressです。
何回も見なおしたのでコードの打ち間違いではありません。
どうすれば間隔が空くのでしょうか?
0829デフォルトの名無しさん
2013/03/14(木) 01:08:14.940830デフォルトの名無しさん
2013/03/14(木) 01:08:29.020831デフォルトの名無しさん
2013/03/14(木) 01:08:41.440832830
2013/03/14(木) 01:10:31.16>>828
%d が数字部分だから
" %d"または "%d "のように前か後ろに空白を入れればよい
0833デフォルトの名無しさん
2013/03/14(木) 07:26:52.38ありがとうございます。
よーく見てみたら本には空白空いてました・・・
putcharが原因かと思ってたのにここだったとは
0834デフォルトの名無しさん
2013/03/14(木) 16:45:08.730835デフォルトの名無しさん
2013/03/14(木) 20:38:03.860836デフォルトの名無しさん
2013/03/14(木) 23:25:31.850837デフォルトの名無しさん
2013/03/14(木) 23:29:31.57まあええやん
0838デフォルトの名無しさん
2013/03/14(木) 23:49:00.89まぁまぁw
0839デフォルトの名無しさん
2013/03/14(木) 23:55:08.400840デフォルトの名無しさん
2013/03/15(金) 00:05:58.730841デフォルトの名無しさん
2013/03/15(金) 01:17:44.86内容的にループと文字出力の極初期の基本的なサンプルなんだから動作内容の説明があるだろうに
全く理解せずただ漫然と入力して結果だけ確認しようとしてる姿勢には眉を顰めるな
0842デフォルトの名無しさん
2013/03/15(金) 05:33:45.760843デフォルトの名無しさん
2013/03/15(金) 09:11:43.60・自分が間違っている可能性が一番高い
・自分は間違っていないという判断が間違っている可能性が一番高い
・自分は間違っていないという判断は間違っていないという判断が間違っている可能性が一番高い
0844デフォルトの名無しさん
2013/03/15(金) 09:28:38.57自分のコードを読み返すときは書いたことを忘れて
一旦頭を真っ白にしてから読むこと
0845デフォルトの名無しさん
2013/03/15(金) 09:29:36.03うまく答えられないときはエラそうになんだかんだいちゃもんつけてきます
看板に偽りスレなので素人が質問しても時間の無駄です
わかったら相手にせず黙って去りましょう
0846デフォルトの名無しさん
2013/03/15(金) 22:07:33.540847デフォルトの名無しさん
2013/03/15(金) 23:04:43.320848デフォルトの名無しさん
2013/03/16(土) 09:54:42.90ないとはいえないわな。
0849デフォルトの名無しさん
2013/03/16(土) 10:46:12.68意図してウソ教えるのとは違う。
0850デフォルトの名無しさん
2013/03/16(土) 11:20:21.58それはうそと言って良い
0851デフォルトの名無しさん
2013/03/16(土) 12:09:50.180852デフォルトの名無しさん
2013/03/16(土) 12:39:59.190853デフォルトの名無しさん
2013/03/16(土) 15:23:00.130854デフォルトの名無しさん
2013/03/16(土) 20:54:35.810855デフォルトの名無しさん
2013/03/16(土) 20:56:33.910856デフォルトの名無しさん
2013/03/17(日) 23:06:50.030857デフォルトの名無しさん
2013/03/18(月) 00:49:12.01マジで何のつもり?
0858デフォルトの名無しさん
2013/03/18(月) 08:39:59.40#include <time.h>
int main(int ac, char **av)
{
time_t time;
struct tm t, *l;
t.tm_year = 2013 - 1900;
t.tm_mon = 3 - 1;
t.tm_mday = 18;
t.tm_hour = 8;
t.tm_min = 0;
t.tm_sec = 0;
time = mktime(&t);
printf("%ld\n", time);
l = localtime(&time);
printf("%d-%02d-%02d %02d:%02d:%02d\n",
l->tm_year + 1900, l->tm_mon + 1, l->tm_mday,
l->tm_hour, l->tm_min, l->tm_sec);
return 0;
}
これで 1363557600 2013-03-18 07:00:00 という結果になるのですが、
なぜ一時間ずれるのでしょう?
0859デフォルトの名無しさん
2013/03/18(月) 09:49:21.610860デフォルトの名無しさん
2013/03/18(月) 10:28:57.200861デフォルトの名無しさん
2013/03/18(月) 13:56:02.150862デフォルトの名無しさん
2013/03/18(月) 21:50:58.55t.tm_mon を 7 とかにするとずれないね
0863デフォルトの名無しさん
2013/03/19(火) 10:45:03.30じゃなくて1から12までやってどれがずれてどれがずれないのよ。
って本人だよね?他にもずれる人いるの?
ずれてる人、PCの時刻設定でタイムゾーンどうなってる?
0864デフォルトの名無しさん
2013/03/19(火) 11:29:18.270865デフォルトの名無しさん
2013/03/19(火) 13:54:58.72全部大文字で書け!
話はそれからだ。
0866デフォルトの名無しさん
2013/03/19(火) 14:33:35.32>>862はどうなんだ?
あと自分の環境でtm_isdstに何かセットして試してないだろ?
0867デフォルトの名無しさん
2013/03/19(火) 14:51:39.610868デフォルトの名無しさん
2013/03/19(火) 17:09:06.65ずれる環境を用意できないゴミは参加資格なし。
0869デフォルトの名無しさん
2013/03/19(火) 21:49:56.960870デフォルトの名無しさん
2013/03/19(火) 21:51:38.82Lと1の区別が付かないな。
大文字で書け。
0871デフォルトの名無しさん
2013/03/19(火) 23:53:52.390872デフォルトの名無しさん
2013/03/20(水) 00:03:40.36MS Pゴシック 12 pt
0873デフォルトの名無しさん
2013/03/20(水) 13:08:26.88d.hatena.ne.jp/peryaudo/20100512/1273671808 を参考にして書いてみましたが、 NOTIFYICONDATAが宣言されていな いと言われ、コンパイルが通りません でした。
0874デフォルトの名無しさん
2013/03/20(水) 14:24:44.91#define WINVER 0x0501
とか入れるんじゃなかったっけ
0875デフォルトの名無しさん
2013/03/20(水) 15:55:28.760876デフォルトの名無しさん
2013/03/20(水) 18:41:37.41有難う御座います。自己解決しました。
0877デフォルトの名無しさん
2013/03/20(水) 18:46:24.440878877
2013/03/20(水) 18:46:54.360879デフォルトの名無しさん
2013/03/27(水) 21:40:36.360880デフォルトの名無しさん
2013/03/27(水) 22:23:33.360881デフォルトの名無しさん
2013/03/27(水) 22:31:38.82thisを基底クラス型にキャスト
0882デフォルトの名無しさん
2013/03/27(水) 23:16:03.19何がやりたいんだ?
0883デフォルトの名無しさん
2013/03/27(水) 23:31:25.22やはりそうするしかないのでしょうか
コンストラクタやデストラクタは派生クラスの側で明示的に書かなくとも良い
0884デフォルトの名無しさん
2013/03/27(水) 23:41:09.62コンストラクタやデストラクタは明示的に書かなくとも良いのにという思いです
>>883
今回やりたかったのは、参照カウントを持った基底クラスを継承することでコピーを管理するというものです
例えばLast()という関数で参照カウントが1であることを確認してからリソースを開放するなど
もちろん継承を使わなければ実装できないものではありませんが、クラス名の横にごにょごにょ書くだけで済むなら便利かなと考えたわけです
0885デフォルトの名無しさん
2013/03/27(水) 23:45:37.12{...}
base_class::operator=(value);
0886デフォルトの名無しさん
2013/03/27(水) 23:47:59.38派生クラスのコピーコンストラクタから、基底クラスのコピーコンストラクタを呼び出したいと言うこと?
0887デフォルトの名無しさん
2013/03/28(木) 00:10:47.140888デフォルトの名無しさん
2013/03/28(木) 00:19:04.01そういうことです
勝手に呼ばれるものだと思っていたのですが、どうもそういう訳ではないようですね
>>885
これでうまくいきました
コピーコンストラクタでもこの書き方が出来たのは知りませんでした
レスありがとうございました
コンストラクタは何も書かなくとも自動的に呼ばれるのに対し、コピーコンストラクタは派生クラス側で明示的に呼び出してやる必要があるということのようです
やや不思議ではあります
>>884に書いたことはコピーや代入は使わずに適当にAddRef関数でも作っときます
0889デフォルトの名無しさん
2013/03/28(木) 00:31:01.980890デフォルトの名無しさん
2013/03/28(木) 00:31:28.73参照カウントの値だかポインタだかを渡さないといけないのでコピーやらはしなければなりません
まあ何でもいいですね、質問の本旨でもないですし
0891デフォルトの名無しさん
2013/03/28(木) 00:34:20.720892デフォルトの名無しさん
2013/03/28(木) 09:48:07.28暇があったとしてもとっくに他のコミュニティに移動してる
こんな匿名の叩き煽りが日常茶飯事で自分にメリットが薄いようなところは
最高の頭脳でなくともまともな人間でもさっさと去るよ
他にコミュニティがない10年前なら最高の頭脳もいたかも知れないが、
いつの間にかいなくなって今ではその幻想だけが残ってる
最高の頭脳持ってる奴は他のコミュニティに行っても入っていけるから困らなかっただろう
そしてそういったコミュニティで相手にされない奴が集まってるのが2ch
0893デフォルトの名無しさん
2013/03/28(木) 10:10:45.28コンストラクタで自動で呼ばれるのは、デフォルトコンストラクタのみだけどね。
デストラクタは自動で呼ばれるけど、これは唯一にしか存在しないからだね。
c++は基本的に、全て明示するのが基本で、例外的にいくつかの自動があると思った方が良いよ。
0894デフォルトの名無しさん
2013/03/28(木) 15:34:23.650895デフォルトの名無しさん
2013/03/28(木) 19:37:00.710896デフォルトの名無しさん
2013/03/29(金) 02:02:02.08空のプロジェクトを作成した時に
ソース ファイル
リソース ファイル
ヘッダー ファイル
この3つのフィルタがデフォルトで作成されるのですが
デフォルトで作成されるフィルタが
Main
ProjectName
みたいにカスタマイズした状態で作成されるようにしたいです
デフォルトで作成されるフィルタを変更するにはどうすればいいですか?
0897デフォルトの名無しさん
2013/03/29(金) 06:35:58.930898デフォルトの名無しさん
2013/03/29(金) 07:53:53.23ありがとうございました!
0899デフォルトの名無しさん
2013/03/29(金) 12:25:27.41カスタムウィザード項目が無い
0900デフォルトの名無しさん
2013/03/29(金) 14:40:56.740901デフォルトの名無しさん
2013/03/29(金) 17:56:46.48できる
0902デフォルトの名無しさん
2013/03/30(土) 02:58:10.24ウィザードではなくて
default.js
Templates.inf
.vsdir
.vsz
これらを直接変更加えて追加したら出来ました
ありがとうございました
0903デフォルトの名無しさん
2013/03/30(土) 14:35:55.540904デフォルトの名無しさん
2013/04/02(火) 01:21:39.22A.dllのエディットコントロールではキー入力が処理されるのに
B.dllでは処理されません
どうすればB.dllのエディットコントロールでもキー入力が処理されるようになりますか?
0905デフォルトの名無しさん
2013/04/02(火) 02:33:56.940906デフォルトの名無しさん
2013/04/02(火) 09:49:30.13var config = proj.Object.Configurations('Debug');
config.WorkingDirectory = Path;
でいけるはずだがエラーになるな
Default.vcxprojに
<LocalDebuggerWorkingDirectory>Path</LocalDebuggerWorkingDirectory>
追加したらいい
0907デフォルトの名無しさん
2013/04/02(火) 10:21:55.84MainでTranslateMessageとDispatchMessageを呼んだら実現できました
さらにリターンキーでデフォルトボタンが押された動作にしたかったので
メッセージループ内でDLLダイアログハンドルを保持させるstatic変数を宣言
→DLL内でFindWindowを使用してMainウィンドウハンドルを取得
→ユーザーメッセージを使用してDLLからMainへダイアログハンドルを送信
→IsDialogMessageで通常通りの分岐
最終的にはこのような感じに落ち着きました
ありがとうございました
0908デフォルトの名無しさん
2013/04/04(木) 17:55:52.74http://itpro.nikkeibp.co.jp/article/Watcher/20130331/467401/
0909デフォルトの名無しさん
2013/04/04(木) 18:54:58.461つのソリューション内に2つのプロジェクト、A(exeプロジェクト)、B(DLLプロジェクト)を作ったとします。
AとBは同じモジュール(C++コード)を共有しており、Aでコンパイルした結果の.objをBのコンパイルでリンクさせたいとします。
このとき、対象となる共有モジュールをBでリンクさせるためには以下の方法があります。
方法1:
・プロジェクトAに共有モジュールをソリューションエクスプローラに登録
・プロジェクトBに共有モジュールをソリューションエクスプローラ上でプロジェクトAからコピーしてやる
方法2:
・プロジェクトAに共有モジュールをソリューションエクスプローラに登録
・プロジェクトBのプロジェクトのプロパティのリンカ設定で追加の入力から共有モジュールの.objファイルを指定する
なお、共有モジュールは複数あり、以後追加されていきますし、DLL化対象は都度変更します。
上記いずれの方法にしても、いちいちコピーやプロパティの変更が面倒です。
もし、プロジェクトAで生成された.objファイルを自動でリンクしてくれたら楽チンです。
ソリューションエクスプローラ上で複数のプロジェクトに共有(リンク)されるようにできる登録方法はないでしょうか??
プロジェクトの依存関係を設定(BがAに依存)するだけではダメでした。
0910デフォルトの名無しさん
2013/04/04(木) 22:13:57.31既にあるプロジェクトにリンク指定したいのか
新たに作成されるプロジェクトに初期値としてリンク指定したいのか
どっち?
0911デフォルトの名無しさん
2013/04/04(木) 22:44:46.84それが必要なプロジェクトにCへの依存関係を設定する。
0913デフォルトの名無しさん
2013/04/04(木) 23:00:25.130914デフォルトの名無しさん
2013/04/04(木) 23:30:54.25全般->出力ディレクトリ->
リンカー->全般->出力ファイル->
この2箇所を変更したのですが
warning MSB8012: TargetPath() が Linker の OutputFile プロパティ値 () と一致しません。
このため、プロジェクトが正常にビルドされない可能性があります。
この問題を解決するには、$(OutDir)、$(TargetName)、および $(TargetExt) の各プロパティ値が、%(Link.OutputFile) で指定されている値と一致することを確認してください。
と警告が出てしまいます
dllファイルとexpの出力場所を変更してさらにこの警告が出ないようにするにはどうすればいいですか?
#pragmaの警告無視以外の方法があれば教えてください
0915デフォルトの名無しさん
2013/04/05(金) 00:49:02.080916デフォルトの名無しさん
2013/04/05(金) 12:26:57.71ありがとうございました!
0918デフォルトの名無しさん
2013/04/17(水) 20:31:53.57手段が見つかりません。
3D点(x,y,z)の点(データ)×数万個を線で結びつけて、色付けしたものです。
チャートコントロール(mschar)では等高線をサポートしておらず、実現できません。
System::Windows::Forms::DataVisualization::Charting::Chart
どなたかご教授くださいませ!
[環境]
visual c++ 2008 express
vs2012へ更新検討中
0919片山博文MZパンク ◆0lBZNi.Q7evd
2013/04/17(水) 21:00:16.72自分で描画したいなら、遠近法で(x/(z+α),y/(z+α))みたいにして奥の方から描画。OpenGLの方が簡単で無難。
0920片山博文MZパンク ◆0lBZNi.Q7evd
2013/04/17(水) 21:25:28.09自前で描画する場合はウィンドウのDCを取得。
OpenGLで描画する場合はウィンドウにピクセルフォーマットを設定。
0921デフォルトの名無しさん
2013/04/17(水) 23:17:56.11>>920
書き込みありがとうございます。
遠近法、自前で描写、…難しそうです
変数->ADD(xの値,yの値,zの値);
変数->全ての点を線で結ぶ;
変数->zの値を元に色付けする;
っていうレベルで考えてます
OpenGLとかDirectXなら可能でしょうか?
0922デフォルトの名無しさん
2013/04/17(水) 23:21:27.31>>920
追加で…
ググってみたところ、Microsoft.Office.Tools.Excel.Char でグラフを作成できるのかな、
と思いました。(Excelだと等高線グラフを簡単に作成できるため)
Microsoft.Office.Tools.Excel.Charは何をするためにあるものでしょうか?
望みのことができますか?
できるなら、どのように導入(参照設定やら名前空間やらツールボックスやら)できますか?
0923デフォルトの名無しさん
2013/04/17(水) 23:24:46.610924デフォルトの名無しさん
2013/04/17(水) 23:42:53.85Mathematica使う
0925片山博文MZパンク ◆0lBZNi.Q7evd
2013/04/18(木) 00:03:54.180926片山博文MZパンク ◆0lBZNi.Q7evd
2013/04/18(木) 00:24:38.33初心者ならEXCELのVBAでやるのが一番楽
0927デフォルトの名無しさん
2013/05/12(日) 02:37:22.35言い切るならコードを示してみろよ
0928デフォルトの名無しさん
2013/05/17(金) 23:02:29.59ホイ
http://stat.ameba.jp/user_images/20111009/17/wwww0628/e9/e6/j/o0350034511535747985.jpg
0929デフォルトの名無しさん
2013/05/18(土) 11:06:55.100930デフォルトの名無しさん
2013/05/20(月) 20:49:35.79_popen()で開いた子プロセスに対して,コマンドを投げて,その結果をもらって,また次のコマンドを投げて・・・
ということをやりたい。
条件として,子プロセスに対して,改変を加えるのはなしの方向で。
Linux上ではできるみたいだが,Windows上ではできるのだろうか。
どなたか教えてください。
[環境]
Visual C++ 2010
Windows 7/8
0931デフォルトの名無しさん
2013/05/20(月) 21:12:17.37可能でしょうか?
その場合、参考となるAPIを1つでいいので教えてください。
(それをもとに検索して他にも色々調べます)
0932デフォルトの名無しさん
2013/05/20(月) 21:17:12.100934片山博文MZパンク ◆0lBZNi.Q7evd
2013/05/20(月) 23:48:16.04CreateProcessとパイプ
0936デフォルトの名無しさん
2013/05/24(金) 09:53:35.870937デフォルトの名無しさん
2013/05/24(金) 12:30:27.480938936
2013/05/24(金) 15:02:37.67久々にVCいじってみたら綺麗に忘れてる。
なんか勘違いしてるのかも。
0939デフォルトの名無しさん
2013/05/24(金) 17:08:04.500941デフォルトの名無しさん
2013/05/26(日) 04:59:13.131,
TODOコメントを入れる時に日付とか名前を自動で入れられるようにできないですか?
要するにTODOコメントのテンプレを作りたいってことです
2,
switchとかclass(アクセス指定子)とかのインデントを個別に設定出来ませんか?
0942デフォルトの名無しさん
2013/05/28(火) 23:26:59.24うまくいきません。
苗字とクラスをコンボボックスから選んで、該当する組み合わせがあれば
コピー専用のテキストボックスに所属している部活動名が表示されるプログラムです。
if文を使って処理をしようと思っているのですが、項目の編集で登録した
苗字、クラス名の要素をどうやって取得していいのかわかりません。
どうすれば、AddRange(gcnew cli:: array< System::Object^ >(数値) {}); から要素を取得し、
仕様通りに動くプログラムを作ることができるのでしょうか?
作りかけのプロジェクトを置いておきます。
http://kie.nu/11at
0943デフォルトの名無しさん
2013/05/29(水) 01:01:47.38そもそもどうやって、名字とクラスと部活を結びつけようとしてんの? どこにもなさそうなんだが。
簡単な方法としては、上の3つを要素として持つクラスを作成して、その配列に生徒?を登録。
条件を入力されたら、上の配列の名字とクラス名とで照らし合わせて一致してれば
その同じ要素にある部活名を表示でいいんじゃね。
検索の方法は、for ループで配列をまわして if でチェックでもいいし、LINQ が使えるならそれ使ってもいいし。
あと、ここで言うのもなんだが。その内容なら C# でやった方が。。。
0944デフォルトの名無しさん
2013/05/29(水) 21:16:22.37_tmainのコンソールアプリのプロジェクトでMFCのクラスを使いたいのですが、
この場合はどのようにするのでしょうか?MFCのアプリだと派生クラスで定義しているのは
参考にしているプロジェクトで分かるのですが、コンソールアプリだとどうしたらよいのでしょうか
0945デフォルトの名無しさん
2013/05/29(水) 21:18:34.590946デフォルトの名無しさん
2013/05/29(水) 21:36:39.30すみません説明不足でした。
参考にしているMFCアプリのソースがありまして、それは派生クラスを使って、外部のクラスを呼び出しているところまでは分かりました。
コンソールアプリでMFCのチェックを入れれば、とりあえず、同じ外部のクラスを読み込ませることはできたのですが、
読み込ませただけで、どのようにしたら使えるようになるのかがわかりません。
_tmainの場合とMFCの派生させて使う場合の使いわけが、混乱しています。
0947デフォルトの名無しさん
2013/05/29(水) 21:45:41.87それはエスパーじゃないと答えれないな
0948デフォルトの名無しさん
2013/05/30(木) 08:33:58.880949デフォルトの名無しさん
2013/06/08(土) 21:21:20.98にて下記のようにエラーが出力されます。
----
0xC0000005: 場所 0xcdcdcdc9 を読み込み中にアクセス違反が発生しました。
0xC0000005: 場所 0xcdcdcdc9 を読み込み中にアクセス違反が発生しました。
プログラム '[15796] test.exe: ネイティブ' はコード -1073741819 (0xc0000005) で終了しました。
----
▽▽▽ ソース
#include <stdio.h>
#include <atlstr.h>
int main(int argc, char* argv[])
{
CString *pstr;
pstr = (CString *)malloc(sizeof(CString) * 2);
pstr[0].Format("test0");
pstr[1].Format("test1");
printf("%s\n", (char *)(LPCTSTR)pstr[0]);
printf("%s\n", (char *)(LPCTSTR)pstr[1]);
free(pstr);
return 0;
}
△△△
CString型配列を動的に確保する方法がありましたら、
ご教示お願いします。
0950デフォルトの名無しさん
2013/06/08(土) 22:33:19.81○ pstr = new CString[2];
× pstr[0].Format("test0");
○ pstr[0].Format(_T("test0"));
×printf("%s\n", (char *)(LPCTSTR)pstr[0]);
○printf("%s\n", (CStringA)pstr[0]);
× free(pstr);
○ delete[] pstr;
0951デフォルトの名無しさん
2013/06/09(日) 02:05:10.00丁寧に教えていただきありがとうございます
0952デフォルトの名無しさん
2013/06/09(日) 02:59:48.9802: #include <atlstr.h>
03: #include <vector>
04:
05: int main(int argc, char* argv[])
06: {
07: std::vector<CStringA> vstr;
08: int bk_cnt, cnt = 0;
09:
10: bk_cnt = cnt;
11: vstr.resize(cnt + 1);
12: if( bk_cnt == vstr.size() ) return 0; // メモリ再割り当て失敗の場合は終了する
13: printf("bk_cnt=[%d] size=[%d]\n", bk_cnt, vstr.size());
14: vstr[ cnt++ ].Format("あああ");
15: printf("vstr[%d]=[%s]\n", bk_cnt, vstr[bk_cnt]);
16:
17: bk_cnt = cnt;
18: vstr.resize(cnt + 1);
19: if( bk_cnt == vstr.size() ) return 0; // メモリ再割り当て失敗の場合は終了する
20: printf("bk_cnt=[%d] size=[%d]\n", bk_cnt, vstr.size());
21: vstr[ cnt++ ].Format("いいい");
22: printf("vstr[%d]=[%s]\n", bk_cnt, vstr[bk_cnt]);
23:
24: return 0;
25: }
26: ----【実行結果】----
27: bk_cnt=[0] size=[1]
28: vstr[0]=[あああ]
29: bk_cnt=[1] size=[2]
30: vstr[1]=[いいい]
0953デフォルトの名無しさん
2013/06/09(日) 03:02:33.22>>952について教えて欲しいです。
VC++ 2008 の win32 console(マルチバイト文字セットを使用する)環境で実行しました。
std::vector を使い CStringA型の配列のメモリを動的に再割り当てするプログラムです。
vector::resize の成功か失敗かを知りたいのですが、この関数はvoid型なので、
戻り値がありません。
10行目、12行目にて、メモリの再割り当てが成功か失敗か判断しているつもりですが、
「成功(要素数が増加している)、失敗(要素数に変化なし)」という判断方法で、
合っていますでしょうか。
ご存じの方がいらっしゃれば、よろしくお願いします。
0954デフォルトの名無しさん
2013/06/09(日) 03:07:29.310955デフォルトの名無しさん
2013/06/09(日) 03:18:48.52すみません。あまり慣れていない手段(例外)は使いたくなかったので避けていました
>>952では失敗を検知するのは例外(try , throw , catch)を使う方法しかないのでしょうか
0956デフォルトの名無しさん
2013/06/09(日) 03:24:07.710957デフォルトの名無しさん
2013/06/09(日) 07:43:53.94ありがとうございます
了解しました
0958デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0959片山博文MZパンク ◆0lBZNi.Q7evd
2013/08/06(火) NY:AN:NY.ANインストールハ、オワッタカ?
0960デフォルトの名無しさん
2013/08/06(火) NY:AN:NY.AN0961デフォルトの名無しさん
2013/08/07(水) NY:AN:NY.AN0962デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN0963デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN0964デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN0965デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.ANCもC++も同じだから気にするな
0966デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.ANhttp://tinqwill.blog59.fc2.com/blog-entry-68.html
0967デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN0968デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.ANって意味がよく分からん
0969デフォルトの名無しさん
2013/08/08(木) NY:AN:NY.AN0970デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.AN私もいますよ。
0971デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.AN0972デフォルトの名無しさん
2013/08/09(金) NY:AN:NY.AN書かない、動かないのほうがやばい
0973デフォルトの名無しさん
2013/08/10(土) NY:AN:NY.ANテストパスすればいんでしょうけど、
やぱC++のfstreamとかiosとかでやりたいってのはあるよねぇ。
0974デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN特におまえは>>959シコシココード書いてろ
0975デフォルトの名無しさん
2013/08/11(日) NY:AN:NY.AN0976デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.AN0977デフォルトの名無しさん
2013/08/12(月) NY:AN:NY.AN0978デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANmainだけ?
ほかのクラスの.cppに適当に放り込んでもいいのですか?
0979デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.AN後で困らないように分けといたら?
0980デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANコードは書いてあっても
ファイル分けまで説明してない本が多くて
基礎を読んだ後いざ作ろうとするとよくわからなくなってしまいました
>ほかのクラスの.cppに適当に放り込んでもいいのですか?
これはクラスのメンバ関数とは別にそのまま呼び出せるのでしょうか
0981デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.AN0982デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANわかりました
0983デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANプロトタイプ宣言をヘッダにまとめて、使いたいとこでinclude
そのファイルでしか使わないなら、上の方にプロトタイプ宣言書けばいい。
関数定義を上に持っていく、というものぐさはあとで困るかもw
0984デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.AN0985デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANそのプロトタイプ宣言は
ヘッダにも書けるし
mainにも書けるのですね
せっかく別ファイルに書いたのにmainに書いていては意味無いですが
0986デフォルトの名無しさん
2013/08/28(水) NY:AN:NY.ANレス数が950を超えています。1000を超えると書き込みができなくなります。