VB.NET質問スレ (Part8) ..
263:デフォルトの名無しさん
04/12/27 23:48:46
>261
もっと手軽にできると思うけど。何に使いたいの?
264:デフォルトの名無しさん
04/12/27 23:58:16
>>263
手動連投で疲れたから自動化出来ないかなあって思って書き込んだだけです
もうこの板から消えますごめんなさい
265:デフォルトの名無しさん
04/12/28 00:01:29
>264
いや、別に消えることないよ。連投ってのは具体的にどんな
感じにやるの?同じ投稿を一定間隔で投稿するような感じ?
266:デフォルトの名無しさん
04/12/28 00:09:28
>>265
まあ、そんな感じです。要は、スレを埋めるのに必死で手動で書き込んでいるので
一気に自動で梅梅出来ないのかなあって思っただけです。
267:デフォルトの名無しさん
04/12/28 00:12:06
プログラムで組むよりこういうのがおすすめ。試してみたら?
URLリンク(home.att.ne.jp)
268:デフォルトの名無しさん
04/12/28 00:15:07
>>267
ありがとうございます。挑戦してみます。
269:デフォルトの名無しさん
04/12/28 03:17:48
VBを起動できるのですが、なぜか新しいプロジェクトを作って、Form画面を
開こうとすると、『外部コンポーネントが例外をスローしました。』っていう
、画面がでて、何もできない状態です… 色々やってみたんですが、結局、
解決できずじまいです。どなたかわかる方いたら助けてください(T_T)
270:デフォルトの名無しさん
04/12/28 07:12:57
>269
悲惨だな。再インストールしてみたら?
271:デフォルトの名無しさん
04/12/28 15:24:27
>>270
やってみたんですけど、できませんでした…。はじめは、さっき言ったエラーじゃなかったんですけど、そのエラーを
直そうと再インストールした結果、今の状態になってしまいました・・・。もうどうしていいか、わからずじまいです。ほかに
いい方法ってないでしょうか?
272:デフォルトの名無しさん
04/12/28 15:28:12
OSごと再インストールするのが一番手っ取り早かろうな。
273:デフォルトの名無しさん
04/12/28 15:44:37
やっぱり、それしかないですよね。やってみます。ありがとうございます。
274:デフォルトの名無しさん
04/12/28 15:54:04
それはVB.NETが割れモノの時に出る症状です。すぐに警察に出頭して下さい。
275:最凶VB厨房
04/12/28 16:08:38
>>274
割れ物使ってるの?
276:デフォルトの名無しさん
04/12/28 16:08:41
Socketクラスを使用してReceiveをするとき、タイムアウトを
設定したいのですが、どのようにすればよいでしょうか?
よろしくお願いします。
277:デフォルトの名無しさん
04/12/28 16:14:39
SetSocketOption辺りか。
278:デフォルトの名無しさん
04/12/28 16:18:01
Socket.Selectみたいです。
279:デフォルトの名無しさん
04/12/28 16:18:52
>>276
できません。
Socket.Selectにタイムアウトを指定し、タイムアウトしたら処理中断、しなかったら読む、
という感じで頑張ってください。
280:デフォルトの名無しさん
04/12/28 21:50:31
すいませんが、どなたか知恵を貸してください。
日付がキーになるレコードテーブルがあって、カレンダーで選択した或る日付の
レコードのみグリッドに表示するようにしようとしていろいろ調べたところ、
URLリンク(www.atmarkit.co.jp)
に書いてあるやり方で実現できました。
が!これをやると、グリッドをクリックして選択した行の各フィールドを
バインドして表示するのコンボボックス等が反応してくれません。
コンボボックス等のデータソースの設定が怪しそうなので、
いろいろモガいているんですが、なんだかよく分かりませんorz。
いいかげんな説明で申し訳ありませんが、同じような事例をクリアされた方がいましたら
コツを教えてください。宜しくお願いします。
281:デフォルトの名無しさん
04/12/28 23:10:15
割れ物って何?
282:デフォルトの名無しさん
04/12/28 23:13:13
ぐぐればトップに出る。
283:デフォルトの名無しさん
04/12/28 23:16:00
>282
「ワレズ」と同義。
くー、こんどはワレズがわかんねーじゃん
284:デフォルトの名無しさん
04/12/28 23:17:40
ぐぐれば4番目に出る。
285:デフォルトの名無しさん
04/12/29 00:02:33
ょぅι゛ょのワレズ
286:デフォルトの名無しさん
04/12/29 04:33:45
>284
ぐぐった結果が誰でも同じになると思ってる奴発見。
287:デフォルトの名無しさん
04/12/29 09:27:05
Dim t As New System.Threading.Thread( _
New System.Threading.ThreadStart( _
AddressOf hoge))
hogeメソッドに引数を渡したいのですが
どうしたらよいでしょうか?
288:デフォルトの名無しさん
04/12/29 09:38:51
クラスを自作して、そのプロパティに事前に設定しておく。
ThreadStartにはそのクラスのメソッドを渡す。
289:デフォルトの名無しさん
04/12/29 09:46:38
>>288
なるほどー。
ありがとうございます。
290:デフォルトの名無しさん
04/12/29 10:23:00
初心者な質問ですみません。
VB6ではフォームにunloadイベントを作るときは
コンボボックスからunloadイベントを選択すれば自動的に
作成されましたが.netの場合はどのようにすればよいでしょうか?
ダブルクリックではloadイベントが作成されますが
同様の手順ではできないでしょうか?
291:デフォルトの名無しさん
04/12/29 10:25:03
>>286
反応が速かったから、順番も指定したんだけどな。(´・ω・`)
同一時間帯なら、どのマシンでやってもほぼ同じ検索結果になる
と思ってんだが違うの?
つか、その検索結果ページを斜め読みくらいするだろと。
292:デフォルトの名無しさん
04/12/29 10:27:06
>>290
UnloadイベントはClosedイベントに置き換わったと聞いてる。
URLリンク(www.microsoft.com)
293:デフォルトの名無しさん
04/12/29 19:04:20
外部プログラムを呼び出してその出力を受け取りたいです。
たとえば、shell( "dir" )とかで、その標準出力を受け取りたいのですが、
どうしたらいいでしょうか。そのプログラムが hoge.exe だとして、
shell( "dir | hoge.exe" ) でconsole.readline ではうけとれませんでした。。
294:デフォルトの名無しさん
04/12/29 19:17:18
API直呼び出しでパイプするしかないんでないの?
295:デフォルトの名無しさん
04/12/29 19:27:12
.NETなんだからProcessクラスを使えと。
Imports System.Diagnostics
Dim p As New System.Diagnostics.Process()
With p.StartInfo
.FileName = "ping.exe"
.Arguments = "www.yahoo.com"
.UseShellExecute = False
.RedirectStandardOutput = True
End With
p.Start()
Console.WriteLine(p.StandardOutput.ReadToEnd())
296:デフォルトの名無しさん
04/12/29 19:29:20
あの、VBA何で少し違うかもしれないんですけど、
ExcelVBAでアクティブになっているセルの数を知ることってできないですか?
297:デフォルトの名無しさん
04/12/29 19:33:56
>>296
65536^2個です。
298:293
04/12/29 19:43:46
>>295 ありがとございました。
けど、これだとワイルドカードの展開ができなかったので、
それは自前でやらんといかんですね。。
299:デフォルトの名無しさん
04/12/29 19:56:30
ファイル一覧が欲しいならSystem.IO.Directory.GetFiles(String, String)でも使えば?
300:293
04/12/29 20:01:20
>>299 いえ、>>293 のdirは本当に例なので、
ファイル一覧がほしいわけではないです。
でもワイルドカードの展開は System.IO.Directory.GetFiles ですね。
ありがとうございます。
301:デフォルトの名無しさん
04/12/30 00:03:12
>>296
少しじゃない。全然スレ違い
302:デフォルトの名無しさん
04/12/30 11:03:31
VB.NETでの継承について質問です。
C++だと
class test1 : public Base
class test2 : private Base
と指定する事でtest1ではBaseのpublicメソッドにアクセス出来たり
test2のようにするとBaseのpublicメソッドにアクセス出来なかったり
と継承先で指定できますがVB.NETで同等の機能は実現出来るのでしょうか?
また出来る場合はどのようにすればいいのでしょうか?
Public Class test2
Inherits Base
と指定しても class test1 : public Base と同等で、
class test2 : private Baseのようにしたいのですが・・・
303:デフォルトの名無しさん
04/12/30 11:07:57
@IT:連載 改訂版 プロフェッショナルVB.NETプログラミング
URLリンク(www.atmarkit.co.jp)
304:最凶VB厨房
04/12/30 15:10:53
俺の知る限りでは
private継承はできん。全部暗黙public継承
305:デフォルトの名無しさん
04/12/30 15:33:51
>304
お前の知識なんて誰も聞いてねーって。
仕様はどうなってんのか聞いてんのよ。
ヘルプ引くのめんどくさくて代わりに利用してんだから、
迅速に的確な回答をしろよな。お前ら全員。
306:デフォルトの名無しさん
04/12/30 15:35:09
今日は釣り日和ですか?
307:デフォルトの名無しさん
04/12/30 15:43:24
今日は釣れないでしょう
308:デフォルトの名無しさん
04/12/30 15:58:40
冬休みは短めだから、まあいいか。
309:デフォルトの名無しさん
04/12/31 00:10:46
ちょっと質問してみたいことがありますのでよろしくお願いします。
私の環境で、VB.NETを使用する際、ソースコードを入力したり
オブジェクトをフォームへ配置する操作やコンパイル、実行する操作は
VB6よりもちょっと遅いなと感じる程度なのですが、
作成したソースコードを一度実行した後、停止し、ソースコードの編集画面に
戻るまでの時間だけが、異様にかかっております。
それも、10秒程度なら我慢できるのですが、20〜30程かかります。
今後アプリ開発のことを考えると、とても作業にならない状況であります。
ためしに、タスクマネージャを起動してCPU使用率などをみても、
全く使用率100%にはなっておりません。また、メモリも十分に空き
があります。
そこで聞いてみたいのですが、皆さんの環境ではこのようなことは起きている
のでしょうか。
どうぞよろしくお願いいたします。
310:デフォルトの名無しさん
04/12/31 00:23:56
>>309
VSのIDEの動作は、確かにセロリン+遅いHDみたいなショボイ環境だと激しく重い。
しかし、恐らく>>309はIDEから実行したアプリを終了したときにIDEのエディタが
編集可能になるまでに時間を言っているんだと思うが、30秒もかかるというのは
開発環境のせいとは思いにくい気がする。
アプリの終了処理に問題があるんじゃないの?
それとも、例えばフォームだけの空っぽのアプリでも同じように遅いの?
311:309
04/12/31 01:20:13
>>310
フォームだけの空っぽのアプリで試したところ、遅くなることは
ありませんでした。
再度、終了時に重くなるプロジェクトファイルで以下の3つの終了の仕方
を何度か行ってみました。
1.フォームの右上の×印をクリックする。
2.application.exit() のみを書いたボタンをクリックする。
3.VBの■[停止ボタン]をクリックする。
1と2は遅くなりましたが、3は遅くなることはありませんでした。
どうやらおっしゃるように終了処理に問題があるようです。
調べてみます。スペックを高くすべきかなと本気で思ったりしていた
ところでした。汗
ありがとうございます。
312:デフォルトの名無しさん
04/12/31 12:39:35
>310
今時のセロリンは全然遅くないですよ。
313:デフォルトの名無しさん
04/12/31 14:06:16
>>312
日本語不自由な人?
314:デフォルトの名無しさん
04/12/31 14:09:55
>313
あれ?広い意味ではセロリンも遅いって意味かなと思ったんだけど。
315:デフォルトの名無しさん
04/12/31 14:32:40
帯に短したすきに長し、ってことですよ。
物差しを替えれば「短い」ものが「長い」ものになるのは当たり前。
316:デフォルトの名無しさん
04/12/31 16:29:01
>315
で?
317:302
05/01/02 16:21:56
あけましておめでとう
>>303
ぐぐってみましたけども、どこにも答えが見当たりません。
当方の見落としでしょうか?
>>304
やはり、出来ないのでしょうか?
知る限りとおっしゃれているようなので、まだ可能性はあると言う事ですよね・・・
>>305
いや、ヘルプでもかなり調べてみましたが分からず
八方塞がりでここに書いた次第であります。
318:デフォルトの名無しさん
05/01/02 17:52:19
こちら VB.NET 2002 Standerd 、.NET Framework 1.0 SP3 ですが、
System.Web名前空間がありません。
なぜですか?
319:デフォルトの名無しさん
05/01/02 18:16:33
>317
お亡くなりになった方がいいですよ。
320:デフォルトの名無しさん
05/01/03 01:49:05
ある特定のファイルの状態を監視するようなことって出来ますか。
状態というか変更の監視です。
VB.netでつくったアプリ、これはずーっと起動した状態です
そいでもって別な操作、たとえばWSH(VBS)によって、ある特定のテキストファイルに
何か文字が書き込まれたとか、内容の変更を察知したら、VB.netアプリが
あらかじめ仕込まれたアクションを起こす、みたいにしたいんです。
321:デフォルトの名無しさん
05/01/03 01:54:55
またか。過去ログ嫁。
322:デフォルトの名無しさん
05/01/03 02:22:49
>>321
すみません
言われて、もしかしたらFAQなのかと慌ててググったら、それっぽいのが
ぞろぞろ出てきました
323:デフォルトの名無しさん
05/01/03 09:01:15
>322
そういうこともあるさ。
324:デフォルトの名無しさん
05/01/03 16:49:35
URLリンク(www.uploda.org)
こんなツールチップはVB.NETでは
どうやって表示するのでしょうか
おねがいします
325:最凶VB厨房
05/01/04 06:30:58
それと完全に同じにするには標準のコントロールではできない(はず)。
ToolTipコントロールをはりつけて
例えばFormのLoadイベントハンドラ内に
ToolTip1.SetToolTip(CheckBox1, "Winny Utilsのログがなんたらかんたら")
を書いて
Private Sub CheckBox1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.MouseEnter
ToolTip1.GetToolTip(CheckBox1)
End Sub
こんな感じで呼び出す。
326:デフォルトの名無しさん
05/01/04 09:57:37
>325
1行目はともかくその後のサンプルは何の意味があるの?
327:最凶VB厨房
05/01/04 10:02:35
すまん。勘違いしてた。GetToolTipはいらんね。
>>326ども
328:最凶VB厨房
05/01/04 10:06:29
>>320
FileSystemWatcherクラス
ツールボックス→コンポーネントから貼り付ければ簡単にできそう。
帰ってきたらためしに作ってみるかな。
329:デフォルトの名無しさん
05/01/04 10:09:01
>328
お、そんなんあんのか。サンクス
330:最凶VB厨房
05/01/04 14:54:54
>>318
参照の追加
System.Web.dll
331:!omikuji
05/01/04 15:24:24
最凶ってのはおみくじ機能じゃなくてHN?
332:超初心者
05/01/04 17:16:04
ボタンクリックで、htmlファイル
を別のフレームで表示したいんですけど
どうすればよいですか?
333:デフォルトの名無しさん
05/01/04 17:23:12
抽象的すぎて貴方の考える状況を想定するのも困難なのでもっと詳しく書け。
334:超初心者
05/01/04 17:38:00
単純に、ボタンクリックした時に、
既にHTMLファイルがあるので(index.htmという名前の)
それを、ボタンのあるフォームとは別に、表示させたいんですが
どのようにすれば?
本来は、いろいろ他の処理してからなのですが
とりあえず、HTMLファイルを開いて表示させたいんで・・
335:デフォルトの名無しさん
05/01/04 17:46:00
>>334
読み書き保存ができる程度の簡易エディタを作ったことある?
テキストボックス付きの新しいフォームを開いて、そこにファイル
の中身を流し込めばいいだけじゃないかと。
336:デフォルトの名無しさん
05/01/04 17:48:44
HTMLを表示するだけなのかレンダリングしてなのかも分からないし。
337:超初心者
05/01/04 17:58:40
>>その方法がわからないと
338:デフォルトの名無しさん
05/01/04 18:01:29
>333
>335
>336
基本を理解できていない人間は初心者の質問にはうまく
回答できないといういい例です。
339:超初心者
05/01/04 18:07:53
>>338
回答よろしくです!!
340:デフォルトの名無しさん
05/01/04 18:08:58
>>338
じゃ、うまく回答してもらおうか。
341:デフォルトの名無しさん
05/01/04 18:28:13
>>339
なあ、もしかしてVB.NETと言うよりASP.NETの質問じゃないのか?
342:超初心者
05/01/04 18:33:51
VB.NETですよ
343:デフォルトの名無しさん
05/01/04 22:02:14
>340
いや、俺わかんないけど知ったかぶって回答はしないってこと。
344:デフォルトの名無しさん
05/01/04 22:14:30
わかんないけど煽ってみたかった。
自分がわからないのは関係ないと思った。
いまも反発してみる。
345:デフォルトの名無しさん
05/01/04 22:39:59
>344
誰に何を?
346:デフォルトの名無しさん
05/01/04 23:31:57
正月早々ご指導いただきたいのですが。。
WinフォームのComboboxなんですが、
DataSourceを設定してタブコントロール上に置くと、
Comboの載ったタブを選択したとたんselectedindex=-1から
強制的にselectedindex=0になっちゃいます。
ここまではM$のサイトで
"This behavior is by design."
などと書いてあったのであきらめるとして、
今度はDatatableの各DataRowをそれぞれ
ComboboxにAddしていくことにしてみました。
今度は"System.Data.DataRow"っていうのが追加した分だけ
表示されるんですが、なんとかDisplaymemberみたいのを設定できないものでしょうか?
偉い人お願いします。
347:346
05/01/04 23:35:26
ちなみに
items.Addでselectedindexが勝手に変わるのを回避できるのは
調べてわかったんですが。。
348:324
05/01/05 03:08:54
できなそうですね、ありがとうございますた
349:デフォルトの名無しさん
05/01/05 03:12:01
VS2002ですが、きちんと Namespace A.B.C…としているのに
IntelliSenceの自動メンバ名補完では、A,B,Cともにリストに出てしまいます。
これは正常な動作なのでしょうか?
350:デフォルトの名無しさん
05/01/05 07:21:23
>324
できないわけじゃないでしょ。単にこのスレの住人レベルでは
分からないというだけ。
351:デフォルトの名無しさん
05/01/05 08:17:18
>>334
別のフォームに WebBrowserを貼り付けておいて、それにHTMLを、
読み込ませれば良いだけでは。
352:デフォルトの名無しさん
05/01/05 08:23:53
>>324
よく読んでないがここに書いてないか?
ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.1041/shellcc/platform/commctls/tooltip/usingtooltips.htm
というか、ちょっとググってみた感じ結構情報みつかるように思えるが。。
とりあえず人に聞いとけってか?こういう人はPG向かないよな。
353:デフォルトの名無しさん
05/01/05 08:55:27
>>350
自演z
354:デフォルトの名無しさん
05/01/05 08:56:38
IPアドレスの文字列
127.0.0.1を数値に変換する関数はありませんか?
355:デフォルトの名無しさん
05/01/05 09:15:48
その数値というのはSystem.Net.IPAddressクラスで扱われるLong値でいいのかね。
それならSystem.Net.IPAddressのParse静的メソッドとAddressプロパティを組み合わせればいいが。
356:デフォルトの名無しさん
05/01/05 09:21:59
>>355
ありがとうございます。
いただいたヒントを元に
Dim le As New IPEndPoint(System.Net.IPAddress.Parse("127.0.0.1").Address, 10000)
とやってみたのですが
Dim le As New IPEndPoint(Dns.Resolve(System.Net.Dns.GetHostName()).AddressList(0), 10000)
ですとacceptできるのですが上だとできませんでした。
どこが問題なのでしょう。
357:最凶VB厨房
05/01/05 09:47:05
127.0.0.1をipconfigなんかで出したIPアドレスに変えるか、
System.Net.IPAddress.Parse("127.0.0.1").AddressをIPAdress.Anyかにして
やってみて
358:デフォルトの名無しさん
05/01/05 10:01:36
単にサーバとクライアントで使ってるIPが違うだけという話じゃないか?
あとIPEndPointのコンストラクタは(IPAddress, Integer)って引数のオーバーロードもあるから、
わざわざ.Addressを取得する必要はないよ。
359:最凶VB厨房
05/01/05 10:02:03
>>349
URLリンク(www.microsoft.com)
360:デフォルトの名無しさん
05/01/05 10:16:26
>>357
IPAdress.Anyでacceptできました。ありがとうございました。
>>358
すみません。
勉強します。
361:.NET初心者
05/01/05 13:11:06
はじめまして
ASP.NETを使用し、Webアプリケーションを作りたいのですが、サーバPCのスペックはどれくらいを推奨しているのでしょうか?
教えてください。
362:デフォルトの名無しさん
05/01/05 13:24:04
>>361
Pentiumシリーズ推奨。
363:324
05/01/05 13:35:21
>>352
探してもなかなか見つかりませんでした。
英語わかんないけどやってみます。
>>350は違う人です。
364:デフォルトの名無しさん
05/01/05 13:56:42
初めまして。
VB.NETにて複数のテキストを読み込み、一つのテキストファイルにまとめるたいと思います。
ファイルをひとつづつ、read to endメソッドで読み込むプログラムを作ったのですが、他にもっとスマートな方法がありますでしょうか。
恐れ入りますが、ご教示頂ければ、幸いです。
365:デフォルトの名無しさん
05/01/05 14:19:06
>>361
老婆心ながら、初心者って書くのはやめとき。
言い訳がましくとられる。
366:デフォルトの名無しさん
05/01/05 15:48:43
>>364
Process.StartでDosのCopyコマンドで連結すれば。
367:364
05/01/05 17:53:36
366様
早速のご回答、ありがとうございました。
おかげさまで、スッキリさせることができました。
本当に感謝致します。
368:超初心者
05/01/05 18:27:06
>>351
別のフォームに WebBrowserを貼り付けておいて、それにHTMLを、
読み込ませれば良いだけでは。
このやり方が、わからんとです。
だれか丁寧に教えてください。
369:351
05/01/05 18:37:44
>>368
どの部分がわからんとですか。
370:超初心者
05/01/05 18:46:24
WebBrowserの貼り付けかたと、HTMLの
読み込ませかたとです。つまり全部ですorz
371:デフォルトの名無しさん
05/01/05 19:26:33
>365
死ねば?
372:デフォルトの名無しさん
05/01/05 19:29:29
System.Windows.Forms.Help.ShowHelp()でヘルプを表示できますが、
親コントロールとして Me(フォーム) を指定すると、ヘルプがフォームの
前面に表示されてしまいます。別プロセスとして起動したときのように、
フォームがアクティブになったらフォームがヘルプの上に来るように
したいのですが、ShowHelp()では無理でしょうか。
なお、Nothing を指定した NullReferenceException が発生して
しまいました。
373:デフォルトの名無しさん
05/01/05 19:30:06
>372
訂正します。
Nothing を指定した → Nothing を指定したら
374:デフォルトの名無しさん
05/01/05 20:17:24
>>370
あなたの代わりに私が探しておきました。
URLリンク(support.microsoft.com)
ただし[ツールボックスのカスタマイズ]が無い場合は、
[ツールボックスアイテムの追加と削除]と読み替えてね。
375:デフォルトの名無しさん
05/01/05 20:46:25
>>372
Controlクラス辺りのインスタンスを適当に作って、それをShowHelpの引数にするとか。
376:372
05/01/05 21:02:40
>372-373に補足
>372ですが、一応別プロセスとして起動する方法で回避しました。
が、もしShowHelp()のパラメータで回避する方法があったら
教えてください。
別プロセスにすると、
・ヘルプを開いて本体を閉じる→ヘルプも閉じる。
・ヘルプを開いてヘルプを閉じて本体を閉じる→ちゃんと閉じるw
・ヘルプを二重に開かせない。
とかちょろっと書かなくてはならなくて、ちょっとイヤなので・・・
377:デフォルトの名無しさん
05/01/05 21:08:07
375は鮮やかにスルーか。
378:デフォルトの名無しさん
05/01/05 22:09:42
>>374 神ありがと〜
379:デフォルトの名無しさん
05/01/06 00:30:17
C#で恐縮です。よろしくおねがいします。
以下のようなメソッドがあると仮定します。
メソッド {
if (略) {
bool a
result1 = true;
}
if (略) {
bool result2;
result2 = true;
}
if (result1 == true || result2 == true) {
(終了);
}
}
result1 とresult2 がtrueになったときに
一番下の(終了)という部分を実行したいのですが、
ビルドをすると「未割り当てのローカル変数が参照されました。」と
表示されエラーになってしまいますが、何が原因なのでしょうか。
よろしくおねがいします。
380:デフォルトの名無しさん
05/01/06 00:33:20
…
381:デフォルトの名無しさん
05/01/06 00:33:57
ふらっとC♯(Part5)
スレリンク(tech板)
382:デフォルトの名無しさん
05/01/06 00:46:21
>result1 とresult2 がtrueになったときに
> ||
?
383:デフォルトの名無しさん
05/01/06 03:29:19
質問です
Windowsが起動するたびに実行される
(スタートアップ)アプリケーションは
どう殺ったら出来るんでしょうか
レジストリ操作が必要なんでしょうか
384:デフォルトの名無しさん
05/01/06 07:20:47
スタート→プログラム→スタートアップの中にショートカットを作ればできます。
385:デフォルトの名無しさん
05/01/06 07:37:48
>>379
『 bool a 』は何なの?
386:デフォルトの名無しさん
05/01/06 07:46:57
「どう殺ったら」
ろくなもんじゃねーな
387:超初心者
05/01/06 13:31:50
>>374
WebBrowserの貼り付けかたわかりました。
でもhtmlファイル読み込ませて表示できません。
どうやるのでしょうか?
388:366,369,374
05/01/06 13:51:17
>>387
おいおい
URLリンク(support.microsoft.com)
ちゃんと読んだ。
AxWebBrowser1.Navigate("スレリンク(tech板)l50")
389:388
05/01/06 13:55:01
お!ふぁいるか?
AxWebBrowser1.Navigate("c:\a\index.html")
390:超初心者
05/01/06 14:07:44
>>389
ありがとうございました。
こんな事も分からない自分が恥ずかしいorz
391:389
05/01/06 17:28:06
>390
VB.NETだって誰かが勝手に考えて作ったものだから、
始めは分からなくて当たり前、少しやってりゃ
勘で分かるようになるさ。
392:デフォルトの名無しさん
05/01/06 17:37:16
質問をさせて頂きます。
正規表現を使って文字列の中にある、複数個の4桁の数字をすべて取り出したいのですが、
どうも正規表現の使い方が理解できずにいます。
皆様のお力をお貸しくださいませ。宜しくお願いします。
393:デフォルトの名無しさん
05/01/06 17:41:39
URLリンク(www.google.com)正規表現&ie=UTF-8&oe=UTF-8
394:デフォルトの名無しさん
05/01/06 17:44:04
どうせなら。
URLリンク(www.google.com)
395:デフォルトの名無しさん
05/01/06 17:49:20
>>392
動くかどうか知らんが
Imports System.Text.RegularExpressions
Dim m As Match = Regex.Match(inString, "[\d+-]")
While (m.Success)
if len(m.Value)=4 then
(略)
end if
end while
396:デフォルトの名無しさん
05/01/06 19:28:14
膣門です。
VB.NETでwavファイルを再生するにはどうしたら
いいですか?
397:デフォルトの名無しさん
05/01/06 19:30:32
じゃあ>>395をふまえて動くことを確認したコード
Imports System.Text.RegularExpressions
Dim strText As String = "元の文字列"
Dim m As Match = Regex.Match(strText, "\d{4,}")
While m.Success
If m.Value.Length = 4 Then
'〜ここに必要なコードを書くこと〜
'〜m.Valueに欲しいデータは入っている〜
End If
m = m.NextMatch()
End While
398:デフォルトの名無しさん
05/01/06 19:35:12
>>396
PlaySound APIを使え。
399:392
05/01/06 19:52:36
>>395さん、>>397さん、ありがとうございます。
397記述のコードで動作しました。
VB.netのTipsがあるHPをまわったりMSDNを読んだりしたのですが、
結局どうしたらいいのか理解できず困っておりました。
お力添え大変感謝いたします。ありがとうございました。
400:デフォルトの名無しさん
05/01/06 20:45:27
>>398
できましたありがとうございました
401:デフォルトの名無しさん
05/01/06 21:13:50
指定したIPアドレスに到達可能かどうか調べるには
どうすればいいでしょうか。
402:デフォルトの名無しさん
05/01/06 22:25:09
ping
403:デフォルトの名無しさん
05/01/06 22:30:32
>402
それはVB.NET?
404:デフォルトの名無しさん
05/01/06 22:31:49
>>401がVB.NETの質問なのか?っていう気もするな(笑
405:デフォルトの名無しさん
05/01/06 22:37:34
>404
すいません。VB.NET質問スレなのでその辺ははしょってしまいました。
.NET Frameworkのクラスを使って実現したいです。
例えばSocket.connect してみてSocketExceptionが出たら
到達不可、とかはできると思うのですが、どうもスマートで
なくて・・・
406:デフォルトの名無しさん
05/01/06 23:04:44
>>405
途中のFirewallやらルータやらの設定うんぬんを考えると、
確実なのは実際に行いたい操作を行ってみるってことだと思う。
Connectするなりなんなり。
外部からのPingに応答しないホストもあるし (ex. www.yahoo.co.jp)。
407:デフォルトの名無しさん
05/01/06 23:17:43
>406
>外部からのPingに応答しないホストもあるし (ex. www.yahoo.co.jp)。
そうなの?普通にコマンドプロンプトから
ping www.yahoo.co.jp
って打つと普通にReplyあるけど・・・
そういう意味じゃないのかな?
408:デフォルトの名無しさん
05/01/06 23:21:57
>>407
さっきは応答しなかったけど今やって見ると応答する ヽ(@д@)ノ
DNSラウンドロビンで応答しないサーバに当たってたのか?
409:デフォルトの名無しさん
05/01/06 23:35:07
>408
どんまい
410:デフォルトの名無しさん
05/01/06 23:40:01
つっても、pingはじく設定はできるのでやはり繋ぎたいプロトコルで繋いでCatchするのでいいんじゃね?
つーか、それ以外あるまい。
411:デフォルトの名無しさん
05/01/07 00:47:06
>410
サンクス
412:デフォルトの名無しさん
05/01/07 01:49:00
一つ質問。
EXEでビルドしたアセンブリは、COMClass属性を適用して、RegAsmで
タイプライブラリ吐かせても参照できないの?
413:デフォルトの名無しさん
05/01/07 02:11:39
>>412
.vbprojをいじってやれば.exeも参照できるよ。
414:デフォルトの名無しさん
05/01/07 02:41:37
なんで実行ファイルがこんなに遅いのかと
415:デフォルトの名無しさん
05/01/07 07:22:48
>414
Debugだから。もしくはお前のプログラムがダメだから。
ソース公開してみ。
416:デフォルトの名無しさん
05/01/07 11:32:21
>>414
中間言語だから遅いのよ。
速いの必要な人は、C++をどーぞ。
417:デフォルトの名無しさん
05/01/07 12:18:28
>>417
だったらngen使えばいいじゃん。
中間言語だからって、(ネイティブコード生成以外で)遅いということは基本的には無いはず。
418:デフォルトの名無しさん
05/01/07 13:41:30
中間言語を使用すればオーバーヘッドって物が増えるだろう。
C.NETがC++より遅いのは世界の常識、議論の余地無し。
以下この件打ち切り。
419:412
05/01/07 13:42:41
>>413
VB6ではうまく参照できたのですが、.NETだとうまくいきません。
VS.NET 2002, Microsoft .NET 1.0.3705 です。
*.vbproj は、唯一 COM と関係ありそうな RegisterForComInterop を "true"
にしましたが、書き換える場所を間違えてしまったのでしょうか?
[ビルド後、COM-EXE.exeへ参照]
S:\COM-EXE\bin\COM-EXE.exe への参照を追加できませんでした。
これは有効なアセンブリまたは COM コンポーネントではありません。
拡張子 '.dll' を持つアセンブリまたは COM コンポーネントのみを
参照することができます。
[regasm.exe]
C:\>regasm s:\COM-EXE\bin\COM-EXE.exe /tlb:s:\COM-EXE.tlb /verbose
Microsoft (R) .NET Framework Assembly Registration Utility 1.0.3705.0
Copyright (C) Microsoft Corporation 1998-2001. All rights reserved.
型は正常に登録されました。
型 TestClass がエクスポートされました。
型 _TestClass がエクスポートされました。
アセンブリは 's:\COM-EXE.tlb' にエクスポートされ、タイプ ライブラリは正常に登録
されました。
[regasm 後、COM-EXE.tlbへ参照]
'COM-EXE' への参照を追加できませんでした。
タイプ ライブラリを .NET アセンブリに変換できませんでした。
タイプ ライブラリ COM-EXE は CLR アセンブリからエクスポートされたため、
CLR アセンブリとして再度インポートすることはできません。
420:デフォルトの名無しさん
05/01/07 13:57:05
アセンブリなら.vbprojのReferences要素の中に、.exeを指定したReference要素を追加すればよし。
COMもregasmもいらない。
.exeの配置に気をつけてな。
421:412
05/01/07 14:20:12
>>420の方法で見事参照に成功しました。
今まで長い間Googleなどで検索してきて、正直諦めようかと思っていたところでした。
本当にありがとうございました。
# EXEでもきちんと参照できるのに、なんでVSは参照設定ダイアログでEXEを弾くんだろう…?
422:デフォルトの名無しさん
05/01/07 16:27:23
>>421
EXEを参照せざるを得ない状況ってのがいまいち想像出来ないんだが。
なんでDLLにしないんだ?
423:デフォルトの名無しさん
05/01/07 21:53:27
>422
言葉遣いが悪いですよ。
424:デフォルトの名無しさん
05/01/07 22:04:31
DataGridColumnStyle.GetColumnValueAtRow()の戻り値って
NULLチェックしないとダメ?
425:デフォルトの名無しさん
05/01/07 22:07:10
>>423
嫌なら2chなんかに来るなよ。
426:デフォルトの名無しさん
05/01/07 22:24:43
MSペイントみたいに、指定した座標の色と同じ色の領域を塗りつぶすような処理をしたいのですが
探してみても指定矩形領域塗りつぶしとか指定楕円領域塗り(ry だったりとかで、どうにも方法が思いつきません。
一般のグラフィックソフトで言う”塗りつぶし”の処理を行うにはどうしたらよいでしょうか?
427:デフォルトの名無しさん
05/01/07 22:34:13
>425
理由は?
428:デフォルトの名無しさん
05/01/07 22:46:55
ここはネットの海にたゆたうチラシの裏だから。
429:デフォルトの名無しさん
05/01/07 22:56:03
>>428
その表現もらった!
430:デフォルトの名無しさん
05/01/07 22:59:17
>428-429
自演乙。別に悪いことじゃないけど。
431:429
05/01/07 23:04:18
んじゃー>>428とケコーンする!
432:428
05/01/07 23:10:30
>>431
おまいさんが新成人±4歳で美処女なら喜んで。(w
433:デフォルトの名無しさん
05/01/08 00:45:53
>>426
APIのFloodFillかFloodFillEx
434:429
05/01/08 01:02:23
>>432
残念!おいらは新成人±10歳のオサーンでつw
435:デフォルトの名無しさん
05/01/08 01:22:44
>>433
調べてみたんですが、どうやらVB→VB.NETの仕様変更で(型が合わんとかGDI、GDI+云々)
.NET上でどうExtFloodFillを扱っていいものかよく分かりませんです…。
もしよろしければご教授を…(つД`)
436:デフォルトの名無しさん
05/01/08 01:26:33
>>435
URLリンク(custom.programming-in.net)
437:デフォルトの名無しさん
05/01/08 01:35:11
すいません、VB.NETでサービスを作ろうとしたのですが、VBのみを買ってきたせいか、サービスプロジェクトがありません。
どなたか、よい方法をご存知ないでしょうか?
よろしくご教授願います。
438:デフォルトの名無しさん
05/01/08 01:36:36
自分のIPアドレス文字列(192.168.1.1)を取得するには
どうしたらいいでつか・・・?
439:デフォルトの名無しさん
05/01/08 01:44:04
>356の下のコード(の一部)を使ってIPAddressクラスを取得して.ToString()。
440:435
05/01/08 02:07:44
グラフィックからHDCを取得したところ( g.GetHDC( ) )IntPtr型が戻り値になっているため
FloodFillの引数のHDC( Int型 )と型が合わないといわれます。
色の値もIntegerとの事ですが、これはColorTranslatorによる変換でよろしいのですかね?
そして現在のブラシの色で塗りつぶすとありますが、このブラシの色をどこで設定するのかが分からずまともに動きません…orz
Dim b as New SolidBrush(ry では無さそうですし…。
ちなみに今
Dim bmp As Bitmap = New Bitmap(256, 256)
Dim g As Graphics = Graphics.FromImage(bmp)
Dim hdc As IntPtr = g.Gethdc()
(゚Д゚)??
g.ReleaseHdc(hdc)
( bmpはonPaintをオーバーライドして描画 )
こんな感じで詰まっております(´・ω・`)
441:デフォルトの名無しさん
05/01/08 02:21:04
ExtFloodFillの定義のhDCをIntPtrで宣言してやればよし。
色はColorTranslator.ToWin32でOK。
描画にWin32APIを使うならグラフィクスオブジェクトもWin32APIの作法に則ってやらないといけない。
以下の関数は全部Win32API。Declareで宣言する必要があるぞ。
CreateSolidBrushでブラシを作成。
SelectObjectで作成したブラシを選択。
ExtFloodFillで描画。
SelectObjectで作成したブラシから元々選択していたオブジェクトに戻す。
DeleteObjectで作成したブラシを削除。
442:デフォルトの名無しさん
05/01/08 03:11:13
User Agentを自分独自のものにカスタマイズしたいのですが、どうすればいいいのですか?
443:435
05/01/08 04:20:49
>>441さん他に教えていただいたことをもとに以下の様なソースを書いてみたのですが動きません…orz
Private bmp As Bitmap = New Bitmap(256, 256)
Private Graph As Graphics = Graphics.FromImage(bmp)
Public Function Fill(ByVal FillColor As Color, ByVal x As Integer, ByVal y As Integer) As Integer
Dim hdc As IntPtr = Graph.GetHdc()
Dim brs As Integer = CreateSolidBrush(ColorTranslator.ToWin32(FillColor))
Dim old As Integer = SelectObject(hdc, brs)
Dim CrColor As Integer
Dim ret As Integer
'Me.GetPixel():マウスダウンされた座標点の色
CrColor = ColorTranslator.ToWin32(Me.GetPixel(x, y))
ret = ExtFloodFill(hdc, x, y, CrColor, 1)
SelectObject(hdc, old)
DeleteObject(brs)
Graph.ReleaseHdc(hdc)
End Function
どこかご指摘点ありますでしょうか(´;ω;`)
444:デフォルトの名無しさん
05/01/08 05:37:48
日本語おかしい奴おおすぎ
445:デフォルトの名無しさん
05/01/08 05:39:50
>439
ありがとうございます。
ちなみに似たような方法でサブネットマスクも取得できますか?
446:デフォルトの名無しさん
05/01/08 12:01:20
クリレポのシリアル付きインストーラつくったのだが
インストールしたら実行時「COMコンポーネント〜エラー」が出る・・・
必要なファイルは全部含めてるんだが・・・
447:デフォルトの名無しさん
05/01/08 21:00:40
すいません。>445なんですが、どなたかご存知ないでしょうか。
448:デフォルトの名無しさん
05/01/09 01:52:21
>>443
GetDCするだけじゃ無理らしくて調べてたら説明するよりコードを書いた方が分かりやすくなったのでサンプルクラスをかいとく。
基本はイメージのサイズ指定してのNewすることで一つ四角を描画、あと任意にDrawRectangleで四角を追加。
FillFloodで指定位置の色の連続している部分を塗りつぶし。Bmpフィールドで描画結果を取得。
本文長杉だそうなのでインデントも無きが如し。
Public Class FillFloodTest
Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As IntPtr) As IntPtr
Private Declare Function ExtFloodFill Lib "gdi32" (ByVal hdc As IntPtr, ByVal x As Integer, ByVal y As Integer, ByVal color As Integer, ByVal filltype As Integer) As Boolean
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As IntPtr, ByVal obj As IntPtr) As IntPtr
Private Declare Function CreateSolidBrush Lib "gdi32" (ByVal color As Integer) As IntPtr
Private Declare Function DeleteObject Lib "gdi32" (ByVal obj As IntPtr) As Boolean
Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As IntPtr) As Boolean
Public Bmp As Bitmap 'Getのみのプロパティにしたいけど行がもったいないのでフィールド直接Public
Public Sub New(ByVal width As Integer, ByVal height As Integer)
Bmp = New Bitmap(width, height)
Clear(Color.Brown) '何となく決めうちで茶色でクリア
DrawRectangle(Color.Red, 100, 100, 100, 100) '何となく決めうちで初めの四角を描画
End Sub
Public Sub DrawRectangle(ByVal line As Color, ByVal x As Integer, ByVal y As Integer, ByVal width As Integer, ByVal height As Integer)
Dim g As Graphics = Graphics.FromImage(Bmp)
Dim p As New Pen(line)
g.DrawRectangle(p, x, y, width, height)
p.Dispose()
g.Dispose()
End Sub
Public Sub Clear(ByVal back As Color)
Dim g As Graphics = Graphics.FromImage(Bmp)
g.Clear(back)
g.Dispose()
End Sub
449:デフォルトの名無しさん
05/01/09 01:54:56
Public Function FillFlood(ByVal fillColor As Color, ByVal x As Integer, ByVal y As Integer) As Boolean
Dim baseColor As Integer = ColorTranslator.ToWin32(bmp.GetPixel(x, y)) 'ほんとはGetPixelで例外処理が必要
Dim filler As Integer = ColorTranslator.ToWin32(fillColor)
Dim g As Graphics = Graphics.FromImage(bmp)
Dim originalDC As IntPtr = g.GetHdc()
Dim hBitmap As IntPtr = bmp.GetHbitmap() 'BmpのWin32APIで扱えるビットマップ表現HBITMAPを取得
Dim compatibleDC As IntPtr = CreateCompatibleDC(originalDC) '元DCとExtFloodFillで扱うDCに互換性がないので、互換DCを作成。以後描画するのはこの互換DCになる
Dim oldSelectedHbitmap As IntPtr = SelectObject(compatibleDC, hBitmap) '互換DCにHBITMAPをセット。互換DCの描画対象が元画像になる
Dim brush As IntPtr = CreateSolidBrush(filler)
Dim oldSelectedGraphicsObject As IntPtr = SelectObject(compatibleDC, brush) '互換DCにブラシをセット
Dim result As Boolean = ExtFloodFill(compatibleDC, x, y, baseColor, 1) '互換DCで塗りつぶし
450:デフォルトの名無しさん
05/01/09 01:55:55
Dim newBitmap As Bitmap
If result Then newBitmap = Image.FromHbitmap(hBitmap) '塗りつぶせたら、描画したHBITMAPから.NETのBitmapオブジェクトを作成
DeleteObject(SelectObject(compatibleDC, oldSelectedGraphicsObject)) '互換DCのブラシを元に戻し、返ってきた自分で作ったブラシ(brush)を削除
DeleteObject(SelectObject(compatibleDC, oldSelectedHbitmap)) '互換DCのHBITMAPを元に戻し、返ってきた"既にImageオブジェクトを作って用済みのhBitmap"を削除
DeleteDC(compatibleDC) '不要になった互換DCを削除
g.ReleaseHdc(originalDC) '使い終わったDCを解放
g.Dispose() '使用済みGraphicsオブジェクトをDispose
If result Then '塗りつぶしに成功していたら
Dim originalBitmap As Bitmap = Bmp '描画前の画像を持つBitmapは後でDisposeするために待避
Bmp = newBitmap 'Bitmapを描画後の画像のものに差し替え
originalBitmap.Dispose() '以前のBmpだったビットマップはDispose
End If
Return result '成功したらTrueを返す
End Function
End Class
こうなるって分かってたらインデントとかまともにすべきだった……。
451:デフォルトの名無しさん
05/01/09 02:13:19
ていうかなんか>>443のソース見る限り>>435の場合Win32APIとか以前にグラフィックの基本が分ってないようだから、
>>448-450みたいなの書かれても理解できないと思う。
グラフィックの基本が分ってないとしか思えないでしょ。
どう考えてもBitmapとかGraphicsが概念的に理解できてない人のコードだよ。
こんなの人に聞くよりMSDNでも読んだほうが100倍早いのになんでそういう
手間を惜しむんだろうねえ。。
それに恐らくこういうコード書く人はクラスもわかんない可能性高い。
ていうかBitmap返すクラスってなんか使いにくそう。
私だったらGraphicsをメソッドの引数に取るかコンストラクタで食わせるかするなたぶん。
452:デフォルトの名無しさん
05/01/09 02:28:15
>>451
> ていうかBitmap返すクラスってなんか使いにくそう。
> 私だったらGraphicsをメソッドの引数に取るかコンストラクタで食わせるかするなたぶん。
あーうん。
元々はもうちょっとクラスとして意味のある構成を考えてたんだが、
掲示板に貼るのに最低限の部分だけにしたらクラスにする意味がすっかり薄れてしまったのさね。
ただGetHbitmapの為にBitmapインスタンスも必要というのが悩ましい。
//BitmapのHdc>BitmapのHdcにBitBltするにもこの操作が必要だし。
//なんかないかなー。
453:デフォルトの名無しさん
05/01/09 02:29:42
>>451
>それに恐らくこういうコード書く人はクラスもわかんない可能性高い。
VB.NETへの移行過程でその手の厨房は淘汰されるので今しばらくのご辛抱を。
454:デフォルトの名無しさん
05/01/09 02:34:22
.NETになって格段に日本語ドキュメントが充実したからなあ。まず読め、読みまくれ。
宝の山ですぞ!
455:435
05/01/09 03:10:18
まったくもって頭が上がりません…。
>>448さん他非常にありがとうございました
謝罪のしようもありません。
>>452さん、>>454さんの仰るとおりMSDN穴が開くほど読み倒してきます(`・ω・´)
456:435
05/01/09 03:11:33
そしてアンカーを間違える_| ̄| ...○
>>452→>>451
457:デフォルトの名無しさん
05/01/09 04:31:45
すいません、VB.NETでサービスを作ろうとしたのですが、VBのみのやつを買ってきたせいか、サービスプロジェクトがありません。
どなたか、よい方法をご存知ないでしょうか?
よろしくご教授願います。
458:最凶VB厨房
05/01/09 04:36:21
>>457
Microsoftクイック スタート チュートリアル
URLリンク(ja.gotdotnet.com)
459:デフォルトの名無しさん
05/01/09 07:27:54
すいません。>445なんですが、どなたかご存知ないでしょうか。
460:最凶VB厨房
05/01/09 10:09:44
Imports System
Imports Microsoft.Win32
Public Class SubnetMaskGetter
Shared Sub Main(ByVal args As String())
Dim interfacekeys As String = "SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces"
Dim rk As RegistryKey = Registry.LocalMachine.OpenSubKey(interfacekeys, False)
If rk Is Nothing Then
Console.WriteLine("キーはなさげ")
End If
Dim s As String() = rk.GetSubKeyNames()
Dim sk As String
For Each sk In s
Dim rrk As RegistryKey = Registry.LocalMachine.OpenSubKey(interfacekeys & "\" & sk, False)
Dim v As String() = CType(rrk.GetValue("SubnetMask"), String())
Console.WriteLine(sk)
Console.WriteLine(v(0))
Next
End Sub
End Class
URLリンク(support.microsoft.com)
461:最凶VB厨房
05/01/09 10:25:39
>>442
HttpWebRequestクラス
Imports System
Imports System.IO
Imports System.Net
Public Class UAHttpAccess
Shared Sub Main(ByVal args As String())
Dim hr As HttpWebRequest = WebRequest.Create("URLリンク(127.0.0.1:10000)")
hr.UserAgent = "SaikyoVBChubo"
Dim wres As WebResponse = hr.GetResponse()
Dim st As Stream = wres.GetResponseStream()
Dim sr As StreamReader = New StreamReader(st)
Dim s As String = sr.ReadToEnd()
Console.WriteLine(s)
End Sub
End Class
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4839日前に更新/258 KB
担当:undef