1 名前:デフォルトの名無しさん [2006/10/07(土) 17:28:33 ] このスレッドは どんなに「くだ」らない.NETプログラミングに関する質問でも 誰かが優しくレスをしてくれる「すれ」っどです。 質問者自身何がなんだか分からない質問でも勇気をもって書き込んで ください。お礼は.NETアプリケーションの普及と初心者の救済を お願いします。
435 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:33:21 ] >>434 >>418 どうした?w
436 名前:418 mailto:sage [2008/03/29(土) 21:50:44 ] >>433 あの、ちょっと違うくてスクロールバーの表示/非表示の話じゃなくて、スクロールバーの 動作の話なんです。(>>433 さんはわかっておらてるようですが) BCBからやっとこさ移行しようかなと思ったんですが、BCBならスクロールバーのプロパティ で Tracking = true; ってやればできたんですが、なんか似たやり方無いのかな?と思って。 いろいろ試してみますが、ゆっくりやってますので、わかる方がいらっしゃれば思いついた ときにでもレスお願いします。
437 名前:418 mailto:sage [2008/03/29(土) 21:53:18 ] >>435 再読込したら変なのが湧いてるな。氏ねよ。
438 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 23:09:16 ] >>437 ビンゴだったようだなw
439 名前:デフォルトの名無しさん [2008/04/03(木) 14:53:07 ] .NET Framework 3.5をインストールしておけば、 2.0と3.0用に開発したソフトも 正しく完全に動作するとおもっていいのでしょうか? MSのホームページをみると、 実行することができます、と書いてましたが、 MSの言うことなのでイマイチ不安です・・・
440 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 14:59:22 ] もちろんMSの言うことですからおもってはいけません。 バージョンが同じでも仕様と現実とに差異があるくらいですから。
441 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 15:02:31 ] 3.5をインストールするのは2.0と3.0と3.5を順にインストールしたのと一緒だよ
442 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 15:03:17 ] やっぱりですか・・・ まんどくさいですが、2.0と3.0も 一緒にインストールするようにします・・・
443 名前:デフォルトの名無しさん [2008/04/03(木) 15:04:35 ] >>440 >>441 ど、どっちが正しいのでしょうか?w
444 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 15:08:07 ] >>443 msdn2.microsoft.com/ja-jp/library/bb822049.aspx つまり古いのを入れる意味はない
445 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 15:22:27 ] >>444 ありがとうございます。 そのページは見てませんでした。
446 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 20:34:06 ] >>440 今回は、その違いがあるということが(2.0と3.0の)SP1として表れている。
447 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 21:48:04 ] だからといってMSを疑っても全く意味がない 1.1と2.0系の関係とは違う
448 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 16:32:23 ] 1.1と3.5だけでいいってことね
449 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 16:34:14 ] また、次でドトネトじゃないものに変わっちゃうんじゃね? 時代はRIA。
450 名前:デフォルトの名無しさん [2008/04/07(月) 10:29:10 ] このスレの住人なら知っていますね、あの糞開発ツールのことを ・自分のプログラムのバグなのかコンパイラのバグなのかわからない ・他の仕事に応用できない糞開発ツールの独自世界を必死に学習している ・テキストエディタで書いたほうが効率的なのに糞UIツールを懸命に使っている ・糞開発ツールを批判すると「性格が悪いから糞ツールを批判するんだ」と言われる 糞だけど、政治的な理由で無理やり使わされているんですよね。 もう、あんな厨の作った糞ツールを我慢して使うのはやめましょう。 ・糞開発ツールを部下に押し付ける上司の命令は無視しましょう。 上司は糞開発ツールが使われる実績を作ることであの会社のごきげんをとっているのです。 ・糞開発ツールを使わせる上司の下では働けません、と上司の上司に直訴しましょう。 ・あの糞開発ツール提供会社には「おたくの糞開発ツールは話にならない」と突き放しましょう。 バグレポートなどしてはいけません。改善要求などもってのほかです。 あの会社はあなたたちのことをテスター/モルモットとしか思っていません。 ・あの会議で「糞開発ツールを使ったら生産性がxx%アップしました」 なんて話が出たら力強く机を叩き、会議室を出ましょう。 あの人たちは糞開発ツールをマンセーすることで立場を確保しているのです。 糞な開発ツールを糞だと言える、そんな当たり前の環境をみんなの力で取り戻しましょう。
451 名前:デフォルトの名無しさん [2008/04/07(月) 10:37:57 ] 質問です。長文失礼します。 1つのソリューション内に、 2つ以上のプロジェクトがあり、 それぞれのプロジェクトから、 同じクラスモジュールのファイルを参照したいのですが、 どうすればいいのでしょうか? たとえばSol1というソリューション内に、 Pro1,Pro2というプロジェクトがあり、 2つのプロジェクトの両方から、Class1.vbという クラスモジュールを使用したいのです。 「追加」−「既存の項目」で追加すると、 Pro1,Pro2のフォルダの下ににそれぞれ違う Class1.vbができてしまいます。 別プロジェクトを作ってDLLを作るほうが いいのでしょうか? あまり外部依存ファイルを増やしたくないのです・・・ よろしくおねがいします。
452 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 11:24:11 ] 既存項目の追加ダイアログでファイルを選んだら, 追加ボタンの右にある下向きの三角ボタンをクリックしてリンクとして追加を選ぶ お勧めはしない クラスライブラリのプロジェクトを作って既存プロジェクトを追加でソリューションに追加した方がいい DLLは増えるけどまったく変わらん
453 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 11:56:50 ] >>452 すばやいレスありがとうございました。 目的のことができました。 やはりDLL増やしたほうがいいんですねぇ。 その案も考慮して進めていきたいとおもいます。
454 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 17:17:04 ] エラー発生時のExceptionから取得したStackTraceから各関数の引数の値って取得できますか?
455 名前:デフォルトの名無しさん [2008/04/07(月) 18:23:42 ] ラベルが100個くらいあるフォームで (ここはつっこまないでw顧客の要望なんです・・・w) BackgroundImageを設定すると、 フォームの表示がむちゃくちゃ遅くなるんですが、 どうにかならないでしょうか? BackgroundImageを無しにするとそれなりに早くなります。 ちなみにラベルの背景色はTransparentで透過するようになっています。 というかもうデザインの時点でかなり重い・・・
456 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 19:28:07 ] 文字を全部BackgroundImageにGraphicsで書き込めば?
457 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 20:25:06 ] >>455 BackgroundImageを使わないで済むよう顧客を説得する
458 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 22:56:24 ] もうー最後 VBとC#どっちがいい?
459 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 23:57:24 ] C#
460 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 07:50:39 ] C#
461 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 07:58:35 ] じゃあ俺はVBで
462 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 09:38:17 ] こうじゃね VBで十分な人>>C++を使いたい人>C#を使いたい人
463 名前:デフォルトの名無しさん [2008/04/09(水) 10:00:16 ] オヒス2007にしたら、氏ぬ程モッサリなんだが。。。 起動も20年前のUNIX+X-Windowワークステーション、 ウィンドウの描画もIME起動も1瞬止まったかのよう。 まさか、ドトネトで開発した?
464 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 11:26:58 ] 気持ち悪い文章だ
465 名前:デフォルトの名無しさん [2008/04/14(月) 17:22:08 ] コレクションをジェネリックで実装するときに コレクションの値を キーとインデックスを両方つかって参照したいのですが、 List(Of T)だとインデックスだけだし Dictionary(Of T)だとキーだけ・・・ 両方つかえるコレクションは作れないのでしょうか?
466 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 18:55:20 ] KeyedCollection
467 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 19:17:50 ] ありがとうございます。 Listとは違う名前空間だったので、 気がつきませんでした・・・
468 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 14:46:26 ] >>462 できるよ。 以上。 はい、次。
469 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 17:49:23 ] えらそうに仕切る前にレス番くらい確認しような
470 名前:デフォルトの名無しさん [2008/04/20(日) 21:16:08 ] なんで.NETアプリはメモリ使用量が大きいんですか? 例えばtwintailという.NETの2chブラウザはスレッド1個見ただけで60MBぐらいメモリを食いますが、 これはプログラムの作り方の問題なのか、.NETの欠点なのかどちらでしょう? この程度の小さいデータを扱うアプリなら5〜10MB程度のメモリ使用が妥当だと思うんですが。
471 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:47:01 ] 共有ライブラリをロードするから
472 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:57:04 ] クラスライブラリの使う分だけをスタティックリンクして、 frameworkなしで動くネイティブアプリを作るコンパイルオプションはありますか?
473 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:57:13 ] メモリ食いなのは確かだが、タスクマネージャのメモリ使用量は 指標として役に立たないことは覚えておいたほうがいい。
474 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:57:41 ] >>472 ない
475 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:08:56 ] >>474 ないのか・・・。じゃ使えんな。
476 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:15:30 ] そう、使えるときは使って、 使えないときは潔く諦めるのも大事だよ。
477 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:05:34 ] >>470 Live2chもちょっと長く立ち上げてると150MBくらい逝くから アプリの特性じゃね? IEコンポ使わないと作るの大変だしな
478 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:47:56 ] 2chブラウザでIEコンポーネントなんか使う訳ないだろ。 dat取得とか知らないのか。
479 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:52:00 ] >>478 dat取得したのをローカルにhtml加工してから、IEコンポーネントで表示してるはず。 すくなくともギコナビは使ってる。
480 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:54:45 ] IEコンポーネントはなんかリークしてる気がするんだよね
481 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:55:38 ] >>479 貴方みたいな姿勢は尊敬するけど華麗にスルーしていいよ。 胃が痛い・・・
482 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 01:26:53 ] >>479 URLリンク部分を色変えて表示したりするためだけに、馬鹿でかいIEコンポを内部に組み込むのか。 「瓦一枚必要だから家を一軒買ってきました」みたいなノリだな。
483 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 01:49:52 ] >>482 IEコンポーネントを使っちゃった以上、 CSSやJavaScriptでスキンを作れるなんて機能もある始末。
484 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 11:37:04 ] >>482 >URLリンク部分を色変えて表示したりするため しかしこれがFAQなのも事実。 RichTextで文字列の色変えたり、リンク貼ったりしたいという質問は多い。 リソース使用量に対するパフォーマンスを考えるとブラウザのレンダリングエンジンは相当優秀だよ。
485 名前:デフォルトの名無しさん [2008/04/21(月) 12:33:51 ] >リソース使用量に対するパフォーマンスを考えるとブラウザのレンダリングエンジンは相当優秀だよ。 パフォーマンスじゃなくて技術力の問題だろ。 2chブラウザごときにIEコンポを使おうと判断する奴が無能すぎるだけ。 テキスト中のURL部分の抽出なんか正規表現使えば簡単にできるのに、それすら知らない無知無能。 だいたい.NETを使う奴は、使うパーツのコストをまるで考えない奴が多い。 これ使えばどんだけメモリを食うのか、どんだけ処理が重くなるのか考えもしない。
486 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 12:43:23 ] なんか訳のわからないこと言ってる奴がいる気がするけど気のせい? IE使うな、って自前で描画しろっての? 車輪の再発明、って言うんじゃないのそういうの。 っていうかコピーにも対応するって結構面倒そうに思うけど。 つーかIE使うとメモリそんなに消費するのかなw
487 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 12:49:47 ] 会社に必ず一人はこういうのがいるよな
488 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 12:56:14 ] ↑こんな奴ばかりだから.NETはモッサリで嫌われるんだよ。 コストを考えて使えと言ってるだけなのに。
489 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 12:58:13 ] w
490 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 13:06:48 ] 調べてみるとtwintailはIEコンポーネントを使ってないと書いてある。 だがそれにも関わらずメモリ食いまくりで起動が遅い。 .NET frameworkを読み込むこと自体が元凶なんだろうな。 Vista仕様のパソコンじゃないと使う気になれない糞重いソフトしか作れないのは痛いな。
491 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 13:16:46 ] WebClientも使ってないのかねえ? それに限らず.NETFRAMEWORKの中からIE使ってる場合もあるのではないか まあどっちみちメモリ食うのには変わらんがw それとHTMLレンダリング甘く見てる知ったかちゃんが湧いてるようだがw 自分で作ってみるといいよ 間違いなく認識改まるからw まったく最近は日本語処理舐めて掛かる奴が多くて困る
492 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 13:31:57 ] HTMLレンダリングとかそんなオーバーなものは要らない。 2chブラウザが解釈すべきタグは<a href="xxx">と<br>の2つだけだろ。 それをわざわざIEコンポーネントで表示させるほどのもんか? 頭使えよ。
493 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 15:47:30 ] >>492 実際に作ってみてよ
494 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 15:47:51 ] まあその程度の認識だろうとは思ったよ(笑) 実際やってみれば分かるが、.NETの文字列系処理だけで組み上げようとするとかなりのコスト それで得られるものは僅かなメモリとでっかいセキュ穴 あ、あと自己満足かw 物の分かる奴ならどっちを取るかは自明だがね
495 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 15:49:31 ] 表示とdatの解釈で話が噛み合ってないな
496 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 16:03:10 ] 俺ならIEコンポーネントを選ぶ
497 名前:デフォルトの名無しさん [2008/04/21(月) 16:05:38 ] Linuxで自前レンダリングが通のやり方。 IE使うよりずっと楽。 emacsen使って楽々コーディング+スクリプトで自動化。
498 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 16:08:41 ] >>494 IEコンポ使うとセキュリティーだらけ。 標準に準拠してないしな。 M$を信じたらだめだw
499 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 16:18:55 ] >>497 スレチあっちいけ
500 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:10:15 ] >>498 2chのスレ表示なら、 標準に準拠していないことはそう問題にならないはず。 だって>>492 が言っているように 最低限aとbrが使えれば十分で、 さすがにIEコンポでもそれくらいは使える。
501 名前:サイタマン ◆mYN3wsz7vE [2008/04/21(月) 17:27:09 ] perlで2chブラウザ作ったけど 簡単だったなぁ。 まず、板URLゲット 板選択したら、スレッドdatを取って スレッド表示 スレッド選択したら スレッドdat取ってスレ表示 書き込みはpostで。 4時間で作れた。
502 名前:サイタマン ◆mYN3wsz7vE [2008/04/21(月) 17:31:12 ] ちなみに、これがSSです。 pict.or.tp/img/53200.jpg
503 名前:サイタマン ◆mYN3wsz7vE [2008/04/21(月) 17:33:28 ] IEコンポが無いと、デザインがね。 それと、Javascript使って、ID一覧表示が出来ない Widestudioで作ったんですが、 IEコンポがperlに対応して無いようで 残念です。
504 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:39:49 ] 普通に考えてRichEditで十分だな。 IEコンポ使う奴は素人。
505 名前:サイタマン ◆mYN3wsz7vE [2008/04/21(月) 17:43:55 ] 今の時代ブラウザ用途でJavascript使えないとおもちゃのようになるよ。 俺の作った2chブラウザもJavascript使えないから 便利に動かない。 richeditなんて役に立たないよ。 実際に2chブラウザ作ってないから問題点が見えてないんだろうけど。
506 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 18:12:55 ] >>504 Win使ってる時点で素人 プロは全員りなつかてる
507 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 18:22:03 ] >>503 Win32::OLEはだめなのか?
508 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:07:59 ] >>505 ブラウザ用途って、2ch専用だぞ? HTMLのフル機能を備える必要がなんである? javascriptで機能を実装する必要がなんである? 不必要に馬鹿でかいオブジェクトを組み込んでしまった罪滅ぼしに、 javascriptを使おうとしてるだけじゃないか。
509 名前:サイタマン ◆mYN3wsz7vE [2008/04/21(月) 19:20:15 ] >>507 OLEでGUIデザインは・・・ >>508 そこがね、卓上の空論と言うのかな。。 俺のSSのような2chブラウザならいらないけど より便利にして行こうとすると、どうしても、必要になってくる。 あの機能が足りない、この機能が欲しいとなってくるんだよね。
510 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:30:02 ] >>509 Perlやったことないんだけど、 IEコンポ部分だけWin32::OLEってのも無理?
511 名前:サイタマン ◆mYN3wsz7vE [2008/04/21(月) 19:32:59 ] >>510 widestudio使ってるから無理だと思います。 TKだとIEコンポ付いてますが共存できません。。
512 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:44:54 ] >>509 ×卓上の空論 ○机上の空論(「きじょうのくうろん」と読む) perlなんかやっててWindowsプログラミングの机上の論理すら分かってない奴には用はない。 分かってるならきちんと論理的に反論できるはず。
513 名前:サイタマン ◆mYN3wsz7vE [2008/04/21(月) 19:51:22 ] 数時間あれば2chブラウザなんて作れるんだから 実際に作ってから言えと言いたいですね。 そこで問題点が分かると思いますよ。 IDにフォーカス当てるとそのIDの発言が表示されるとか いろんな機能が欲しいと思うはずです。
514 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 03:48:30 ] そんなの自分で描画すればいいじゃん。やってみると結構簡単だよ
515 名前:デフォルトの名無しさん [2008/04/23(水) 02:07:56 ] .NETアプリのexeが、MSILかJITコンパイル済みかを見分ける方法ってありますか? 初回起動が激遅のソフトがあって、それがMSILだから遅いのか、フレームワークを読み込むので遅いのかを 調べたいんですけど。
516 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 03:18:22 ] >>515 >それがMSILだから遅いのか、フレームワークを読み込むので遅いのかを >調べたいんですけど。 プロファイラがあるから調べてみれば? ttp://msdn2.microsoft.com/ja-jp/magazine/cc337892.aspx
517 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 03:22:40 ] >>515 ngenのこといってる? ならngen displayコマンドで調べられる。
518 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 17:58:05 ] HTMLのオートインデント実装しようと思ってるんだけど、XMLのDOMについて質問です XmlNodeクラスにはすべての子供のデータを取得するInnerText,InnerXmlはありますが 直下の子供のTextは取得できないんでしょうか DirectoryInfoのGetFilesとGetDirectoriesみたいに 直下のXmlとTextだけが取得できる方が便利だと思うんですが・・
519 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 19:00:47 ] >>518 Textもノードの種類の一つだから、 子ノードを列挙してNodeTypeがTextのを探せばいい
520 名前:518 mailto:sage [2008/05/05(月) 19:21:28 ] うまくいきました。thx
521 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 02:40:27 ] ViEMUなるVisual Stdio内で動くViエミュレータが動きません。 設定の仕方がまずいんでしょうか。それともVisual Stdio Express じゃそもそも動きませんか? メンバー、フィールド、プロパティ、変数のそれぞれの単語の厳密な使い分けがようわかりません。 ヘルプ読めばなんとなくはわかるんだけど。何か気の利いた分け方ありますか。
522 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 21:42:39 ] Expressではアドインは使えません。諦めましょう。 型の直下に宣言された要素の総称がメンバ(メソッド,プロパティ,フィールド,イベント)
523 名前:デフォルトの名無しさん mailto:sage [2008/05/12(月) 03:12:27 ] >>522 サンクス
524 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 01:38:38 ] よくある、タブで文書を複数開く系のアプリを作ろうとしています。C#です。 TabPageの派生クラス(仮にMyTabPage)をTabControlにぽこぽこ追加、 みたいなイメージで考えてるんですが、この場合MyTabPage上の コントロールの配置をデザイナで行うことは可能でしょうか。
525 名前:524 [2008/05/20(火) 01:39:51 ] あげときますです
526 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 20:36:11 ] ユーザコントロールを作ってタブページの上に乗せるようにした方がいいと思う
527 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 20:08:34 ] FileStream や IO::File::WriteAllText で 新規ファイルを作成して書き込んだとき、 サイズが0になってしまうことがあるのですが、 どんな理由が考えられるでしょうか? ディスクの空き容量は充分にありますし、 特に例外も出ていません。 元データのサイズもゼロではありません。
528 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 00:51:40 ] closeしてない
529 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 00:57:29 ] 横から補足 WriterとStreamの両方でcloseしないとダメ disposeでcloseもされるとかMSDNには書いてあるが信じたらあかん
530 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 07:36:16 ] >>529 MSDNに書いてあるとは信じようよ。System.IO.StreamWriterのCloseの実装。 public override void Close() { this.Dispose(true); GC.SuppressFinalize(this); } ただし、GC任せにした場合はDispose(false)になり正常に書き出しされない。 >WriterとStreamの両方でcloseしないとダメ こちらはMSDNになぜか書いてないので両方Close/Disposeしておいたほうが安全だが、 実装上はwriterの元になったStreamは自動的に閉じられる。 ちなみにClose/Disposeは2度以上呼び出しても例外は起きない。
531 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 10:22:35 ] ふうむ…? 昔、StreamWriterとその元のFileStreamをそれぞれusingで括ってcloseなしにしたら 見事にサイズ0喰らったんだけどな usingってスコープから外れた瞬間にdisposeするよな?
532 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 10:32:58 ] 原因は別にあると考えるべきだろう。再現性のある最小限のコードをアップしてみたら。
533 名前:527 mailto:sage [2008/05/23(金) 10:52:54 ] みなさんありがとうございました。 FileStream のほうは Close していない部分があったので Close するようにして様子を見てみます。 WriteAllText のほうは別な原因だと思いますが、 再現性のあるコードをアップするのが難しいので もうちょっと自力で調べてみます。
534 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 22:08:58 ] pc11.2ch.net/test/read.cgi/tech/1208791919/ こちらのスレから誘導されてきました。 Windowsアプリケーション学習用にC#をやろうと思っています。 Microsoft Visual C# 2008 Express EditionをSDKとSQL Serverつきでインストールしました。 しかし何をどう作っていったらいいかわかりません。 プログラム経験はPHPでWebプログラム(こちらは趣味で3年以上やっていて2ch風掲示板ぐらいのものは作れます)、 あとオブジェクト指向の勉強にJavaを少しいじった程度です。 Javaでは簡単なファイル操作から、オブジェクトの継承や例外処理など基本的な勉強しかしていません。 Webプログラムはイメージ的にわかるので、ASP.NETあたりはなんとか理解できると思うのですが、 Windowsアプリケーションとなると右も左もわかりません。 まずは何をやったらいいのでしょうか? とりあえず簡単そうなものとしてメモ帳あたりから作成してみたいと思っています。 また参考になるようなサイトがあれば是非教えてください。
535 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 22:23:00 ] お前は三年間何してたんだ? 分からないことは全部人に聞いてたのか?
536 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 22:45:02 ] 何をしたらいいかわからないを判る様にするプログラムを作ったらいいじゃない
537 名前:534 mailto:sage [2008/05/23(金) 23:03:21 ] >>1 見て安心したのですが、煽りしかこないようなので質問閉めます。 どうもお邪魔しました。
538 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:13:00 ] マジレスするとそんな抽象的な質問は、 恐ろしく掲示板という場所と相性が悪くて、誰も答えたがらない。 図書館とか書店行け。
539 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:25:15 ] >>534 まま。そう気を落とすなよ。 とりあえずフォームにいろいろ貼ってどんなコントロールがあるのか調べてみなさい。
540 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 01:18:29 ] まあ正直なところ 簡単そうなメモ帳 と言ってる時点でWindowsアプリ全般に対する誤解つーか強固な先入観を感じる まずそっから解きほぐすとなると、面と向かわなきゃ無理だ罠
541 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 11:39:04 ] メモ帳って”最低限の機能”が意外と多いきがす
542 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 13:04:08 ] 印刷・検索・置換以外なら比較的簡単だと思うんだけどなあ……。
543 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 13:41:27 ] >>542 Windows標準のメモ帳に実装されている機能を「最低限」と言ってるんじゃないの?
544 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 14:51:47 ] 多い少ないと簡単かそうでないかは違う尺度
545 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 14:53:04 ] てか「見た目メモ帳」で良ければリッチエディットぺたぺたで終わり しかし、そこからが地獄 どう考えても学習向け題材ではない 2chブラウザの方がまだマシ
546 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 00:19:21 ] リッチはいらんだろ
547 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 09:17:10 ] VC++で、ビルドをするとpdbファイルや、ilkファイル、objファイルが生成されるのですが、 これらのようなファイル(exeファイル以外の勝手に生成されるファイル)は配布時には入れなくてもいいのでしょうか?
548 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 09:17:37 ] Tab 押したら隣のコントロールに移動してしまいました>< で詰まってみるとかどうよ
549 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 09:18:40 ] >>547 Debug ビルド → それらのファイルが出来る、配布不可 Release ビルド → それらのファイルが出来ない、配布可
550 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 09:26:17 ] >>549 リリースビルドでもいっぱいでてくるのですが……。 どこかで設定しないといけないのでしょうか?
551 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 11:01:11 ] 見るとこ間違ってないか? デフォルトならDebugとReleaseでフォルダ違うぞ
552 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 11:03:57 ] でもまあリリースでもobjやpdbはできるだろうな。 実際の配布にはexeだけあれば十分(あと必要に応じてランタイムの用意)。
553 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 11:20:33 ] みなさんありがとうございます。 VC#の設定を全部インポートしたから変になったのかな……。 再インストールしてみます。 >>552 objとかpdb生成しないようにはできないのでしょうか? わざわざ手動でするのですか?
554 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 11:44:12 ] 再インストールしましたが、 やはり生成されるようです。 こんなものなのですね……。
555 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 12:06:29 ] まずはobjファイルが何者であるかググレ そしたら何故出来るか理解出来るだろ
556 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 13:06:07 ] 文字列(テキストファイル)をLoadメソッドでXMLDocumentにするような感じで 文字列をHTMLDocument?のような構造化されたオブジェクトに変換する何かってありますか?
557 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 14:39:14 ] 日本語でおk で済ませたい所だが一応エスパーってみるとだ 拡張子が.htmlではないけど中身がHTMLなテキストなファイルをHTMLDocumentに読ませたいと あんまアタマいいやり方じゃないが、WebClientにローカルパス指定して読ませるとかどだろう
558 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 15:36:31 ] >>557 分かりづらくてすみません XMLDocumentだとタグの1つ1つにプロパティのようにアクセスできるじゃないですか そんな感じでHTMLのテキストを読み込んでそういう感じのオブジェクトに変換してくれる何かがないかなと・・・
559 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 15:54:46 ] うわ・・・すみません、HTMLDocumentっていうそのものずばりがあったんですねorz お騒がせしました
560 名前:デフォルトの名無しさん [2008/05/26(月) 23:02:07 ] .NET Frameworkというのが何なのかググってもわかりません。 易しい言葉で詳しく説明していただけませんか?
561 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:23:41 ] クラスライブラリとランタイム
562 名前:デフォルトの名無しさん [2008/05/27(火) 11:53:26 ] 世に出ているデスクトップアクセサリ/マスコットってどういう仕組みで動いているんでしょうか。 いろいろとググってみましたが、よくわかりませんでした。 フォームを透過し、画像を貼り付け?何かヒントをくださると助かります。。
563 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 12:03:05 ] 大丈夫。仕組みがわかったとしても君には作れないから。
564 名前:デフォルトの名無しさん [2008/05/27(火) 12:05:14 ] >>563 そんなことおっしゃらず、おねがいいたします。
565 名前:デフォルトの名無しさん [2008/05/27(火) 13:46:21 ] >>563 自分で作るとか作らないとかは関係ありません。 仕組みを聞いているだけです。
566 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:21:03 ] いもうとデスクトップを実際に作ってみないか?3 pc11.2ch.net/test/read.cgi/tech/1210054407/
567 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 21:08:54 ] enumってどう発音すんの?
568 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 21:19:44 ] 適当に発音すればいい
569 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 22:07:04 ] エネマって読むんだお
570 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 22:07:49 ] 浣腸かよ
571 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:19:18 ] javaのhsqlDBみたいに、フリーで手軽に使えるデータベースは.netにはないのですか?
572 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:41:15 ] mdbファイル access無くても使えるし
573 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 05:41:13 ] >>572 あーあれ直接扱えるんですね。なるほどありがとうございます。 と思ったけど、うちの自宅マシンにaccess入ってないのでデバッグやデータ作るのめんどくさそう・・ ほかになんかないですかね? とりあえずXMLがラクそう?ですかね。
574 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 07:51:23 ] >>573 そういう用途で実質業界標準なSQLiteでいいんじゃね? 対応環境もめちゃ多いし。
575 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 21:35:19 ] SQL Serverでもいいぜ、サービスがいやならCompactとか。
576 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 22:14:17 ] msdnのDatagridviewの説明読んでも全然わかんない
577 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 02:33:04 ] まあなんだ 取り敢えずDBテーブルからフォームにポトペタしてみ?
578 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 11:45:38 ] >>577 表示したいのはDBのレコードじゃなくて自作クラスの配列なんだ DataSourceに突っ込んだら表示されたけど 何も考えずDataSourceに突っ込んだら一行にこんな感じに表示されるけど ┌─┬─┬─┬─┬─┐ │あ│い.│う.│え.│お│ └─┴─┴─┴─┴─┘ それを下のように一行の中に縦に二つのセルを並べたりはできないの? ┌─┬─┬─┐ │ │い│う │ │あ├─┼─┤ │ │え│お.│ └─┴─┴─┘
579 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 17:09:44 ] >>578 DataSourceの形がそんなだから、表示もそんな形になる DataSourceの形を工夫すれば、できなくはない DataGridViewの上では2レコードだけど、 コーディング上ではそれを1レコードとみなす、ってことね
580 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 04:09:46 ] VB2008についての質問です。 My Projectの設定で作った変数の値は、user.configに保存されますが これだと、ビルドしたexeを別のフォルダに移した場合、それまでにユーザーが入力した値がリセットされてしまいます。 それで、ユーザー用の設定ファイルを常にexeと同じフォルダに生成し、常に読み込み・保存でそちらを利用したいのですが これを実現させるにはどのようにすればいいのでしょうか?
581 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 08:43:47 ] それはVistaでややこしい事になるからしない方がいい M$的にはDocuments and Settings内がユーザー個別だから使えと言うこと
582 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 19:09:39 ] うーん、そうなんですか、ありがとうございます 仕方ないので、任意のタイミングでデータを読み書きするボタンを置いておいて、 自分でインポート・エクスポートしてもらう事にします
583 名前:デフォルトの名無しさん [2008/06/08(日) 00:50:04 ] 質問です。SQL server 2005 と VB.NET2005を使用して簡単なソフトを作っています。 実用的なものではなく、VBとSQLの練習みたいな感じです。 SQLから値を取得しようとコードを書いていたのですが、 SqlExceptionはハンドルされませんでした。 ユーザー '' はログインできませんでした。 このユーザーは SQL Server の信頼関係接続と関連付けられていません というエラーがでました。 認証がWindows認証だったので、SQL Server認証にしようしても接続することができません。 このような場合どうすれば良いでしょうか?
584 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 01:31:41 ] >>583 app.configの接続文字列ってわかるかな? わかればそれを晒してみよう。
585 名前:デフォルトの名無しさん [2008/06/08(日) 08:03:43 ] 583です!返答ありがとうございます。 app.configの接続文字列とはどこで見たらよいのでしょうか? ソリューションエクスプローラーにapp.configはでてきているんですが、 プロパティに接続文字列がでてきません・・・・。 初歩的な質問からですみません。
586 名前:デフォルトの名無しさん [2008/06/08(日) 12:44:31 ] DBに繋ぐためにapp.configの中の接続文字列を見て DBと通信してる。とりあえず、app.configの中にDataSourceとかServerとかあると 思うし、それを確認すべき。"(local)"とか書いてると思う。 SQLServerのエディションはなに?
587 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 13:33:24 ] つかDBエクスプローラから一遍ポトペタしとけばその辺自動で作ってくれると思ったが それで出来たDataGridが要らなければ消せばいい
588 名前:デフォルトの名無しさん [2008/06/08(日) 22:02:58 ] 説明不足ですみませんでした。 SQL Server Management Studio Expressを使用しています。 app.configの接続文字列についてですが、 connectionString="Data Source=ユーザー名;Initial Catalog=shuwa;Integrated Security=True" となっています。
589 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 22:03:38 ] ユーザー名を「(local)」にしてみたら?
590 名前:デフォルトの名無しさん [2008/06/08(日) 23:22:59 ] (local)にしてみましたが、同様のエラーメッセージがでてしまいました・・・。 今、VBに書いているプログラムです。 Imports System.Data.SqlClient '接続クラスの作成 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Cn As New SqlConnection("server=(local);Data Source=ユーザー名;Initial Catalog=shuwa;") Dim SQLCm As SqlCommand = Cn.CreateCommand SQLCm.CommandText = "SELECT かな FROM shuwa WHERE 指文字 = 001 " Dim Value As String Cn.Open() Value = SQLCm.ExecuteScalar Cn.Close() MsgBox(Value) End Sub End Class
591 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 23:24:32 ] まず、001って'001' シングルクオーテーションで囲まないと
592 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 23:55:29 ] Valueはstringで大丈夫か? DBNullの可能性はないのか
593 名前:デフォルトの名無しさん [2008/06/09(月) 00:19:00 ] SQLCm.CommandText = " SELECT かな FROM shuwa WHERE 指文字 = '001' " という事でしょうか?エラーは相変わらずです。。 さらに、また疑問がありまして・・・自動生成されるプログラムについてもいまいち理解しきず、今まで、コメント扱い にして作業していたのです。ヘルプや関連サイトを見てはいるんですが、これは必要なんでしょうか? 1 Private Sub Shuwa_Table_1BindingNavigatorSaveItem_Click・・・ 2 Private Sub Form1_Load・・・・でTODO: このコード行はデータを 'ShuwaDataSet._shuwa_Table_1' テーブルに読み込みます。必要に応じて移動、または削除をしてください。 コメントを外すとビルドエラーで1でHANDLES句には、それを含む型または基本型の1つの定義されたWithEvents変数が必要です。 とでています。
594 名前:デフォルトの名無しさん [2008/06/09(月) 00:32:54 ] もう、そのままコードうpしちゃいなよ〜
595 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 00:56:05 ] っ [教えてgoo] もう来んな。
596 名前:デフォルトの名無しさん [2008/06/09(月) 00:58:01 ] うまく伝えられずすみません。以下がコードになります。 Imports System.Data.SqlClient '接続クラスの作成 Public Class Form1 '自動生成されるプログラム() Private Sub Shuwa_Table_1BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Shuwa_Table_1BindingNavigatorSaveItem.Click Me.Validate() Me.Shuwa_Table_1BindingSource.EndEdit() Me.Shuwa_Table_1TableAdapter.Update(Me.ShuwaDataSet._shuwa_Table_1) End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: このコード行はデータを 'ShuwaDataSet._shuwa_Table_1' テーブルに読み込みます。必要に応じて移動、または削除をしてください。 Me.Shuwa_Table_1TableAdapter.Fill(Me.ShuwaDataSet._shuwa_Table_1) End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Cn As New SqlConnection("server=(local);Data Source=ユーザ名;Initial Catalog=shuwa;") Dim SQLCm As SqlCommand = Cn.CreateCommand SQLCm.CommandText = " SELECT かな FROM shuwa WHERE 指文字 = '001' " Dim Value As String Cn.Open() Value = SQLCm.ExecuteScalar Cn.Close() MsgBox(Value) End Sub End Class
597 名前:デフォルトの名無しさん [2008/06/09(月) 01:00:19 ] ttp://www.atmarkit.co.jp/fdotnet/basics/adonet02/adonet02_02.html ここ読んでみそ
598 名前:デフォルトの名無しさん [2008/06/09(月) 01:02:47 ] 連続すみません。 592さん!StringをSqlDataReaderに変えたところ、ログインエラーはでなくなりました! ありがとうございます!!
599 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 01:11:20 ] エラーメッセージちゃんと読んでたのか?
600 名前:デフォルトの名無しさん [2008/06/09(月) 16:13:12 ] 質問させて下さい。 C#にて、.NET Framework 2.0にServis Packが適応済みであるかを調べたいのですが 上手くいきません。 開発環境は Visual Studio 2005 開発環境OS Windows XP Pro SP3 インストール済みの.NET Framework ・2.0 ・2.0 lang ・2.0 SP1 ・2.0 SP1 lang System.Runtime.InteropServices.RuntimeEnvironment.GetSystemVersion() にてバージョンの取得を試みたところ、SP1がインストールされている環境下でも取得されるバージョンは「2.0.50727(SP無し)」 教えてエロい人!
601 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 16:37:39 ] バージョンの下にビルド番号があるみたい 2.0.50727.832 2.0.50727.1433 エライ人じゃないから、これ以上はわからん
602 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 22:30:51 ] ループを使用する場合、変数の宣言はループの外側ですべきですか、 それとも内側でしょうか。 Dim s as String For i as Integer = 0 to 10 s = Cstr( i ) & "回目" Console.writeline(s) Next か、 For i as Integer = 0 to 10 Dim s as String = Cstr( i ) & "回目" Console.writeline(s) Next ということです。前者の方が領域の使い回しにはなりそうですが、 どこかでGCの為には毎回宣言すべきというのも見た気がして…
603 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 22:33:25 ] Objectdatasource の insert メソッドをコードから呼んだ時は identity の値って取得出来るの? insertメソッドってint型しか返さないし select メソッドを直後に呼んだら正しい値が返って来るとは限らないような。
604 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 00:47:59 ] >>602 stringをGCw
605 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 05:15:42 ] >>602 変数のスコープは小さく
606 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 06:08:16 ] >>602 前者でも文字列本体の領域が使いまわされるということは全くないから、 安心しろ。どっちも同じようなもんだ。 というわけで、変数の有効範囲が小さい後者がよしとなる。
607 名前:デフォルトの名無しさん [2008/06/10(火) 12:22:38 ] >>601 ありがとう!エロすぎるよ!!!!1111
608 名前:デフォルトの名無しさん [2008/06/10(火) 12:27:20 ] >>601 ありがとう!エロすぎるよ!!!!1111
609 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 13:29:10 ] Thread の扱いについて。 Thread t = new Thread(new ThreadStart(worker)); t.Start(); void worker() { : } などとしてスレッドをスタートさせ、worker が終了するとスレッドも消滅するそうですが、 インスタンス t はどうなるんでしょうか。t はまだ有効で、t.Start() でまたスレッドをスタート させることができるのでしょうか。 毎回インスタンス作り直してもガベージコレクタが回収してくれるんでしょうけど、 ちょっとこの辺が気にかかってます。
610 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 13:53:16 ] まず試してみればいいじゃない
611 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 15:05:18 ] >>602 領域云々では全く差はない。 よってスコープを広げるメリットはない。
612 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 15:06:35 ] >>609 インスタンスは残ってるけど再起動はできない。 よってほっとくのが吉。
613 名前:609 mailto:sage [2008/06/10(火) 15:09:56 ] >>610 そのつもりではいるんですが、今は手が回らないんで、先行して質問してみました。 また、再スタートできたとして、それでよいのか単なる偶然かも気になるところなんですよね。 …て書いてると回答が。 >>612 ありがとうございます。では再起動させる時は作り直すようにします。 どうも Win32 でやってた頃の癖が染みついてて、作ったインスタンス 後始末しないと気持ち悪かったりするんですよね。
614 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 07:00:35 ] 一つのFormにTabControlを用い、複数のページをタブで切り替えられるようにしています。 各タブにはスピンボタンがいくつかあり、そこに入力された値はpropertybindingで記録しています。 なのですが、起動時に一番初めに表示されるタブのページに、全タブのスピンボタンの値の合算を 表示するようにしているのですが、これが起動時は正しく合算後の値が表示されているのですが 一度でも初期表示のページのスピンボタンを操作すると、合算の値が起動後に一度でも開いたタブのみの 合算値になってしまいます。 ちょっと分かりづらい説明だと思いますが、要は各タブに貼り付けられたスピンボタンのvalueの値が、 一度でもそのタブを開かないとMy.Settingsから書き戻されないようなのです。 どうも、起動した瞬間はvalueに関連づけたMy,Settingsの値が入っているようなのですが 起動→操作可能になるまでの間にvalueの値が0になっているようなのです。(My.Settingsには値が保持されている) 0にするような操作は一切行っていないのですが、propertybindingの値を読み込み保持させるには、どうすればいいのでしょうか? もう5時間くらいずっと悩んでいるのですが、何をしても全く解決できません。
615 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 10:08:38 ] タブコントロールって最初の奴以外は、選択されない限りインスタンスが作られないんでなかったか 回避策としては、タブの親玉のPreInit?だかで一旦非表示にして、全タブを前面に持ってくる もっとスマートなやり方あるかもだが
616 名前:614 mailto:sage [2008/06/12(木) 03:30:42 ] >>615 ちょっと不格好だとは思いますが、Form1_Loadの中で Me.TabControl1.SelectedTab = TabPage2 Me.TabControl1.SelectedTab = TabPage3 という風に一度全てのタブに切り替えるようにすると、初めから値が入った状態で操作できるようになりました。 ありがとうございました。
617 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:29:39 ] visualbasic2008ですが、初期状態でPictureBoxに画像Aを表示させておいて、 クリックすると画像Bに数秒だけ切り替えて音声ファイルを再生し、また画像Aに戻るプログラムを作りたいのですが Dim strm As System.IO.Stream = My.Resources.se01 Dim player As New System.Media.SoundPlayer(strm) PictureBox1.Image = My.Resources.B player.Play() PictureBox1.Image = My.Resources.A という風に記述すると上手く画像が切り替えできません。 player.Play()の後にsleepを入れてみましたが、どうも画像を切り替える前に音再生の所で処理が止まっているようです。 要は、 ttp://saionji.net/hozon.htm のフラッシュのような事がしたいのですが、画像を上手く切り替え、かつマウスの連打にも対応させるにはどうすればいいのでしょうか?
618 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 17:10:26 ] 考え方を切り替えて,ゲームみたいに自分でループ回してフレーム単位でやった方が簡単だよ もしくはWPF使う
619 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:21:17 ] DirectX場合、GDI関数のようにGUIスレッドからしか操作できないという制限はあるの? 別に出来るなら自分でループまわすのが一番自然なんだけどな。
620 名前:デフォルトの名無しさん mailto:sage [2008/06/30(月) 22:49:53 ] webサイトを作ろうとやっているわけなんですが、 アップの後に確認してみたところ、どうしても Parser Error Message: Could not load the assembly 'App_Web_default.aspx.cdcab7d2'. Make sure that it is compiled before accessing the page. と出てきてしまい <%@ page language="C#" autoeventwireup="true" inherits="_Default, App_Web_default.aspx.cdcab7d2" %> が悪いと出てくるわけなんですが、どうすればいいのか理解ができない状況です・・・ もし、ここが悪いんじゃね?っていうのがあれば教えていただければ幸いです。
621 名前:デフォルトの名無しさん mailto:sage [2008/06/30(月) 23:21:24 ] ム板にもASP.NETスレはあるから行ってこいよ。 どうせマルチなら何ヶ所しても同じだろ。
622 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 15:07:13 ] C++のマネージ配列を強制的に開放することはできないのでしょうか?
623 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 17:11:11 ] 参照をはずしてあとは祈れ
624 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 17:23:26 ] 解放を制御したかったらアンマネージドでやれ
625 名前:デフォルトの名無しさん [2008/07/10(木) 03:15:04 ] C++とかで直接書くのではなく、.NETをつかう利点てなに?
626 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 05:27:56 ] マイクロソフトは.NETにユーザー押し込めて囲いたいだけだろな それに乗るか乗らないかだよね
627 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 11:49:15 ] C++は文法が難しすぎて
628 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 12:18:08 ] C++と.NETの2者選択ってのじゃなくて済み分けてるけどね。 .NETは生産性が高く、実行コストが高い。 C++は生産性が低く、実行コストが低い。 十分テストが出来て広く多数に使ってもらう用途にはC++。 WEBや企業内システムのような用途には.NETが向いてる。
629 名前:デフォルトの名無しさん [2008/07/12(土) 01:08:58 ] array<Byte>の全体にmemset相当のことをしたいんだけど、どうすればいいの? ループで回して1つずつセットした → かっこ悪い pin_ptrしてmemsetした → 納得いかん ForEachした → 大げさ過ぎる
630 名前:デフォルトの名無しさん mailto:sage [2008/07/12(土) 02:25:49 ] >>629 かっこ悪いと一緒なんだが static class Util { public static T [] setAll<T>(this T [] ar, T val) { for (int i=0; i<ar.Length; i++) ar[i] = val; return ar; } } double [] ar = new double[10].setAll(123.45);
631 名前:629 mailto:sage [2008/07/12(土) 15:36:08 ] やっぱし、そういう手しかないのね。 0にしたい時だけはClearでいいようだけど。 初期状態を0xffにする時とかがねぇ。
632 名前:デフォルトの名無しさん [2008/07/12(土) 18:04:01 ] System.IO.BinaryReaderで開いたファイルをシークさせるにはどうすればいいのだろう。 素直に考えるとhoge.BaseStream.Seek()なんだろうけど、msdnヘルプ見たら 注意:読み取り中または BinaryReader の使用中に基になるストリームを 使用すると、データの損失や破損の原因になることがあります。 たとえば、同じバイトが 2 回以上読み取られたり、バイトが読み 飛ばされたり、文字の読み取りが予期しない結果になることがあります。 って書いてあるからちょっと不安。
633 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 07:49:32 ] >>631 C++でも構造体の初期化にはmemset使うなって流れになってるけど、 配列はどうなんだろ。スレ違ですまそ。
634 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 11:43:59 ] >>632 シークが必要になったら、BinaryReaderは破棄して、元になったストリームをシークする。 んで、そのストリームから別のBinaryReaderを作って完了。 FileStream fs( "hogehoge", FileMode::Open); BinaryReader br1( %fs); // ここでbr1から好きなだけ読む fs.Seek( 0, SeekOrigin::Begin); // 先頭にシーク BinaryReader br2( %fs); // ここでbr2から飽きるまで読む
635 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 11:45:13 ] NetworkStreamのようにSeekできないのはどうすればいい?
636 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 11:51:37 ] メモリなりファイルなり一度どこかに蓄える
637 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 11:55:10 ] >>633 C++はプログラマの責任においてできることの範囲が広いわけで、 パフォーマンスや保守性など、各種要因を天秤に掛けて決めるべきかと。 C++/CLIは.NETの制限の中にあるんで、基本的にはmemsetは御法度なんだけど、 せめてArrayにFillメソッドがあってもいいような気もする。
638 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 22:40:50 ] >>633 ネイティブC++でも構造体の初期化にmemset非推奨ってーのは、 多分アライメントの関係で下手をすると尻切れになりかねないからだと思われ 例えば合計6バイトの構造体だと、実際のサイズは8バイトになると思うが この構造体を配列にして初期化しようとすると、sizeofの実装によってはズレが生じかねない ましてや.NETだと間に何が挟まってるか知れたもんじゃない スレチだからこの辺で
639 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 23:11:10 ] 「思われ」みたいなヲタク口調の奴って気持ち悪いな。 なんだよ「思われ」って。 想い想われかw
640 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 01:11:15 ] と、何にでも噛み付く狂犬がキャンキャン吠えてます
641 名前:デフォルトの名無しさん [2008/07/14(月) 13:28:50 ] C言語の"%5d"に相当するToStringのフォーマット指定はなんて書くざますか? "%05d"相当にしかならんのですが。
642 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 14:03:06 ] .PadLeft(5) つなぐとか
643 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 14:05:40 ] ググったらわかりました。 ToStringじゃできないのでString.Formatを使うらしい。 つか、MSDN分かりにくすぎだろ。
644 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 21:14:15 ] >MSDN分かりにくすぎだろ。 そういう感想の人もいるんだな。 いや別に煽ってる訳じゃなないし、たぶん俺が麻痺しちゃってるんだと思うけど すくなくとも書式指定に関してはそういう不満は覚えなかったな。 だいたい>>641 みたいな需要って(DOSの時代ならともかく)いまどきあまり ない気がするよ。
645 名前:デフォルトの名無しさん mailto:sage [2008/07/15(火) 06:22:12 ] WriteLineやStringFormatで使える書式 位置 ( , 桁数 ) : フォーマット ToStringで使えるのはファーマットの部分だけ 漢字等の幅広文字も1文字で数えるから総桁数はあんまり使わないよね。
646 名前:デフォルトの名無しさん mailto:sage [2008/07/15(火) 09:44:50 ] ToString().PadLeft(5) は無視か。
647 名前:デフォルトの名無しさん mailto:sage [2008/07/15(火) 19:46:28 ] 他に手がないならともかく、さすがにそれはなぁ。
648 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 21:43:53 ] すいません質問です。 StringのReplaceを大文字小文字を無視してすべて置換する方法はありませんかね?
649 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 22:02:03 ] ない
650 名前:デフォルトの名無しさん mailto:sage [2008/07/21(月) 20:11:57 ] ないな…あってもいいと思ったんだが。 手抜くなら、Regex.Replace関連で代用かな…
651 名前:デフォルトの名無しさん [2008/07/22(火) 23:34:14 ] セットアップウィザードを使ってインストーラーを作成しています。 ReadMe.txtのショートカットをプログラムメニューに配置したいのですが、アイコン関係がよく判りません。 手順としては、 アプリケーションフォルダにReadMe.txtを追加する。 ReadMe.txtのショートカットを作成する。 このショートカットをユーザーのプログラムメニューに配置する。 (プロパティはいじっていません。) 実際にインストールしてみると、問題なくReadMe.txtは表示されるのですが、アイコンが、%APPDATA%\Microsoft\Installer \xxx.exeにあるアイコンが表示されます。 他のプログラムメニューに登録されているReadMeのように、txtファイルに関連付けられたアプリケーションの アイコンが表示させたいのですが、どこをいじればよろしいでしょうか? よろしくお願いします。
652 名前:デフォルトの名無しさん [2008/07/23(水) 15:10:07 ] Microsoft.Office.Tools.ExcelとMicrosoft.Office.Interop.Excelの違いがよくわかりません。 それを知りたいのと、 単純にCUIでExcelファイル(.xls)を読み込んでバイナリデータにコンバートしたい場合、 どちらを使えばいいのでしょうか?
653 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 17:55:38 ] Visual Basic 2008 Express Editionをインストールして 新しくプロジェクトを作成してみると、以前までコードが自動生成されていたのが 生成されなくなってしまいました。 ex) Public Class Form1 End Class のような感じでしか出力されていない状態です。 何か設定を弄らないといけないのでしょうか?
654 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 18:41:07 ] >>653 今頃それに気づくということは以前というのはVS2002とか2003なのか? プロジェクトのすべてのファイルを表示でForm1.Designer.vbが表示されるからそこにいろいろ入ってる。 Sub Newを書かないときにInitializeComponent()を誰が呼んでるのだという問題だったらまた話が違う。
655 名前:デフォルトの名無しさん mailto:sage [2008/07/26(土) 21:21:10 ] >>654 以前に使用していたのは2005です。 問題の解決ができまして 原因は私の勘違いでボタンオブジェクト作成⇒自動挿入と思っていました。 ボタンオブジェクトでダブルクリックしないといけなかったという… お答えくださりありがとうございました。
656 名前:デフォルトの名無しさん mailto:質問 [2008/08/09(土) 15:06:32 ] 質問です。 フォルダAppの中にBase.dllとModA.dllが存在しています。 このフォルダのdllはすべてVB.NET(1.1)で書かれており、 Base.dllの中には継承フォームの親クラスなど、 ModA.dllの中にはBase.dllを利用(参照)して作った実際の画面クラスなどがあります。 Base.dllは頻繁に更新されており、 ModA.dllの参照に設定されているバージョン番号よりもかなり新しい状態です。 現状、この内部だけの動作なら問題なく動いています。 現在、新しいWindowsアプリを作成中で、 C#で作ったアプリからModA.dll内の画面クラスを System.Reflectionを使用して動的に呼び出したいのですが、 Base.dllを継承したフォームを呼び出そうとした瞬間に 「Base.dllが見つかりません。」というExceptionを投げられてしまいます。 ・Base.dllとModA.dllは必ず同じAppフォルダに入っている ・Appフォルダそのものの位置は移動可能 ・新アプリでは、Appフォルダの位置をユーザーに指定させる ・新アプリの位置も移動できる方が望ましい。 という条件で、上記のExceptionが出ないようにすることは可能でしょうか? 助言をお願い致します。
657 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 19:36:19 ] >>656 いろいろ書いてる割には見事にポイントをはずして要領を得ないね。 とりあえず言えることは、「出来るはず、やり方が悪い」
658 名前:656 mailto:質問 [2008/08/09(土) 20:31:55 ] >>657 では、正しいやり方を教えてください。
659 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 20:53:21 ] それは657にエスパーであれっていってるのと同義だと思うけど
660 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 20:57:54 ] C#が1.1なのか他のバージョンなのか。 リフェレクションはAssembly.LoadFromを使っているのかそれとも別の方法か? リフェレクションで読み込んで呼び出している部分のソースをさらす。 VBで同じ手法のリフレクションを使って実現できているのか。 「Base.dllが見つかりません。」じゃなくてスタックトレースを出せ。 E伊東さんとお知り合いか? とりあえず、このくらいは書いとけよ。
661 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 22:44:55 ] リフェレクションえろいな
662 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 22:47:14 ] >>656 無理。 依存してるライブラリが更新されたらコンパイルしなおす必要がある。 さもなくば、動的にクラスを構成しないといかん。
663 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 23:16:46 ] 厳密名を使ってるなら話は別だがPublicKeyToken=nullのときはVersionのチェックはない。
664 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 20:55:34 ] LoadFromが原因だろう。 厳密名とかの話じゃない。 LoadFromで読んだ場合、自動的に同じフォルダのBase.dllを 読んだりはしてくれない。 AssemblyResolveなどで自分でハンドリングして読み込むか、 事前にBase.dllもLoadFromで読んでおくことはできる。 でも、アプリのフォルダを自由に指定とかなってくると、 たぶんどっかでトラぶってにっちもさっちも行かなくなると思うぞ…
665 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 19:50:24 ] フォーム1で使っている変数(数字の1〜100)を フォーム2にとばして使いたいのですが、どうすればいいのかわかりません。 自分で調べた所、プロパティを設定すればいいとのことでした。 ttp://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard47.htm ここを参考にして色々とやってみたのですが、 どうもうまく実際に使っているXの値を別のフォームに送れません。 どうか、ヒントをください。
666 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 20:13:58 ] [ヒント] プログラミングに王道なし。 いやまじめな話、そのレベルから掲示板で解説しろってそりゃ無理あるぞ。
667 名前:656 mailto:質問 [2008/08/11(月) 22:59:52 ] >>660 C#は1.1です。 try { Assembly a; a = Assembly.LoadFile("C:\App\ModA.dll"); foreach(Type type in a.GetTypes()) { if(type == typeof(インターフェース)) { return true; } } } catch(Exception e) { MessageBox.Show("エラー発生"); } ソースはこんな感じです。スタックトレースってのはよく分かりません。 ごめんなさい。 >>664 Base.dllを先に読み込めばいいんですね。 明日試してみます。
668 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 23:05:34 ] ってしかもLoadFileじゃねーかよ
669 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 23:28:49 ] >a = Assembly.LoadFile("C:\App\ModA.dll"); もしかして〜 a = Assembly.LoadFile(@"C:\App\ModA.dll"); とか a = Assembly.LoadFile("C:\\App\\ModA.dll"); で直ったりして
670 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 23:44:47 ] まさかね まあBase〜っていってるから違うと思うけど。 しかしなー、LoadFromやLoadFile系はトラブるんだよなー できればフォルダを自由に指定ってのはやめた方が無難だけどなー
671 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 23:50:07 ] LoadFileはいろいろ制限が多いし、 LoadFromは署名がないと相対パスしかダメなんだっけ。 やっぱ構成ファイルを書きまくるとか。
672 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 00:25:37 ] MSDNから >LoadFile は、LoadFrom メソッドとは異なり、ファイルを LoadFrom コンテキスト内には読み込みません。 >また、読み込みパスを使用して依存関係を解決することもできません。 ModA.dllのあるディレクトリから依存のあるBase.dllを探してくれない
673 名前:656 mailto:質問 [2008/08/12(火) 00:41:21 ] >>669 書き込みミスです。@付きになってます。すみません。 LoadFromにすれば直るのでしょうか? >>664 の先に読み込むというのが気になるので、 それをまず試してみようと思います。 どちらにしても今すぐ確認はできませんので、 確認し次第再度書き込みます。 いろいろ助言をありがとうございます。
674 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 00:45:38 ] >>664 はLoadFileの制限ぽい感じだな
675 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 00:53:41 ] C#でアプリ作ってるのですが、.NET Framework入ってない環境で起動した場合、 強制終了になる前に任意のメッセージ出して終了するにはどうすればよいでしょうか?
676 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 08:07:28 ] 環境を調べるネイティブアプリ作って、入って無ければエラー出して終了、 入っていればC#アプリを起動するとか。
677 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 13:27:53 ] >>676 そのつもりでDOSスタブみたいな形で埋め込めればいいなぁと あれこれ模索してたりしてたんですが、やっぱ分けるしかないでしょうか。
678 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 14:33:44 ] >>677 先頭のほうにmscoree.dll::_CorExeMainを呼ぶjmp命令があるから、 その飛び先を変えてやればいいと思う。 ちなみに、XP以降のWindowsローダーはマネージドアセンブリを読み込んだ場合、 このネイティブなスタブコードを実行せずに、_CorExeMainから直接実行し始める。
679 名前:678 mailto:sage [2008/08/12(火) 15:15:17 ] 何が言いたいのかよく分からない文章になってたけど、 要するにXP,Vistaあたりでは必要なバージョンのランタイムがないときに、 実行前に任意のメッセージを出すことはできない言うことです。 スタブコードを書き換えるのはやったことがないけど、そこに感染するウイルスがいくつかあるんで、 もしかしたらアンチウィルスソフトウェアに文句言われる可能性はあるかもしれないですね。
680 名前:656 mailto:sage [2008/08/13(水) 00:01:05 ] LoadFromを使用して、先にBase.dllを読み込んでおけば 無事動くようになりました。 新たな問題はいくつか出てくるようになりましたが、 今のところ少しずつ解決していけてるので大丈夫だと思います。 丁寧な回答ありがとうございました。
681 名前:DD mailto:sage [2008/08/20(水) 13:29:19 ] ASP.NET2.0のGridViewで質問があります。使用言語はC#です。 1つの画面に以下のコントロールがあります。 ・TextBox (TextBox1) ・Button (Button1) ・GridView (GridView1) ・SqlDataSource (SqlDataSource1) TextBox1に検索する主キーの値を入れ、Button1をクリックすると、 その主キーの行の背景色を変更する、といったことをやりたいと思っています。 GridView1のSelectedRowStyleのBackColorに適当な色を指定して DataBoundイベントでGridView1.DataKeys[i].Valueをループで検索。 見つかったらGridView1.SelectedIndex = iとすることで ほぼやりたいことは実現できています。 この状態でGridView1のAllowPagingをTrueに設定し、 Button1クリック時に、検索してヒットした行のあるページに 自動的に切り替えるにはどのようにすればよいのでしょうか? 現状のコードでは、現在のGridView1のページしか検索出来ないためうまく出来ません。 どなたかご教授願えないでしょうか?
682 名前:デフォルトの名無しさん mailto:sage [2008/08/22(金) 14:15:56 ] >>681 PageIndexで表示したいページを設定できる
683 名前:デフォルトの名無しさん mailto:sage [2008/08/23(土) 09:19:12 ] VC# 2005とWindows Forms(.Net Framework 2.0)でOfficeライクにお絵かきできるコントロールを探しています。 実はVisioのDrawing Control(ActiveXベース)がやりたいことを網羅しているのですが、 アプリケーションを動作させる全ての端末にVisioを入れなければいけないので 泣く泣くあきらめました。 www.c-sharpcorner.com/UploadFile/mgold/VisioInDotNet12032006222024PM/VisioInDotNet.aspx 実行環境が無料で何か良いコントロールをご存知の方は お教え頂けますでしょうか。よろしくお願いします。
684 名前:デフォルトの名無しさん mailto:sage [2008/08/23(土) 22:54:37 ] VC++2005EEとForm(.NET2.0)で作ったアプリを配布したいのですが どのような配布形式が一般的でしょうか? VS.net2003bootstrapper plug-inのようなものがあれば使いたいです。
685 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 02:37:40 ] .NET2.0はかなり普及してるし、そのままでも良いとは思う。 必要ならこの辺を参考に ttp://dobon.net/vb/dotnet/deployment/dotnetbootstrap.html
686 名前:DD mailto:sage [2008/08/25(月) 18:12:57 ] >>682 PageIndexで表示したいページを設定できることは分かっております。 問題なのは、DataBoundイベントでGridView1.DataKeys[i].Valueをループで検索した場合、 現在のPageIndex内のデータしか検索できないのです。 やりたいのは、全てのページを検索し、ヒットしたらそのページを表示することです。 DataBoundイベントではなく、何か別のイベントで検索する必要が あるのではないかと思うのですが、 そのイベントが何なのかが分かりません。 どのようにしたら良いのでしょうか?
687 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 22:01:53 ] GridViewではなく、DataSource自体をぐるぐる回って調べていくとか。 泥臭いかw
688 名前:DD mailto:sage [2008/08/27(水) 13:39:15 ] >>687 例えばDataSource自体をぐるぐる回って調べるとしたら、 どのイベントを捕まえればよいんでしょう? 実はそれをやろうとしてみたんですが、どのイベントで処理すればよいのか 分からなくて・・・。
689 名前:デフォルトの名無しさん mailto:sage [2008/08/27(水) 23:57:48 ] 一端DataViewに取って、後はそれ使えば? 常識的に考えて並びは一緒だから、現在のページ×1ページあたりの行数+indexで行けるハズ
690 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 10:34:42 ] >>687 泥臭いも何もそれが正しいやり方だと思うんだが。 >>688 イベントって、Button1のクリック以外に何があるん? GridViewのDataSourceにセットしたものがDataTableオブジェクトだった場合、 Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound If e.Row.RowIndex = -1 Then Return If e.Row.Cells(1).Text.Contains(Me.TextBox1.Text) Then ' 検索ワードが入っている行の背景を緑に e.Row.BackColor = Drawing.Color.LightGreen End If End Sub Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click Dim rIndex As Integer Dim tbl As DataTable = CType(Me.GridView1.DataSource, DataTable) For rIndex = 0 To tbl.Rows.Count - 1 If tbl.Rows(rIndex)(1).ToString().Contains(Me.TextBox1.Text) Then ' 検索ワードが見つかったらループから抜ける Exit For End If Next ' ページインデックスを算出 Dim pIndex As Integer = rIndex \ Me.GridView1.PageSize ' GridViewに算出したページインデックスをセット Me.GridView1.PageIndex = pIndex ' 適応実行 Me.DataBind() End Sub
691 名前:DD mailto:sage [2008/08/28(木) 18:27:18 ] >>689 一端DataViewに取る、その方法が分からないんです(T_T) そこのところ、ご教授願えないでしょうか。 >>690 Dim tbl As DataTable = CType(Me.GridView1.DataSource, DataTable) とありますが、当方C#なもので、よく意味が分かりません(^^ゞ C#で書くと DataTable tbl = (DataTable)GridView1.DataSource; なのかな、と思って試してみましたが、GridView1.DataSourceがNULLでうまくいきませんでした。
692 名前:DD mailto:sage [2008/08/28(木) 18:42:28 ] >>689 >>690 おかげさまで解決いたしました! 以下のコードでDataTableに取り出すことが出来ました。 DataView dv = (DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty); DataTable table = dv.Table; 丁寧な解説、どうもありがとうございました。
693 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 20:47:23 ] C#で作ったプログラムからExcelを操作するプログラムを作りたいのですが、 Excelを操作する方法についてインターネットで調べてみると どうやらExcelのバージョンによって参照設定するCOMってやつのバージョンが違うみたいです。 今作ってるプログラムをそのまま実家にメールで送って使ってもらう予定なのですが、 COMのバージョンが違うと正しく動かない可能性もあるのでしょうか? 使う予定の機能はExcelを読み込んで決まった位置に値を書き込むぐらいなんですが、 不具合を起こしにくいコツなどがあれば教えてください。
694 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 21:33:36 ] > 不具合を起こしにくいコツ .NETでOfficeのCOMを利用しないというのが一番の対策じゃないかw xlsファイルなどを直接操作できるライブラリを使うのがお勧め
695 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 21:40:40 ] >>694 すみません、できれば.NETを使用することを前提にお願いします。 COMって、自分で作ったdllみたいにReflectionで動的に探してきたりはできないんでしょうか?
696 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 22:17:30 ] それはできる。 でもメンバアクセスまで全部リフレクションでやる羽目になる。 悪いことは言わないからせめてVB.NETにしとけ。
697 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 22:59:19 ] >>696 ありがとうございます。 とりあえずGoogleってた結果、 Type.GetTypeFromProgID()というのを見つけたので実装はできそうです。 VBを1から勉強するかは後で考えるとして、 COMを動的参照するときって、普通はどういうクラスのどういうメソッドで参照先dllを探すのですか? 今までは自分で作ったdllを動的参照することしかしたことがなかった上、 インターフェースは静的に参照してそれを実装したクラスをReflectionで見に行く ってことしかしたことがないので、COMの一般的な探し方を教えてくれませんか? 名前はともかくとして、COMのdllがある場所ってどうやって調べるんですか?
698 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 23:11:05 ] >>697 レジストリ(HKCR)を探せば見つかるが、プログラミング目的では普通やらない。 みんなProgIDとかClsIDとかで識別するから。 それに、DLLなら直接読み込んでオブジェクトを作ることも可能だが、 EXEに実装されているとどの道COMのAPIを介さないといけない。
699 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 00:19:01 ] >Type.GetTypeFromProgID() を使うんだからおかしなことを考える必要はない。 問題は、インターフェイスを参照できないから、 メソッド呼び出しとかまですべてリフレクションでやらなきゃならないこと。
700 名前:DD mailto:sage [2008/09/02(火) 11:03:35 ] >>697 とりあえず、VC#2005なら、ソリューションエクスプローラーの参照設定右クリックから 参照の追加。 COMタブを選択して、Microsoft Excel XX.X Object Library を選択して OKボタンクリック。 これで一応使える。 COMオブジェクトは最後に必ず開放。こんな感じでどうでしょう。 /// <summary> /// COM オブジェクトの参照カウントを解放する /// </summary> /// <param name="comobj">COMオブジェクト</param> private void ReleaseComObject(Object comobj) { // COMオブジェクトだったら if (comobj != null && System.Runtime.InteropServices.Marshal.IsComObject(comobj)) { try { System.Runtime.InteropServices.Marshal.ReleaseComObject(comobj); } catch { } finally { comobj = null; } } }
701 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 12:14:10 ] >>700 それだと複数バージョンのExcelに対応できないだろ>>693 読め。
702 名前:DD mailto:sage [2008/09/02(火) 13:11:52 ] >>701 あ、その通りですね(^^ゞ 以前Excelを扱った時はSpreadsheetGearを使ったので COMを使った操作は良く分からないです。。。 サードパーティのライブラリを使用したくないとのことですので これは使えませんね。 お役に立てずm(__)m
703 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 15:25:27 ] > comobj = null 意味ないじゃんw
704 名前:DD mailto:sage [2008/09/02(火) 15:26:49 ] >>703 ですね(^^ゞ はった後私もそう思いました。
705 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 19:07:53 ] >>701 バイナリになってしまえば問題ないんだよ。 「複数バージョンのExcelに対応できない」のはあくまで開発環境のみ。 一部バージョンが違うと例外が発生するメソッドがあったりするけど、 そこだけ個別に対応すれば問題ない。
706 名前:697 mailto:sage [2008/09/02(火) 21:11:51 ] いろいろなご解答ありがとうございます。 今回は複雑なエクセル操作をするわけではないので、 すべてリフレクションでやるクラスを作って、それを使いまわそうと思います。 ありがとうございました。
707 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 21:33:39 ] VBでクラスライブラリ作った方が簡単だと思うけどな。
708 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 23:26:51 ] >>705 え?まじで? うっそーん?
709 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 20:20:35 ] VBAではセルの文字列の色をCellsのCharactersで調べられるのですが .NETではどうればいいのでしょうか? msdnにはRangeにCharactersがあるのですが 書いてみると定義がありませんと エラーがでます。 using Excel = Microsoft.Office.Interop.Excel; var xls = new Excel.Application(); var book = xls.Workbooks.Open(略 var rng = (Excel.Range)book.sheet.Cells[1, 1]; こんな感じでRangeクラスを取得してます。 ちなみにVS2008SP1を使っています。
710 名前:DD mailto:sage [2008/09/08(月) 10:36:38 ] >>709 rng.Font.Color で取得できるのでは?
711 名前:709 mailto:sage [2008/09/08(月) 19:52:53 ] >>710 すいません、質問の内容を微妙に間違えてました。 取得したいのは文字列のn番目の文字の色なんです。 Characters(4, 1).Font.ColorIndex と書くとVBAでは4文字目の色の取得や設定が 出来るんです。 それだと多分セルに設定された文字列の色になるんですかね?
712 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 21:09:12 ] net導入するときはVB6を残したままでもいいですか?
713 名前:DD mailto:sage [2008/09/09(火) 11:55:55 ] 現在Visual Studio 2005 C#で以下のようなことを実現したいと考えております。 DropDownList(値にはIDが入っている)で選択した項目に一致するレコードをGridViewに表示する。 DropDownListにはALLという項目があり、これを選択すると すべてのレコードを表示する。 このようなことをやりたいのですが、どうやったらいいのか分かりません。 現状ではALLを静的に追加しており、その値は0となっています。 また、GridViewのデータソースにSqlDataSourceを割り当て、 SqlDataSourceのSelectParameter(ID)にDropDownListの SelectedValueを設定し、ALL以外の項目を選択した場合は 正常に動作しています。 どなたかご教授ください。
714 名前:DD mailto:sage [2008/09/09(火) 12:06:29 ] 自己解決しました。 bunise.seesaa.net/article/91995844.html このページを参考にしてやってみてはいたのですが、なかなかうまくいかず 質問させていただきました。 結局は、SqlDatasourceのCanselSelectOnNullParameterをFalseにするのを 忘れていただけでした(^^ゞ お騒がせいたしました。
715 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 23:36:55 ] .NET2005環境を利用しています。 Private Sub ShowMsgBox(ByVal PromptText As String, Optional ByVal Type As Integer = 0, _ Optional ByVal Title As String = "") に対して、配列CmdArgsの1番目(0番目ではない)〜3番目の要素を 引数として渡したいのですが、2番目・3番目の要素は省略される可能性があります。 呼び出しについて例としてPerlで書くと、「$ShowMsgBox(CmdArgs[1..$#CmdArgs]);」のように 不定要素数の配列をインデックス1から最後まで指定して投げることが出来ますが、 VBではどのような形で呼び出せばいいでしょうか。 要素数を判別して、条件毎に呼びだし方を変更するしかないでしょうか。
716 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 23:58:56 ] >>715 ShowMsgBox(ParamArray args as Object())でも多重定義しとくとか。 まあどのみちその中で要素数を調べてToStringして別のシグネチャのShowMsgBoxを 呼び出すコードを書くわけで、同じといえば同じかもしれないけど。 っていうか趣味の問題かもしれんがOptionalは使わない方がいいんじゃないか?
717 名前:715 mailto:sage [2008/09/10(水) 00:20:30 ] >>716 なるほど、即レスありがとうございます。 要素数判定で呼び出し方を返る、という形で書いてみましたが かなり冗長な呼び出し方になってしまい、本末転倒な感じがしてきました。 If CmdArgs.Length > 3 Then ShowMsgBox(CmdArgs(1), CmdArgs(2), CmdArgs(3)) ElseIf CmdArgs.Length > 2 Then ShowMsgBox(CmdArgs(1), CmdArgs(2)) Else '←必ず0、1番目の要素は定義されている ShowMsgBox(CmdArgs(1)) End If ShowMsgBox側で配列としてまとめて受け取ってから、 処理した方が良さそうですね・・・。 >Optionalは使わない方がいいんじゃないか? C感覚で勉強中だったので、多重定義が可能なことを忘れていました。 もう少し勉強してみます(`・ω・´)
718 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 01:26:13 ] ドレミファソラシドの周波数を算出するため、十二平均率 ja.wikipedia.org/wiki/%E5%B9%B3%E5%9D%87%E5%BE%8B#.E5.8D.81.E4.BA.8C.E5.B9.B3.E5.9D.87.E5.BE.8B の周波数比を計算させたいのですが、ExcelのPOWER関数のような累乗根計算の方法はありませんか?
719 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 01:36:09 ] Math.Pow
720 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 02:17:05 ] >>719 は累乗と累乗根の違いすら分かってないから参考にしないように。
721 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 03:17:17 ] ニヤニヤ
722 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 08:55:11 ] Math.Pow( >>720 , 1.0/12.0);
723 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:37:07 ] >>720 やる夫
724 名前:718 mailto:sage [2008/09/10(水) 12:12:07 ] >>719 ,722 ありがとうございます! 以下のようにしたら十二平均律の周波数を算出できました。 Dim i As Integer, fr(12) As Double For i = 0 To 12 fr(i) = Math.Pow(Math.Pow(2, i), 1.0 / 12.0) Next
725 名前:722 mailto:sage [2008/09/10(水) 12:35:12 ] >>724 素直に Math.Pow( 2.0 , i / 12.0) と書くべし
726 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:49:08 ] ワロタ
727 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:53:46 ] 素直なのは>>724 なんじゃない? 整理したら>>725 だけどさ x _ √a = a^(1/x) であるから、 x __ √a^b = (a^b)^(1/x) となり、十二平均律では、x = 12, a = 2, b = (1から12)となるので、 12 __ √2^b = (2^b)^(1/12) bをiとして、 2^i = Math.Pow(2,i) これにより、 Math.Pow(Math.Pow(2, i), 1.0 / 12.0)
728 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:02:47 ] 意味が分からずに言われたとおりに簡略化して書いてる奴って職場だとホント困るんだよな・・・。
729 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:04:56 ] 中学数学でしょ
730 名前:722 mailto:sage [2008/09/10(水) 13:09:00 ] 主観入ってたわ。 頭の中で x __ √a^b = a^(b/x) になってた。 というわけで、>>725 を訂正して、 Math.Pow()を2回呼ぶより、整理して1回にしたほうが良いと思う。 分かりにくかったら無視してくれ。
731 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:15:30 ] Math.Powは見るからに処理長そうだしねえ 慣れるまでは理解するまでベタ書きが無難だが 慣れたら呼び出す回数を減らすことを勧めたい
732 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:44:50 ] 問題にはならないだろうけど、一応精度の問題もある
733 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:19:53 ] ここぞとばかりにOOoのMath使ってみたんだけど ほんとハナクソだな・・・('A`)モウツカワネ www1.axfc.net/uploader/Img/l/2296233703/Img_20227.gif
734 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:30:52 ] 404 Not Found
735 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:32:29 ] すまん、リファラ読んでるっぽいな。 www1.axfc.net/uploader/Img/so/20227
736 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 20:34:53 ] >>727 発想が逆立ちしてるよw 数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。 12音階というのは2(1オクターブ)を対数軸上で12等分したもの、 というのが全ての出発点で12乗根√2っていうのはそこから導出した値に過ぎないんだよ。 対数軸(y = log(x))上の等差数列はxの世界では等比数列になる、って考えてもいいけど 普通は直感的に基準となる音からn番目の音の周波数は2の(n/12)乗倍だってわかるだろ。
737 名前:デフォルトの名無しさん mailto:age [2008/09/11(木) 16:35:43 ] すみませんが、質問です。 Googleなどの検索エンジンで .NET の情報を効率よく集めるには、どのような 検索語にすればよいでしょうか? ただ入力すると、.netというドメイン名にばかりヒットしてしまいます。
738 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:40:29 ] >>736 >数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。 >数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。 >数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。
739 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:43:02 ] 検索エンジンの使い方までサポートする幅広いスレだな せめてVBで検索しろ
740 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:53:14 ] >>739 ありがとうございます。C#で検索することにしました。 .NETは別にC#だけではないのですが、関係ないページばかり見つかるよりマシです。
741 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:55:30 ] いやVisualStudioだろ
742 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:14:38 ] VisualStudio は .NET だけじゃないんじゃ?
743 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:23:41 ] だから.NETと組み合わせるんじゃ? でもVisualStudioじゃ取りこぼし多そうだがなあ
744 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:40:51 ] うん、組み合わせのつもりで言ったぞ VisualStudio .NET 2005 +言語名なら確実だろう
745 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:45:11 ] マイクロソフトは一般名詞を商標にして いつの間にか自社製品を示す言葉にするのが得意だからな。
746 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:54:08 ] そうだね。あれは本当に迷惑。 昔の話だけど .doc という拡張子は元々テキストファイルのものだったのに、 勝手に MS Word のものにされた。 Word という名前といい、いまだに腹が立つ。
747 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:56:00 ] それはそれとして、ノイズが混じらなくて、取りこぼしをなるべく少なくする には、どんな検索語がいいかな。 VisualStudioは、ちょと取りこぼし多そう。
748 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:14:16 ] そろそろスレチじゃね .NET資料の探し方とは言え、googleの検索仕様に左右される話題だし
749 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:31:12 ] 正規表現を使うって発想がないWindowsの天下で わざわざ正規表現を実装する検索サイトはないよな あったら凄まじく便利なんだが
750 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:34:42 ] 有るわけがない。 文化の問題ではない。
751 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:59:48 ] ここで正規表現が使える奴が居るかも怪しい
752 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 19:45:57 ] .NETにも正規表現クラスあるけどちょっと使い方がまどろっこしい
753 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:27:37 ] 正規表現は一種のツールだからな。 プログラミングサイドで実装されてても、 OS側が環境として提供してくれないと・・・
754 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:44:32 ] >>746 外国だとテキストファイルに.docはマイナーだったって聞いている。 わざわざかぶること前提で.docに決めたわけなかろう。
755 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 00:04:36 ] 少なくとも.NETはトップレベルドメイン.netとかぶること前提だけどな
756 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 09:57:40 ] しかし readme.doc は国内外を問わず添付されてた気が
757 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 10:03:53 ] 拡張子の制約で使い勝手を縛るのはWindowsとhttpのMIMEtypeだけだよ。
758 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 10:26:40 ] 知ったようなことを言う
759 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 11:59:51 ] 反論すら成立してない
760 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 19:55:34 ] そういやマックのファイルっていまだにマックバイナリ付いてるの?
761 名前:デフォルトの名無しさん [2008/09/13(土) 09:07:27 ] ビジュアルベーシック.NETでOSは作れますか???
762 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 09:09:50 ] >>761 少なくともバカは治せない
763 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 03:50:40 ] >>760 マックバイナリが何なのか理解してないね
764 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 12:43:56 ] >>763 意味が分からない。 どうせ絡むならはぐらかしたような言い方せずに全部言えよ。 「何なのか理解していない」のが君の方でなければなw
765 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 12:51:38 ] 調べればいいだろ 「いまだに」とかつける勘違い名人には教えません
766 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 13:04:24 ] >>765 一般的事実なら調べれば分かるかもしれないが、 馬鹿なお前さんの独善的「思い込み」の意味をどう調べろって言うのかね。 本当、最近こういうセカイ系的メンタルの奴が多くて困る。
767 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 13:08:06 ] というか、何も具体的なこと言えないから最初から人に絡むなよ。
768 名前:デフォルトの名無しさん [2008/09/14(日) 23:24:20 ] C++スレで自分では答えられないザコから誘導されてきました VC++ 2005 Express 自分のアプリから、別のアプリが起動してるかどうか見たい 207 名前:デフォルトの名無しさん[] 投稿日:2008/09/14(日) 20:48:40 iniファイルは釣りでした。 起動してるプロセス(リスト)の取得教えて 210 名前:デフォルトの名無しさん[sage] 投稿日:2008/09/14(日) 21:59:34 くだすれ.NET逝け
769 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 03:05:51 ] うん。見れば
770 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 04:23:42 ] >C++スレで やっぱりC++/CLIとC++の区別が付いてなかったのか、VIPに逝け
771 名前:デフォルトの名無しさん [2008/09/15(月) 19:45:31 ] 質問です。 WINDOWS XP使用で、コンパイラはBorlandC++compiler5.5です。 インストールしたあとパスの設定で、 %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Common Files\GTK\2.0 とあったところに\bin;c:\Borland\Bcc55\binと付けました。 なのに、実際コマンドラインでメモ帳を開こうと>C:\WINDWS\NOTEPAD.EXEと打ち込んでも、 指定されたパスは見付かりませんとでます。(NOTEPAD.EXEはCディスクの中のWINDWSに入れてあります。) 他にもカレントディレクトリを変えようとして、>cd ○○と打っても、 確かにあるはずなのに指定された(ryになってしまいます。 誰か助け手ください(涙)
772 名前:771 [2008/09/15(月) 20:08:40 ] スレ違いのようでしたので、他に聞いて見ます。 すみませんでした。
773 名前:デフォルトの名無しさん [2008/09/16(火) 22:58:28 ] 質問ですお願いします。 C#でUDP通信するソフト作ってるんですが、 通信時の暗号化に3DES使おうとプラグロミングして reflectorで覗いたらキー丸見えで萎えました。 クラックを防げる暗号化ってどう実装したらよいでしょうか 制限事項としては (制限1)クライアントで暗号化したものをサーバで複合できる(逆も然り) (制限2)上記制限1のため、暗号化キーは固定する必要あり? 3DESのキーをまた暗号化してしまうとか、 キー生成アルゴリズムを埋め込んで、キー自体を持たないとか 外部にキーを持たせてdll参照するとか色々考えたんですが 結局トレースされたらばれてしまうのでティンときませんでした。 道かよろしくお願いします。
774 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:04:49 ] 3DESじゃなきゃだめなの? 公開鍵じゃだめなの?
775 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:09:06 ] 公開鍵も考えたんですが、ようは、誰かが作った偽クライアントがサーバに接続されるのを防ぎたかったので 鍵自体バレると・・・と思ったけど 今よく考えたらreflectorでソース見れる時点で暗号化どうのこうののまえに偽クライアントは作れてしまいますね。。。 .netで作るのをやめる事にします。 どうもありがとうございました。
776 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:42:59 ] これは酷い思考停止
777 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:44:50 ] ネイティブで作ったって一緒。 まあ解析しにくいことは否定しないが。 本当に安全にやるなら、SSLとかでやってるのと同じような仕組みを作らにゃならん。
778 名前:773 mailto:sage [2008/09/16(火) 23:59:23 ] すみません775は私です。 私は生産者側なのでクラックにはあまり興味ないですが、.NETの形態上ソースが見えてしまうのは仕方がないんですよね。 今まで、いかに破られない認証をするかを考えてきましたが、認証の部分だけ省いてソースをコピペしたらちゃんと動いてしまうんですよね。 生産対象物がきわめて専門的なBtoBのようなソフトであれば、ソースをほしがるような客先は少ないです。 逆に、保守のことを考え、わざわざソースをセットで渡してしまうこともありますが、 たとえばネットゲームのような、完全なBtoCまたはCtoCの形を取るソフトであれば、不特定多数のクライアントがいるわけで そのなかには必ず中身を解析したり、場合によっては不正な手順でサーバにアクセスする人たちが出てきます。 そういった人たちのモチベーションに反比例するのが解析の難しさ、めんどうさだと思います。 もちろん従来のネイティブコードでクラックできないわけではないですが、.NETよりはめんどうです。 そうした意味では、.NETという、言ってしまえば実行ファイルのソースが公開されているプラットフォームを避けるのも一つの手かなと思いました。 長くなりましたが、つまり、知りたいことは、 1).NETでClient/Server作ってる人は、どういう実装をされてるんでしょうか。 2)そもそも.NETは使わないんでしょうか。 度々すみませんがもう少し知恵をお貸しください。
779 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:04:57 ] だから本当に確実な認証が必要なら、パスワードか証明書かICカードかUSB鍵か、 とにかくソースを解析しても不可能な方法をとるわけだよ。 >いかに破られない認証をするかを考えてきましたが、認証の部分だけ省いてソースをコピペしたらちゃんと動いてしまうんですよね。 それってどんな認証だよっていうか認証って言わないだろそんなの。
780 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:12:17 ] ん? ひょっとして接続が許可された人間でも偽クライアント(というかその許可情報)を使用した接続とか できないようにしたいって言ってる? そんなことは基本的には不可能だよ。 たとえばソース解析するまでもなくそのクライアントアプリをコピーして別のマシンで動かした場合はどうなるんさ? ※パスワードやらその他認証用の情報も基本的に同じようなもの
781 名前:773 mailto:sage [2008/09/17(水) 00:12:45 ] >>779 すみません話を混ぜて書いてしまいました。 >いかに破られない認証をするかを考えてきましたが、認証の部分だけ省いてソースをコピペしたらちゃんと動いてしまうんですよね。 これは、キーさえわかっていれば他の部分コピペして新たに偽クライアント作ったらサーバ側からは偽クライアントだとはわからないという意味です。 パスワードか証明書かICカードかUSB鍵がいらない偽クライアントが出来てしまえばサーバ側では対処できないだろうという意味で書きました。 ネットゲームのBOTツールとかがそれにあたるんでしょうか。
782 名前:773 mailto:sage [2008/09/17(水) 00:15:19 ] >>780 そうです!それが言いたかったんです。 クライアントアプリの複製は問題ないです。 クライアントアプリを騙って不正なパラメータでアクセスをされるのを防ぎたいんです。
783 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:27:03 ] 不可能。 だってクライアントが正しいかをサーバ確認できるのは通信内容によってのみだから。 基本的にクライアントプログラムが本物かを「確実に」確認する方法はない。
784 名前:773 mailto:sage [2008/09/17(水) 00:42:33 ] だとすると、暗号化の議論の中では邪道とされている、処理の隠蔽しか暫定的な回避策は無いですね。 .NETには不可能ですが。 逃げにしかなりませんが、Client側はネイティブな別の言語に移植する事にします。 また、暗号化のクラック対策としては、定期的にClient/Serverともアップデートをかけて、 実行前にキーを変更する仕組みにしようと思います。 勉強になりました。 ありがとうございました。
785 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:47:00 ] つーか難読化とか耐タンパとかでググれって誰も言わないのは何でなんだぜ?
786 名前:773 mailto:sage [2008/09/17(水) 01:03:15 ] >>785 そんなのがあったのですね。勉強不足でした。 早速フリーの難読化ソフトで実験してみたら、実行は出来るのにコンパイルが通らないソースが出来上がり感動しました。 さすがに定数は難読化されなかったですが。 ソフトの種類によっていろいろなのかな。 ちょっと色々調べてみます。ありがとうございました。
787 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 01:42:37 ] 本格的には使いにくいからじゃね?
788 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:36:03 ] javaseで掲示板へ投稿するスクリプト作れますか? ポストリクエストを少々いじるのはjavaeeになるのでしょうか? よろしくお願いいたします
789 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 19:48:25 ] ここ数件の 書き込みに 対して スレタイ 欲嫁 と 言ってやりたい
790 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 20:29:49 ] Form2が閉じた時にForm1を更新するにはForm.Closedイベントを使えばいいのはわかるんだけど、 Form1から、Form2が”閉じてる”て状態を捉えるにはどうすればいいのですか? Form2.Enabled = Falseじゃ駄目みたいなんだけど VB.NETです
791 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 21:02:32 ] Visible
792 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 21:53:24 ] IsDisposed
793 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 22:10:00 ] どういう動作を意図してるかわからんけど 閉じてるかどうか判断して閉じてたら開きなおすならこんな漢字化 Public Class Form1 Dim f2 As Form2 = Nothing ''' <summary> ''' Form2をShowする ''' </summary> ''' Private Sub ShowForm2() 'Form2をはじめて開く場合 If f2 Is Nothing Then f2 = New Form2 Else 'Form2が閉じてた場合 If f2.IsDisposed Then f2 = New Form2 End If End If f2.Show(Me) f2.Activate() End Sub End Class
794 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:11:49 ] >>790 Application.OpenFormsで現在開いている(表示されている)フォームのコレクションが取得できる。 こんなかに、Form2が入っているかどうか見ればいいかと思われる。
795 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:21:14 ] 790です 色々ありがとうございました 勉強になりました 意図していた動作は、Form1にある、Form2をshowするボタンを、Form2が開いてる間は無効にする、というものでした。
796 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:42:27 ] >>795 それだと状態を常に監視する為にコールバックしないといけないような というかそもそもその動作ならForm2が開いているかどうかは関係ないよ button1が押されたときに button1.Enabled=False Form2が閉じるときに DirectCast(Me.Owner, Form1).Button1.Enabled = True
797 名前:796 mailto:sage [2008/09/17(水) 23:44:17 ] 途中で送信してしまった スマソ Form2を開くボタン(仮にbutton1)のスコープをForm2から参照可能にしておいて >>795 みたいなかんじでやれば、Form2の状態など監視せずにスマートにいけるんじゃね
798 名前:797 mailto:sage [2008/09/17(水) 23:45:59 ] 安価間違いグダグダスマソorz ×>>795 みたいなかんじ ○>>796 みたいなかんじ
799 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:46:33 ] >>795 そういうのはForm1の適当なメソッドにForm2の適当なイベント(例えばFormClosed)を 紐付けするんだよ。 VBならForm2の参照をWithEventsで持つ方法でもいい。 というか、くだすれか何か知らんけど、 こんなレベルの話は入門書を一冊軽く斜め読みすれば分かることで 掲示板で人に聞くような内容じゃない。
800 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:49:26 ] 799 まぁまぁ「くだすれ」なんだから ごもっともだけども。
801 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:52:38 ] >>794 のやつが一番スマートだと思われるが。 Form2のNameプロパティに"Form2"と設定してあれば If Application.OpenForms("Form2") Is Nothing Then MessageBox.Show("Form2は閉じてる") Else MessageBox.Show("Form2は開いてる") End If と判断できるし
802 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:57:13 ] >>801 ? ずっとチェックするの? >意図していた動作は、Form1にある、Form2をshowするボタンを、Form2が開いてる間は無効にする、というものでした。 僕はその意見には反対ですが、 まぁ、一番スマートなやり方はどうかは別にして、やり方はいくつもあるってことだね 初心者はいろいろやってみて、一長一短あるのを自分なりにとらえるようになるのも勉強だ
803 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 00:11:44 ] >意図していた動作は、Form1にある、Form2をshowするボタンを、Form2が開いてる間は無効にする、というものでした。 であれば、 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim f2 As New Form2() f2.Show() Button1.Enabled = False AddHandler f2.Disposed, AddressOf Me.Form2_Disposed End Sub Private Sub Form2_Disposed(ByVal sender As Object, ByVal e As EventArgs) RemoveHandler CType(sender, Form2).Disposed, AddressOf Form2_Disposed Button1.Enabled = True End Sub
804 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 11:10:57 ] Disposedで良かったっけ? Showなら良かったんだっけかな。
805 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 14:48:09 ] クラスにこういうプロパティを実装しています。 ------------------------------ Private mHOGE As String Public Sub New() Me.HOGE = "" End Sub Public Property HOGE() As String Get Return HOGE ←※ End Get Set(ByVal value As String) mHOGE = value End Set End Property ------------------------------ ※のところで、 「変数 'HOGE' は、値が割り当てられる前に使用されています。Null 参照の例外が実行時に発生する可能性があります。」 という警告が出るのですが、これは書き方がどこか間違っているのでしょうか。
806 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 15:15:46 ] それ以前に無限ループになるのは確実だわな。
807 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 15:24:02 ] これは俺もたまにやっちまう。 セッターの方だといきなりスタックオーバーフローでめげるぜ。
808 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 15:25:43 ] いやセッターとも限らんか。 ともかく実行したらアウチ
809 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 15:37:55 ] すみません。 Return mHOGEですよね。 よくよく読んだら理解できましたorz
810 名前:デフォルトの名無しさん mailto:sage [2008/09/18(木) 17:20:06 ] XP3 .NET C#のSDKのURLください
811 名前:デフォルトの名無しさん [2008/09/18(木) 17:38:58 ] kaiketusita
812 名前:デフォルトの名無しさん [2008/09/18(木) 21:36:31 ] 質問です。 パスワードを設定したExcelのファイル(オープン時にパスワードを求められる)があるのですが これをC#からパスワードを自動入力で開く方法ってありませんか? 普通にダブルクリックしたときはパスワード入力、 C#で作ったプログラムで開くボタンをクリックすれば パスワード入力なしでエクセルを起動するってしたいんです。 詳しいかた宜しくお願い致します。
813 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 01:47:24 ] .NET1.1はSDKを含め、全てアンインストールしてもいいのでしょうか? マイクロソフトは.NET1.1をどのような位置付けで考えているのでしょうか
814 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 11:44:15 ] Change系のイベント連鎖についてですが 避けたくてもどうしてもTextBox1のChangeイベントでTextBox1.Textに 値を代入しなくてはならない、なんて場面はよくあると思いますが、 みなさんどうやって連鎖を回避されていますか? フォームレベルのフラグ変数とか、 他コントロールのフォーカス使ったりとか、 わざわざ条件を自作するような技しかないんでしょうか。
815 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 19:13:53 ] >>814 >なんて場面はよくあると思いますが いやそうそうないと思う。 というより、そんなことを思った時は大抵ロジックが不適切なんだと思う。 少なくとも処理内容と目的を具体的に書かないと納得できないよ。
816 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 10:12:29 ] >>815 不適切なロジックでもやらないといけない場面はよくある 書く人の志向だけで作れるような、そんな恵まれた職場や 案件ばかりじゃないよ、実際
817 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 11:44:23 ] まあそうだけど、でもそうとも限らん。 何も言ってないのにそういう事情を考慮する義理もない。
818 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 18:38:36 ] >>813 に回答お願いします
819 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 18:51:38 ] >>818 おすきにどうぞ。 何が動かなくなっても知りません。
820 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 21:18:26 ] >>813 普通に普通のランタイムと同じじゃないの? それを使っているアプリがあれば、そのアプリが動かなくなるだけ。
821 名前:デフォルトの名無しさん mailto:sage [2008/09/20(土) 21:20:16 ] よく分からんな、使ってないなら要らんし使ってるなら要るだろう。 別にランタイムだけなら残しといてもたいしたことないと思うが。
822 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 08:48:20 ] ここの住人がそれを使ってるアプリが今後も量産されていくという展開をお読みになる、または1.1しかありえない2.0以降で.NET?はぁ?ということならば消さないでおきます つまり2.0以降より必要度が低いのであれば消します HDDが40GBしかないもんで
823 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 10:50:12 ] そりゃ必要度は低いだろ。 だがわざわざ消すほどの容量でもないんでは? ってだけだ。
824 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 11:48:57 ] .NET1.1必須のやつはそう多くないし、消してもいいんじゃないかね。 必要になったらまた入れればいいさ
825 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 14:27:02 ] そう言ってくださるならば消します マイクロソフトは1.1を黒歴史的に捉えてると思わざるをえないので
826 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 14:34:24 ] 黒歴史は1.0であって、1.1は現役
827 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 14:58:39 ] そりゃ、どんなソフトメーカーでも同じで、 旧バージョンは出来るだけ使って欲しくないよな。
828 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 15:16:49 ] よく分からんが、仮に黒歴史と捉えてたとしてだからどうってもんでもないだろ。 開発者の立場ならそりゃ分かるが。
829 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 16:09:08 ] 動作必須環境に 「.NET1.1」と書かれているのと「.NET2.0以上」と書かれていた場合、 どちらがより多くの支持を集めますか?
830 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 16:57:03 ] フリーソフト作者? フリーソフトのユーザー限定ならドトネト製というだけで却下という人が多いんじゃないか。 よくも悪くも.NETはパッケージ以外の業務用ソフト以外ではあまり普及してないのが現実だろう。 というか、他人に背中押して欲しい優柔不断な奴かなんかしらんが、 そんなこと自分の頭で考えたらどうよ。
831 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:28:49 ] 1%でもよ多くの支持を集められそうな方はどちらですか? というか、超初心者ですので曖昧な回答は必要ありませんし、 自分の頭よりは、あなたたちの意見の方が正確性が高いと判断しております
832 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:33:23 ] なるほど、君は例えば「朝まで生テレビ」のような番組(まあ下らない番組だけど) を見て「いつも結論がでない」とか的外れな批判をするそういうタイプの馬鹿なんだね。
833 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:35:32 ] いいえ、人物考察等はスレ違いですし、必要がありません。 自重していただければこれ幸いと存じます
834 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:36:34 ] Ver違いでなんか支持変わんねえよ 糸冬了 はい次の方〜
835 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:39:50 ] 私も質問です .NET1.1のランタイムは削除して良いのですか?
836 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:47:42 ] こんなの釣り人に決まってるだろ
837 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:49:21 ] >>836 >>833
838 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:50:03 ] .NET 1.1必須といえばVS2003やTurbo Delphiといった開発ツールくらいかなぁ。 大概の1.1用のアプリは.NET2.0上でも動く。
839 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 17:59:35 ] RinGOchは動かない
840 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 21:12:11 ] >>812 もお願いします。
841 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 22:16:50 ] ここに書いてある通りじゃダメなの? msdn.microsoft.com/ja-jp/library/cc329882.aspx っていうか、エクセル操作しようっていうのにMSDNもエクセルのVBAのヘルプも 見てないわけひょっとして?
842 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 13:48:52 ] VB2008のExpressでプログラムの勉強を始めたばかりの者です バックグラウンドでキーボード入力を監視するソフトを作りたいんですけど、入力文字を盗み見するところで悩んでいます どういった方法が一般的でしょうか
843 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 13:52:39 ] また水前寺清子か・・・
844 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 13:56:26 ] いっぽんどっこの唄を思い出した
845 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 14:13:37 ] 若い子じゃわからないネタだし、わかる年代だとチートがわからんだろ
846 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 19:47:49 ] 両方のチーターが分かる年代でもキーローガーとチートが頭の中で 概念的に結びついてる奴はいないと思うわ。。
847 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 20:29:07 ] キーローガー作んなよボケが
848 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 01:36:52 ] キーロガーつくるワケではないです 入力されたキーによって音を鳴らそうってだけなんです
849 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 01:48:40 ] 年貢とは納めるもの
850 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 06:29:06 ] それワンツーワンツー
851 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 09:59:51 ] まあキーボード フックでググれ .NETでもできるみたいだぞ
852 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 19:43:56 ] ありがとうございます
853 名前:デフォルトの名無しさん [2008/09/28(日) 09:11:22 ] .netで作ってる自分のプログラムからWordやExcelをモーダルで開くことってできますか?
854 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 20:40:17 ] お前のプログラムのことなんて知らんがな
855 名前:デフォルトの名無しさん [2008/10/02(木) 12:06:51 ] ツリーコントロールにコンテキストメニューを設定しているのですが、 ノードを右クリックすると、一瞬そのノードが選択されたあと、すぐに 直前のノードにフォーカスが戻った状態でコンテキストメニューが開いてしまいます。 右クリックしたノードが選択した状態でコンテキストメニューが開くようにするには どうすればいいでしょうか?
856 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 17:04:26 ] >>855 マウスダウン時にクリックしたノードを選択ノードに設定するとか Dim hti As TreeViewHitTestInfo = Me.TreeView1.HitTest(e.Location) If hti.Node IsNot Nothing Then Me.TreeView1.SelectedNode = hti.Node
857 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 19:11:10 ] 2008をインストールしていたのですが Web Developerの方は完了後に出たリンク先からLive IDに入り登録キーをとれました VC++,VBの方は閉じてしまって登録キーを得られるページがわからなくなってしまいました 登録キーを得られるページの入り方(アドレス)を教えてください
858 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 19:25:16 ] MSサポセンに電話
859 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 19:27:36 ] 書き忘れました Express Edition です
860 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 19:49:50 ] じゃあ俺がサポセンで聞くから番号載ってるアドレスよこせ
861 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 19:59:20 ] 番号? DLインストールしたものなんですが Webから取得できないんですか なぜDeveloperだけできたんだろう?
862 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 20:13:35 ] メール受信したか?
863 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 20:21:07 ] はい、Developerのやつだけ
864 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 20:44:42 ] ああ、登録のところからできそうです お手数かけました
865 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 23:52:34 ] さいきん遊びで.net(C++)はじめたんですが、 javaプログラマが.netやるにあたりこれをみとけば 導入しやすいというサイト等ないでしょうか? null判定やら整数判定やら、その他もろもろ一々 調べないといけないので効率わるいです。。。
866 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:01:43 ] >>865 msdn.microsoft.com/ja-jp/library/ms228602 (VS.80).aspx C#に関するMSDNの記事としてはかなり親切で優秀
867 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:05:07 ] ああC++/CLIか 先にC#やったほうが入りやすいんじゃね
868 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:10:24 ] ・・・なんで C++/CLI。その言語、C++ と CLI 両方に精通していないと 難しいから両方初心者なら基本お断りだぞ。いや、というかむしろ そうでないと使う意味がない方が正確かも。 既存コード等があってそれとの相互運用したいとか、ちょっと細かく 最適化したいとかそんなときに使うもの。
869 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:13:44 ] すごく限定された一部の特殊な目的のために部分的に使う言語であって常用するもんじゃない
870 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:16:09 ] ネイティブのラッパー書くときは楽だよな
871 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:17:49 ] でもあくまでラッパーまでなんだよね それがMS推奨のスタイルみたいだし
872 名前:865 mailto:sage [2008/10/04(土) 00:25:35 ] なるほど。 なんで選んだかというと、 C++の勉強がてら、あとはとりあえず.netも みておくかと思ったからです。 あと.netあるのでいろいろ用意されていそうで 楽かな〜とも思いました。
873 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 00:33:39 ] .NETやるならまずC#かVB.NET C++/CLIだけやっても意味がないよ
874 名前:865 mailto:sage [2008/10/04(土) 00:45:21 ] う〜ん、 いろいろドキュメントみた限りだと、C#やVBとならんで C++も並列な位置づけで選択可能にみえたんですが・・・ たとえばwikipedia。 ttp://ja.wikipedia.org/wiki/%E7%94%BB%E5%83%8F:Diagram_of_Common_Language_Infrastructure_(ja).png 要はコンパイラさえあれば良いように見えて、 そしてC++コンパイラがあるので、C++を選ぶことに 躊躇がなかったんですよ。
875 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 02:02:44 ] VC++コンパイラ(C++/CLI言語)はその中でも特殊で、 部分的に非.NETの(x86とかの)ネイティブな機械語を含むプログラム(混合アセンブリ)を出力でき、 そうでなくとも非.NETなプログラムとの親和性が大変良くて、 というかそもそも従来のC++の構文はそのままに.NET用の構文がまるまる追加されているだけで、 そのせいで非.NETと.NETを両方使おうとするとデータの変換が面倒だという具合。
876 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 02:12:51 ] 世界一の/clr:safe使いに俺はなる!
877 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 11:24:42 ] アンマネージコードを混ぜないならC++/CLIをわざわざ使うメリットがないんだよね 自由度がほんの少し高いだけで、できることはC#と変わらない 文法が複雑でC#やVBより低レベルで面倒、VSのサポートも貧弱、情報少ない C++ができる人でも学習コストは決して低くない(C#に移行した方が早いかも)
878 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 15:52:45 ] んじゃWINDOWSでC++やるなら黙ってMFCか WIN32API直接たたいてろってことですかね?
879 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 15:57:55 ] ATL/WTL 忘れてる
880 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 18:35:36 ] そもそもなんでC++なんだ
881 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 19:01:01 ] VC++6.0ってもうゴミなの?
882 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 21:28:27 ] 使えるか使えないかなら使えるからごみというのはどうかだけど 不自由するか不自由しないかなら確実に超不自由する さすがに 10 年前のソフトなので
883 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 22:06:57 ] MSDNが死んでます;;
884 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 20:57:53 ] Oracleへの接続をoo4oからODP.NETに変更したいのだが、 oo4oとODP.NETの差分をうまく吸収してくれるクラスって どこかに公開されてないですか? oo4oを使用していたときのロジックをできるだけそのままにしたい。
885 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 01:34:53 ] 以下のコードを実行するとStackOverflowExceptionが発生します。 array<String^>^fileEntries = Directory::GetFiles((String^)Directory::GetCurrentDirectory()); 何がいけないのか、コールスタックを見ようにも見方が分からず・・・
886 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 12:34:20 ] >>885 例外が起きている場所がそこでない可能性もあるな。 デバッグビルドになってないとか、設定で最適化がONになってるとか。
887 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 21:12:58 ] C#を勉強しましたのでVisualC#2008でアプリケーションを作ろうと思っています TableLayoutPanelでEXCELの枠固定みたいなことって出来るのでしょうか 作りたいアプリのカラムが結構な数になるので カラム2と3の間を固定できるようなプロパティがあれば教えていただけないでしょうか TableLayoutPanel以外のクラスでも出来るのであればそれも教えていただけないでしょうか よろしくお願いいたします
888 名前:デフォルトの名無しさん [2008/10/12(日) 21:15:02 ] 'Microsoft Visual Basic.NET 2003 の初心者ですが、質問させてください。 Imports System Imports System.IO Public Class Form1 Inherits System.Windows.Forms.Form Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim sr As StreamReader = New StreamReader("テスト.txt") Dim line As String Dim str01 As String Dim str02 As String Dim str03 As String Do ' テスト.txt内の1行を読み込んだ後、それぞれ変数の中に入れたいのです凹 line = sr.ReadLine() ' 結果 'str01 = "a" 'str02 = "123456" 'str03 = "テスト00 "(256バイト固定) ' どういった方法があるのでしょうか?? Loop Until line Is Nothing sr.Close() End Sub End Class '******************************** 'テスト.txt内容 '******************************** a,123456,テスト00(名前256バイト) b,654321,テスト01名前 c,112233,テスト02 '******************************** ちゃんとした質問になっているのかさえわかりませんが、どなたかご指南よろしくお願いします。
889 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 21:52:45 ] 何を聞きたいのかぐらいまとめたほうがいいと思うが
890 名前:デフォルトの名無しさん [2008/10/12(日) 22:15:04 ] <<889 そですね汗 失礼しました。 文字列 "a,123456,テスト名" カンマで区切られた文字列をそれぞれ変数の中に入れたいのですが、どういうやり方があるのでしょうか? **結果** Dim str01 As String = "a" Dim str02 As String = "123456" Dim str03 As String = "テスト名" ******** ・・・あまりまとまってなぃかな凹 改めてご指南よろしくお願いします。m(_ _)m
891 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 00:07:19 ] そういうのはCSVという 文字列と数字の扱いとか、エスケープするのかとかあるけど、 簡易的にはString.Splitとか使える
892 名前:デフォルトの名無しさん [2008/10/13(月) 14:18:15 ] VC#2008 Professional Edition SP1,( .NET Framework 3.5 SP1)をWindows XP SP3上で使用しています。 Windows FormsでMDIアプリを作成しているのですが、MDIの親にImageListを置いている場合 MDIの親に置かれているImageListはMDI子フォームから参照するにはどうしたらよいでしょう? ただし、コード上で必要なときに呼び出して参照することは既にできています。しかし、問題はデザイン画面上で プロパティに出したいということです。 プロパティ画面上で ImageList : fMDIForm.ImageList1 みたく・・・ 以前Delphiを使用していたときはuses節に参照したいクラスを記述して、デザイン画面上でプロパティから参照できました。 Web上の様々な情報や書籍を参照しても、MDIフォームに関する情報はあまりなく、困っています。 A) 解決する方法はある B) デザイン上ではあきらめて必要なときにコードで記述するしかない。 C) ImageListなどどの画面でも共通で使用したいものは、あきらめてそれぞれの画面に置く D) その他 のいずれかでしょうか。ご存じの方よろしくお願いします。
893 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 19:32:59 ] D) ソースを晒せ
894 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 19:48:21 ] 2005以降でImageListって積極的な使い道というか、 それを使わないとできない事なんてあったっけ? 俺の認識では完全にObsolete扱いなんだけど。。
895 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 21:32:22 ] AbsoluteにObsolete扱いですかそうですか
896 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 21:36:58 ] プロジェクトのリソースじゃダメなの?
897 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 17:46:23 ] TabControlを上部に表示させ、 その下にGridDataViewを表示させています。 ウィンドウのサイズを小さくしたときに、 TabControlの位置と、DataGridViewの位置を変更させないようにして、 かつ、TabControlのサイズは変更させずに、 DataGridViewは上部分(TabControlの直下)は固定で、 ウィンドウを小さくした分だけ小さくさせるようにしたいんですが、なかなかうまくいきません。 あ、DockNoneでうまくいきました。てへ
898 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 17:49:29 ] なかなか思ったとおりにならないときは、間にコンテナかますのがいい。
899 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 11:37:45 ] スレッドについての質問です。 たとえば、TreeView.Nodes などのコレクションや、それに格納されているデータにアクセスする際も Invoke を使用する必要があるんでしょうか。排他だけですむならかなり楽なんですけど。
900 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 17:07:53 ] WCFでBasic認証付きのプロキシを超えるにはどう設定すればいいか、 ご存知の方はいらっしゃいませんか?
901 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 19:57:04 ] プロジェクトとソリューションの違いを教えてください。 いろんなクラスをまとめているのがプロジェクト、と思っています。 そのプロジェクトをさらに上位から管理するのがソリューション? 両者の概念について分かりやすく書いてあるWebなどはないでしょうか? (○確認○行のサイトと@ITのサイトは見ましたが、よく分かりません・・)
902 名前:デフォルトの名無しさん [2008/10/27(月) 20:53:31 ] みなさんはデータを新規に書き込むとき、 TableAdapter.Updateで行いますか? それともExecuteNonQueryで行いますか?
903 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 20:55:27 ] >>901 一つのライブラリとか実行ファイルとかまとまった単位がプロジェクト。 何か解決したい課題があったときに、一つの実行ファイル・ライブラリじゃおさまらない時に 複数のプロジェクトまとめるのがソリューション。
904 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 20:56:41 ] >>901 俺も完全に把握してるわけじゃないけど、 とりあえず1プロジェクトが1アセンブリに対応すると考えればいいんじゃないの? そんで、プロジェクトはソルーション内の別のプロジェクト(つまりアセンブリ)を 「プロジェクト参照」できる。 だからよく使うライブラリ的なクラスとかユーザーコントロールなんかを 別のプロジェクトに切り分けておけば、他のアプリの時に流用が楽にできる。 これだけ聞くとコンパイル済みのクラスライブラリ(dll)でもよさそうだけど、 一旦dllにするとアプリにあわせて微妙にカスタマイズとかできないからね。
905 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 21:44:40 ] グループで作る時にプロジェクトごとに担当決めて管理者はこれをソリューションとしてネットワーク上でだな
906 名前:901 mailto:sage [2008/10/28(火) 20:53:41 ] >>903 , >>904 ありがとうございます。 今はまだなんとなくですが、今後会社で注意深くみてみると 両者の差は使い方で分かってくるような気がしてきました。
907 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 21:12:21 ] >>906 まあドクターパソコン(なんて知らんか…)じゃないけど 頭で考えるより実際やってみればすぐわかるよ。
908 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 16:00:17 ] VB2005で組んだWindowsアプリケーションを、 そのままASP.NET、WEBアプリケーションにすることはできないでしょうか。
909 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 02:10:41 ] すごく無理 とにかく無理 無理無理無理よカタツムリ
910 名前:デフォルトの名無しさん [2008/11/24(月) 14:03:02 ] >>909 まるでラップのような>>909 のセンスに嫉妬w.
911 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 19:24:53 ] いいえ プログラミングはロックです
912 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 19:52:53 ] そしてプログラマはロックマンですね分かります
913 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 23:09:11 ] >>911-912 エアーマン噴いたじゃねえかこの野郎wwww
914 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 23:17:37 ] ヲタ野郎どもの笑いのポイントは理解不能だ。 何が面白いの?意味わからん。 とにかく気色悪いんだよヲタは。
915 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 10:56:42 ] 同族嫌悪ですね、わかります。
916 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 17:02:01 ] .Netがインストールできません。 USB2-NFCというICカード・リーダ・ライタを買ったところ、 .Net3.0のインストールが必要でした。 tshimizu.cocolog-nifty.com/good_job/2008/06/usb2nfc.html そこで、インストールしてドライバーを入れても反応しません。 このホームページによると .Netがインストールされていれば tshimizu.cocolog-nifty.com/.shared/image.html?/photos/uncategorized/2008/06/16/usb2nfc_5_2.jpg の右上の画像の様にグレーになるはずなのですが、グレーにならないんです…。 このスレで良いのかわからないのですが、よろしくお願いします。
917 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 18:06:22 ] なにか.netを必要としてる他のアプリケーションを起動してみて 普通に動作するかで.net frameworkが正常にインストールされてるか判別できるだろ その先はスレ違いだ 余所で聞け
918 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 18:13:06 ] スレどころか板違い。ここは *プログラム* 板だから、使うだけの人が来る所ではない 追い返すだけではなんだから、幾つかアドバイスを - .NETフレームワークがインストールされているかちゃんとした方法で確認する - .インストール時にエラーが出たなら、エラーメッセージ全文を一字一句違わずコピペorメモる この先は(疑問があったとしても)適切なスレを探してそちらへ
919 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 21:39:26 ] Vistaで、Google Chromeのタブ周りのようにウィンドウの枠の透明部分を広くするにはどうすれば良いでしょうか。 環境はVista、 VisualBasic2008です
920 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 23:44:43 ] >>919 Win32のDWM APIを使う。 単純に食い込ませるだけなら、DwmExtendFrameIntoClientArea関数 blogs.wankuma.com/katamari/archive/2008/06/24/145387.aspx 透明部分の形状を自由に指定したければ、DwmEnableBlurBehindWindow関数。
921 名前:919 mailto:sage [2008/12/14(日) 12:41:34 ] >>920 ありがとうございます。
922 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 11:00:51 ] Visual Basic 2008 Express Editionで.NET Framework 2.0用のプログラムを作っています。 標準のヘルプであるMSDN Express ライブラリ 2008では一部の命令が抜け落ちていて見れません。 そこでこのヘルプの代わりに.NET Framework 2.0 SDKをVB側から(F1による適応ヘルプを)呼び出せるよう設定する事は出来ないでしょうか。 両方入れると容量を食うので困っています。
923 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 17:26:03 ] 完全なMSDNは無料でダウンロードできるよ 2.0SDKのMSDNはアンインストールしてそっち入れるといいよ
924 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 17:59:36 ] 完全版MSDN > MSDN Express + 2.0 SDK
925 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 19:53:31 ] もしくはフィルタなしにする 立ち上げるたんびにいちいち再設定するのが禿しくめんどくさいがタダだからやむを得ん
926 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 21:33:03 ] 猫が分からなくて 誘導されてきた コンパイラインストよくわからない 誰か……
927 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 22:08:48 ] コンパイラインスト? Visual C# 2008 Express Edition入れればすぐ開発できるけど、どこで詰まってるんだ? どこからの誘導かと思ったが、スレ立てるまでもない質問スレからか このスレは過疎ってるから、C#(.NET)の初歩的な質問は"ふらっとC#"に行った方が良いと思うぞ あと、分からない事があった場合、可能な限り状況を詳しく説明して質問すると回答が貰えやすい ふらっとC#,C♯,C#(初心者用) Part35 pc11.2ch.net/test/read.cgi/tech/1229519838/
928 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 11:03:39 ] ごめんわかんねえ Cなのだが 付録ROM入れたはずが さっぱり分からない bcc32とかいうショートカットができたけれど HelloWorldで始める事が できないのです 猫ある人いないでしょうか…
929 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 11:12:02 ] ここは.NET関連だからスレ違い
930 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 20:12:11 ] ああ インストロールのことね
931 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 03:40:01 ] ngenって、どう使うの? 一回やればずっと有効なの?
932 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 21:18:07 ] C++のDLLをC#で使うためにC++/CLIのラッパーを書いています。 DLL関数の中に InterfaceObject* Func(); のようなクラスのインターフェイスを返す関数が定義されてて インターフェイスのポインタをプロパティに持つインターフェイスのラッパークラスを定義しました virtual bool Get (DWORD &rNextLine) = 0; の抽象メソッドに対応するメソッドとして bool Get(UInt32 %rNextLine); を定義し DWORD value; bool result; result = プロパティ->Get(value); rNextLine = (UInt32)value; return result; のように書いてビルドが通るようになったのですが。 もっとスマートにできないかなと悩んでいます。 return (プロパティ->Get(rNextLine))? true : false; みたいに1行で書くためにで%ハンドル演算子をキャストするような方法はないでしょうか。
933 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 22:42:53 ] こういう風にできる。 pin_ptr<int> p = &rNextLine; return プロパティ->Get(*p); ただ、pinしないそっちのほうが性能では優れていそうな気がする。
934 名前:932 mailto:sage [2009/01/24(土) 00:00:01 ] >>933 pin_ptrについて調べてみます。 ありがとうございました。
935 名前:デフォルトの名無しさん [2009/02/01(日) 15:21:56 ] .NETぢゃないライブラリならアプリと同梱して自動でインストールできるのに、 .NETってMSのサイトからDLして別途インストールさせないといけませんよね? これ、自分で勝手にファイル配れるようになってればまだマシだったのに、 いろいろなバージョンをDL、インストールしないといけない現状はいかがなものかと思います。 .NETって騒ぎ始めたあともMS謹製のOfficeは.NETじゃなかったと思うんですが、 やはりうざすぎて嫌われるのを予知していたのでしょうか
936 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:25:43 ] 配れます
937 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:19:52 ] 勝手に.net最新版をインストールしても、他のアプリケーションに悪影響を及ぼすことは ありませんか? あるいは他のひとに違うバージョンとかパッチをインストールされても動作が変わったり する恐れはありませんか?
938 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:23:53 ] ない 勝手に適当に選んでくれる
939 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:45:00 ] そうでもない。 2.0以降は大丈夫だが。 1.0-1.1以降 1.1-2.0以降 は動作は保障されない。
940 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:47:20 ] >>939 どうせ書くなら「まともな」日本語で頼む。
941 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:49:19 ] 理解できないの?ハハッワロス
942 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:56:13 ] >>939 最新版をインストールしても古いのが使われるよ
943 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 22:14:36 ] 逆に新しいので使わせたかったら、 古いのをアンインストするか、 構成ファイルでバージョン指定 <configuration><startup> <supportedRuntime version="v2.0.50727"/> <supportedRuntime version="v1.1.4322"/>