[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 04/09 11:51 / Filesize : 214 KB / Number-of Response : 894
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

VB.NET質問スレ(Part31)



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の実体参照ですね。頻出のものは
&amp; ←→ &
&gt; ←→ >
&lt; ←→ <
ですが 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 ]
質問しといて分からない単語が出てきたら調べる努力もせずに逆ギレって・・・






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<214KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef