1 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:44:56 ] 前スレ VB.NET質問スレ(Part30) pc12.2ch.net/test/read.cgi/tech/1242522019/l50 テンプレは>>2 〜
369 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:13:46 ] >>368 だから、そんなものはスレッド内の処理に依存する問題であって、 一意にこうだ、なんて言えない。 だから先に「問題」があるコードを提示しろと言ってる。
370 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:14:17 ] >>367 基地外だなこいつ。 >先に「問題」があるコードをまず提示しろ、って言ってるのはそのあたりの >微妙な問題もあるからなんだけどね。 >俺に言わせりゃ、こんなので問題起こす奴の方がオカシイと言わざるを得ない程度の、 >超初歩的な内容だと思うけど。 おいw
371 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:16:16 ] >>370 意味がわからん。
372 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:19:06 ] >>369 だんだんこいつが何を言ってるのか分からなくなってきた >そんな面倒なことしなくてもベタにやるだけだと思うけど・・・ > >全スレッドを終了するメソッドを用意して、各スレッド内の処理の最後で >それを呼び出すようにするだけじゃん。 >悩むような問題かね。 そのやり方を教えろってんだよ。 >>349 に対して >そんな面倒なことしなくてもベタにやるだけだと思うけど・・・ なんだったらもっとシンプルなべたな方法があるんだろ? スレッドをアボートしない方法でそんな方法は思いつかないが。
373 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:22:34 ] >>372 スレッドをアボートするのとスレッドを終了させることはイコールじゃないよ。 こんなことから説明しなきゃならんのかよ。 例えばスレッドの中身が単純なwhileループなら、外からループ条件をfalseに 設定してやればスレッドは終了する。 っていうか、>>347 の問題とスレッドの終了方法は直接関係がない。
374 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:26:42 ] だからそれってほとんど>>349 だろ? それよりもベタな簡単な方法が、 「全スレッドを終了させるメソッドを最後に呼ぶ」 なんだろ? かつその方法はアボートしないんだろ? じゃあどうすんの?
375 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:28:25 ] >>373 >>349 見たら明らかだがどうみてもそんなこと分かってるっていうか最初からそう書いてる。
376 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:28:27 ] 単純化して言えば、>>347 の問題は>>352 に書いたとおり、 各スレッドを終了させる方法(メソッド)が用意されていれば、 全てのスレッドに対応するそのメソッドを呼び出すメソッドを作って、 それを各スレッドの一番最後の処理から呼び出すようにするだけ。 もちろん、自分のスレッドの終了を待つような馬鹿なミスを犯して デッドロックしないよう注意は必要だよ。
377 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:36:45 ] >単純化して言えば、>>347 の問題は>>352 に書いたとおり、 >各スレッドを終了させる方法(メソッド)が用意されていれば、 >>354 >各スレッドを終了させる方法(メソッド)が用意されていれば、 www そのメソッドを示さないと悩むだろw >悩むような問題かね? ってんだからさ、悩まないようにしてやれよ。 >各スレッドを終了させる方法(メソッド)が用意されていれば、 >全てのスレッドに対応するそのメソッドを呼び出すメソッドを作って、 >それを各スレッドの一番最後の処理から呼び出すようにするだけ。 > >もちろん、自分のスレッドの終了を待つような馬鹿なミスを犯して >デッドロックしないよう注意は必要だよ。 これが、>>349 に対して、 >そんな面倒なことしなくてもベタにやるだけだと思うけど・・・ の面倒なことしないベタなやり方なんだな。
378 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:38:19 ] 一番笑えるのは全部後だしでヒントが出た瞬間に反応してくることだな。
379 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:39:50 ] メインスレッドで終了フラグ立ててサブスレッドは そのフラグが立ってれば終了すればいいんじゃないの?
380 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:42:33 ] >>376 >もちろん、自分のスレッドの終了を待つような馬鹿なミスを犯して >デッドロックしないよう注意は必要だよ。 デッドロックって言葉が思いついたのか? この話の流れでは自分自身の終了を待つなんて状況自体が発生しないはずだけどな。 それとも>>376 のどこかで終了を待つようなコードを書いてしまう可能性があるのかい? どこで書くんだろうなそんなこと。
381 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:47:42 ] 他所でやれ
382 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:47:54 ] >>379 メインからは分からないから終了フラグは立てられない。 だから、終了フラグみたいなのを立てるのはスレッド側になる。 >>349 のようにイベントを使うか、 もしくはフラグだけにしてメインからは全スレッドにJoinするか、くらいだな。 まあイベントの方が普通なやり方だけど。 Joinだと結局全スレッドが終わるのを待つ感じになるからね。
383 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 17:56:39 ] どう見ても>>352 が素人で病気 以上、終了
384 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 18:25:35 ] >>380 ダメグラマらしい意見だね。 全てのスレッドを終了させるメソッドは、それ自身が終了させようとする スレッドの中の一つから呼ばれる。 スレッドの終了処理は、実際にターゲットのスレッドが終了したかどうかの 確証をするのが普通だから、例えばそれをベタにJoin()を使って行うとデッドロックする。
385 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 18:27:55 ] っていうか、結局起こりうる「問題」って何のことなのかね。 まったく意味がわからん。
386 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 18:33:59 ] 普通じゃないし今回の話でも確証なんて意味がない。 止まらない可能性まで考慮するならそもそもJoinなんて使っちゃダメで 自分自身だからどうという話ではない。 まだ続ける気? なら>>352 の例を示してほしいんだがな。
387 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 19:07:39 ] >>385 >>349 に対して>>352 で面倒なことしなくてもって言ってるんだから しかもスレッドを終了させるって言ってるんだから、 普通に考えればアボートすると言ってるとしか読み取れない。 本来そんな事しないでもすむのにスレッドをアボートするってだけで既に問題ありとされるのが普通。 スレッド使う上での常識としてね。 で、どっちにしても書き方からスレッドに関して素人なのが明らかだから、 コード書かせりゃそれ以外にもどっかに問題あるコードになる可能性が高いと思ってな。 まあ必要ないのにアボートする時点で常識的に問題ありとみなしていいレベルだが。 まさかフラグ立ててスレッド側で監視しつつ終了待機するメソッド作るのが>>349 よりベタとは思わないし、 フラグ立てるだけなら普通スレッドを終了するメソッドとは言わないし そもそもメソッドにするだけで面倒が増えてるだけ。 >>349 ですら面倒で、よりベタとなるとアボートするくらいしかない。 ってのが>>354 の意図。 ああ長い。
388 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 19:15:15 ] まあ正直いうと単に>>354 みたいに書いたら どっかでボロを出すかと思ったのも有るけどな。 >>352 も微妙な問題があるって自分で言ってるんだから、 本人じゃないならあとは>>352 に微妙な問題について聞いてくれよ。
389 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 19:18:48 ] >>387 なーんか2ch脳らしい強引な物の言い方だね。 何度も言うように スレッドの終了 ≠ スレッドのアボート 君が両者をイコールだと思うのは完全に勝手だが、 「俺にスレッドの終了=スレッドのアボートだと思わせるのはお前のせい」 みたいな自己中心的な物言いをされても、「恥を知れ」以外に返す言葉がない。 まあ、>>352 の発言が言葉が足りずミスリーディングなのは認めるけど、 要は、スレッドで実行したい処理をクラスでラップする「ベタ」な方法を取るべきであって、 >>349 的なスパゲティーコードはよくないって事だよ。
390 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 19:31:52 ] お前>>349 のやり方の意味分かってるのか? かなりベタでスパゲッティとかいうようなやり方じゃないぞ。 だいたい>>349 はプリミティブレベルの考え方に近いもので クラス化するとかどう書くかは別にやりたきゃ好きにしろってレベルだぜ。 つかクラスでラップってまたいきなり初めて出てきたな。 >>352 がそういう意図ってお前エスパーでも相手にしてるのか? 流石にそのベタなコードとやらを示してもらわないと分からない。 あっ余計な事言ったか、またループだな。
391 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 19:35:23 ] スレッドで実行したい処理をクラスでラップする、なんていうのは、 「ベタ」、つまり説明不要の定石だから説明しなかったまで。 っていうか、もういいわ別に。 一人かどうか知らんけど君みたいな馬鹿言い負かしても意味ないし。
392 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 19:38:21 ] こんな感じ?待っていれば他のスレッドも終了するという前提だけど。 Static testArr() As Boolean = New Boolean() {False} SyncLock testArr Dim testRes As Boolean = testArr(0) testArr(0) = True If testRes Then Exit Sub End SyncLock For Each thread In threads If Not Object.ReferenceEquals(thread, thread.CurrentThread) Then thread.Join() End If Next testArr(0) = False
393 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 19:53:18 ] >>391 今回は元々やりたい処理がそれぞ別メソッドになってるけど、 それでも「処理」をクラスでラップするのが常識かな? 一般に処理をクラスでラップするのが常識なのは、 処理に必要なデータをクラス側で管理するためで 今回のはどちらかと言えばスレッドの制御をクラスの機能として実装し、 処理はデリゲートとしてスレッド制御のクラスに渡すってのが普通な気がする。 C#なら匿名メソッドやらラムダ式使えばすごいシンプルに出来るんだがな。 今のVBって複数行のラムダ式使えたっけ? 次のバージョンからだったかな?
394 名前:351 mailto:sage [2009/09/26(土) 20:17:09 ] だから〜、沢山スレッド作っておいて一等賞を取ったスレッド以外を 終了させるなんていったい何がしたいんだ〜?
395 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 21:13:59 ] >>391 >スレッドで実行したい処理をクラスでラップする、なんていうのは、 >「ベタ」、つまり説明不要の定石だから説明しなかったまで。 >>347 のでどうやんだよこれ…?
396 名前:347 mailto:sage [2009/09/26(土) 21:22:45 ] 盛りあがってますね >>349 の方法でやってみます。ありがとうございました。 >>351 最小で1つ、多くてもせいぜい3つぐらいなんですけどね>スレッド数 内容は禁則事項です♪
397 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 22:45:23 ] そんなスパゲッティで面倒な方法はだめだ。 >>352 >>376 >>389 >>391 を見てクラスでラップする「ベタ」な方法でやるんだ。 こんなの定石だから>>351 はあえて教えてくれないぞ。 コードができたら問題点を指摘してくれるから見せてみるんだ。
398 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 22:49:50 ] 言っとくがこんな超初歩なところで問題あるコードなんて書いたら ちょっとオカシイってことだからな、超初歩以前に君がおかしくないかがためされるんだぞ。 心してかかるんだ。
399 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 22:54:17 ] そろそろウザイ。
400 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 23:16:42 ] テンプレ Q. 〜のやり方を教えてください A. クラスにラップしてベタに書け
401 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 03:41:35 ] デリゲートでマルチスレッドし、AsyncCallbackでコールバック関数で残りすべてのスレッドを終了させればOK
402 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 09:27:16 ] >>401 BackgroundWorkerでよいのじゃないか
403 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 11:06:32 ] ダメとは言わないが向いてないね。 意味がない。
404 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:13:46 ] >>401 AsyncCallback関数の中をどうやって実装するのだろう? なんか振り出しに戻る予感。。
405 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:49:39 ] BackgroundWorkerが一番楽だと思う。 WorkerCompleteあるし、CancelAsyncあるし。 >>401 は、どうやってほかのスレッド終了させるんだろう。
406 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:50:11 ] 結局大して変わらないよね。
407 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:52:23 ] >>405 どっちも大して変わらんて。
408 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:55:10 ] Environment.Exit()
409 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:56:59 ] VB2008の555だったかの究極?技?何とか言う本 立ち読みしてみたら酷かった。 この手の本はあんま進歩しないなあ。 ちゃんと理解してる内容だけ書けばいいのに。 .NET系って本に間違いが多すぎる気がする。
410 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:58:55 ] >>408 それだとプロセスが終了しちゃうじゃん。
411 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 13:59:05 ] >>347 っぽいコードをそれぞれのやり方で書いてみれば どれがやりやすいか、あまり差がないか よく分かると思うぞ。
412 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 15:00:04 ] >>410 >>347 は全てのスレッドを終了させると書いているので間違いではないな。
413 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 15:03:56 ] >>409 ドボンちゃんのサイト等があるのに今どきそんな本を買う人が居るのかね〜?
414 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 16:08:22 ] 詳しく
415 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:01:14 ] 継承されるクラスを作成するときに オーバーライドとイベント実装をどこで切り分けていますか?
416 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:02:24 ] >>414 ドボンを?
417 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:05:00 ] 継承を前提にするんだったらイベントはいらん 継承しないで外からアクションを挿入するためにイベントを使うんだ
418 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 20:15:19 ] >>415 ,>>417 二人とも何を言ってるのか意味不明すぎる。 エスパー同士の会話なのかアーパー同士なのかどっちなんだ。
419 名前:417 mailto:sage [2009/09/28(月) 20:23:03 ] 「継承されるクラスを作成」と書いてあるから,抽象クラスでも作ってるのかと思った たぶん勘違い Formの派生クラスを作ったときにFormのOnPaintをオーバーライドするべきかPaintイベントを使うべきか というような話なら,一般的にはオーバーライドした方がいい(少なくともMSDNにはそう書いてある)
420 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 22:50:51 ] >>419 Formは必ず派生クラスで使うのにOnHogeとHogeイベントの両方があるのかって話し。 実行効率が良いのはOnHogeだけど使いやすいのはHogeイベントかなと。 だったらイベントだけで実装しても良いのではないかと思っただけです。
421 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:04:15 ] OnHogeはオーバーライドされるためだけにあるんじゃない。 派生クラスから基底クラスのOnHogeを呼ぶことでHogeイベントを発生させるためにも使われる。 .NETのガイドラインで決まってることだから黙って従え
422 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:15:33 ] >>420 まあ>>421 みたいな教条主義もどうかと思うが、 自分で発生するイベントを自分で受信する、普通に考えれば間抜けチックなプログラミングを 「使いやすい」と感じるセンスには疑問を持った方がいいと思うよ。 それはおかしい。かなり変てこなセンスだ。
423 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:20:18 ] WPFになるとOnHogeを持たず派生クラスでもイベントハンドラを使うしかないイベントが多く出てくるよ。 まあWPFは設計が全然違ってて機構上そうなってるんであって WinFormsではおとなしくOnHogeを使うべき。
424 名前:420 mailto:sage [2009/09/28(月) 23:25:16 ] オレの説明がとっても変だったか。。 仮想メソッドを使うかイベントデリゲートを使うかって話です。 便利と言うのはIDEがイベントを挿入してくれるから。
425 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:27:33 ] 仮想じゃなくて抽象メソッドだった。
426 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:44:41 ] >>422 IDEとトータルで考えない方がセンスがないだろう。 全部イベントなのにフォームとコントロールでわざわざ使い分けるのがセンスがいいのか?
427 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 23:45:41 ] >>425 つまり、別の言い方をすればprotectedなイベントは有りかって話かな? 少なくとも.NETクラスライブラリの中にはあるね。 個人的はそういう方法を取りたい場面に当たったことがない。
428 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 11:14:14 ] >>424 継承と委譲の区別は出来てるか?
429 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 16:05:39 ] >>416 冗談w
430 名前:デフォルトの名無しさん [2009/09/29(火) 20:06:10 ] >>428 抽象メソッドとデリゲートは結果的の同じだが。
431 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:44:31 ] イベントは引数の形式が決まってるだろ(従わないことも可能だが完璧なガイドライン違反) テンプレートメソッド作る度にいちいちHogeEventArgsやHogeEventHandler用意すんの? それに抽象メソッドなら派生クラスで実装することを強制できる
432 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 11:48:08 ] >>424 便利かなぁ…? とりあえず overrides空白 まで入れればインテリセンスは利くわけだし。 >>430 つまり「よくわからない」ってことね。 そのフォームを他のフォームのインスタンスに含めるのであれば いちいち派生させずともイベントを追加してやればいいし 常に派生させるんだぜ!というのなら Protected Overridable なメソッドを 用意してやればいい。 まあ両方用意しとくのが無難だし、>>422 には同意しとく。 >>431 >いちいちHogeEventArgsやHogeEventHandler用意すんの? 特に追加情報がなければ EventArgs をそのまま使えばいいし、 そーすっとデリゲートも Public Event Hoge(ByVal sender As Object, ByVal e as System.EventArgs) の一行で済む。
433 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 11:49:17 ] VB終了のお知らせ gigazine.net/index.php?/news/comments/20090930_security_essentials/
434 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 19:09:43 ] なんでM$製のアンチウィルスソフツがVBに関係するのか、>>433 には説明を求む。 文中検索掛けてもVBもVisualも引っかからなかったのだが。
435 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 19:18:59 ] 古典的ネタにマジレスカコイイ
436 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 19:37:14 ] >>432 >とりあえず overrides空白 まで入れればインテリセンスは利くわけだし。 お〜、そんなんが出来るんだ。 知らなかった。ありがと〜ん。
437 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 19:38:10 ] ネタだったのかYO! 何かVB.NETの動作を阻害するものが入って動かなくなるのかと心配しちゃったじゃないかw
438 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 19:50:32 ] インテリセンスとGoogleが無いとプログラミングが出来ない身体になってしまった。
439 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 19:51:46 ] それでいいのだ
440 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 20:23:36 ] >>428 オブジェクト指向で言う委譲とデリゲートの委譲は別のものでしょ?
441 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 20:54:58 ] 同じだ オブジェクト指向でいう移譲を手軽に使えるようにするための仕組みがデリゲート
442 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:04:15 ] どこがどういうふうに手軽なの?
443 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:09:17 ] Javaやればありがたみがわかるよ いちいちイベントハンドラごとに内部クラス作ってインターフェイス実装するんだぞ やってることは本質的にデリゲートとまったく同じだけど糞面倒で可読性も悪い
444 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:19:01 ] 別に内部クラスとかつくらなくても、クラス自身でインターフェース実装して、 addActionListener(this); とかできるじゃん。 全然面倒くさくないし、簡潔明瞭じゃん。
445 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:25:55 ] 同じ型のリスナを複数実装したいときは? それに,直接実装するならpublicにしないといけないだろ? イベントハンドラが全部publicで同じ名前(実際には無理だけど)ってどう思う?
446 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:37:32 ] 引数で区別できなかったっけ? publicで何か不都合ある? どうしても不都合なら、別に内部クラスとかつくるのもそれほど面倒とは思えんが。
447 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:44:33 ] >>446 443じゃないけど、面倒に決まってるでしょ。 だいいち、ただコールバックして欲しいだけなのに 本質的でないインターフェイスが必要になる点で鬱陶しすぎる。
448 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:48:43 ] >>446 Javaやってるとはとても思えないな カプセル化ってわかってる? コントロールを削除したらpublicメンバを削除して継承してるインターフェイス減らすの?
449 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 21:58:47 ] インターフェースが必要かデリゲートが必要かの違いだから面倒くささ度の観点からみれば対して変わらん。 インタフェースの方が実装の有無が他クラスから判断できるとか、使い回しができるとか、便利な面もある。 実際、AOPではインターフェースのそういった性質が多用されている。 同様にインターフェイス外すのも、デリケート外すのも俺的には面倒くささはいっしょ。特にC#とJavaでは。 VB.NETのは場合メソッド削除するだけだから幾分簡単に見えるが大した違いではない。あとIDEの自動化による 簡便性の違いは多少あると思う。
450 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:01:14 ] Javaは単一のactionPerformedで全部受けてifでイベントの発生源ごとに分岐するパターンが最悪 WndProcかよ
451 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:24:35 ] orz
452 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 23:49:19 ] >>449 デリゲートはあくまで委譲のための(処理をカプセル化するためといってもいい)しくみなんだし、 いわゆる一般的な意味でのインターフェイスに関して インターフェイスかデリゲートかっていうものではないでしょ。 javaだってイベントは普通委譲モデルで、ほとんどデリゲートとおんなじことやってるだけだし。 この使い方においてはインターフェイスもデリゲートも大した違いはない。 まあ専用のしくみであるデリゲートの方がよっぽど分かりやすいと俺は思うが。 .NETの言語だって、本来の意味でのインターフェイスの代わりに デリゲートを使うなんてことは普通はしない。 ただし、フォームのイベントなんかは、実質考え方自体がイベントなんだから、 自分自身のイベントもコントロールなんかと同じようにイベントハンドラでやっても 何らおかしいことはない。
453 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 23:59:22 ] 問題はIDEとの相性の悪さ JavaでIDEにイベントリスナを自動生成させたりするとものすごーく分かりづらいコードが出来上がる
454 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 10:13:13 ] DataBindingしてるソースの方を変更したとき、コントロールに同期させるには どうすればいいでしょうか? IPropertyChangedを実装する方法はわかったのですが、そういった準備なしに どこかのメソッドを呼び出す形で同期することはできないでしょうか?
455 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 23:58:40 ] ResetBindings
456 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 09:56:55 ] Form2からForm1のTextBox1.Textを設定できネーよなんとかしろ
457 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 11:07:58 ] >>456 するな、そんな阿呆なこと。 Form1 に、TextBox1.Text を取得/設定する Public なプロパティを定義するのが常套。
458 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 11:09:59 ] むしろVBだからこそ、そんな阿呆なことができるべき
459 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 11:11:00 ] VBだからどうでもいいよw Form1のデフォルトインスタンス使えばおk コントロールのアクセスレベルはデフォルトでinternalだからそのままアクセスできる
460 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 11:34:49 ] >>459 >デフォルトでinternalだから Friend じゃなくて?
461 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 11:40:35 ] ああC#とごっちゃになってた
462 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 11:52:15 ] >>458 規定のアクセスレベルがFriendなので同じプロジェクト内からは 出来てしまうアフォな仕様ですよ。 気に入らぬのでPrivateに変えてます。 C#だとPrivateなんだけどな。
463 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 12:24:08 ] 規定 ガイテイってよむの?
464 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 12:45:39 ] ttp://dictionary.goo.ne.jp/ ほれ
465 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 12:50:24 ] >>463 のりさだ (人名) です。
466 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 14:13:36 ] >>463 既定と間違うのはよくあること。 時々“規定クラス”と変換してしまうのは個人的によくあること。
467 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 19:12:43 ] >>463 ガイテイ 概定ってかくの?
468 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 00:53:43 ] オマエらどんな餌にでも食いつくんだなw
469 名前:デフォルトの名無しさん [2009/10/06(火) 14:35:51 ] 失礼します Convert.ToStringで、数値を16進数にし、さらに1桁の場合は頭に0をつけて文字数を揃えるのを一括して行う方法はあるのでしょうか? 現在は16進数の文字列にしたあと、文字数をチェックして1桁なら0をつけているのですが、書き方が汚くなってしまうので・・・。 すいませんがよろしくお願いします。
470 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 15:02:32 ] >>469 Convert.ToString(Int32, IFormatProvider) IFormatProviderとしてNumberFormatInfoを使う。 なんて面倒なことしないで、 string.Format("{0:X04}", 100) じゃ駄目?
471 名前:デフォルトの名無しさん [2009/10/06(火) 15:11:02 ] >>470 できました、ありがとうございます
472 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 16:50:49 ] むしろ100.ToStringで
473 名前:デフォルトの名無しさん [2009/10/06(火) 20:14:58 ] ("{0:X04}", 100) {0:X04}と100のイミは?
474 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 21:22:52 ] 前後をある文字で埋めるだけなら、String.PadLeftやPadRightもあるね。 >>473 複合書式指定文字列と書式設定するObject
475 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 00:39:12 ] うーむ・・
476 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 01:55:32 ] もとの質問は2ケタでいいらしいぞ 大昔のBASICちっくに Right$("0" & Hex$(数字),2)とかどうだ
477 名前:デフォルトの名無しさん [2009/10/08(木) 17:19:21 ] データグリッドビューでデータを表示させたとき 上の方をクリックすると勝手に列ごとにソートしてくれますが そのときのイベントを取得することってできますか? どうしたらよいかおしえてください
478 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 17:26:43 ] Sortedイベントとかあるけど
479 名前:デフォルトの名無しさん [2009/10/08(木) 19:29:40 ] >>469 i.ToString("X02")
480 名前:デフォルトの名無しさん [2009/10/08(木) 22:42:50 ] タイマの使い方がわかりません。以下のソースで試してみましたが、 Threading.Timerは時間通りに実行されず、他の2つは実行もされません。 Timers.TimerとWindows.Forms.Timerはデザイナの方で定義し、パラメータはデフォルトです。 イベントハンドラはすべてtimeout=trueとしているだけです。 どなたか教えてください。よろしくお願いします。 Dim timeout As Boolean Private Sub Button1_Click(略) Handles Button1.Click timeout = False Dim ThreadingTimer As Timer = New Timer( _ New TimerCallback(AddressOf ThreadingTimer_Tick), Nothing, 0, 1000) While timeout = False End While ThreadingTimer.Dispose() timeout = False TimersTimer.Interval = 3000 TimersTimer.AutoReset = False TimersTimer.Enabled = True While timeout = False End While TimersTimer.Dispose() timeout = False FormsTimer.Interval = 2000 FormsTimer.Enabled = True While timeout = False End While FormsTimer.Dispose() End Sub
481 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 22:51:51 ] 無限ループやめろ
482 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 23:19:11 ] 直接は関係ないけどDisposeの書き方が悪い Try-FinallyのFinallyの中でDisposeするか,Using文を使ってDisposeは書かない
483 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 23:23:45 ] まあ普通はタイマを一つのメソッド内でDisposeするなんてないだろうけどな
484 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 23:25:12 ] CPU目いっぱい使ってループしてんだから、 1コアだとかなり反応悪いだろうな。 2コア以上ならそれなりに動くかも知れないが。 で、デザイナではっつけてる方はそもそもUIスレッドでイベントが発生するしくみになってるから これじゃ動くわけがない。
485 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 23:30:18 ] 何でModule使ったら駄目なんですか?便利なのに Myとか最高
486 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 23:32:08 ] どこで何やってるかわからなくなるからだよ。 こんなこと言っても解らないだろうけど,クラスを使うのは余計なことを考えなくて済むようにするため。
487 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 23:43:04 ] どういう文脈か知らんが、 Module使ったらダメってのは Moduleを自分で作るな ってことじゃないのか?
488 名前:デフォルトの名無しさん [2009/10/09(金) 00:18:08 ] >>481-484 ありがとうございます。 原因がわかったのでなんとかできました。 タイムアウト付きの処理を行いたかったのですが、 Thread.Joinで希望する処理ができました。
489 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 10:26:07 ] >>485 便利なのは作った本人だけ
490 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 10:49:02 ] すべてのクラスはnewして使うべき
491 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 11:13:39 ] はあ?
492 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 11:25:50 ] ふぅ
493 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 14:27:10 ] 4次元ベクトルを作ろうと Public Class Vector4D(Of T) をつくり、この中で加算を定義するために T型 の変数同士の加算を使ったら定義されていないというエラーになりました。 このクラスはベクトルなので T型 の集合は加減乗除やべき乗に閉じていなければならないのですが、そのような制限をつけるために Of T 「As ...」 などで対応し、結果として T型 の変数同士の加算がエラーにならないようにすることはできますか? (練習用なのでこの方向で解決できるのかどうかをまず知りたいです。4次元固定のベクトルクラスが .NET Framework に存在するならば、さらにそれを教えていただけるとありがたいです。)
494 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 14:39:59 ] 演算部分はデリゲートなりインターフェイスなりに委譲するようにする
495 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 17:35:50 ] >>493 演算子 オーバーロード でぐぐれ
496 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 17:38:28 ] 演算子オーバーロードはジェネリックには使えないよー
497 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 18:14:03 ] Of T ってどんなイミが
498 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 18:46:21 ] >>496 2008で実験してみたが ジェネリックに使えなくはないけど、型ごとにオーバーロードしないとだめっぽい Public Shared Operator +(ByVal a As Vector4D(Of Integer), ByVal b As Vector4D(Of T)) As Vector4D(Of Integer)を定義 Public Shared Operator +(ByVal a As Vector4D(Of Double), ByVal b As Vector4D(Of T)) As Vector4D(Of Double)を定義 ...以下延々と必要な型に対して定義していく 使う方は楽かもしれんが、定義する方はジェネリックの利点がなくなるなぁ
499 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 18:58:13 ] 使う方にもデメリットがあるよ オーバーロードされていない型のVector4Dをまともに使うことができなくなる Vector4Dの外部から演算子オーバーロードを定義はできないから
500 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 19:42:46 ] そもそもベクトルをジェネリックにする意義がよくわかりません。 どういう意図なんだろ。よーわからん。
501 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 20:16:14 ] そこは疑問もつとこじゃないだろ。 あと今回問題なのは、Vector4Dの実装側で、 Tに対して算術演算が出来ないことなんだから、 演算子のオーバーロードは何の役にも立たん。
502 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 20:28:44 ] >>501 時々君みたいなこという人がいるけど、 そもそも必要性が疑わしいものの実現可能性を考えてなんの意味があるの? ベクトルをジェリックにして何の意味があるんだよ。 意味ないでしょ。
503 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 20:51:47 ] System.Linq.ExpressionとかDynamicMethodとか使えばできなくはないよ 算術演算を行うメソッドを動的に生成してしまえばいい
504 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 21:03:29 ] float,double,decimal,固定小数点数型辺りで使い回したいとか?
505 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 21:06:19 ] C++ではたいていベクトルはテンプレートになってるけど 実際doubleやfloat以外に使われてるのを見たことがない
506 名前:493 mailto:sage [2009/10/09(金) 22:23:58 ] 皆さん、レスありがとうございます。最初に DynamicMethod を勉強して >>503 を試してみることにしました。 >>494 もう少し具体的に書いていただけると助かります。 >>504 主な目的はその通りです。
507 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 22:28:27 ] DynamicMethodは無謀すぎる インラインアセンブラみたいなことするんだぞ 自分は.NETオタだと自負できるようになってから出直せ
508 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 22:56:46 ] 命令口調クンって馬鹿だな、まで読んだ。
509 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 23:05:40 ] やっぱりそもそもの発想がおかしいと思うけどねえ。 パフォーマンスが重要でないなら一番「大きな」型だけで演算を定義して あとの型はその型との相互の変換だけ考えればいいし、パフォーマンスが重要なら・・・ そもそも演算誤差の扱いっていう泥臭い問題の存在を忘れてないか
510 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 23:43:06 ] テンプレートみたいな何でもできるものをイメージしてたら、 Vectorをジェネリックに定義するのは何もおかしくない。 別に数値要素だけでしか使わないものではない。
511 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:07:29 ] ジェネリックデリゲート使って演算定義から取り出すやり方も出来ないことはないぜ。 そこまでする価値があるかは別問題として。 DynamicMethodよりは楽だけど。
512 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:08:17 ] あとどっちにしてもパフォーマンスは若干悪くなるな。
513 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 18:48:11 ] >>511 Int32等のCLI組み込み型については演算子がオーバーロードされてるわけじゃないから無理 DynamicMethodを使わないのであれば, Int32とInt32の足し算,Int32とByteの足し算,…みたいにすべてのケースに対する演算処理を 定義しておくしかない
514 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 20:50:23 ] ExpressionTreeを使えばこういう事も可能だが ttp://ufcpp.net/study/csharp/sm_genericop.html
515 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 20:52:22 ] それDynamicMethodで実装されてるんだけどな
516 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 00:52:44 ] サイトのソースデータをString変数に入れたら&という文字が&に置き換わっているのですが これを一括して元に戻すにはどのような方法で戻したら良いでしょうか? 他にも置き換わっているものがあると思うので&に限定したReplaceではない方法が あれば教えていただきたいです。
517 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 00:54:09 ] ↑ なんか消えてしまったみたいです。 &が& になってしまいます。(本当は半角)
518 名前:493 mailto:sage [2009/10/11(日) 00:55:17 ] DynamicMethod を使う方法と並行して、>>514 を試しています。 ufcpp.net/study/csharp/source/Operator.cs より、C# のコード public static readonly Func<T, T, T> Add = Lambda(Expression.Add); を VB にすると Public Shared Add As New Func(Of T, T, T)(AddressOf まではわかったのですが、この右に何をつければよいでしょうか?
519 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 00:57:25 ] >>517 HtmlEncode/HtmlDecode
520 名前:493 mailto:sage [2009/10/11(日) 00:58:02 ] >>516 HTMLの実体参照ですね。頻出のものは & ←→ & > ←→ > < ←→ < ですが www.ne.jp/asahi/minazuki/bakera/html/reference/charref などで一覧を見ることができます。
521 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 01:03:25 ] >>519-520 ありがとうございます。 おかげさまで無事対処できそうです。
522 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 02:24:22 ] 特殊な文字があるutf-8のwebページのソースをファイルに保存したいのですが WebClientでutf-8を指定してダウンロードしてStreamWriterで、書き込み時にutf-8を指定して 書き込んでいるのですが、保存されたテキストを見るとその文字が?になってしまっています。 teraPadというエンコードを指定できるテキストエディタでutf-8を指定して確認しているのですが 元の文字は消えてしまっているようです。 WebClientでダウンロードした直後にString変数に入れて、デバッグを一時停止して カーソルを当てるとその特殊文字は正常に表示できているのですが、 そのままConsole.WriteLineに出力すると?になってしまっています。 ブラウザのソース表示から直接TeraPadでソースを開いても?になってしまいます。 これはどのようにして保存したら正しく保存できるでしょうか? ちなみに文字は〜という文字の波を上下に反転したような形の文字です。 よろしくおねがいします。
523 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 04:19:54 ] 文字の確認はバイナリエディタでやった方が良い DownloadFileすればプログラム上でエンコーディング悩む必要もないけど?
524 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 05:27:02 ] コンソールとかエディタが使ってるフォントがその文字表示できないってオチじゃないだろうな
525 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 10:25:50 ] >>522 全角チルダの上下反転表示とくれば、 FullWidthTilda(U+FF5E) と WaveDash(U+301C) の変換問題だな。 TeraPadは内部コードがShift_JISらしいので、 WaveDashが化けてしまっているんじゃないかな。 一度、WikipediaのUnicodeの所を読んでみると良いよ。
526 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 11:02:18 ] >>518 Public Shared ReadOnly Add As Func(Of T, T, T) = Lambda(AddressOf Expression.Add) Public Shared Function Lambda(ByVal op As Binary) Return Expression.Lambda(Of Func(Of T, T))(op.Invoke(x)).Compile() End Function 試してないけどだいたいあってるはず Imports Binary = Func(Of ParameterExpression, ParameterExpression, BinaryExpression) を忘れずに
527 名前:526 mailto:sage [2009/10/11(日) 11:05:56 ] 訂正 Return Expression.Lambda(Of Func(Of T, T, T))(op.Invoke(x)).Compile()
528 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 11:43:33 ] 内部SJISのエディタでutf8開くなんて無謀すぎだ。
529 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 11:54:46 ] どちらかというと、今時内部SJISのエディタの存在自体が無謀な気もw
530 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 14:29:59 ] >>522 chcp 65001 hoge.exe >file
531 名前:522 [2009/10/11(日) 22:12:39 ] レスありがとうございます。 素直にメモ帳で開いたら正しく表示できました。 正しく保存できているのにteraPadで表示しようとあれこれやっていたんですね; 助かりました。
532 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 04:13:45 ] comboboxで選択された内容を配列に格納すんのってどうやんの? 簡単におせーて
533 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 08:08:19 ] SelectedItem
534 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 10:50:40 ] >>532 一つしか選択できないのに何故ゆえに配列?
535 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 17:01:01 ] なにゆえゆえ?
536 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 17:45:30 ] >>534 細けーこたぁいいんだ >>533 こいつをどうにかすればいいんだな?
537 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 19:00:52 ] いやまず君自身の頭の悪さをどうにかしないとダメだよ
538 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 19:56:07 ] 無茶ゆうな
539 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 20:37:04 ] 掲示板とかのメッセージみたいなツリー構造のデータをファイルに保存するのに良い方法があったら教えて
540 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 20:41:01 ] 2ちゃんみたいに、フラットにしちゃうのが楽。
541 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 21:11:49 ] >>539 JSON
542 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 21:23:05 ] >>539 尻洗いズ
543 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 21:24:34 ] >>537 オレもそう思う。
544 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 23:25:45 ] 羽山博いきてる?
545 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 14:41:09 ] すいません、 コンボボックスのドロップダウンをEnableをFalseにせずに 出ないようにしたいんですが、これってvb.netじゃできないもんでしょうか?
546 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 19:20:06 ] For I = 1 To 1000 System.Threading.Thread.Sleep(1) Application.DoEvent Next これで約1秒待機しているのですが以前は大体1秒、2秒だったのですが 最近はすごい長くなってきました。 10000でも10秒位だったのですが、1分近くかかるようになりました。 これはどういう部分に原因がありそうでしょうか? そういえばパソコンの動作も鈍い感じがします。 CPUやメモリには全然余裕がある状態でも同じです。
547 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:00:29 ] そういうコードを書かない、でいいじゃないか
548 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:27:24 ] >>546 お前はあほか
549 名前:526 mailto:sage [2009/10/13(火) 20:28:24 ] UIスレッドでSleepはご法度
550 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:49:55 ] >>547 どう書けばいいですか?
551 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:51:33 ] タイマを使う
552 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:52:52 ] 待機が必要になるような処理をUIスレッドでやらない
553 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 20:53:40 ] API剥き出しw
554 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 21:10:41 ] 必死な馬鹿が一人紛れてるな
555 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 21:52:55 ] 作り方はともかく、Sleepは最小の待機時間しか保証しないからな。 その何倍も経過した後で戻ってきても何の不思議も無い。 Do-LoopとStopwatchクラスで1秒経過するまで待てばそれなりに動かせるけど、 設計自体見直したほうがいいだろうな。
556 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 21:57:18 ] DoEventsで時間食ってるんだろ
557 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 23:39:55 ] 今無職なのでVBで食っていこうかなって思ってます。オスッ
558 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 10:43:08 ] ぼくも無職ですがVB覚えたい 昨日駅前のパソコンスクールに言って 「VBありますか?」 って聞いたら無いって言われました やはり独学しかないのか
559 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 12:33:00 ] スクールなんぞ金の無駄でしかない。
560 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 17:34:42 ] じゃ、本で独学がいちばん?
561 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 20:18:58 ] わざわざ始めるならJavaにしとけよ
562 名前:デフォルトの名無しさん mailto:sage [2009/10/14(水) 21:59:49 ] >>546 キミのその糞なコーディングにパソコンが嫌気がさして来たからだと思う。
563 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 01:54:10 ] メディアプレイヤを起動してみるんだ
564 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 09:28:09 ] >>562 終わった話に後から煽るだけ、ってのやめれ。 頭悪そうにしか見えない。
565 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 09:56:30 ] >>560 今からなら C# いいよ
566 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 20:47:26 ] JavaとC#を同時にやるのがいいと思う VBはC#ができれば自動的にできるからあえてやる必要はない
567 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 20:56:44 ] なにゆえ同時に
568 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 22:12:58 ] Dim Arr As New ArrayList Dim R As New Regex("hoge.+?") Dim M As MatchCollection M = R.Maches(hogeString) 上のような正規表現のMachesでマッチした結果を ArrayListに入れたいのですが どのように書いたら良いでしょうか?
569 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 00:07:41 ] >>568 あっどれんぢ
570 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 10:08:57 ] じゃあC#解説のおすすめのサイトと本教えてよ
571 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 11:21:47 ] ■@IT:連載 改訂版 C#入門 www.atmarkit.co.jp/fdotnet/csharp_abc2/index/index.html 入門とは書いてあるけど、これ全部理解できればまず困る事はないと思う このサイトには他にもカテゴリが山ほどあって 目的の情報を探すのが大変かもしれないけど 凄く役に立つサイトですよ もっと簡単そうなサイト?あったら俺も知りたい^^
572 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 13:11:26 ] VBってそういう言語面からきちんと解説してるサイトや書籍が少ないよな 変数,演算子,制御構造終わったらあとはコピペ用Tipsばっか
573 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 13:17:09 ] 動けばいいから
574 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 19:21:06 ] >>569 すみません具体的にどう書いたら良いですか? Arr = AddRange(〜〜〜) ここがわかりません。
575 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 20:02:47 ] お前のコンパイラはエラーが発生すると爆発でもするのか?少しは試せよ。
576 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 21:23:28 ] 色々試しすぎて爆発したから質問してみた
577 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 21:50:04 ] すこしはググれよ
578 名前:デフォルトの名無しさん [2009/10/16(金) 22:02:27 ] もうググり杉って出た はやく教えて
579 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 22:10:39 ] ヘルプ嫁
580 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 22:27:02 ] もういい聞かない もったいぶりすぎ質問スレじゃなかったのかよ
581 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 00:53:48 ] >>580 質問スレだが回答スレではない。
582 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 00:55:37 ] >>574 × Arr = AddRange(〜〜〜) ○ Arr.AddRange(〜〜〜)
583 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 03:27:23 ] 800*600のjpgを640*480にしてpngなどで保存するにはどんなコードを書けば
584 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 08:48:35 ] BitmapクラスとGraphics.FromImage
585 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 08:56:31 ] VBでChar.IsDigit("66t"),Char.IsDigit("3E5")がTrueになりますが、普通に10進数の数字だけで判断することはできませんか?
586 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 09:08:59 ] 普通に10進数の数字だけで判断してるけどな、Char.IsDigit なぜそれでTrueを返すかはヘルプ見ろ Int32.TryParseとかで変換しちまえばいいんじゃね
587 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 13:12:05 ] それで実現できました。ありがとうございました。
588 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 17:18:21 ] テキストボックスを、選択・コピーできるテキスト表示領域として使おうとしています。 したいこと @キャレット非表示 A方向キーでのキャレット移動無効化 BSHIFTでの選択無効化 @はAPIのHideCaretで出来たのですが、他がさっぱりわかりません。 TextBoxBaseの該当メソッドをオーバーロードすればいいのでしょうか? そうだとして、そのメソッドはどれでしょうか?
589 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 17:45:22 ] キャレットを非表示にしてどうやって選択すんの?
590 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 18:07:31 ] >>589 表示されて無いだけで選択は出来ます。 つまり、マウスだけで選択できる状態にしたいのです。
591 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 18:12:22 ] Shift キーと方向キーを殺せばいいんじゃね?
592 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 18:16:32 ] おすすめの 有料追加コントロール 無料追加コントロール 紹介して
593 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 19:29:54 ] >>591 方向キーでスクロールをしているので、それが出来ないんですよね……
594 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 19:58:11 ] なーんかユーザビリティを毀損するとしか思えない妙な俺様仕様に こだわる人って時々いるけど、正直理解できんな。 明らかに便利で合理的な仕様であれば実現に向けて努力するのもわかりもするんだが。
595 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 19:59:28 ] >>593 殺した上でスクロールスりゃいいだろハゲ そんな Windows の流儀にそわない動きしたいなら、少しは自分で工夫しろよ。
596 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:10:34 ] WebBlawserもどきを作りたいって言ったほうがよかったかな。
597 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:11:23 ] WebBlawser・・・
598 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:21:15 ] Browser....
599 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 20:56:59 ] Brassiere...
600 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 21:08:29 ] Brothers...
601 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 22:31:21 ] >>596 ブラウザは普通シフトキーは受け付けるでしょ。 だから単に→←キーだけ握りつぶせばいいだけじゃないの? ま、別にカーソルキーで範囲選択ができても何も困らないと思うが・・・
602 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 23:48:11 ] >>595 出来たよ。 みんなありがとね。
603 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 01:20:18 ] ウソつかなくてok
604 名前:493 mailto:sage [2009/10/18(日) 02:07:29 ] T型の変数どうしの演算を行うことは >>514 の方法でできました。 次に内部メソッドとして「要素の平均」を実装しようと試みています。 作業用のT型の変数に 0 をそのまま代入したり特定の数値で割るとエラーになりますが、これも同様の方法で回避できるものでしょうか?
605 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 12:46:21 ] 0の代わりにNothingを代入する。 特定の数値で割るのは当然Expression Treeで生成したコードを使えばいいだろ。
606 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 12:56:03 ] 策士策に溺れる、っていうのはこういう人のことを言うんだろうなたぶん。
607 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 12:59:12 ] 確かに手段が目的になっている気がする。
608 名前:605 mailto:sage [2009/10/18(日) 13:03:30 ] あー最後に要素数で割るのが難しいな public static readonly Func<T, int, T> DivideByInt32; static Operator() { var left = Expression.Parameter(typeof(T), "left"); var right = Expression.Parameter(typeof(int), "right"); DivideByInt32 = Expression.Lambda<Func<T, int, T>>( Expression.Divide(left, Expression.Convert(right, typeof(T))), left, right).Compile(); } これ使えばいけるはず でも平均値だったらLINQ使ってitems.Average()でいいと思う(itemsがジェネリック型の場合は不可)
609 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 13:04:57 ] Timer_Tickイベント実行中はTimer1.EnabledをFalseにしますか? Falseにしない場合、Timer_Tickプロシージャ内の処理が多くて次のTickとダブってしまうこともありますか?
610 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 13:10:48 ] Falseにする必要はありません。 Timer.TickはUIスレッドで実行されるので次のTickとダブることはありえません。
611 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 13:12:51 ] ありがとうございます。了解です。
612 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 13:58:27 ] .NET 一般のことかもしれませんが、String.Format の逆、C の scanf のようなメソッドや関数はありますか? こんな感じで使えればいいなイメージ: Dim s As String ' フォーマットを表す文字列 Dim inputString As String = getInput() ' たとえば s のフォーマットでファイルに保存してあるものを読み込んだ結果 Dim i As Integer Dim l As Long Dim d As Double inputString.hoge(s, i, l, d) ' i, l, d に値が入る Dim o As String = String.Format(s, i, l, d) ' o = s となる
613 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 14:03:01 ] 正規表現でキャプチャしてInt32.Parseとか使ってパース
614 名前:デフォルトの名無しさん [2009/10/18(日) 16:47:54 ] ■最近VBAを勉強し始めました、初心者です。よろしくお願いします。 VB.NETというのをしりました。 wiki等には、VBと違いNET関係の機能が追加された、とかいてありました。 いったいこの.NETではなにができるのですか? VBのことも詳しく知りませんが、 わかりやすく.NETのすごさを教えてください。 例えば、、、こんなことができるよ。、、、みたいな感じで。 そのすごさや有用性のようなものを簡単に教えてください。 すみませんが、よろしくお願いします。
615 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 17:09:36 ] こんなことができるよ、以前に、すでに VB はなくなりました。 あとは、.NET 上で動く VB (いわゆる、VB.NET) しかありません。
616 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 17:40:34 ] ぶっちゃけ似た構文を採用しただけで殆ど別物。 JavaScriptとJava位の違いはある。
617 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 17:54:43 ] 何が出来るってまた難しいことを。 大抵のことは出来るw
618 名前:デフォルトの名無しさん [2009/10/18(日) 18:18:06 ] >>615 ”すでに VB はなくなりました” → .NETでもVBみたいなことはできるんですよね?? >>617 ■例えば、自動で発動するようにして、 あるサイトに自動ログインして文章をコピーして エクセルシートに貼り付ける。この作業を1時間おきにしたいんですけど可能? つーかこのくらいはVBAでもできちゃうのかな?? わからんので教えてください。
619 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 18:22:16 ] できる。
620 名前:デフォルトの名無しさん [2009/10/18(日) 18:24:12 ] 自動ログイン〜〜〜はVBAでもできちゃう??
621 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 18:25:32 ] VBA だろうと、XmlHttpRequest() すればいいだけ。
622 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 19:11:07 ] 自動ログインはちょっと難しい
623 名前:デフォルトの名無しさん [2009/10/18(日) 19:20:47 ] >>622 ちょいむずい、、、はVBAだと? .NETならできちゃう?かな?
624 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 21:54:18 ] TextBoxをMultiLineにしてあるのですが、AppendTextで100行に達したら上から消していきたいのですが どんな関数を使えばスマートにできるでしょうか?ヒントください。
625 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 21:59:10 ] >>610 Application.DoEventsとかやってると割り込まれるが。。。
626 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 22:39:35 ] >>623 どっちでもたいして変わらんよ。
627 名前:デフォルトの名無しさん mailto:sage [2009/10/18(日) 23:10:37 ] >>624 正規表現でも使うか。 っていうか素直にListBox使えば?
628 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 11:29:38 ] 特に何かした覚えが無いのに何故かデバッグの時にbinに作るのとbin\debugに 作るのがあるけどどこで設定するんでしたっけ
629 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:21:58 ] vb5で作ったソース(frmファイル)があって、 使えるとこは使いまわしていきたいと思ってます。 が、vb.netだと、frmファイル読めないですね。 何か変換するいい方法ありますか?
630 名前:629 mailto:sage [2009/10/19(月) 23:28:18 ] vbpを開くと普通にアップグレードしてくれるね とりあえずやってみる。
631 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:32:52 ] 動かないけどね VB.NETはVBと見た目が似てるだけと考えた方がいい
632 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:37:13 ] 質問させてください Visual Studio2008を使っているのですが、動画をプログラム内で表示させたい場合はどうしたらよいのでしょうか? たとえばmpeg2形式の動画をVBで作ったプログラム内で再生させたいのです。
633 名前:デフォルトの名無しさん mailto:sage [2009/10/19(月) 23:46:10 ] ほれ ttp://www.google.co.jp/search?q=vb.net+%e5%8b%95%e7%94%bb+%e5%86%8d%e7%94%9f
634 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:01:16 ] ありがとうございます 動画だとパソコン側でデコードしてくれるから上記の通りでいいと思うのですが LANや同軸などで繋ぐライブカメラなどの映像をVBで作ったソフトウェア内に埋め込みたい場合はどうしたらよいのでしょうか? LAN、同軸などの映像をデコードしてくれる専用のハードウェアがいるということなんでしょうか? そもそも基本的にぜんぜん分かっていないのですが、こういった関連を調べたい場合は何と調べたらよいのでしょうか?
635 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:09:55 ] 「ソフトウェア内に埋め込む」って何?
636 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:13:10 ] VBで作ったソフト上に映像を表示したいということでした。
637 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:35:02 ] DirectShowを使うのが一般的だけど DirectShow自体の知識とDirectShowをVBで使うための知識と両方必要だし大変よ > そもそも基本的にぜんぜん分かっていないのですが、こういった関連を調べたい場合は何と調べたらよいのでしょうか? オレ用語を排除して一般的な単語で検索すりゃ大体引っかかるもんだ 「VB.NET WEBカメラ 再生」とか
638 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 00:37:42 ] 抽象的過ぎて、考えるだけ時間の無駄だな。 とりあえず市販のライブカメラを片っ端から調べればいいんじゃね? VBでどうするかなんてずっと後の話だ。
639 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 07:17:09 ] OpenCVが一番簡単だよ
640 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 10:01:49 ] VB.NETというより.NETアプリのことなんですが ネットワーク上の他のPCの共有フォルダに置いた.NETアプリの実行ファイルを ローカルにコピーせずに、共有フォルダ上で直接実行しようとする場合 .NETの設定ツールでセキュリティの設定をしていないと Security.SecurityExceptionが発生して実行できませんが セキュリティの設定等の専門的な操作をせずにこれを回避してアプリを実行する方法は無いのでしょうか?
641 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 10:03:42 ] 著名すればいいんじゃない?
642 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 10:06:36 ] 署名www
643 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 19:15:52 ] 3.5 SP1にしてしまえ。
644 名前:629 mailto:sage [2009/10/20(火) 22:41:06 ] >>631 VB5から、vb.netへの移行企んでみましたが、 全然だめですね。VB6入れろだの、エラーでとまりすぎ。 フォーム生かす以外にアップグレードの使い道無いですね
645 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 22:46:25 ] フォームだけでも変換できる事が驚き
646 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 22:53:39 ] VB6から変えすぎたせいで、VB7が大コケしたからな…。
647 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 22:56:14 ] 変えたっていうか一応バージョン番号が続いてるだけで全くの別物だから
648 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 23:22:05 ] 別物のクセに名前だけは引き継いだから尚更悪いって話かね
649 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 23:37:31 ] ちゃんとVB.NETって別の名前にしてたよ!
650 名前:デフォルトの名無しさん mailto:sage [2009/10/20(火) 23:39:55 ] まあ、VB厨の皆様が言うほど変っちゃいないんだけどね。 「大コケ」してるのはVB7以降じゃなくてVB厨の方だろ、っていうw また例のわんくまの人のブログの記事貼っといた方がいいのかな。
651 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 00:07:06 ] .NETの最新機能はC#に任せてVBはVB6互換でよかったのにな
652 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 01:03:44 ] >>640 Win32Apiとか使ってるからでしょ?
653 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 08:04:40 ] VB2008です 壁紙をレジストリいじって変更するプログラムを組んでいます。 それでWallpaperstyleキーを2にすれば拡大できるというのはわかったのですが これは縦横の比を無視して画面を埋めてしまいます。 エクスプローラの右クリのような、縦・横どちらかにあわせるようにするにはどうしたらいいのでしょうか。
654 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 09:35:41 ] エクスプローラで設定してみてどうなってるのか確認したら?
655 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 18:04:17 ] 人に配布する時ってobjの中のファイル?それともbin?
656 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 18:22:20 ] セットアッププロジェクト使うがな
657 名前:655 mailto:sage [2009/10/21(水) 18:30:39 ] セットアップは使わない予定です
658 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 18:44:33 ] objもbinの中も同じ気がするんだがwww どっちでもいいんじゃね?
659 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 19:48:16 ] うちの環境でみたら、objの方はTempPEとかいうフォルダが作られてた たぶん配布するのにこんなフォルダは不要だと思うので binフォルダに1票
660 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 20:00:54 ] そういうの除いて配布するもんじゃないの? binの方にもxmlとかpdbとかあるじゃん
661 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 20:03:56 ] 発行使えよ。
662 名前:デフォルトの名無しさん [2009/10/21(水) 21:03:23 ] Visual Studio 2008 Express Edition で次のソフトを作るにはどうしたらいいでしょうか。 Windows のエクスプローラーを開いて開いたフォルダ内に下記のようなファイルがあるとします。 1234★日本語の全て.doc 1235★韓国語の全て.doc 1236★英語の全て.doc 1237★フランス語の全て.doc ファイル名は頭に半角数字4桁の後に★がつくように付けてるのですがこれを 日本語の全て 1234★日本語の全て.doc 韓国語の全て 1235★韓国語の全て.doc 英語の全て 1236★英語の全て.doc フランス語の全て 1237★フランス語の全て.doc 左側は半角数字4桁と★と拡張子を抜いて、右側には取得したファイル名を、 その間は上は半角スペースで書きましたがタブ文字で区切ったファイルを作りソフト 自体には表示させなくてもいいので結果をクリップボードへ貼り付けるソフトを作れ ないかと思ってます。 今まではエディタを開いて dir でテキストを取得し編集してましたがこれができると かなり便利です。 なにか具体的な例やアドバイスがあればよろしくお願いします。
663 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 21:26:14 ] プログラミングの素養があれば簡単にできますがそうでなければ遠い道のりです 基礎から勉強する気がないなら作ってくれと丸投げした方がマシだと思います
664 名前:デフォルトの名無しさん [2009/10/21(水) 21:29:05 ] >>663 ちなみにこの手のを格安で作ってくれるとこはどのようにして見つけるのでしょうか。 ソフトウェア屋さんのホームページとか見ると大がかりなのしか作ってないみたいで。
665 名前:デフォルトの名無しさん [2009/10/21(水) 21:29:54 ] >>663 正直に言えば、このソフトに限ってはすぐに欲しいです。勉強はそれから 取り組みたいので。
666 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 22:04:42 ] 作った アップするからちょっと待って
667 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 22:09:24 ] 標準入出力経由のWSHで十分な気がしないでもない。
668 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 22:17:46 ] www.dotup.org/uploda/www.dotup.org287238.zip.html はい
669 名前:662 [2009/10/21(水) 22:54:59 ] >>666 >>668 ありがとうございます。結果を見てみたのですが 日本語の全て 1234 ★ 日本語の全て.doc 韓国語の全て 1235 ★ 韓国語の全て.doc 英語の全て 1236 ★ 英語の全て.doc フランス語の全て 1237 ★ フランス語の全て.doc (区切りはタブ)になってます。下記のように 日本語の全て 1234★日本語の全て.doc 韓国語の全て 1235★韓国語の全て.doc 英語の全て 1236★英語の全て.doc フランス語の全て 1237★フランス語の全て.doc みたいに(区切りはタブ)になれば嬉しいのですが。CS ファイルというのは VB ではなく C 言語か何かのファイルでしょうか。
670 名前:662 [2009/10/21(水) 22:57:47 ] >>667 WSH を検索してみたのですが Visual Studio 2008 Express Edition より 取っつきやすいのでしょうか。
671 名前:デフォルトの名無しさん mailto:sage [2009/10/21(水) 23:06:53 ] >>669 それただの表示の問題 余計なスペース入れたりすると扱いづらくなる >>670 WSHは回りくどい。VB(6)の経験がある人には分かりやすいだけ。 PythonとかRubyとかPerlとか有名な他のスクリプト言語の方がいいと思う。
672 名前:662 [2009/10/21(水) 23:16:11 ] >>671 ここにはタブが表示できないので上手く表現出来ないようです。テキストファイルに アップしました。 www.dotup.org/uploda/www.dotup.org287549.txt.html
673 名前:668 mailto:sage [2009/10/21(水) 23:34:03 ] www.dotup.org/uploda/www.dotup.org287636.zip.html 見間違えてた。修正した。ついでに必要に応じてファイルに出力できるようにコンソールにも結果を出力するようにした。 VBの環境が今手元にないのでC#を使ってる。C#はVBの兄弟みたいなもんで見た目が違うだけでほとんど同じ。
674 名前:662 [2009/10/21(水) 23:46:35 ] >>673 ダウンロードして確認しました。ありがとうございます。まさに求めていたプログラムです。 ちなみに数字の桁数が変わった場合とか数字の後の★が別の名前になった場合を ソースプログラムを見て自分で修正したいのですが、cs ファイルはどのようにして実行 ファイルの exe にするのでしょうか。Windows Vista の HomeBasic を使ってます。 今回は Visual Studio 2008 Express Edition の中から VisualBasic を入れましたが ホームページで説明ページを見たりしても見比べとか大変そうなのでやはり書籍を 購入する必要があると感じました。
675 名前:662 [2009/10/21(水) 23:48:21 ] >>673 すみません、修正版にはソースファイルがないようなので合わせて頂けないでしょうか。
676 名前:668 mailto:sage [2009/10/21(水) 23:59:37 ] www.dotup.org/uploda/www.dotup.org287761.txt.html (ソースコードのみ) あとはVBに読み替えるなりVisual C# 2008 Express Edition入れるなり好きにしてくれ VBがC#がどうとかいうより正規表現がポイントなんで改造するならまず正規表現を勉強してね
677 名前:662 [2009/10/22(木) 00:10:44 ] >>676 ありがとうございます。今は中を見てもほとんどわからないですが、このようなツールが作れると とても便利だと思いました。楽しみになりました。
678 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 01:29:12 ] 優しすぎだろ…
679 名前:523 [2009/10/22(木) 02:35:37 ] プロセスのリターンコードの返却方法について教えてください。 プロセスで返却値を設定して終了する場合、メインスレッドから「Return 結果コード」、 「Environment.Exit(結果コード)」等で呼び元へのリターンコードを返却することができました。 しかし、プロセスのメインスレッド実行中、別に発生するイベント内で異常が起きた場合に、プロセスを 終了し、結果を呼び元に返却する機能が必要になりました。 異常が発生したイベント処理内で「Environment.Exit(結果コード)」としたところ、プロセスは終了したの ですが、プロセスの呼び元にはゼロが返却されてしまいました。 メインスレッド外からプロセスを終了して返却値を戻すためにはどうすればよいのでしょうか。
680 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 06:00:25 ] いったんメインスレッドに戻せばいいんじゃね?
681 名前:デフォルトの名無しさん [2009/10/22(木) 10:27:48 ] 2日考えてわからなかったので質問させてください。 フォーム上でツリーとグリッドを左右に並べて ツリーの展開などの動きとグリッドのデータを連動させたい のですが上手くいきません。。 グリッドのデータは ノードID,親ノードID,レベル,展開FLG,コード・・・ といった感じです。 よろしくお願いします。
682 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 10:35:36 ] スレッドのExit(結果コード)で終了してるな。 imports System.Threading module Program sub Main() dim th = new Thread(addressof Run) th.Start() Console.ReadLine() Environment.Exit(1) end sub sub Run() Thread.Sleep(5000) Console.WriteLine("Exit 9") Environment.Exit(9) end sub end module
683 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 15:58:58 ] >>681 何使ってるか知らないけど DataGridViewなら FirstDisplayedCell FirstDisplayedScrollRowIndex DisplayedRowCount とか組み合わせたら出来ないかな? スペルは間違ってる可能性あるけど こんな雰囲気のやつだっ気がする
684 名前:683 mailto:sage [2009/10/22(木) 16:00:57 ] >>681 骨髄反射でレスして読み返して気づいた・・・ 見当違いのことしゃべってるわ というかノード作るところまでは出来ててその状態をグリッドに表示させたいだけ?
685 名前:デフォルトの名無しさん [2009/10/22(木) 16:48:08 ] >>684 そうです! 開閉に合わせてグリッドも変わるみたいな 感じです。
686 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 16:53:04 ] >>685 それはクリックしたノードの情報使えばいけると思うけど・・・ 自分でノード作ってるんなら最初にTAGにでも内容をカンマ区切りとかで入れとくとか ちゃんとやるなら 選択ノードからParentとかその他のプロパティ使って辿ってくんじゃないかな? 具体的なコードをお求めで?
687 名前:デフォルトの名無しさん [2009/10/22(木) 18:42:24 ] 1ビットだけでいいのですが外部のハードウエアの出力を監視したいのですが、 何か簡単な方法(ハードウエア込みで)は有りませんでしょうか? まともにやるならUSB接続の拡張ポートとかを使うのだと思うのですが、 1ビットだけのために買うのもどうかなと思いまして、、、
688 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 18:48:47 ] キーボードのキーを一個外してその接点にでも繋げば?w
689 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 19:12:50 ] >>687 USBとかでいけるんじゃないかな? どんな外部接点か知らないけどDIOとかでやるとか?
690 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 19:24:10 ] >>687 Arduinoがいい
691 名前:687 mailto:sage [2009/10/22(木) 22:23:53 ] おお〜、いろいろ即レスありがとうございます。 >>688 おもしろいっすね。 キーボードだと信号そのままじゃなくてリレーみたいなので繋げばいい? ONしたままだとまずいかな。 >>689 基本はこれですね。 安いのが有ればいいのですが。 >>690 ああ、PCWatchとかで紹介されてましたね。 3000円位で買えそうですね。 これで行こうかと思います。 PICとかでもUSBドライバ付きで安いのって有るのかな?
692 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 22:46:56 ] マウス1個潰してclickdownイベントでやると\500程度 トラ技付録のTinyマイコンで、もう売ってないか 外には出てないけどマザーにはレガシなパラレルポートが自縛霊として生き残ってるハズこいつを叩け
693 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 22:50:38 ] >>691 そのHWの「外部のハードウエアの出力」がOC出力なら 232CのDTRとDSRのを使えば追加ハードなしで出来ると思うよ。 安物マザーじゃなきゃまだCOMポートって標準で付いてくるんじゃないのかな。
694 名前:691 mailto:sage [2009/10/22(木) 23:04:05 ] 皆さん、いろいろとご存知でw >>692 USBマウスとかキーボードって複数繋いだらどうなるのでしょう。 >>693 なるほど。232C-USB変換ケーブルでも使えるってことですね。 えーとDTRとかDSRってどうやって読めばいいのしょうか。
695 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 23:15:49 ] >>694 >えーとDTRとかDSRってどうやって読めばいいのしょうか。 Data Terminal ReadyとData Set Readyだったかな? まああんまり深い意味がある頭辞語じゃないと思うからそこにこだわってもね。 そのラインの操作法はMSDNのSerialPortクラスにも載ってるはず。 ただ、232Cを使う方法はお手軽だけど、既に書いたようにOC出力か12V出力でしか使えない。
696 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 23:24:19 ] VBでイーサネットを使った通信を行いたい場合、何を勉強したらよいのでしょうか? シリアル通信はコンポーネントが用意されているので分かりやすいのですがイーサについてはまったく・・・ TCP/IP??ソケット通信?
697 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 23:29:06 ] socket
698 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 23:32:19 ] OSI参照モデルとかの基礎をまずかじるぐらいはするべきじゃないか?
699 名前:デフォルトの名無しさん [2009/10/24(土) 13:33:38 ] VB2008 Express バージョンに下記の C# のソースをネットの変換のページに入れて 貼ってもエラーが出ます。気をつけないといけないのはどのへんでしょうか。 www.dotup.org/uploda/www.dotup.org296509.txt.html
700 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 13:44:14 ] >ネットの変換のページ ってなんだ?そこの管理人に文句を言ったらいいんでない。
701 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 19:57:49 ] C#3.0に対応してないんだろ
702 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 21:58:46 ] >>696 ttp://itpro.nikkeibp.co.jp/article/MAG/20081120/319631/?ST=nsw#200911
703 名前:デフォルトの名無しさん [2009/10/24(土) 22:08:59 ] フォームAを継承したフォームBを作ろうと思っています。 フォームAには引数付きのコンストラクタのみがあります。 フォームBのコンストラクタで,フォームAのコンストラクタを呼び出して初期化しています。 ここまでは大丈夫だと思うのですが,フォームBのデザイナ画面を出そうとすると 「データが失なわれる可能性を防ぐため、デザイナの読み込み前に以下のエラーを解決する必要があります。 型"フォームA"にコンストラクタが見つかりませんでした。」 となってしまいます。 引数付きのコンストラクタがあるフォームは継承できないのでしょうか?
704 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 22:10:55 ] フォームの継承自体やらない方がいい 共通部分があるならユーザーコントロール使えばいい
705 名前:703 [2009/10/24(土) 22:12:43 ] >>704 了解しました ユーザーコントロールはまだ知らないので 今から勉強したいと思います
706 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 23:14:27 ] フォルダ内のファイルを一つずつ調べるループなのですが どちらの方が速いでしょうか? Dim filename As String filename = Dir("c:\hogehoge\") Do While filename <> "" Console.WriteLine(filename) filename = Dir() Loop Dim filename2 As String() Dim str As String filename2 = IO.Directory.GetFiles("c:\hogehoge") For Each str In filename2 Console.WriteLine(str) Next
707 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 23:22:37 ] どう考えても後者の圧勝
708 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 23:27:39 ] やってみればいいじゃん。
709 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 23:35:56 ] 試すまでもないだろ 結局DirもPathクラスを使って実装されてるわけで,前者の方が無駄な処理が多いだけ
710 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 03:30:27 ] >>703 継承できるけど、デザイナで表示できない(対応していない)だけ。
711 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 09:25:21 ] >>703 フォームAに引数付きと無しのコンストラクタを用意しとけば良いんでないか? デザイナが引数無しのコンストラクタを使って画面を描画してるので無しは駄目なんでしょ。
712 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 09:33:38 ] あ、引数なしのがデザイナから呼ばれると引数を使って追加のロジックを 入れているところがエラーになるのでDesignMode プロパティ で回避する必要があるかも
713 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 11:54:39 ] VB2008の引数を三つ取るIf文なんですけど これは戻り値を受け取らないと使えないの?
714 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 11:56:31 ] 副作用があるようなのを三項演算するな
715 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 12:53:16 ] >>713 そのIfは演算子。戻り値じゃないから無理だな IIfは関数だから、戻り値は無視できる というか、値がいらないならIf Then Else でいいと思うんだが
716 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 12:56:39 ] >>714 「副作用」が何を意味するかは関数型言語を知らないVB厨には理解できないと思う。
717 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 12:58:55 ] 別に副作用は関数型言語に限った話じゃないけどな。
718 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 13:01:35 ] そんなことより、新型ウィルスワクチンの副作用が心配
719 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 13:42:17 ] >>718 死人が出るだろうね〜 ま、オレの所までには配給来ないだろうから関係ない。
720 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 14:14:53 ] Ifは括弧付けないといけないのが嫌だな ショートサーキットに見えない
721 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 15:23:38 ] Form1にBottan1を貼り付け Form2にtextbox1を貼り付け Form1のBottan1を押すと dim frm2 as Form2 frm2.textbox1.text="abc" が動作させたいのはなぜどうするばいいのや
722 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 15:31:05 ] Form2.Show() Form2.textbox1.Text = "abc" VB以外でこんなことやったら死刑だけどね
723 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 15:49:26 ] ふーん
724 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 15:52:47 ] bottantって猪料理か何かかね
725 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 18:13:15 ] >>722 そんなもんで死刑になるか〜 日本で死刑になるのは殺人罪か国家反逆罪だけだ。
726 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 19:28:38 ] >>724 古代ラテン語らしいよ。 日本語もかなり微妙だし、過去から飛ばされて来たのかね?
727 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 22:36:01 ] インターネット上のファイルをダウンロードする際にファイルがあるかないか分からない状態の場合 無いファイルをダウンロードしようとした時の処理がしやすいダウンロード手順はどんな方法でやれば良いでしょうか 無い場合はできるだけ手早くないことを認識して次の処理へ進みたいです。
728 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 22:37:25 ] なかったら 404 が出るだろ普通。 なので、どの方法を使っても大差ない。
729 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 22:51:14 ] >>727 それだけの内容で答えられるヤツは居ない。 >>728 はきっとエスパー。
730 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 23:08:06 ] ただのダウソ厨の誤爆かと思った。 確かに>>728 はエスパー。
731 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 13:25:15 ] フォームを常に最前面に設定してあるのですが、他のアプリ(フルウインドウ) を起動すると裏にいってしまいます。 どのようにすれば常に最前面にくるようにできますか?
732 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 19:53:41 ] MCI命令で無圧縮waveファイルを開いても、音量調節が出来ないのですが出来るように出来ますか? また、一部のVBRなMP3ファイルが再生されません。
733 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 00:09:58 ] systemIOでtxtに書き出した"500"というデータが readしたときには先頭のみが文字コードとして認識されてしまいます。 500という数値として読み込みたいのですがどうすれば
734 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 00:21:25 ] >>733 質問は日本語でお書き下さい。
735 名前:733 mailto:sage [2009/10/27(火) 00:30:58 ] 事故解決しました、
736 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 01:37:49 ] プログラムの中からBIOSに触ることは出来ないよね?
737 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 07:09:36 ] >>736 BIOS情報の取得くらいはできるよ。
738 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 09:31:59 ] >>737 RTCAlarm触ってオンタイマーに出来ないかなと 昔ThinkPadでWindows上からBIOS設定出来るのがあったけど あれは例外だよね
739 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 13:50:15 ] mp3タグの編集をしたいのですが shell32の機能でタイトルなどを取得する事はできました 編集は出来ないでしょうか? 参考にしたのはこのサイトです ttp://dzone.sakura.ne.jp/blog/2009/06/vbnet-mp3-2getditailsof.html よろしくお願いします
740 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 17:31:13 ] ゼロから学ぶ! 最新Visual Basic こだか かおる著, 日経ソフトウエア編 ec.nikkeibp.co.jp/item/books/180900.html ■A4変型判,204ページ+付録DVD-ROM ■定価 2520円(税込) ■発行 日経BP社 ■発売 日経BP出版センター ■ISBN978-4-8222-2845-3 初級編 その2 MP3ファイルを解析して楽曲データを編集する itpro.nikkeibp.co.jp/article/MAG/20081113/319258/08vbmook.zip?ST=develop
741 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 20:06:57 ] >>740 ありがとうございます 参考にしてみます!
742 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 21:19:58 ] ↑こういう人は掛け声だけは威勢がいいが 参考にするとは言わない。みますと云って逃げに走る 決して最後まで完結させない。きっとそうだ。そうに違いない。
743 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 22:33:11 ] HAHAHA
744 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 23:01:56 ] Webカメラの映像を映すソフトをVBでプログラミングしたい場合はどうしたらよいのでしょうか?
745 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 23:05:17 ] USBカメラ プログラミング とかでググれば腐るほど出てくるだろ もちろんVBは見つからないかもしれないが,最低でもC++だろうとC#だろうと読める程度のレベルでないとどうせ無理だ
746 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 23:08:46 ] >>744 OpenCV
747 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 23:45:43 ] またお前か
748 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 00:01:16 ] .NET2008でEthanetを使った通信を行いたい場合 Winsock以外に方法はありますか?
749 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 00:06:08 ] はい。
750 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 00:07:23 ] それはなんですか?
751 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 00:08:52 ] あ、未完成なWinInetは除いてです。
752 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 08:25:33 ] 普通に.NETの標準ライブラリでできるだろ
753 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 10:09:03 ] System.Net.Sockets.Socket クラスでいいじゃないの。 Rawソケットもサポートしてるから、大抵のことはできる。 あれも内部的には Winsock のスタック使ってるから嫌だ、っつー話なら そりゃー無茶だと答えるしかないが。
754 名前:デフォルトの名無しさん [2009/10/28(水) 16:29:13 ] はじめまして 質問させてください。 Windows7でタッチパネル操作をハンドリングしたいのですが VB.netで実装する場合は マウスクリックやマウスオーバーで画面操作を取得できるのでしょうか? 現在、開発要件で確認を求められている状態です。 どこにも情報がない有識者の方助けてノдT
755 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 16:31:56 ] 普通のはそれでいい。マルチタッチは知らん。
756 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 16:33:46 ] Visual Studio 2010を待て
757 名前:デフォルトの名無しさん [2009/10/28(水) 16:34:22 ] >>755 マルチタッチはいらんので問題なすです。 ありがとうございます 非常にたすかりました。
758 名前:デフォルトの名無しさん [2009/10/28(水) 16:37:07 ] む・・・まとめると以下でFA? 1、タッチパネル式マウスと同じ動きで乳首を攻めるエロゲ開発 通常のマウスと同じ 2、マルチタッチで乳首つかむエロゲ開発 Visual Studio 2010を待て
759 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 18:08:55 ] 画面を指でタッチするとソフトが反応するプログラムはVB.NETでどう書けば。
760 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 18:09:36 ] まずタッチパネルを用意します
761 名前:デフォルトの名無しさん [2009/10/28(水) 21:33:12 ] >>662 どなたか 662 を実現できるソフトを C# で頂きましたが VB2008 で中をいじれるように ソースで頂けないでしょうか。
762 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 21:39:26 ] C#らしい固有の機能は全く使われてないのでVBでもほとんど変わらないぞ 弄れるレベルになればだいたいC#でもわかる
763 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 22:05:22 ] C# から VB に変換するツールとか Web サイトとかあるんだから、 少しは自分でやれよ。
764 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 22:06:58 ] 他人にやらすなら金払えよ
765 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 22:14:54 ] 作ってもらってから今までちゃんと勉強してたら C#わからなくてもなんとなく自分でVBに書き換えられるくらいのレベルには十分なってたはずだぞ
766 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 22:17:56 ] つーか PCで出来る事はCかアセンブラさえあれば全部書けるわけよ ActiveXもな
767 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 22:23:40 ] VB スレで何言ってんの? バカなの? 死ぬの?
768 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 11:49:55 ] >>767 開発もやったことない聞きかじりの知識だけのやつが言ってるんだ あんま相手にしたら開発能力のレベルが下がるぞ
769 名前:デフォルトの名無しさん [2009/10/29(木) 22:46:57 ] >>766 おおっさくらたんのエロ画像もCで書いてアプッてください
770 名前:デフォルトの名無しさん [2009/11/02(月) 06:24:27 ] Visual Basic プログラマだと思い込んでいる、 ただの Visual Basic ユーザー、Visual Studio ユーザー って多いよね。 プログラマではなく、ただの統合環境(IDE)ユーザーでしかない人。 IDEをそれなりに使いこなして、アプリっぽいものを作れる人と、 IDEがあってもなくても、アプリをガツガツ組める人とは 雲泥の差がある。
771 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 06:42:32 ] で?
772 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 09:27:00 ] 目的のものが作れればいいじゃない 手段に拘るな
773 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 09:48:25 ] 「で?」←この返しは、ゆとりの反撃のような幼稚な煽り返しだと思っていたが こうまで同意する「で?」は初めてだ
774 名前:デフォルトの名無しさん [2009/11/02(月) 13:16:11 ] >>728 httpはそうだけど、ftpはちゃうんじゃね(調べるのめんどい・・)
775 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 15:44:06 ] >>772 同じ目的(動作)のものが 同じ時間で メンテしやすいもの 同じ目的(動作)のものが 同じ時間で グッダグダで再利用もクソもなく、処理時間も無駄に長い どっちがいい? 例えばIDEだけでも掲示板程度なら簡単に作れるだろうがそんなんで書かれたクソソースコードは万死に値すると思う
776 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 15:58:54 ] >>775 後者を経て前者になるだろ いきなりいいプログラム書けるわけあるか
777 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 16:38:41 ] 俺はクソコードよりソフトの出来だと思う 結果良ければどんなコードなんて関係ないね
778 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 17:04:32 ] >>776 へ? どんだけ時間のないプロジェクトばっかやってるブラックだよ
779 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 17:31:49 ] プログラマは、こうじゃないと認めないっていうタイプ多いな。嫌われるタイプ。
780 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 18:12:13 ] 無能はスレ違いだって事にも気付けない。
781 名前:デフォルトの名無しさん [2009/11/02(月) 19:15:07 ] >>775 顔真っ赤ですね
782 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 08:34:27 ] 正しい意見に統一する必要があるからな
783 名前:デフォルトの名無しさん [2009/11/03(火) 13:22:59 ] >>777 気持ちは分かるけど、くそコードのメンテやらされるのもたまらんぞ #作るだけで、メンテしない立場ならそういうと思うけどね
784 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 14:30:07 ] 俺は糞コードめんてするの楽しいぞ 工数も糞だからってことで水増し請求できるし
785 名前:デフォルトの名無しさん mailto:sage [2009/11/03(火) 15:28:39 ] IDEだからクソってわけじゃないだろ普通は。
786 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 02:23:12 ] 質問です。 ・同じ一連の処理を短いコードで呼び出せるようにしたいのですが、どうすればできますか? ・設定ファイルをLocal Settings内ではなく、exeフォルダに置くことはできませんか?
787 名前:786 mailto:sage [2009/11/04(水) 07:35:59 ] すみません。・1は寝ぼけていたので撤回です。
788 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 09:02:38 ] >>786 >・設定ファイルをLocal Settings内ではなく、exeフォルダに 「アプリケーション構成ファイル」? なら、設定の「スコープ」を「アプリケーション」にすればそっちを使うようになる。
789 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 17:44:59 ] >>788 的確な回答をありがとうございました。
790 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 21:43:44 ] 設定ファイルって未だにiniファイル使ってるけど、 vista以降ってProgramFiles以下に書込みできないんだねぇ… ちょっとはまった
791 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 22:19:38 ] XPでも2kでも普通のユーザは書けねぇよ
792 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 22:34:37 ] そういや2008はマニフェスト書かなくてもデフォでUAC対応になってるんだっけ? それともその辺りは2005から変ってない?
793 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 22:40:09 ] 2005は知らんが、2008はプロパティからマニフェストのテンプレートを表示できるようになってるな
794 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 23:26:02 ] あーデフォでリダイレクトをキャンセルするマニフェストがくっついてるんだね。 マニフェストファイルを直接変更する必要がある点は変らずか。
795 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 06:43:16 ] ウィンドウズフォームアプリケーション作ろうとしたら ツールボックスってのに大量のツール(ボタンとかテキストボックスとか) あれに自分で何かつくって追加したいんだけどExpress Editionだと自作不可能なの?
796 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 07:12:53 ] できるよ
797 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 07:48:42 ] 新規作成にそれようのプロジェクトがあるでしょう。 無料版は知らんけど。
798 名前:デフォルトの名無しさん [2009/11/05(木) 16:07:09 ] TreeView(@Windows.Form/VS2005)についての質問、 指定したTreeNodeを最適な位置にスクロールしたいのだが、良い方法が あったら知りたく。WindowsVistaのExplorerでのフォルダツリーのような 動作を希望。どうもメソッドやプロパティに該当しそうなものがなく。 ググってみたのですがわかりません。
799 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 16:13:06 ] >>798 調べ方が・・・ このメソッドは何だっけ? ttp://msdn.microsoft.com/ja-jp/library/system.windows.forms.treenode.ensurevisible(VS.80).aspx
800 名前:デフォルトの名無しさん [2009/11/05(木) 16:19:25 ] >>799 どうもです。ただEnsureVisible()だと長い名前のときに NodeのImageが左側に隠れてしまうのが不便で、 VistaのExplorerのフォルダツリーのようにインテリジェント風味な 動きをしてちょうどいい感じの見やすい位置に持って行ければベターと いう思い。見ると適度にスクロールさせられればいいのだが、 どうもスクロール系のメソッドがなさそうに思われ・・・。
801 名前:デフォルトの名無しさん [2009/11/05(木) 18:50:57 ] 結局、TreeViewにはScroll系のメソッドはなさそうというのは間違いない ですかね?なんとか見やすい位置に制御したいのだが、やはり無理だろうか?
802 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 14:42:31 ] VB2008Express でD&Dされたテキストファイルの内容を処理するアプリを作成しているのですが、 エクスプローラーからファイルをD&Dすると、処理している間エクスプローラーが固まってしまいます。 この現象を回避する方法はないでしょうか?
803 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 14:51:22 ] >>802 いったん手元にコピーして編集終わってからコピーして返す
804 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 17:05:19 ] >>803 コピーしたファイルを処理するという発想はありませんでした、 試してみたいと思います。 もし他にも方法がありましたらよろしくお願いします。
805 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 18:48:11 ] Control.BeginInvokeしてその中で処理する。
806 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 21:22:25 ] >>805 Control.BeginInvokeについて調べてみました。 正直難しくてすぐには使いこなせそうではないのですが、 関連情報の載ったページが色々と見つかったので勉強してみたいと思います。 情報ありがとうございました。とても参考になりました。
807 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 22:40:31 ] VB.NETってはやってないの? VB.NETやってみたいんだけど、なにを ダウンロードすればいいの?
808 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 22:44:28 ] そんなこと言ってるようじゃ無理 プログラミングで一番大事なのは必要な情報を自分で調べられること
809 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 22:49:23 ] www.microsoft.com/japan/msdn/vstudio/Express/ ここにあるよ
810 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 23:44:19 ] VBっていうと(笑)感が漂うんですがなんででしょうか? C系最強厨が多いのどうして?
811 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 23:49:36 ] VBScriptってVisualBasicScriptの略なんですか?、どこがビジュアルなんですか?
812 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 02:04:30 ] >>810 が勝手に妄想してるだけじゃね? 別に目的のものがつくれれば手段は何でもいいとおもうし普通みんなそうだと思うけど? VBではC++とかみたいにローレベルな部分ができないとかはあるだろけど VBも.netになったらC#と変わらんし
813 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 02:10:01 ] >>811 固有名詞だと思えば? 釣りにマジレスしてる俺暇人 つうか落ちた鯖復旧待ちorz
814 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 15:28:32 ] ADO.NETなんかどうなるんだよ。 どこがActiveXだ。
815 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 21:07:04 ] 今のVBって製品名というより言語の名前なんだぜ
816 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 21:51:00 ] 高校数学でBasicとかいうプログラミング言語をしった人が 初めて手にして違いに愕然とするVB
817 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 00:27:38 ] あのー、VBもC#も変わらんってのは本当ですか? 逆に一番の違いって何ですか? プログラム初心者ですが先輩に「今からならC#」って断言されたんですけど、、、
818 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 00:31:51 ] >>817 片方できれば両方できるくらい同じ
819 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 00:36:56 ] VB.NETとC#なら、 VB.NETのほうが、 すこしだけかんたんなの?
820 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 00:41:29 ] どっちも知らないなら同じ VBやってた人はVB.NETが簡単 Javaやってた人ならC#が簡単
821 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 05:05:40 ] VBは内部的にどう動いてるかわからなくていい人向け 型とかポインタとかの情報が隠蔽されてる。 ソースファイルも余計なもの見せてくれない。 c#はunsafeでもうポインタ使いまくり。ソースファイルも全部見せてくれる。
822 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 09:09:00 ] いやC#でもポインタはほぼ使わないが C/C++に比べて限定的だからそんなに旨みないし
823 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 09:29:39 ] 最近FileSystemObjectを使わないのはなでぜしょう
824 名前:デフォルトの名無しさん [2009/11/08(日) 09:36:23 ] Visual Studio 2008 Express Edition で下記のようなファイルがあり 1234★日本語の全て.doc 1235★韓国語の全て.doc 1236★英語の全て.doc 1237★フランス語の全て.doc ファイル名は頭に半角数字4桁の後に★がつくように付けてるのですがこれを 日本語の全て 1234★日本語の全て.doc 韓国語の全て 1235 ★韓国語の全て.doc 英語の全て 1236★英語の全て.doc フランス語の全て 1237★フランス語の全て.doc 左側は半角数字4桁と★と拡張子を抜いて、右側には取得したファイル名を、その間は上は半角スペースで書きましたが タブ文字で区切ったファイルを作りソフト自体には表示させなくてもいいので結果をクリップボードへ貼り付けるソフトを作れ ないかと思い下記のように書いてみたのですがうまくクリップボードへ貼り付けてくれません。チェックポイントをお教えください。
825 名前:デフォルトの名無しさん [2009/11/08(日) 09:42:15 ] a-draw.com/uploader/src/up4081.zip.html
826 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 09:58:01 ] 面倒だからソースは見てない。 あのね、切り分けって知ってる? ファイルを列挙するところ、ファイル名を取得するところ、タブを挿入するところ、 クリップボードに追加するところ、などなど・・・ プログラムはいくつかの部分に分けられるのよ。ブレイクポイントを貼って 動作を確認するなりして、どの部分が悪いのか自分で調べてみなよ。
827 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:09:00 ] できた Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") Set objFolder = objFSO.GetFolder(".\") for each objf in objfolder.files d = split(objf.name, "★") if ubound(d) > 0 then e = split(d(1), ".") if ubound(e) > 0 then s = s & d(0) & vbtab & e(0) & vbcrlf end if end if next set objIE = WScript.createObject("InternetExplorer.Application") objIE.navigate "about:blank" while objIE.busy wscript.sleep 10 wend objIE.document.parentWindow.clipboardData.setData "text", s objIE.quit
828 名前:824 [2009/11/08(日) 10:30:13 ] >>826 ブレイクポイントを貼るという操作はどのようにしたらよいのでしょうか。 >>827 ありがとうございます。後で試してみます。
829 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:31:29 ] VB.netで演習問題見たいなサイトないですか。 1000行以下でかけるような。 仕事でVB.netやり始めて1か月だけど、 クラスが多数で行数も1万超えだし、理解するのに苦労している。 型がクラスとかわけわかめです。
830 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:35:20 ] > 型がクラスとかわけわかめです。 演習だのなんだのより先に基礎を解説した本なりサイトなり読むべきじゃないか
831 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:37:52 ] >>830 一応クラスやオブジェクトの意味と意義はよんだつもり。 実践でこなしていきたいと思ってるんだ。
832 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:39:53 ] >>831 homepage1.nifty.com/CavalierLab/lab/vb/clsmdl/index.html
833 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:43:29 ] >>832 ありがとう。一応下記とかも読んでVB.net2008でやってるんだけどね。。 itpro.nikkeibp.co.jp/article/COLUMN/20060921/248617/
834 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:46:40 ] そんなことより、まず構造化設計を学べよ。 カプリングとコヒージョン、きっちり身についてる?
835 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:51:26 ] VBにはフォームというのが用意されているのでクラスとか気にせずに良い
836 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 11:07:36 ] 最近は、結合度・凝集度という言葉は使わないのか。 素で何のことかと思っちゃったよ。
837 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 11:17:18 ] もしかして VBって行の最後に ;セミコロンいらねーのか?
838 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 11:28:35 ] いらねーよ Basicだもん
839 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 11:39:42 ] VB expressみたいにして javascriptを書くソフトってあるの? ボタンをドラッグしてきて そのボタンをダブクリでコードを書く画面になる もしボタンをおしたら、、、 ってところまで勝手にコードが書かれていて、 実際に押されたらどうなるか、って 部分だけを自分で書く、っていう。
840 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 19:52:29 ] >>823 昔のVBからの変換を容易にするために用意されてるだけなので新規に使ってはいけない そのうち消えても知らないよ
841 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 22:42:13 ] は?WSHのオブジェクトでしょそれ。 何を言ってるんだ。
842 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 22:44:46 ] >>823 使う必要がないだろ。
843 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 06:45:36 ] Windowsのファイル名に使えない文字列は?
844 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 06:55:41 ] \ / : * ? " < > |
845 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 15:40:29 ] それは使えない文字で、使えない文字列じゃなかろう?
846 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 15:43:09 ] >>841 は?何を言ってるんだ。 VB6、VBAのオブジェクトでしょそれ。
847 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 16:19:59 ] >>843 con nul ...
848 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 17:48:41 ] >>816 N88とQuickBasic触ってたから大して違和感なかった。
849 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 17:55:26 ] >>846 !?
850 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 18:27:36 ] >>849 ttp://msdn.microsoft.com/ja-jp/library/cc376843.aspx Office の VBA に新しく追加されたオブジェクトには FileSystemObject および Dictionary の 2 つのオブジェクトがあり、
851 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 18:29:57 ] ttp://msdn.microsoft.com/ja-jp/library/cc440853.aspx Visual Basic 6.0 でフォルダやファイルを作成する場合、 FileSystemObject の CreateFolder メソッド、CreateTextFile メソッドを使用します
852 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 19:23:43 ] rs.movenextというメソッドは消えてしまったん?
853 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 19:53:50 ] >>850 なんかこういう人ってマジで言ってそうでちょっと怖いw さっすがVBty(以下略
854 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 21:13:00 ] マジで言ってるな
855 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 21:41:06 ] 知ったかで出鱈目言うもんじゃないな
856 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 00:23:16 ] >>846 COMオブジェクト
857 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 01:59:42 ] >>856 は?何を言ってるんだ。
858 名前:デフォルトの名無しさん [2009/11/10(火) 15:40:40 ] VB と VC# の違いについて Visual Studio の各機能を正しく使いこなす知識さえあれば、 VB と VC# の違いはほとんど意識する必要がない。 (それが、VS の売り。) VB プログラミングも VC# プログラミングも 要は Visual Studio をどう使いこなすかにかかっているので、 VB だろうと VC# だろうと覚えることは一緒。 片方覚えれば、もう片方もできるようになる。 別の言い方をすれば、VB プログラマも VC# プログラマも、 プログラマというより、Visual Studio ユーザー。 そこまで Microsoft は開発者をサポートする開発環境の開発に 注力してくれている、ということです。
859 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 16:16:28 ] >>858 >要は Visual Studio をどう使いこなすかにかかっているので、 その程度のアプリケーション開発者にとっては そうなんでしょうね。
860 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 16:18:05 ] 極限の効率化/高速化を求めていない趣味グラマーにとってはVBもVCもかわらん。
861 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 16:56:20 ] 極限w そんなの求めるのは趣味グラマだけだよ
862 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 18:04:48 ] >>858 は一体何を言いたかったのか エスパーしてみると 聞きかじりの知識をひけらかして偉そうにしてみたかった! ですよね〜? つうか、今頃顔真っ赤にしてるんだろうなぁ・・・
863 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 18:34:48 ] 自作自演自滅ですか?
864 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 20:27:39 ] C++なのかC#なのか
865 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 22:00:01 ] IcoFxで作成したアイコンを読み込むとコンパイル時に”指定されたイメージ ファイルはリソース セクションを含んでいません。” というエラーを起こしてしまいます、サイズは32 x 32で色数はTrue Color + Alpha Channel (32bit) OSはXPSP3、バージョンは2005です
866 名前:デフォルトの名無しさん mailto:sage [2009/11/10(火) 22:26:02 ] なるほど
867 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 00:42:57 ] 同一のプロジェクトでForm1をUI的な表示あるいわ操作用のWindowsアプリケーション、Form2を主に計算処理等を行わせるコンソールアプリケーションで作りたいと思っています この場合この二つのフォームは、それぞれ自動でマルチスレッティングで働いてくれるのでしょうか? 要するにForm1でユーザーが操作しているときにForm2のよりが止まってしまわないかが心配ということです。 よろしくお願いします。
868 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 08:49:45 ] >あるいわ … >止まってしまわないかが心配 止まるに決まってるじゃないか。 プログラマがスレッド作らない限りシングルスレッドだ。
869 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 09:20:55 ] > Form2を主に計算処理等を行わせるコンソールアプリケーションで お前は何を言ってるんだ?
870 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 11:21:40 ] 初心者です。質問させていただきます。 1つのテキストボックス内で、 yahoo検索のような、空白によるand、or検索ができる ものを作成したいと思います。 検索機能はできているのですが、1つのテキストボックスに複数語を入力して、 それを認識することができません。何かアイディアがあったらお願いします。 わかりにくくてすみません。
871 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 11:29:12 ] 普通全角か半角でSplitしてない?
872 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 11:31:15 ] >>871 全角か半角のスペース と書きたかったんだい!
873 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 21:54:23 ] >>867 計算がメインなら計算用のスレッドを自分で起動する 間違ってもイベントハンドラの中でやらないように
874 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 22:29:34 ] 設定ファイルで、アプリケーションスコープで普通に読み書きできませんか? やりたいのは、ユーザーフォルダではなく.exe直下に設定ファイルを置く事です。
875 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 23:17:56 ] 複数ユーザが同時にログオンして起動してたりしたらまずいだろ だから読み取り専用になってるんだろ
876 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 00:15:16 ] ん?
877 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 00:29:30 ] >>874 別に制限が多い「アプリケーション設定」なんか使わず、 自分で設定値の保存/取得をするコードを書けばいいだけ。 シリアル化を使えば手間は「アプリケーション設定」と大差ない。 (むしろこっちの方が手間が少ない場合の方が多い。) ただ、そうしたところで - プログラムがProgramFiles以下のディレクトリにインストールされている場合、 Vistaでは実行ファイルと同じ場所に設定ファイルの作成はできない。 - Vistaでなくても、デフォの設定では通常ユーザーで実行した場合は 設定ファイルを作成できない。 ってだけのこと。
878 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 15:22:18 ] アプリケーションスコープの設定はAll Usersに保存されるんだっけ
879 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 16:39:38 ] されないよ。 そもそも変更不可だ。
880 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 20:28:48 ] VBはビジュアルベーシック .NETは何の略?
881 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 21:33:06 ] あえていうならMicrosoft.NETの略
882 名前:デフォルトの名無しさん [2009/11/12(木) 23:22:16 ] Visual Studio 2008 Express Editionでプログラムを作成しています。 開発しているPCではエラーも発生せず動作するのですが あまりメモリを積んでいないPC(512MB)ではSystem.OutOfMemoryExceptionが発生します。 エラーが発生する環境を開発環境で再現するためにApplication Verifierを導入し, Low Resource Simulationにチェックを入れて実行するとSystem.OutOfMemoryExceptionが発生しました。 メモリが足りないことがエラーの原因だと思いますが,FormにPictureBoxを数個置いているだけのプログラムでして それほどメモリを使用しているとも思えません。CloseやDisposeで解放するようにしましたが状況は変わりません。 こうした問題はどうやって解決すべきでしょうか?
883 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 23:38:10 ] >>882 そんなの知るかよ。 それほどメモリを使用しているとも思えません? 煽り抜きでいかにもダメな奴が言いそうな台詞だね可哀想。
884 名前:882 [2009/11/13(金) 00:07:33 ] メモリの使用状況についてですが以下のような感じです。 Working Set - 20,684KB Peak Working Set 20,800KB 仮想メモリ Private Bytes - 18,912KB Peak Private Bytes - 19,088KB 正直メモリ使用量の定義がよく分からないのでそれっぽい値を書き出しただけなんですが コントロールの無いFormを表示させるだけのプログラムで以下のような感じなので それほどメモリを消費してるとは思えないのです。 Working Set - 13,228KB Peak Working Set 13,228KB 仮想メモリ Private Bytes - 14,052KB Peak Private Bytes - 14,052KB
885 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 00:50:37 ] メモリ増やせばいいじゃん
886 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 01:05:57 ] 分からないなら分からないって言えよ
887 名前:デフォルトの名無しさん [2009/11/13(金) 04:07:16 ] VB2010ベータ1をインスコして勉強がてら遊んでみた。 最近はマルチコアのCPUも多くなったし、重いループ処理は極力マルチコアで処理させようと考えて 次のようなコードで試してみたんだけど・・・ Private counter As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click counter = 0 System.Threading.Parallel.For(0, 10000, AddressOf proc) Console.WriteLine(counter) End Sub Private Sub proc(ByVal index As Integer) counter += 1 For i As Integer = 0 To 1000000 Next End Sub counterの値が10000になると思ったのに何故か9998とかになっちまうじゃねえか!この野郎! あと、System.Threading.Parallel.ForEachも試してみたが、これも同じ様に列挙が抜け落ちる! 言うまでもなく例外など出ない(笑) 俺がおかしいのか??それともベータだから未完成ってことなのか?
888 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 05:32:11 ] >>887 そもそも += はスレッドセーフじゃなかったと思う
889 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 05:39:45 ] >counter += 1 Interlocked.Increment(counter) VBってvolatileにあたるのってなかったっけ?
890 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 09:37:39 ] スレッドセーフってなんだよ!意味わからない専門用語つかうな!バーカ
891 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 09:38:28 ] >>887 当たり前であって馬鹿はお前だ。 どういう事か理解できないならパラレルとかマルチスレッド絡みには 手を出さない方がいいぜ。
892 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 10:15:42 ] >>890 MSDNのクラスのリファレンスに必ず「スレッドセーフ」があるんだが。 それでいて”意味がわからない専門用語”といってる時点で、あんたがココに来る資格ないよ
893 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 13:19:11 ] 質問しといて分からない単語が出てきたら調べる努力もせずに逆ギレって・・・