ふらっとC#,C♯,C#(初心者用) Part92

■ このスレッドは過去ログ倉庫に格納されています
2012/04/26(木) 21:32:32.95ID:RzRn9VkL0
ふらっとVisual C#,C♯,C#(初心者用)

このスレッドは
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。

なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

関連スレ
ふらっとC#,C♯,C#(初心者用) Part91
http://toro.2ch.net/test/read.cgi/tech/1335089085/
C#, C♯, C#相談室 Part71
http://toro.2ch.net/test/read.cgi/tech/1332575004/


こんな感じでソフトウェア板に立てたらどうかな
2012/11/03(土) 13:41:36.62ID:aQkNFxaV0
これでもC++のIDEとしては世界最高峰という現実
2012/11/04(日) 00:47:22.62ID:uGVODdQQ0
>>554-555
スレ違いにレスするのもあれだが
2012のリリースに間に合った分だけ先に出したんじゃないか。
つい先日C++コンパイラのCTPが出たから試してみるといい。

Visual C++ Compiler November 2012 CTP
http://www.microsoft.com/en-us/download/details.aspx?id=35515
http://blogs.msdn.com/b/vcblog/archive/2012/11/02/visual-c-c-11-and-the-future-of-c.aspx
558名無しさん@お腹いっぱい。
垢版 |
2012/11/04(日) 01:15:52.52ID:2HT1Ehp3O
VC++はWinAPI呼び出しやすいですか?
2012/11/04(日) 02:23:33.97ID:8/SJMHn70
WinAPIのようなC向けAPIはC#からでも呼び出しやすいから大差ない
C#の場合は.NETによって格段に便利な形でカバーされてるところも
C++ではWinAPIに頼らざるをえないことが多々あるから、総合的にみるとC#に比べて糞面倒
2012/11/04(日) 12:51:39.29ID:n0HETfhZ0
まあDllImportに頼らないとkeybd_eventもSendInputも使えないので
マクロ書きたい初心者には不評なんですが
561名無しさん@お腹いっぱい。
垢版 |
2012/11/06(火) 06:24:23.97ID:wprtWPyAO
Func<int, int, int> foo = (x, y) => { return x + y; };
例えば上をコールバック関数にしたいと思ったらどうすればよいでしょうか?
extern static int CallBack( ???, int x, int y );
???は定義可能でしょうか?
2012/11/06(火) 06:39:57.83ID:7jUzu2Y40
delegate int HogeCallback(int x, int y);
使うしかないね
2012/11/06(火) 09:43:03.10ID:a0vlFpjG0
>>561
普通に extern static int CallBack(Func<int, int, int> callback, int x, int y); でいけるよ
ただしDllImportならコールバックが来る可能性がある間は渡したデリゲートオブジェクトが
絶対にGCされないようにこっち側で管理する必要がある
2012/11/06(火) 10:04:52.58ID:9NcogyaD0
あれ、ついに.NET4.5でジェネリックのマーシャリングがサポートされるようになったの?
565563
垢版 |
2012/11/06(火) 11:19:30.39ID:a0vlFpjG0
ああすまん無理
566名無しさん@お腹いっぱい。
垢版 |
2012/11/07(水) 01:36:41.70ID:xeiSNqCnO
.NET4.5入ってるのに
古い.NETプログラムが起動しません
2012/11/07(水) 02:13:35.31ID:t4vk2ZFU0
左様ですか
2012/11/07(水) 02:17:58.82ID:8vrDwtTR0
バージョンアップごとに必要ない命令とか消えたりマイナーチェンジしたりする事もあるし
まぁ必要ないって、メーカーが勝手に決めた感じだろうけど
569名無しさん@お腹いっぱい。
垢版 |
2012/11/07(水) 02:36:28.10ID:wP2T4+LT0
そういやWMPモジュール使ったソフトで、WMPのバージョン上がったら挙動も変わったよ
2012/11/07(水) 09:52:18.48ID:vaQSgjR80
.NET3.5以前をターゲットにしたアプリは.NET4以降ではそのまま動かないよ
マニフェストファイルをいじる必要がある。
特になんか技術的な問題があるわけじゃなく意図的な制限で、
必ずしも100%の互換性は保証できないからテストしろボケというMSからのメッセージ。
Oracleとかほかの会社なら絶対にそんなことしないレベルの互換性はあるけどそこはMSだからな。
2012/11/08(木) 02:52:01.14ID:bz8NFcX40
スルーされたのでここで教えてください

Sqlite+Entityでデータベース作ったんだけど
これをDataGridViewに表示するにはどうするの?
SQLiteのテーブルをDataGridViewにバインドしても
表示が更新されない
アプリ再起動したらちゃんと表示される

変更を即座にViewに反映したいんだけどどうすればいいですか?
2012/11/08(木) 19:57:32.73ID:6sKW/DkV0
「SQLite DataGridView bind」でヤフーでググレカス。
ttp://ap.atmarkit.co.jp/bbs/core/fdotnet/16939
2012/11/08(木) 20:54:46.26ID:bz8NFcX40
そこも見ましたがDataSetをDataSourceにバインドしているんじゃなくて
DataTableを直接バインドしているんです
なのに反映されません

具体的には、SQLiteのテーブルをDataSetにD&D
DataGridViewのプロパティでD&DしたテーブルをDataSourceに設定
SQLite関係のコードは何も書いてません、Entityを操作しているだけです
Entityでデータベースを変更した場合、ビューに表示するまでのどこかで更新されていないと思うんですが・・・
574名無しさん@お腹いっぱい。
垢版 |
2012/11/08(木) 22:03:50.29ID:cPbFhgLeO
一生懸命C#勉強してプログラム作る

.NETバージョンアップ

全部パー

こういう認識でよろしいですか?
2012/11/08(木) 22:19:20.78ID:AhHExoug0
ビルドしたバージョンと同じバージョンの.NETが入ってれば動く
また既存の技術が使えなくなるわけじゃないので習得したスキルも無駄にはならない
576名無しさん@お腹いっぱい。
垢版 |
2012/11/08(木) 22:39:34.59ID:cPbFhgLeO
.NET4で作ったものは
4.5とか5になったらパーですか?
2012/11/08(木) 22:50:53.77ID:qHtPIF2L0
お前の頭がパーならそうかもね
2012/11/09(金) 00:02:02.58ID:jXQl/LXe0
スーテンウーとかウーの次はリュウでその次チーでその次がパーだよ
579名無しさん@お腹いっぱい。
垢版 |
2012/11/09(金) 22:38:09.25ID:Yq3TG6pvO
C#でAPIで1からウインドウ作れますか?
2012/11/09(金) 22:51:54.47ID:qOEkUJ4E0
作れるけど全く何の意味もないぞ
Formのウィンドウハンドル普通に取れるし
2012/11/09(金) 22:59:07.64ID:WSphD2g70
javaで作られたものって1枚の画像として認識されるんだな
2012/11/09(金) 23:14:31.93ID:qOEkUJ4E0
WPFもWin8ストアアプリもそうだよ
Swingはクロスプラットフォーム(笑)のためにそういう形になってるが、
最近はハードウェア描画をフル活用したいけどOSが全然追い付いてないってことで
ウィンドウ内部はOSに管理させずに自前でやる設計が多くなってる
2012/11/09(金) 23:17:59.02ID:mx0ZVWpj0
>>581
まあ結局は先に一枚の画像に仕上げてVRAMへ転送するかVRAMに直接描くかだし
windowsVista以降はウインドウも3DCGで言えばテクスチャ状態だからな
584名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 01:54:21.81ID:jFrovpzLO
.NET4で作ったプログラムは4.5で動きますかね?
2012/11/10(土) 02:12:06.03ID:91hPXMla0
環境があるならやってみなさい。
Hello worldで。
586名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 02:30:06.15ID:9x5TyNzm0
直さないと動かないモノも存在しているようだ
587名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 04:05:17.86ID:jFrovpzLO
XPなんで4.5インストールできません(>_<)
2012/11/10(土) 06:14:01.67ID:A/zAe+92O
今時XPよりも安泰の7か安い8買うしかないわな
2012/11/10(土) 11:13:13.34ID:cqMtqC4r0
.NET4から4.5はよっぽど変なことしてなければ100%動くはずだよ
4を置き換えてしまう更新なので互換性は2系(2.0,3.0,3.5)→4.0のときより厳格
2012/11/10(土) 11:28:31.59ID:b7/ZFjTd0
ここのところ互換性をすげえ気にしてる奴がいるようだが

大丈夫だよ
お前は何一つ作り上げることはできないさ
591名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 12:08:52.42ID:wcfboVoB0
プログラマの立場で互換性に気を払わない奴こそ
何一つ作り上げることはできない
2012/11/10(土) 12:10:55.63ID:S/ruX9mF0
気にしないのも不味いけど、気にしすぎるのもよくない。
いいから動かしてみろよ、って思う。
2012/11/10(土) 12:14:04.82ID:FmT1vbsX0
動かなければ動くようにすればいいだけだからな
594名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 12:14:07.13ID:wcfboVoB0
俺はそれを言ってる
2012/11/10(土) 12:14:48.88ID:b7/ZFjTd0
最近の九官鳥はキーボード扱えるようになったらしいな
すごいね
2012/11/10(土) 12:16:06.34ID:cqMtqC4r0
むしろ.NETほど後方互換性が確保されたプラットフォームって他にあるか?
2012/11/10(土) 12:16:16.54ID:xKsip/1ci
>>591
下請け派遣雑魚は無理すんなよ
598名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 12:17:24.00ID:wcfboVoB0
おお!君が有名な九官鳥か!!
2012/11/10(土) 12:19:18.67ID:b7/ZFjTd0
何だかんだ理由つけてやりたくないんだろ
なぜ無理してるのかが分からんよ
600名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 12:24:20.87ID:wcfboVoB0
やりたいとかやりたくないとかじゃなくて
C#が将来有で使える言語かどうかが知りたいだけなんです。
それ以外はいたって謙虚なものです。
2012/11/10(土) 12:25:37.04ID:b7/ZFjTd0
将来って何年間?
2012/11/10(土) 12:27:21.19ID:b7/ZFjTd0
本当に互換性だけでいいのなら、2度とバージョンアップがされなくなれば互換性は変わらない
しかし、そういうトンチめいた話がしたいわけではないだろう
603名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 12:40:34.79ID:wcfboVoB0
ちょっと待ってよ、君らがいくつか知らないけど
俺は.NETほど下位互換性のものは見たことがない
バージョンアップで互換性がなくなるのは数知れど見たけど
こんなに速いスパンでプログラムの起動すらできない
プログラムは見たことがない。

バージョンアップするにしても、もう少しその過程における
流れる時間というものがあるだろう
2012/11/10(土) 12:41:05.84ID:xKsip/1ci
もう有望も有望
超将来性ありまくり

って言ったら信用するわけ?
もし外れたら責任とらされるの?
他人のだしに使われるなんてたまんねーなー
2012/11/10(土) 12:42:40.27ID:xKsip/1ci
お前がそう思うならそれでいいじゃん
使わなければいい
結論は明快だろ?
2012/11/10(土) 12:45:14.02ID:b7/ZFjTd0
何か齟齬があると思ってたけど理解できたわ
.NET4で.NET2向けにコンパイルしたプログラムが動かないのはおかしいって言ってんね
2012/11/10(土) 12:45:25.63ID:/DSU3yg70
大体は対象プラットフォーム変えてビルドし直すだけで動くよ
2012/11/10(土) 12:49:59.29ID:b7/ZFjTd0
supportedRuntimeってのもある
2012/11/10(土) 12:54:44.17ID:bkLwqFFS0
>>606
「実行環境が 4 で、アプリが 2 だと動かないことがよくある」ってこと?
2012/11/10(土) 12:56:50.12ID:b7/ZFjTd0
>>609
「よくある」ってか明示的に指定しないと「必ず」動かないよ
http://d.hatena.ne.jp/tt_clown/20100923/1285234733
2012/11/10(土) 12:57:20.34ID:FmT1vbsX0
DLL HELLという歴史があるからなぁ
612名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 12:58:45.21ID:wcfboVoB0
対象プラットホームが分からない場合どうするんですか
かつてVisualBasicでさえ、当該ランタイムを一緒に配布すれば
それほどユーザーに負担をかけずにプログラムを実行できたのに。

お宅の環境で実行できなければ、WindowsUpdateを手当たり次第試してくださいなんて
どの口が言えるんだよ
2012/11/10(土) 13:15:49.55ID:bkLwqFFS0
手当たり次第じゃなくて、.NetFrameworkの4.0をとか2.0をインストールしてください。
とは言えるんじゃないだろうか。
むしろ最初に「どのような環境で実行できるようにいたしましょうか」と確認しておくといいんじゃないか。
2012/11/10(土) 13:19:55.32ID:b7/ZFjTd0
>>612
そろそろ死ねよ
邪魔だ
615名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 13:21:43.13ID:wcfboVoB0
ありがとうございました。
2012/11/10(土) 13:21:45.98ID:FmT1vbsX0
別にお客様は神様じゃない
617名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 13:47:26.76ID:10X/rMgA0
C#の勉強をはじめて一週間。
まだメッセージボックス出して喜んでるレベルですけど。
javaと似てるなと思いました。
2012/11/10(土) 13:48:38.34ID:b7/ZFjTd0
元J#ですから
619名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 14:23:54.63ID:10X/rMgA0
そいつは知りませんでした。
2012/11/10(土) 17:42:25.31ID:zryRr8O10
ここはむしろ delphi こそ java のもとだと強く主張したい
2012/11/10(土) 18:34:17.07ID:9/kCEulA0
begin
end

を考えたやつは最高にアホ
2012/11/10(土) 18:50:04.19ID:zryRr8O10
>>621
LL(1) 文法で解析可能、ワンパスでコンパイル可能なためには必要だったのでは?
623名無しさん@お腹いっぱい。
垢版 |
2012/11/10(土) 21:59:06.31ID:jFrovpzLO
MFCって無料で使えますか?
2012/11/10(土) 22:27:44.60ID:cqMtqC4r0
VSPro買わないとMFCは無理
2012/11/11(日) 11:10:20.76ID:O63qgx/E0
MemoryStremに入ってるデータの最後の1バイトを
取り出すにはどうすればいいでしょうか?
2012/11/11(日) 11:12:44.10ID:RYP/qfSm0
SeekしてからRead
2012/11/11(日) 11:26:46.66ID:O63qgx/E0
ありがとう
できました
628名無しさん@お腹いっぱい。
垢版 |
2012/11/12(月) 22:11:55.20ID:iEbZBYFgO
ウインドウずプログラムミングは.NETに集約されると聞きました。
2012/11/12(月) 22:52:18.95ID:/CK0bqs90
気のせいです
2012/11/23(金) 02:03:50.26ID:DbPruXYC0
今更WPF触ってみたが意味不明すぎわろえない…
これ流行るの?
2012/11/23(金) 03:12:52.12ID:DQh3qZZ50
欠陥だらけで仕上げるの苦労するよ
フォームより新しいだけあって強力なクラスあるからフォームで流用してる
2012/11/23(金) 16:42:30.88ID:UFJIKELI0
WPFはMVVMでないと作れないからな
2012/11/23(金) 17:11:52.03ID:YaK3c0IJ0
もういいってw
2012/11/24(土) 00:25:58.77ID:nEJGtHJ/T
ポトペタで張ってコードビハインドでも作れると何度言えばw
2012/11/24(土) 00:44:55.05ID:bi6DonzL0
それでもできなくはないけど
それだとGUIに依存したコードになってしまって
保守性が低くなる
ロジックとGUIは分離すべき
MVVMがWPFをフルに活かせる
2012/11/24(土) 00:46:37.00ID:n24dSq+J0
寝ぼけんなugaya
2012/11/24(土) 02:51:29.44ID:x1F6gKMC0
MVVMなんて全然流行ってないけど、ほんとに使ってる人いんの?
WPFで仕方なしに使う以外で
2012/11/24(土) 04:03:25.60ID:nEJGtHJ/T
源流にあたるMVCは30年以上前にSmalltalkで考案された。
MVCだとプレゼンテーションロジックの置き場所に困る事になって、解決策としてPMが生まれた。
MVVMはPMの亜種。PMの考えをWPFに持ち込んで、さらに双方向データバインドでビューとプレゼンテーションを分離したもの

そういうわけで、他の言語・環境でも別の名前の似たようなやつは使われまくってるけどMVVMとは呼ばれない。
2012/11/24(土) 06:52:35.40ID:Q9lwcH5x0
ようやくサンプルが読めるレベルになってきた
どうも一番最初に読んだ解説サイトが自分にあってなかったっぽい
個人的にはMVVMによる保守性云々はどうでもいいがコントロールの自由度はかなり魅力的
2012/11/25(日) 19:23:18.16ID:vHti3GkX0
そこだな、昔はGUIを使ったwindowsアプリを開発したこともないようなやつがデザインしてきた画面設計の為に
存在しないコントロールを0から作らされたり色々しんどかったのが、WPFで解消された
何だこの自由度はって感じ

しかし既存のコントロールのバグも受け継いでるので、datagridviewなんかはいまだに地雷ってのは同じだけど
2012/11/25(日) 20:44:00.45ID:db3RSTYy0
まったくだな
素人が好き勝手デザインしたもんに書かされるほうはたまんねーよな
2012/12/07(金) 11:09:32.65ID:Mcgx5rjd0
WebBrowserを使ってC#で自動でデータ入力送信させようとしているのですが、

<input id="btn_XXXX" onclick="postSetData();" value="変更" type="button" />

というのがあってこれを

HtmlElement he = wb.Document.GetElementById("btn_XXXX");
he.InvokeMember("onclick");

とするとサーバーの方のデータは書き換わってるのですが、画面が変化してくれません
どうすればいいですか?
2012/12/07(金) 14:50:13.22ID:GKe7AIet0
>>642
これじゃね?
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36020&;forum=7
644名無しさん@お腹いっぱい。
垢版 |
2012/12/07(金) 15:36:13.39ID:e973oFYp0
lbl_status.Text = "AAA\r\nBBB";

とプログラムから設定しているのにフォームを開くと
設定した改行コードが文字列として表示されてしまいます。
何がまずいのでしょうか?

AAA\r\nBBB
645名無しさん@お腹いっぱい。
垢版 |
2012/12/07(金) 16:08:46.43ID:3RguNEK20
>>644
ラベルじゃなくてテキストボックス使ってくれ
その他マルチラインとかリードオンリーのプロバティーもセットしてね
646名無しさん@お腹いっぱい。
垢版 |
2012/12/07(金) 16:18:21.31ID:e973oFYp0
>>645
ラベル上で改行をしたいんです。
そして、付け加えるとプロパティからじゃなくて、プログラムからです。
647名無しさん@お腹いっぱい。
垢版 |
2012/12/07(金) 16:26:27.20ID:3RguNEK20
>>646
ラベルに複数行を表示する機能はないから、テキストボックスのプロバティーを弄って複数行表示ラベルのように振る舞う設定にするのが簡単ですよ
2012/12/07(金) 16:34:55.54ID:GKe7AIet0
そんなことをするくらいならDrawStringするっしょ
2012/12/07(金) 16:46:14.14ID:Mcgx5rjd0
>>643
ダメでした
でも参考になりました
他にもクリック等させてて、一連の操作を一気にしていたのが問題のようでしたので
それぞれの処理の間にSleep入れることでとりあえず動くようになりました
ありがとうございました
650名無しさん@お腹いっぱい。
垢版 |
2012/12/07(金) 17:07:05.13ID:e973oFYp0
>>647 >>648

ラベルに改行機能はなかったのね。残念!
2012/12/07(金) 17:49:24.44ID:5Vj/pCB50
あれ?
System.Windows.Forms.Labelのことなら改行に対応してるっしょ?
2012/12/07(金) 17:51:02.73ID:1OvQx+8z0
dobonググりながら答えてんだろ
653名無しさん@お腹いっぱい。
垢版 |
2012/12/08(土) 14:31:10.35ID:fEkFdfqD0
みみずん検索管理人が弁護士に依頼
http://anago.2ch.net/test/read.cgi/tubo/1290655108/
654名無しさん@お腹いっぱい。
垢版 |
2012/12/27(木) 15:39:38.06ID:+lBUEZY/0
ファイルのダウンロードをしたくてDownloadFileメソッドを使っているんですが、
参照設定などできているはずなのに使用できません。
どなたかお助けください。
2012/12/27(木) 16:03:39.91ID:WMIZyAdt0
エスパーに祈るかコード片とエラーメッセージ書くか
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

ニューススポーツなんでも実況