VB.NET質問スレ (Part7)at TECH
VB.NET質問スレ (Part7) - 暇つぶし2ch352:デフォルトの名無しさん
04/11/09 23:53:07
 質問です。
DataAdapterをコントロールボックスから
選択して使用していますが、
その際DataSourceやプロバイダ等を
チュートリアルに従って設定しております。
自動生成されたソースを見ると、
DataSourceのパスは絶対指定となっていますが、
これをソースを直接触らずに相対指定にする方法はありますか?
相対パスにするには自動生成されたソースを
触らなくてはならないのでしょうか?

353:デフォルトの名無しさん
04/11/10 04:33:36
>348
 BaseStreamをStreamReaderがオープンしたファイルと関連付ける方法が分かりません。
おそらく「オーバーロード、オーバーライド、継承」になどVBNETが導入した新しい技術に
関することだとおもいますが、まだ使い方がはっきりと理解できていないのです。

基本的にはリードライトのクラスがあって、それを補うためにリードライトする
データを加工するクラスがあればよいと思うわけです。
そしてこのリードライトのクラスはランダムアクセスとシーケンシャルアクセスを
用意するというのが歴史的つまり基本的方法です。

そうすると、StreamReaderでオープンしたファイルをBaseStreamでアクセスするのは
継承関係からして誤りだと思います。おそらくBaseStreamでオープンしてリードライトは
BaseStreamで行い、データの加工を下位のクラスで行う? そこでStreamReaderは
適当ではない?
では適当な方法は?その具体的方法が分からない。

>10バイト空読みする。
 色のみ読みたいのです。空はいりませんので。

>351
>StreamReaderではバイト単位で読む事はできないよ。あくまで文字単位。
>//まあ形式が固定ならそれでいいんだけど。
形式は固定です。
 固定長レコードのテキストファイルをランダムアクセスするための
具体的な方法が知りたいのです。MSDNには例がありません。


354:デフォルトの名無しさん
04/11/10 07:43:16
>>353
>  そしてこのリードライトのクラスはランダムアクセスとシーケンシャルアクセスを
>  用意するというのが歴史的つまり基本的方法です。

で、そのシーケンシャルとかランダムとか言うのを一緒にしたのがストリーム。
//厳密にはランダムアクセスベースだけど、ランダムアクセスならシーケンシャルなアクセスにも耐えられる。
//そう考えれば両者を分ける必要はどこにもない。

StreamReaderの役割は指定した文字コードを元に文字単位でストリームから読み出すことだ。
本来バイトベースであるストリームを文字ベースで扱いやすくするためのクラスであって、そこにアクセス方法など関係ない。

ところが、文字ベースで考える場合文字コードという問題が生ずる。
例えばShift_jisの場合、「官」の字は8AAFと言う16進コードで表現される。
これを2バイト目から読み出すと、AF、つまり半角カナの促音記号「ッ」ととられてしまう。
これではよろしくないから、「基本的に」先頭から順次読み取りするようになっている。

でも任意の位置から読み込みたい時もあるだろう、とStreamReaderが読み取る対象のストリームをBaseStreamで直接公開してるわけだ。
//ファイルパスを指定してStreamReaderをnewした場合、内部でFileStreamが作成されている。実際に公開するのはこれ。
StreamReaderで文字を読み出すと、読み出した文字分この内部のFileStreamのPositionが読み込んだ文字に応じて動く。
でもあくまで内部のFileStreamが指している所から文字になるバイトデータを読み出すわけで、
いつのまにかこれがさっきまで見てた所と違ってても気にせずそこから読み出すようになっている。

てことで、streamReader.BaseStream.Positionをいじくれって言ったの。


>   固定長レコードのテキストファイルをランダムアクセスするための
>  具体的な方法が知りたいのです。MSDNには例がありません。

固定長かどうかなんかストリームとしては知った事ではない。

355:デフォルトの名無しさん
04/11/10 08:59:20
>354
>てことで、streamReader.BaseStream.Positionをいじくれって言ったの。
これが分からなかった。ありがとう。

Do
Debug.Write(sr.BaseStream.Position)
line = sr.ReadLine()
debug.Write(line)
Loop Until line Is Nothing

Positionの移動をプリントして見ると
ラインは10行あっても最初のReadLine()で全部読み込んじゃうね。
読み出し開始位置はPositionで設定できるけど、一旦ReadLineして
しまうとPositionでは制御できないようです。
 だからstreamReaderではRandomアクセスはできないです。もちろん
Open、Closeを繰り返せばできますが、それはだめですね。
ファイルは一旦オープンすれば、仮想メモリー空間にマッピングされるわけだから
1バイト単位で自由にアクセスできるはずですよね。クラスの制約でわざわざClose
するのはばかげてます。

結局Stringファイルをランダムアクセスする方法は、どうすればいいのでしょう?


356:デフォルトの名無しさん
04/11/10 09:28:54
もともと複数バイトで意味のあるデータを読み込む時に任意のバイトからってのが今一なじまないんだけどな。
.NETのファイルアクセスは十分に高速だから空読みも大したコストにならないし。

どうしてもStreamReaderを使いたいなら、
FileStreamでストリームを開いて、
FileStream.Positionを操作してからそのFileStreamを元にStreamReaderをそのたびに作成。読み込み終わってもStreamReader.Closeは呼び出さない。
一通り処理が済んだらFileStream.Closeを呼び出す。

357:デフォルトの名無しさん
04/11/10 10:13:57
次のような例がVBの本にあるのですが、
Dim st as Stream = New NetworkStream(...)
...
st.Write(buf,0,255)
st.Close()

Dim under_stream as Stream = New NetworkStream(...)
Dim st As Stream = new BufferedStream(under_stream) ....①
...
st.Write(buf,0,255)
st.Close()

①の行を追加するだけで、バッファリング機能を追加しています。これは
非常にスマートですね。

で私のやりたいイメージはこういうことです。(LineSizeは100byte程度です。)
for i=0 to 100
st.WriteLine(linedt(i))
next
...
st.Position = 55*LineSize
linedt = st.Read()
st.Position = 3*LineSize
linedt = st.Read()


358:デフォルトの名無しさん
04/11/10 10:14:49
FileStream.ReadとEncoding.GetStringでいいじゃん。

359:デフォルトの名無しさん
04/11/10 10:17:49
欲を言えば
st.LineSize = 100
linedt = st.Read(55)
...
linedt = st.Read(3)


360:デフォルトの名無しさん
04/11/10 10:20:04
>358
 そうなの? しらべてみますが、もし例があればよろしく。


361:デフォルトの名無しさん
04/11/10 10:29:02
[Visual Basic]
Overloads Public Overridable Function GetString( _
ByVal bytes() As Byte _
) As String

[C#]
public virtual string GetString(
byte[] bytes
);
VBの場合、宣言が複雑ですが、どういう意味があるんですか? 単に多弁?


362:デフォルトの名無しさん
04/11/10 10:30:14
>>360
Dim fs As FileStream = sr.BaseStream
Dim data(55) As Byte
fs.Position = 55 * LineSize
fs.Read(data, 0, 55)
linedt = Encoding.UFT8.GetString(data)

...
sr.Close()

事前にStreamReaderである程度読んでる場合を想定してるけど、そうでないならはなからFileStreamでファイルを開けばいい。

363:デフォルトの名無しさん
04/11/10 10:31:58
>>361
VBの過去のしがらみです。
書くのが嫌ならC#に移れと言うMSの暗黙のプレッシャーもあります。

364:デフォルトの名無しさん
04/11/10 12:44:30
>362
 ご丁寧にありがとう。
Dim fs As FileStream = sr.BaseStream これが分かりませんでした。
FileStreamの場合Positionがリードポジションと同じなんですよね。
やってみます。



365:デフォルトの名無しさん
04/11/10 14:29:09
技術評論者のVisualBasic.NET プログラミングマニュアル
ってもってる人いないですか?
 そこの133ページに
 「委譲を使った問題点(1)の解決」ってのがあって
 Stack ClassはListを継承するのではなくListの実装を内部で利用すれば
 いいのです(つまり委譲のことだと思う)
 Public Class Stack
 Inherits List  ....①
 Private ListField As New List()
 Public Function Pop() as Object
  .....

という様になっているのだけどどうもおかしい。
①のInheritsって継承のことだよね。これってImplementsの間違いか?
 継承の例は1ページしかないのに、間違えられるとさっぱり分からん。
 Inheritsって委譲にも使うのか?
 Implementsって要するに外部クラスの参照のことだよね。要するに
 EXTERNってことだよね。ほかには意味ないですよね。




366:デフォルトの名無しさん
04/11/10 14:35:57
>>365
持ってないけど多分Implements IList辺りの間違いだろうね。
//……継承の例が1ページ? 委譲の例?

367:デフォルトの名無しさん
04/11/10 14:41:03
質問させてください。

a b c と3つの変数があるとして、テキストボックスに
"1:"&a&"2:"&b+c
みたいな式を任意にユーザーが設定できるようにして、
それを実際に他の変数に入れるようにしたいんですけどどうしたらいいのかわかりません。
普通のコードで書くと
kekka="1:"&"2:"&b+C
ってなりますよね。この右辺の部分をテキストボックスから取り出して
直接コードで書いたように動作させたいのですけど、どうしたらできるんでしょうか?

368:デフォルトの名無しさん
04/11/10 16:08:06
>>367
そういうコードを自分で書く。

369:デフォルトの名無しさん
04/11/10 16:49:04
DataGridを使用し、ColumnChangingイベントを使用しています。

項目Aの変更をハンドルし、入力された値でマスタを検索して項目Bにその名称を代入する、
という処理なのですが、項目Bに名称を代入した時もColumnChangingイベントが発生します。
項目BはReadOnlyなので処理自体は無いのですが、なんとなく気になっています。
こういうもんなんでしょうか?それとも私は全く違うことをしているのでしょうか?

DataGridのデータソースはDataSetで特にDB等にはつながっておらず、
値の格納だけに使用しています。

370:デフォルトの名無しさん
04/11/10 16:56:06
ユーザの入力とコードからの操作を区別しないから。
そんなもん。

371:369
04/11/10 17:26:17
>>370
なるほど、そんなもんなんですね。わかりました。
ありがとうございました。

372:369
04/11/10 18:23:51
連続すいません。

おそらく過去にもこういった話題が挙がったとは思いますが、入力後のカーソルについて質問です。
エンターキー押下時には下にしかいけないんでしょうか?横の項目に移るようになるプロパティは無いのでしょうか?

KeyDown、Pressイベントで処理しようとTextボックスと関連付けてイベントをハンドルしようとしたのですが、
エンターキーは捕まえることができませんでした。

これってどうしようもないんですか?

373:369
04/11/10 18:24:59
DataGridの話です。
流れのまま書き込んでしまった・・・(汗

374:デフォルトの名無しさん
04/11/11 05:32:13
VB.NETのコメントの書き方が分かりません。
’これ以外にはないんですか? 複数行をコメントアウトする方法は?

375:デフォルトの名無しさん
04/11/11 05:45:37
>374
VS.NETの上のツールバーのとあるアイコンを押す。

376:デフォルトの名無しさん
04/11/11 05:53:41
あるファイルが他のアプリケーションによって使用されているか
どうか知るには?
一回ファイル名を変更して Try~Catchするしかないんですか?

377:デフォルトの名無しさん
04/11/11 06:53:46
FileShare.None でOpenするというのはどうだ?

378:デフォルトの名無しさん
04/11/11 06:55:46
>375
 REM 
END REM
を知らんの?

379:初心者
04/11/11 09:32:04
すみません。質問させて下さい。
VB.netで、他のサーバ上にあるbatファイルを、クライアントから実行させるには何か方法がありますでしょうか。

Shell("cmd.exe abc.bat")
Process.Start("C:\xxx\xxx.bat")
  ・・等を加工し、フルパスでファイル名を指定したのですが、肝心のサーバ上のbatファイルは動きません。
恐れいリますが、ご教示ください。


380:デフォルトの名無しさん
04/11/11 09:45:04
>>372
これのことか?
Application.MoveAfterReturnDirection = xlDown
Application.MoveAfterReturnDirection = xlToRight


381:デフォルトの名無しさん
04/11/11 09:58:37
>>379
アクセス権が必要です

382:デフォルトの名無しさん
04/11/11 10:08:50
一番自然なのはクライアント/サーバ型にして、クライアント側の要求に従ってサーバ側で処理する事だな。

383:372
04/11/11 11:42:10
>>380
Excelでいうとそれです。
DataGridでなんとかならんもんかと悩んでおります。

384:デリゲート?
04/11/11 12:14:41
VB.NETでVCとWindowsメッセージのやりとりがしたくてURLリンク(homepage2.nifty.com)
このホームページのソース参考にしたんですけどSetWindowLong(Handle.ToInt32, GWL_WNDPROC, AddressOf WndProc)
の1文でデリゲートで宣言されてないから駄目ってエラーがでて意味がわかりません。誰か解決策教えて。


385:デフォルトの名無しさん
04/11/11 12:31:32
>>384
エラーの意味がわからんのじゃなくて、
そもそもやってることの意味がわかってないんだと思う。

VB.NETではサブクラス化を使う必要はなくなった。
問題にぶつかったらとりあえずMSDN検索するクセつけた方がいいよ。
URLリンク(www.microsoft.com)

386:デフォルトの名無しさん
04/11/11 12:57:46
>>383
DataGridを継承してProcessCmdKeyをオーバーライドしてやればいいんじゃないかな。

Imports System.Windows.Forms
Public Class OddHandlingDataGrid
    Inherits DataGrid
    Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
        If keyData = Keys.Enter Then
            Me.ProcessGridKey(New KeyEventArgs(Keys.Right))
            Return True
        End If
        Return MyBase.ProcessCmdKey(msg, keyData)
    End Function
End Class

387:デフォルトの名無しさん
04/11/11 13:41:51
>>377
それでなりました。どうもありがとう。

        Try
'一度ファイル名をリネームし可能なら他のアプリケーションで使用されていない
'不可能なら使用中
'Microsoft.VisualBasic.FileSystem.Rename(filename, filename + "a")
'Microsoft.VisualBasic.FileSystem.Rename(filename + "a", filename)
Catch

こんなことしてました↑。

        Try
           Dim s2 As New FileStream(filename, FileMode.Open _
, FileAccess.Read, FileShare.None)
s2.Close()
         Catch

388:デフォルトの名無しさん
04/11/11 14:51:54
123を " 123"のように10桁で表示するのはどうするの?
formatだと数値が変わると桁が変化する。
format(dt,"0000000000")のようにすると数値の桁が変わっても10桁に
なるが"000000123"のように頭に0がつくのでだめ。
なんかいい方法ない?



389:デフォルトの名無しさん
04/11/11 15:02:33
URLリンク(202.208.158.51)

343 :NHK名無し講座 :04/11/11 15:00:25 ID:Xg7Sp9vb
由奈もキタ━━━(゚∀゚)━━━ !!!

URLリンク(202.208.158.51)

390:デフォルトの名無しさん
04/11/11 15:11:59
>>388
.ToString().PadLeft()とか。

391:デフォルトの名無しさん
04/11/11 15:18:03
>390
ありがと。いろいろ探していたのだけど、分からなくて、
助かりました。

392:デフォルトの名無しさん
04/11/11 15:22:17
スレリンク(swf板)

393:初心者
04/11/11 16:21:58
>>381>>382
ご回答、ありがとうございました。
何とか解決できそうな状況になってまいりました。


394:デフォルトの名無しさん
04/11/11 19:28:02
通信対戦ゲームを作りたいのですが、winsockとdirectXはどっちが簡単ですか?

395:デフォルトの名無しさん
04/11/12 08:09:12
フォームのボタンのペケ(X)ボタンを押すとDiposeしますが、
me.hideにしてDisposeしたくない場合どうすればいいのでしょ?


396:デフォルトの名無しさん
04/11/12 08:43:41
listboxのクリアーってどうやるの


397:デフォルトの名無しさん
04/11/12 09:11:14
VB6みたいに途中でブレークしてコードを修正して続けるようなことはできないのですか?


398:デフォルトの名無しさん
04/11/12 10:07:34
>>396

ListBox1.Items.clear

でダメ?

399:デフォルトの名無しさん
04/11/12 10:11:26
>398
あっItemsの下に隠しやがったのか。くっそー。
ありがとう。


400:デフォルトの名無しさん
04/11/12 10:43:42
条件付コンパイルの話なんだけど、設定値がまずいのでコンパイル不能コードにしたいときってどうしたら良い?
Cの#errorみたいのってないの?

401:デフォルトの名無しさん
04/11/12 11:37:08
俺が分かったら答えてやるんだが、わからんなー。
#define Main
#if Main
#else
#end if
見たいなやつだろ。

402:デフォルトの名無しさん
04/11/12 11:57:25
>>400
VB.NETには無いね。C#にはあるんだが。

>>397
VS2005から追加されるようだ。

403:デフォルトの名無しさん
04/11/12 12:11:46
>402
ほんと? そりゃ待ち遠しいね。でもこの遅さに慣れたら、
もうJAVAでもおんなじだし、eclipseとかにいってるかもね。

404:デフォルトの名無しさん
04/11/12 18:45:58
400の者だが、しょうがないからこうした(イメージ)
#if a=0 then
ここに来たらエラー
#endif

405:デフォルトの名無しさん
04/11/12 21:40:31
時間がかかる処理の間に起こったキー入力等はすべて無効にしたいんだけど、
どうしたらいいかな?
処理の最後にフラグを立てて、doEventsメソッドを発行後、フラグを解除。
オーバーライドしたWndProcで、フラグが立っている間のイベント処理は
無効っていうふうにしたんだけど、処理の終わり間際の入力は通ってしまうようで
上手くいかなかったです。


406:デフォルトの名無しさん
04/11/12 21:48:33
>>405
「時間がかかる処理」を別スレッドにするだけでは?

407:デフォルトの名無しさん
04/11/12 23:04:25
時間がかかる処理をしている途中だよフラグを用意するか、
その処理の最初にキー入力ができるコントロールを無効にすれば?

408:デフォルトの名無しさん
04/11/12 23:22:12
>時間がかかる処理をしている途中だよフラグを用意するか、
無意味。

>その処理の最初にキー入力ができるコントロールを無効にすれば?
恐らくそれをしたくないから>>405のように聞いているのだろう。
そのくらいのこと読み取れるでしょ普通。

409:デフォルトの名無しさん
04/11/13 04:58:27
処理が終わっているように見えて実は終わっていない。だから、
処理的に排他的タスクを立てて、そのタスク内でキーを有効にする。

410:最凶VB厨房
04/11/13 12:22:21
別スレッド作って即行でjoin!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

411:デフォルトの名無しさん
04/11/13 17:35:29
マウスポインタの位置を移動させるにはどうすればいいですか?
例えばボタンを押したら次に押させたいボタンにマウスポインタを移動させる、
というような事をさせたいのですが。

412:デフォルトの名無しさん
04/11/13 17:46:03
System.Windows.Forms.Cursor.Position

413:デフォルトの名無しさん
04/11/13 18:45:53
>>412
サンクスです。

414:鈴木
04/11/13 18:54:58
>>408
お前、感じ悪いよ。

415:デフォルトの名無しさん
04/11/14 00:46:59
VBScriptから正常に呼び出せるActiveXのメソッドを
VB.NETから呼び出すと

System.Runtime.InteropServices.COMException
未知のエラー

というエラーが発生しまつ。
いったい何がいけないんでつか?

416:デフォルトの名無しさん
04/11/14 19:37:12
昨日VB6から.net2003にやってきたばかりで右も左もわからん

MainTextBox.Text = "aiueo" & vbCrLf & "aiueo"
FirstText = "aiueo" & vbCrLf & "aiueo"
If MainTextBox.Text = FirstText Then
  Call MsgBox("あ")
End If

MainTextBoxはRichTextBoxです
で、これ実行するとなぜかメッセージボックスが表示されるんですが・・・
明らかに等しい "aiueo" & vbCrLf & "aiueo" なのに何で!?

417:デフォルトの名無しさん
04/11/14 19:42:28
VisualBasic6.0で編集したプロジェクトをVB4.0で読み込むことはできますか?
VB6.0→VB4.0フォーマット変換ソフトなどあったら教えてください

418:デフォルトの名無しさん
04/11/14 20:48:19
>416
釣り?

>417
無理、それ以前にここは「VB.NET質問」であって
「VBプログラマ質問スレ(6.0以前)ではない。

419:417
04/11/14 22:20:05
>>418

いや、無理じゃなく出来た。
vbpプロジェクトをエディタで開いてバージョン箇所あわせと不要コード削除で読み込み可
自己解決。、さいなら

420:416
04/11/14 22:30:14
間違った…

MainTextBox.Text = "aiueo" & vbCrLf & "aiueo"
FirstText = "aiueo" & vbCrLf & "aiueo"
If MainTextBox.Text = FirstText Then
  MsgBox("同じ")
Else
  MsgBox("違う")
End If

ってやっても「違う」と言われてしまうのはどうしてですか?

421:デフォルトの名無しさん
04/11/14 22:51:04
>>420
FirstTextがちゃんとString型の変数として宣言されているなら
“同じ”と出るはず。

URLリンク(www.microsoft.com)
の「値の等価性と参照の等価性」を読むといいかも。


422:デフォルトの名無しさん
04/11/14 22:55:35
>>420
FirstTextをStringにして
同じソースで実行したけど"同じ"って表示されたよ

423:420
04/11/14 23:40:03
Public Class Form1 の直下で
Dim FirstText As String = "" と宣言してあります

何かこれではまずい仕様に変わったんでしょうか?

424:デフォルトの名無しさん
04/11/14 23:50:04
>>423
ああ、いま気づいた。
きっとtextboxのMultiineプロパティがFalseになってるんだよ。

425:デフォルトの名無しさん
04/11/14 23:53:57
RichTextBoxらしいからデフォルトでMultilineはTrueのはずなんだがな……。

426:デフォルトの名無しさん
04/11/15 00:06:59
Java で StringTokenizer と同じような機能のクラスは
VB.NETにもありますか?
MSDN内は探しましたが思っていたものとは違っていたようです
ネットも一応調べたんですが64kbpsのため探し回れない状態です
時間がないため、indexOf と Substring を使って機能を実現しておきますが
作るのは面倒なのでよければ教えて下さい

427:デフォルトの名無しさん
04/11/15 00:19:33
>426
URLリンク(java.sun.com)
 と言う事は、StringクラスのSplitメソッドが近いんじゃないか。

428:デフォルトの名無しさん
04/11/15 00:36:44
>>427
ありがとうございます
使ってみます。

429:yukki
04/11/15 10:41:44
VB.NETのSocket クラスを利用して、UDP通信でデータ受信時にイベントを発生させたいのですが方法がわかりません。
分る方いましたら返信お願いします。

430:デフォルトの名無しさん
04/11/15 11:22:13
どのプロジェクトでも使う汎用的なboku の namespaceはどこに登録
するの?

class の先頭でimports "boku"のように使いたい。



431:デフォルトの名無しさん
04/11/15 14:07:41
Dim myArr() As [String] = {"RED", "orange", "violet", "RED"}
の [String] はStringとはちがうのですよね。
[]はなんの意味ですか?



432:デフォルトの名無しさん
04/11/15 14:22:24
>>431
全く同じで単にコンパイラが無視するだけだが。
どこからそんな書き方が出てきたのかね。

433:フナ太郎
04/11/15 15:20:59
>>431
[ ] で囲むのは、VB.NET の予約語を、クラス名とか構造体名とかに
使えるようにするためだお。

この例だと、たぶんどっかに、

Class [String}

・・・・・

End Class

みたいに定義されてるはずだから、探してみ?

434:431
04/11/15 15:33:47
 そうなんですか? 今一必然性を感じないのですが。
カッコつきストリング、、、、、哲学ではよくカッコつきの何チャラって
やりますが、その影響ですかね。多分カッコいいのでしょうね。
MSドットネットのカッコつきストリングのカッコよさについての考察せよ。
カッコいい!!





435:デフォルトの名無しさん
04/11/15 15:39:51
一生懸命JAVAをまねしても糞がでる。もとい、ボロがでる。

436:デフォルトの名無しさん
04/11/15 18:54:19
>>432-433
なんか微妙に言ってることずれてると思う。あくまで微妙にね。
某所で馬鹿にされてる人の記事だが。。
URLリンク(www.atmarkit.co.jp)

437:最凶VB厨房
04/11/15 20:30:18
>>432
無視しないだろ。結果(生成されるIL)が同じだけだ。この場合。
>>433
[String]はSystem.Stringクラスだ。
自前実装じゃないぞ。

>>436
ってことを言いたかったの?

438:デフォルトの名無しさん
04/11/15 20:55:33
>>437
ああ、>>433は微妙どころじゃないね。だいぶずれてるわやっぱ。

439:フナ太郎
04/11/16 02:04:22
>>437
別に自前である必要はない


440:デフォルトの名無しさん
04/11/16 04:46:23
関数のなかで配列を宣言してその値を返すってOKですか?
Function Test() As Date()
...
Dim cn(2) As Date
cn(0) = c1
cn(1) = c2
Return cn
End Function


441:TEE
04/11/16 07:08:09
>>440
んなもん、簡単にテストできるだろーが。

442:デフォルトの名無しさん
04/11/16 08:18:17
VB.NET2004って出るだろうか

443:デフォルトの名無しさん
04/11/16 12:32:18
北の国から2004
Gold Finger 2004
Kinf of Fighter 2004
Gメン2004
Air Port 2004

444:初心者
04/11/16 15:57:11
vb.netでWMIの機能を使い、クライアントからサーバ上のアプリを起動させようとしています。
以下のようなサンプルコードを動かしているのですが、クライアント上のメモ帳が起動するだけでサーバ上のメモ帳は起動されません。
どのように修正すれば、サーバ上のメモ帳を起動できるのでしょうか。
恐れ入りますが、ご教示願えませんでしょうか。

Options.Username = "administrator"
Options.Password = "password"

Scope.Path.Server = "サーバ名"
Scope.Options = Options

Dim processClass As New ManagementClass("Win32_Process")


Dim methodArgs() As Object = {"notepad.exe", Nothing, Nothing, 0}

Dim result As Object = processClass.InvokeMethod("Create", methodArgs)

Console.WriteLine("Creation of process returned: {0}", result)
Console.WriteLine("Process id: {0}", methodArgs(3))

445:デフォルトの名無しさん
04/11/16 16:05:33
>>444
ManagementObjectのコンストラクタ引数にせっかく作ったManagementScopeとObjectGetOptionsを指定してないのはどうしてかな。

446:初心者
04/11/16 17:42:24
>>445
ご回答頂き、本当にありがとうございます。
ご指摘の概念が良く理解できていないようです。
単純にクライアント側が起動する記述になっていたわけですね。
どのように指定するか考えてみたいと思います。


447:デフォルトの名無しさん
04/11/16 19:13:19
445がManagementClassをManagementObjectと取り違えてるのが混乱に一層の拍車をかけてるな。

448:最凶VB厨房
04/11/16 19:49:57
>>429
Socketクラスは利用してないが・・・。こんな感じかな。
Option Explicit On
Option Strict On
Imports System
Imports System.Net
Imports System.Net.Sockets
Imports System.Text
Public Delegate Sub ReceiveEventHandler(sender As object,e As UDPEventArgs)
Public Class udps
Public Event ReceivedUDPPacket As ReceiveEventHandler
Protected Overridable Sub OnReceivedUDPPacket(e As UDPEventArgs)
RaiseEvent ReceivedUDPPacket(Me,e)
End Sub
Public Sub Listen()
Dim client As UdpClient=new UdpClient(10000)
Dim ep As New IPEndPoint(IPAddress.Any, 0)
While True
Dim bb() As Byte=client.Receive(ep)
Dim ueh As UDPEventArgs=New UDPEventArgs()
ueh.ReceivedBytes=bb
OnReceivedUDPPacket(ueh)
End While
End Sub
End Class


449:最凶VB厨房
04/11/16 19:50:48
Public Class UDPEventArgs
Inherits EventArgs
Public ReceivedBytes() As Byte
End Class
Public Class EntryPoint
WithEvents Shared svr As udps
Public Shared Sub Main()
svr=New udps()
AddHandler svr.ReceivedUDPPacket,Addressof UDPReceived
svr.Listen()
End Sub
Public Shared Sub UDPReceived(sender As Object,e As UDPEventArgs)
Dim rs As String=Encoding.UTF8.GetString(e.ReceivedBytes,0,e.ReceivedBytes.Length)
Console.WriteLine("event発生->{0}",rs)
End Sub
End Class


450:416
04/11/16 20:10:59
RichTextBoxじゃなくて普通のTextBoxをMultiLine=Trueにして試したら普通に動いた…
(RichTextBoxにすると相変わらず上手くいかない)
変なの、VB6の時にはこんなことにはなってなかったのに

451:デフォルトの名無しさん
04/11/16 21:49:27
>450
 一度RichTextBoxのTextプロパティに代入した後で、
RichTextBoxのTextプロパティの内容を詳しく調べてみると
何か分かるのでは?
 会社に行かないと開発環境が無いので確認できないが、
改行コードがvbCrLfからvbCrかvbLfに変換されているかも。

452:デフォルトの名無しさん
04/11/16 21:57:00
Hashtableってメモリリークとかしないですか?
解放の手順としては、Clearを呼んでNothingを代入すれば
よいでしょうか。

453:デフォルトの名無しさん
04/11/16 23:42:55
>>452
Hashtable に限らず、IDisposable インターフェースを実装していないマネージドクラスであれば、
後処理などせず放置しておいてOK。というか、プログラマが明示的に後処理することは、基本的には
できない。
Clearを呼んだとしても、その時点でメモリが解放されるわけではない。
Nothingを代入したとしても、そのインスタンスの参照カウンタがひとつ減るだけ。たいていの場合は、
これで参照カウンタが0になって、インスタンスはガベージコレクタの管理下に入るんですが、
これは変数のスコープが終わったときや、その変数に別のインスタンスへの参照が代入されたときと
同じ動作です。Nothingを代入することには意味がありません。
使い終わった変数のスコープがすぐに終わるようにプログラムを組むことの方が大切です。

IDisposableを実装しているクラスなら、クラス内部で使用しているアンマネージドなリソースを
明示的に解放するために Dispose を呼んでおいた方が無難。

454:最凶VB厨房
04/11/17 00:30:54
あひゃ

455:デフォルトの名無しさん
04/11/17 07:20:22
>453
ありがとうございました。

456:デフォルトの名無しさん
04/11/17 08:23:42
>441
>んなもん、簡単にテストできるだろーが。

テストして概ね動作する場合は、それが正しいかどうかの判断は難しいはずです。

「関数の内部で宣言した変数Xはその関数を抜けると開放される」と考えるのは
ごく自然です。ところが変数Xを関数のリターンにした場合は開放されるのか?
それが問題です。実際には開放されたとしてもメモリー上には残っていますから
別のプログラムがそのエリアを使わない限り、変数Xは保存されているように
見えます。普通には動くけれど偶に動かない。そういう動作が起こる可能性が
あるわけです。
 「値を返せば保存され、参照を返せば保存されない。」のか?
 参照されている先のメモリーも保存されるのか?
配列の場合は特に心配ですね。
でどうなんでしょう?


457:デフォルトの名無しさん
04/11/17 10:02:20
FormでKeyPreviewプロパティに左右されず発生する
キー入力のイベント、プロテクトメソッドは無いのでしょうか?

エンターキーで項目間の移動を行いたいのですが、
これをForm側にSelectNextControlを使用して実装させたいと考えています。
ですがKeyPreviewプロパティに依存することなく実装ができません。

458:デフォルトの名無しさん
04/11/17 11:49:35
うぅむ・・・Panelコントロール内でLabelなどを実行中にD&Dで移動できるようにしたいんだが・・・
はて・・

単純にやろうとするとこれってやっぱムリ?

MouseDownでDoDragDrop
DragDropイベントで移動しようと思うんだが・・・

言語は VB.NET 2003




459:デフォルトの名無しさん
04/11/17 11:51:35
>>456
.NETでは参照が残ってる限りガベージコレクトの対象にはならない。(WeakReferenceという例外もあるが)
で、返値として返された時点で参照がメソッド呼出元に渡される事になる。
ほら参照が残ってるからガベージコレクトされる事が無くなった。
//もちろん呼出元で返値をそのまま捨てればそれで参照が無くなるからガベージコレクトの対象行き。

ガベージコレクションの動作を知るべきだね。

>>457
ProcessCmdKeyとかProcessDialogKeyとか。

460:デフォルトの名無しさん
04/11/17 12:12:33
>>458
もっと単純に、
MouseDownイベントでクリック位置を保存、
MouseMoveイベントでLeftプロパティとTopプロパティを変更。

URLリンク(dobon.net)
フォームでの場合のサンプルだが、参考に。

461:デフォルトの名無しさん
04/11/17 12:29:54
>>460
D&Dって言ってるんだからコンテナ変えたいんじゃないの?
まあ、>>458の言葉が足りないだけのような気もするけど。

462:デフォルトの名無しさん
04/11/17 12:54:40
>>460 >>461 説明不足で申し訳ない

確かにコンテナを変えるのが理想なんだが、それはそれで回避方法はあるかな?と
最悪動的にオブジェクトを っててもあるんだけど

でも、とりあえず、460のリンクに逝ってから応用手法でも考えてみるよ

463:デフォルトの名無しさん
04/11/17 13:43:33
すいません。
ブラウザの×ボタンを押した時と同じイベントを取得したい時は
どのようにすればいいんでしょうか?

やりたいのはブラウザの×ボタンを押した時にDB接続していたら
接続を解除するという動きなのですが。
よろしくお願いします。

464:デフォルトの名無しさん
04/11/17 14:58:15
WM_CLOSE

465:デフォルトの名無しさん
04/11/17 23:14:11
かなり初歩的な質問なんですけど
年だけを入力してカレンダーを↓の様な感じで表示させろって言われていて
1  5  9
■ ■ ■

2  6 10
■ ■ ■

■の部分がカレンダー部分

縦一列表示なら出来たのですが
↑の様にはなりません
どなたか助言お願いします

466:デフォルトの名無しさん
04/11/17 23:15:16
>464
もうちょっと質問の意図を汲んでやれよ。

467:デフォルトの名無しさん
04/11/17 23:30:53
>>465
久々にこの台詞を吐かねばなるまい。
自分以外はみんなエスパーか何かだとでも思ってるの?

468:デフォルトの名無しさん
04/11/17 23:32:50
>465
 WebアプリケーションなのかWindowsアプリケーションなのかに
よって回答が変わるがどちらだ?
 Webアプリケーション(Webフォーム)なら、System.web.UI.WebControlsの
TableオブジェクトとTableRowオブジェクト、TableCellオブジェクトを
駆使すれば何とかなるが。

469:デフォルトの名無しさん
04/11/17 23:57:38
>467
こんな糞レベル低いスレの住人をエスパーだと思ってる
わけないじゃん。安心していいよ。

470:デフォルトの名無しさん
04/11/17 23:58:10
>467
どうする?>468氏は君と違って質問の意味が分かってるみたいだよ。

471:デフォルトの名無しさん
04/11/18 00:08:46
>>468サソ
Windowsアプリケーションです

472:デフォルトの名無しさん
04/11/18 00:47:31
>>470
トラの威を借る.....みたいだな。なさけない奴。
お前自身はわかるのかw それが問題だろうが。

ていうか、>>468だって>>465の文章から質問の意図などわかってるはずがない。
現にわかってないから質問してるんだろう。

>>468は親切にも馬鹿な質問者を誘導しようとしているようだが、
俺は自分の知りたいことすら過不足なく説明できないような馬鹿にまで
寛容になれないし、なるべきでないと思ってるのでね。

473:フナ太郎
04/11/18 01:14:49
>>465
これはVB.NETというよりはアプリケーションを作る上でのアイディアに
関する質問だね。こんなところでこっそり聞くよりも、「表示させろ」と言った人に
(もしくは先輩や同僚に)聞いた方がいいと思うよ。
恥を忍んでガンガン質問できるヤツじゃないと伸びないよ、この業界。


474:デフォルトの名無しさん
04/11/18 03:13:12
VB.NETを始めて間もない初心者です。aspxという画面にテキストボックスを
貼り付け、値を入力する際、右揃えにすることは可能なのでしょうか?

テキストボックスには、「-1」などといった数値を入力するため、
右揃えの方が見やすいと思われるのですが、どういった対処を取れば
良いのか全くわからず・・・。

どなたかご存知ではないでしょうか?ご教授願います。
よろしくお願いいたします。



475:デフォルトの名無しさん
04/11/18 03:20:35
format

476:デフォルトの名無しさん
04/11/18 07:16:20
>472
スレ違い

477:デフォルトの名無しさん
04/11/18 07:17:29
>472
相手する気ない奴は書き込んではいけません。
こんなことすら教えないとダメなのか・・・

478:デフォルトの名無しさん
04/11/18 07:18:05
>472
相手する能力がない人も書き込んではいけません。
こういうこともちゃんと教えないとダメだよ・・・

479:デフォルトの名無しさん
04/11/18 07:25:17
>476-478
相手する必要なし。こういう奴はどこのスレでも
同じような書き込みして同じような指摘受けているのに
一向にやめようとしない。放置するしかない。

480:デフォルトの名無しさん
04/11/18 08:20:46
うだうだ言ってる暇があったら答えればいいのにね

481:デフォルトの名無しさん
04/11/18 12:31:37
>>480
馬鹿の特徴は他人に向ける批判的視点を自分に向けられないこと。
それが君。ありていに言えば「オマエガナー」。

ていうか、質問が理解可能かつそれが俺のわかることなら俺は答えてる。
そのように言うってことは、君は>>465の質問の意味がわかるんだよな?

ぜひ>>465の質問の意味を噛み砕いて説明してみてくれ。
いや、出来ないのならいいんだよ別に。

482:デフォルトの名無しさん
04/11/18 12:57:13
>>481
> ていうか、質問が理解可能かつそれが俺のわかることなら俺は答えてる。
じゃ、わかんねーなら口出すなや。
はい、終了

483:デフォルトの名無しさん
04/11/18 17:01:43
ListViewを自分で作るのではなく
画面に表示されているウィンドウ(デスクトップ含む)の
ListViewを取得するにはどうしたらいいのでしょうか?

ListView *listview = GetListView(プロセスID); みたいな
お手軽な方法があるのかと思っていたらなさげなので
全然わからないです(´・ω・`)

484:483
04/11/18 17:14:43
すいません
VCと間違いました

485:デフォルトの名無しさん
04/11/18 17:24:37
ここでの質問が間違っていたらすいません(´・ω・`)

テキストボックスAとボタンBが画面上にあったとします。
それでテキストボックスにフォーカスがあたった時に何故か
ボタンBにも同時にフォーカスがあたっていて原因がわかりません。

同時にフォーカスがあたるのが仕様なら仕方ないのですが
せめて他のボタンに制御したいと思って色々やったのですが
さっぱりわかりません。

詳しい方教えて頂けないでしょうか?

486:デフォルトの名無しさん
04/11/18 17:25:46
追記です。

.NET2003使っております。
宜しくお願いします(´・ω・`)

487:デフォルトの名無しさん
04/11/18 18:06:42
>>485
> ボタンBにも同時にフォーカスがあたっていて原因がわかりません。
どんな現象がでて、ボタンBにもフォーカスがあると判断したの?

488:デフォルトの名無しさん
04/11/18 19:11:17
>>485
だからエスパーはいないといっているのがなぜわからない?

不思議でしょうがないんだけど、どうしていい歳して、
他人が自分の書いた文章を読んだときにどのように思うだろう?
きちんと自分が伝えたいことが伝わるだろうか?って考えて文章かけないの?

はっきりいって情けない。
こんなのプログラミング以前どころか義務教育修了レベル以前の問題だろ。

489:デフォルトの名無しさん
04/11/18 19:31:30
>>488
おまえはエスパーか?

どうして”いい歳”してるってわかるんだ?www

490:デフォルトの名無しさん
04/11/18 19:34:57
>>488
それ以前に
エスパーならプログラムできるのか?
念写できたり念動力があるエスパーが
プログラムの知識を持っているのか?

エスパー伊藤もエスパーだが
とてもできそうにないなwww

491:デフォルトの名無しさん
04/11/18 19:38:58
>>485は表現力がない。
>>490は読解力がない。

踊る阿呆に見る阿呆ってかw

492:清田
04/11/18 20:47:15
これだから素人は...

493:デフォルトの名無しさん
04/11/18 21:06:29
そもそも2chで聞く事自体間違い

494:デフォルトの名無しさん
04/11/18 21:09:15
>488
皆が指摘してくれている事がまだ理解できていないようで・・・
義務教育を受けられなかったのですね。おかわいそうに。

495:デフォルトの名無しさん
04/11/18 21:16:05
VB初心者にうってつけのサイト等ありましたらご教授くださいませんこう

496:デフォルトの名無しさん
04/11/18 21:49:35
 今更だが、RichTextBoxのアレ、検証できたので結果報告をば。

Dim strCompare As String = "aiueo" & vbLf & "aiueo"
RichTextBox1.Text = "aiueo" & vbCrLf & "aiueo"
If strCompare.Equals(RichTextBox1.Text) Then
MsgBox("vbCrLf が vbLfに変換されている!")
Else
MsgBox("vbCrLf は vbLfではない")
End If

 と言う訳で、RichTextBoxの改行コードは「LF」と
言う仕様になっていて、改行コード「CRLF」の文字列を
代入すると、「LF」に変換されてしまうらしい。
 ちなみに、Windows XP(SP1) + VS.NET 2003で確認。

497:デフォルトの名無しさん
04/11/19 14:36:46
ちなみに2002なんすが
[コード表示]から (Base Class Events)     Load
と、選択して雛形を出すと、
_ Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
[デザイン]のForm1をダブルクリックすると、
_ Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

この違いはなんっすか?
エロい人もしくはエスパー教えて厨


498:デフォルトの名無しさん
04/11/19 15:54:19
ドトネを感じるんだお前はそれしかない
May the .NET with you

499:デフォルトの名無しさん
04/11/19 17:00:36
form上をpictureboxがランダムで移動するように
したいのですが,誰かアドバイスお願いします

500:困ったくん
04/11/19 18:25:52
割り算を減算(引き算で)行うプログラムを作っています。

[ Text1 ] ÷ [ Text2 ] = [ Text3 ] 余り [ Text4 ]

のように表示させるのですが、例えば、35÷6をしたときに、
答えが、Text3=1 Text4=29 になってしまいます。
どうすればいいのでしょうか?
よろしくお願いします。 なお、僕の考えたプログラムは以下の通りです。
(※”=”部分がコマンド1です)

Private Sub Command1_Click()
M = Text1.Text
N = Text2.Text
sho = 0

Do
M = M - N
sho = sho + 1
Loop While M >= N

Text3.Text = sho
Text4.Text = M
End Sub

501:デフォルトの名無しさん
04/11/19 18:42:06
>>500
ループ条件が文字列比較になってるから。

あと何故Do Whileループ? 2 / 3 = 1 余り -1 になるぞ。

502:デフォルトの名無しさん
04/11/19 18:44:25
割り算を引き算でやるからだろ

503:500 困ったくん
04/11/19 18:46:51
>>501
>ループ条件が文字列比較になってるから。
ということは、条件を他の形にすればいいんですね!
・・・といっても、どうすればいいのかわかりません。。。

For-Nextで作れるんですかね?
Do-While,Until じゃないと作れないと聞いたもので・・・

504:デフォルトの名無しさん
04/11/19 18:59:32
VBとVB.NETはなにが違うんでしょうか。
いまだにわかりません、どっちが儲かりますか?

505:デフォルトの名無しさん
04/11/19 19:33:22
>>504
どっちも儲かる。

506:デフォルトの名無しさん
04/11/19 20:43:18
フォームの座標を取得する方法って何かないですか?

507:デフォルトの名無しさん
04/11/19 20:43:49
あるよ。

508:デフォルトの名無しさん
04/11/19 20:44:44
>>507
よかったら教えてもらえないでしょうか

509:デフォルトの名無しさん
04/11/19 20:47:44
それくらい自分で調べろよ……。
Formのプロパティざっとみればすぐ見つかるだろ。

510:デフォルトの名無しさん
04/11/19 20:49:04
>>509
それをつかってピクチャーボックスを動かすことって
できますか?

511:yukki
04/11/19 20:58:46
>>448
>>449
ソースありがとうございます。
ReceiveEventHandlerは実際どの様に使ったらいいでしょうか?
プログラムに組み込んだものの使い方がいまいちわかりません。
初心者で本当申し訳ありませんが、返信お願いします。

512:最凶VB厨房
04/11/19 21:24:39
>>511
>ReceiveEventHandlerは実際どの様に使ったらいいでしょうか?
ソースを見てくれとしかいいようがない・・・。
コンパイルして実行してみた?
デリゲートがわからんならここでも見れ
URLリンク(www.atmarkit.co.jp)
イベントがわからんならここでも見れ。
URLリンク(www.microsoft.com)

ついでにテスト用送信プログラムはこんな感じだ。実行してみれ
Imports System
Imports System.Net
Imports System.Net.Sockets
Imports System.Text
Public Class udpc
Shared Sub Main()
Dim client As UdpClient=new UdpClient(20000)
Dim i As Integer=0
Dim ss As String="パケット発射"
For i=0 To 3
ss &=ss
Next
Dim bb() As Byte=Encoding.UTF8.GetBytes(ss)
client.Connect(IPAddress.Loopback,10000)
client.Send(bb,bb.Length)
End Sub
End Class

513:デフォルトの名無しさん
04/11/19 23:03:23
>509
質問に答える気がないのに書き込む行為は荒らしと
見なされますよ。別のスレで同じプロバイダの奴がそれで
アク禁になって、えらい迷惑受けた。

514:デフォルトの名無しさん
04/11/19 23:15:17
>>513
俺は>>509ではないが、空腹の奴に魚の釣り方教えてるだけだろ?

ていうか、だから馬鹿は自分の言葉を自分自身に適用できんのか?
お前がすべきでないと言っていることを、お前自身がやってないか?
俺様だけは特別ルールが適用されます、ってか?
とんでもない棚上げ野郎だな。

515:最凶VB厨房
04/11/19 23:25:35
もまえらそろそろおちけつ

516:デフォルトの名無しさん
04/11/19 23:30:15
>514
アホ。

517:デフォルトの名無しさん
04/11/19 23:30:41
TreeViewのノードを一部非表示にすることってできますか?

518:デフォルトの名無しさん
04/11/20 00:25:54
>517
すいません。別の方法で解決できたのでこの質問は忘れてください。

519:デフォルトの名無しさん
04/11/20 02:00:45
iTunes for Windows をVBから操作したいのですが参考になるソースコードはありませんか。

520:デフォルトの名無しさん
04/11/20 02:35:13
URLリンク(developer.apple.com)
この辺とか

521:デフォルトの名無しさん
04/11/20 02:45:14
>>520
追加
参照設定でCOMの中からiTunesタイプライブラリを設定
インターフェースがずらずら出てくるから
後はJavaScriptのソースと見比べながらどうぞ

522:デフォルトの名無しさん
04/11/20 10:20:19
現在テキストボックスでKeyPressイベントの中で数字のみの入力に制限しています。
e.KeyChar < "0"c Or e.KeyChar > "9"cとかで。
でもこれだとコピー、ペースト、カットのショートカットキーも無視されてしまいます。
どうやった両立できますか?

523:デフォルトの名無しさん
04/11/20 10:52:54
最近の人たちはどうして自分で実装しようとしないんだろう。。。

524:デフォルトの名無しさん
04/11/20 13:07:23
>>523
脳味噌腐ってるのか?
だから「自分で実装」する方法を聞いてるんだと思うが。

>>522
実際やったことはないが、KeyPressではなくKeyDownでキーコードをマスクするように
書けばできると思う。

525:ネタではありません。
04/11/20 15:16:01
すみません、困っています。
どなたかWEBアプリケーションを作れる方、
相談にのっていただけませんか?
「こういうWEBプログラムが作りたい」という案は
すでにあります。自宅サーバーもすでにあります。
平日の夜、都内で焼肉をおごります。

もし、「それなら作れるよ」ということでしたら
数万円の謝礼をお支払いする用意があります。
よろしくお願いいたします。

526:デフォルトの名無しさん
04/11/20 15:22:52
>>525
まずは要件定義書を完成させてこい。話はそれからだ。

527:yukki
04/11/20 15:57:13
>>512
>最凶VB厨房さん

たびたび申し訳ありません。

>>ReceiveEventHandlerは実際どの様に使ったらいいでしょうか?
>ソースを見てくれとしかいいようがない・・・。
>コンパイルして実行してみた?

テスト用送信プログラムもコンパイルして送信してみたのですが、受信イベントが発生しません。
紹介してもらったURLを参考に受信側のFORMでフォームロードイベントで、デリゲートを宣言を下記のように
してみたのですが、うまくいきません。
VB.NETというかプログラム自体初心者なため検討違いなことしてますか?
デリゲートの使用方法を教えていただけないでしょうか。

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim TestReceive As ReceiveEventHandler
TestReceive.Invoke()
End Sub

'Public Overridable Sub Invoke(sender As Object, e As UDPEventArgs)' のパラメータ 'e' に対して引数が指定されていません。
'Public Overridable Sub Invoke(sender As Object, e As UDPEventArgs)' のパラメータ 'sender' に対して引数が指定されていません。


528:デフォルトの名無しさん
04/11/20 15:58:19
MSDNをインストールして使っていますが、
背景色の白がまぶしいので、他の色に変えたいのですが
どうやってできるかご存知の方いませんか?

529:デフォルトの名無しさん
04/11/20 17:03:15
>>521
大変参考になりました。どうもありがとう。

530:デフォルトの名無しさん
04/11/20 17:42:12
>>525
新しいのが出てきたな
面白いぞ

531:デフォルトの名無しさん
04/11/20 17:52:59
>>525
まず君の連絡先をここに晒せ。こちらから連絡させて頂きます。

532:デフォルトの名無しさん
04/11/20 18:29:53
>>525
こんなメールが来そうな予感

ようこそ、バーボンハウスへ。
このテキーラはサービスだから、まず飲んで落ち着いて欲しい。

うん、「また」なんだ。済まない。
仏の顔もって言うしね、謝って許してもらおうとも思っていない。

でも、このメールを見たとき、君は、きっと言葉では言い表せない
「ときめき」みたいなものを感じてくれたと思う。
殺伐とした世の中で、そういう気持ちを忘れないで欲しい、そう思って
このスレを立てたんだ。


じゃあ、注文を聞こうか。


533:デフォルトの名無しさん
04/11/20 20:06:30
>524
>523みたいな奴をいちいち相手してやることないって。
>526 多分君にはお願いされてないと思うよ。


534:デフォルトの名無しさん
04/11/20 21:10:27
>>533
答えてやれよ

535:デフォルトの名無しさん
04/11/20 22:42:00
sendkeyみたくマウスのボタンを操作する事はできますか?
出来ればやりかたを教えていただきたいのですが。

536:デフォルトの名無しさん
04/11/20 22:52:56
>>535
SendInput
キーストローク、マウスの動き、ボタンのクリックなどを合成します。

UINT SendInput(
UINT nInputs, // 入力イベントの数
LPINPUT pInputs, // 挿入する入力イベントの配列
int cbSize // 構造体のサイズ
);

537:デフォルトの名無しさん
04/11/20 23:17:33
>>525
○痴
スレリンク(tech板:525番)
スレリンク(php板:841番)
スレリンク(php板:871番)

538:デフォルトの名無しさん
04/11/20 23:47:29
>>525
数万円て馬鹿か。

539:デフォルトの名無しさん
04/11/20 23:58:52
質問です。
System.Web.Mail.SmtpMailクラスでメール送信する際
ポートの指定は出来ないのでしょうか。ググッてもわか
りませんでした。

540:デフォルトの名無しさん
04/11/21 00:10:03
>>539
できない。
.NET 2.0で追加されるSystem.Net.Mail.SmtpClientならできる。
どうしてもやりたければSocketを使う。

541:デフォルトの名無しさん
04/11/21 00:18:55
>>540
どうもです。デフォルトのポートは25に設定されているんでしょうか。

542:デフォルトの名無しさん
04/11/21 00:40:09
質問です。

VB.NETでEBCDIC漢字はSHIFT-JISに変換できないのでしょうか?
シフトコードは入れているのですが変換できません。
半角カナは変換できるのですが・・

543:デフォルトの名無しさん
04/11/21 00:40:57
>>536
ありがとうございます。

544:デフォルトの名無しさん
04/11/21 01:12:43
vb .net 2003 / windows2000

MDIでテキストエディタを作ってるのですが、ファイルの保存方法がわかりません。。。
アクティブなMDIウインドウのtextbox1のテキストを保存したいのですが、MDIウインドウの指定方法がわかりません。

545:デフォルトの名無しさん
04/11/21 01:57:47
>>544
事故解決しましたm(_ _)m

546:デフォルトの名無しさん
04/11/21 08:13:22
Private s As String = ""

Private Sub ThreadMain1()
Dim i As Integer
For i = 0 To 99
s = s + "A"
Next
Trace.WriteLine("ThreadMain1 done")
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim thread1 As New System.Threading.Thread(AddressOf ThreadMain1)
thread1.Start()
End Sub

これを実行するとへんなメッセージがでます。これは何なのでしょう。
名前がありません? 名前あるけど。0x340って何?
ThreadMain1 done
スレッド '<名前がありません>' (0x340) はコード 0 (0x0) で終了しました。


547:デフォルトの名無しさん
04/11/21 08:33:35
そのまま、名無しのスレッドが終了したってことだが。
名前ってのはThread.Nameプロパティで指定する文字列だよ。
0xNNNは内部で使われているスレッドID。

548:デフォルトの名無しさん
04/11/21 08:37:08
>547
ホントにわかってんのかな。

549:546
04/11/21 09:05:00
> 547
おっ、ありがとう。
>548
 さらに分かってるいる方の解説希望。
 たとえば、IDの使い道とか

550:デフォルトの名無しさん
04/11/21 09:41:40
>>548
が分かっていないに100炎

551:デフォルトの名無しさん
04/11/21 10:37:04
>547と>550も分かっていないに1000炎

552:デフォルトの名無しさん
04/11/22 10:02:37
>>513
ヒントを与えているが。

553:デフォルトの名無しさん
04/11/22 11:30:24
バックグラウンドでHIDEで動作している常駐のクラスclsBでタイマー
イヴェントを1秒ごとに起してコマンド処理をしています。
 メインの方では色々なフォームを立ち上げたり消したりしています。
 そのフォームの一つaFormで、データ取り込みコマンドを
clsBにたいして送ります。clsBは1分でそのコマンドの処理をして完了とデータををaFormに送ります。
しかしその時ユーザーは処理の完了を待ちきれずに別のフォームを立ち上げていて、
aFormは消えているかもしれません。
 こういう場合、どのような方法で処理をすればよいでしょうか?

1案)aForm終了時にキャンセルコマンドを送る。
2案)clsBは処理の終了でaFormがまだ存在するかを調べて、存在すれば
 完了コマンドとその処理済データをaFormに送る。

を考え付きましたが、
 クラスが存在するか消滅しているかは、どうやって調べるのでしょうか?


554:553
04/11/22 11:33:39
 正確には、クラスのインスタンスの存在、消滅の検出方法です。


555:デフォルトの名無しさん
04/11/22 12:48:40
>554
グローバル

556:デフォルトの名無しさん
04/11/22 13:25:54
VB.NET 2005 Express Beta落として使ってるんだけど、
新規プロジェクトでForm1が出来る
 ↓
ツール→オプション→Windows フォームデザイナ→Layout ModeをSnapToGridに
 ↓
Form1の大きさをマウスで変えようとするとエラー
「オブジェクト参照がオブジェクトインスタンスに設定されていません」

なんとかならんかね?

557:デフォルトの名無しさん
04/11/22 14:09:42
>556
どうなってほしいの?

558:yukki
04/11/22 16:56:41
>>527
>最凶VB厨房さん

自己解決できました。
ありがとうございます。

559:522
04/11/22 17:51:33
>>524
遅レスになってしまいました。

KeyDownイベントでもやってみたんですが、e.Handled = Trueとやっても
キャンセルされず文字が入力されてしまいます。
IsInputCharあたりをオーバーロードしてやってみてますが、いまだ未解決のままです。

560:デフォルトの名無しさん
04/11/22 18:38:11

VB6にあった実行ファイルのオプションは
どこにいったのでしょう?
会社名とか書けない…

561:yukki
04/11/22 18:49:44
度々申し訳ありません。

UdpClientのReceive メソッドはメッセージを受信するまで実行をブロックしてしまいます。
メッセージの受信を待ちつつ、他の動作(例えば、メッセージ送信やイベント発生)などを行うにはどうしたらよいでしょうか?

ご存知の方いらっしゃいましたらご伝授願います。

562:556
04/11/22 18:54:35
>>557
Layout ModeをSnapLineに設定していると、フォームの大きさをマウスで変えてもエラーが起きない。
SnapToGridでも同じように出来ませんか?という相談だったのだが。

わかりにくかったらごめん

563:デフォルトの名無しさん
04/11/22 19:09:24
>560
アセンブリ

564:デフォルトの名無しさん
04/11/22 19:28:17
>>563
教えて頂きアリガトです。
しかし。。。凹みました。仕様?2002だけかな?


565:デフォルトの名無しさん
04/11/22 19:35:44
>564
.NET系は全部そうなんじゃないの?c#も同様だったし。

566:デフォルトの名無しさん
04/11/22 22:10:54
あげ

567:デフォルトの名無しさん
04/11/23 09:39:24
フォームを表示させずに処理したいんですがどのようにやればいいのでしょうか?

568:デフォルトの名無しさん
04/11/23 09:55:23
>567
どういうこと?Sub Main()からスタートしてフォーム表示させないように
すればよさそうだけど、そういうことでいいのかな?

569:デフォルトの名無しさん
04/11/23 10:11:35
>>568
そです。これから試してみます
どうもです

570:デフォルトの名無しさん
04/11/23 14:47:35
VB.NETで、ftpサーバにファイルをアップロードするプログラムを作っています。

本のサンプルそのままに一つのファイルをアップロードさせるのはうまくいくのですが、
複数のファイルをアップロードしようとすると、うまくいくのは最初のファイルだけで、
2番目のファイルは、アップ先に空のファイルができるだけで、止まってしまいます。

URLリンク(do.sakura.ne.jp)
↑いま、こちらにソース置かせてもらったのですが、

Button1_Click()で、サーバにログインし、
Button2_Click()で、最初のファイルアップロード。アップロードが完了してから、
Button3_Click()で、2番目のファイルをアップロードするのですが、ここで、止まってしまいます。

なぜなのでしょうか?
よろしくお願いします。m(__)m

571:デフォルトの名無しさん
04/11/23 18:02:53
>>558

どう解決したのか
しりたいでつ

572:MSDE
04/11/23 18:50:02
. .NETでMSDEを利用したいと思いますが、新規にデータベースを作成する方法が分かりません。
サンプルにこのコードを見つけたのですが、
型 'Repository' が定義されていません。となりエラーになります。

Dim oRepos As New Repository
oRepos.Create("SERVER=MyServer;DATABASE=MyDatabase;UID=MyUserID;PWD=MyPassword;")

リポジトリーというのが意味不明ですが、新規にDBファイルを作成するのはこのコードで
いいのでしょうか? このエラーを取り除くにはどうすればいいのでしょう?


573:デフォルトの名無しさん
04/11/23 19:20:55
MSDN嫁。SQLでテーブル定義したいならDB板に逝け。
その前にDBの基礎とかオブジェクト指向とか、ハードルが高そうな気もするが。

574:デフォルトの名無しさん
04/11/23 19:28:46
>573
質問に対する回答・ヒント以外の書き込みは
他のスレで荒らし報告されています。

ちなみにこの書き込みはあなたの書き込みに対しての
もので、質問に対するものではないです。

575:デフォルトの名無しさん
04/11/23 19:39:48
(・∀・)ニヤニヤ

576:573
04/11/23 20:14:40
2ちゃんの専門板のレベルも地に堕ちたな。

577:デフォルトの名無しさん
04/11/23 20:33:04
>576
それは君では?

578:(・∀・)ニヤニヤ
04/11/23 20:44:24
必死すぎ。w

579:デフォルトの名無しさん
04/11/23 20:56:47
>578
最後に「w」が付いてるのは何?

580:MSDE
04/11/23 20:57:01
 名前つきインスタンス、混在モード、ストロングパスワードなど手前勝手なヤツラ言語の
名前がつけられていて何のことかサッパリ分からん。
インストールくらい勿体つけないで普通に喋れんのか?きっとどいつもこいつも上から下まで
精神構造がおかしいのだろう。

ここでヤツラ言語とは奴らが勝手に作った長持ちしない言語のこと。

■以下はインストールのマイクロソフトの説明
以下のコマンドのいずれかを実行します。
Windows 認証モードを使用するように設定された既定のインスタンスをインストールするには、次のコマンドを実行します。
setup SAPWD="AStrongSAPwd"

ここで AStrongSAPwd は sa ログインに割り当てられた強力なパスワードです。

Windows 認証モードを使用するように設定された名前付きインスタンスをインストールするには、次のコマンドを実行します。
setup INSTANCENAME="InstanceName" SAPWD="AStrongSAPwd"

ここで AStrongSAPwd は sa ログインに割り当てられた強力なパスワードで、InstanceName はそのインスタンスに割り当てられた名前です。

混在モードを使用するように設定された既定のインスタンスをインストールするには、次のコマンドを実行します。
setup SAPWD="AStrongSAPwd" SECURITYMODE=SQL

ここで AStrongSAPwd は sa ログインに割り当てられた強力なパスワードです。

混在モードを使用するように設定された名前付きインスタンスをインストールするには、次のコマンドを実行します。
setup INSTANCENAME="InstanceName" SECURITYMODE=SQL SAPWD="AStrongSAPwd"

ここで AStrongSAPwd は sa ログインに割り当てられた強力なパスワードで、InstanceName はそのインスタンスに割り当てられた名前です。



581:デフォルトの名無しさん
04/11/23 20:58:21
>580
質問スレなんだから質問を書け。ここはお前の日記帳じゃない。
訳がわからなくて質問することもできないというのなら、
お前は業界を変えろ。

582:MSDE
04/11/23 21:00:16
読めば読むほど滑稽な文章なのだが、、、
いま腑と思いついたが「マニュアルから読むマイクロソフトの
精神構造」という本を書いたら馬鹿の壁よりはきっと売れると思う。


583:デフォルトの名無しさん
04/11/23 21:03:34
>582
書くのがお前じゃ売れないと思うよ。

584:MSDE
04/11/23 21:09:46
 書くのはゴーストライターに決まってる。

585:MSDE
04/11/23 21:14:20
 ところで、こんなんがあった。もうすこし簡単にならん?
Set oServer = CreateObject("SQLDMO.SQLServer")
Set oDatabase = CreateObject("SQLDMO.Database")
Set oDBFile = CreateObject("SQLDMO.DBFile")
Set oLogFile = CreateObject("SQLDMO.LogFile")
' SQLサーバーへ接続します
oServer.Connect "(local)", "sa", ""
' データ ファイルを定義します
oDBFile.Name = "MyData" ' 名前
oDBFile.PhysicalName = "C:\MSSQL7\Data\MyData.mdf" ' 物理ファイル名
oDBFile.PrimaryFile = True ' プライマリーファイルとして設定
' データ ファイルの自動拡張を設定
oDBFile.FileGrowthType = 0 'SQLDMOGrowth_MB MB拡張
oDBFile.FileGrowth = 1 ' 1MB拡張
' データファイルの定義を追加する
oDatabase.FileGroups("PRIMARY").DBFiles.Add oDBFile
' トランザクション ログを定義します
oLogFile.Name = "MyLog" ' 名前
oLogFile.PhysicalName = "C:\MSSQL7\Data\MyLog.ldf" ' 物理ファイル名
oDatabase.TransactionLog.LogFiles.Add oLogFile ' 追加
' 定義したデータベースを作成する
oDatabase.Name = "MyDB" ' 名前の指定
oServer.Databases.Add oDatabase ' サーバー上にデータベースを作成


586:MSDE
04/11/23 21:21:51
>MSDN嫁。SQLでテーブル定義したいならDB板に逝け。
>その前にDBの基礎とかオブジェクト指向とか、ハードルが高そうな気もするが。

Dim oRepos As New Repository
でハードルの低いお前はReposhitoryがどこのNameSpaceか知ってるのか?
知ってるなら答えてみなさい。


587:デフォルトの名無しさん
04/11/23 21:22:51
Reposhitoryねぇ・・・そんなクラスはないんじゃないですかねぇ・・・

588:デフォルトの名無しさん
04/11/23 21:23:39
>584
お前おもしれーな。ゴーストライターの意味分かってるか?

589:デフォルトの名無しさん
04/11/23 21:24:34
>585
どこが難しいの?

590:デフォルトの名無しさん
04/11/23 21:25:42
>572からの変わりようがいいな。ドキュメント読んで分かんないもんだから
ドキュメントのせいにして騒いでるw
そんなんじゃ誰も相手にしてくれないよw

591:MSDE
04/11/23 21:36:20
>589
>どこが難しいの?
名前があって物理ファイル名があってデータベース名があるんですか?
えっと、選り取りみどり、名前には不自由しないようですね。

でトランザクションログって何ですかね? 不思議な名前ですが。
まあそれはいいとして。ログ見りゃなんか分かるんでしょう。きっと。
でもトランザクションとは関係ないと思うが。

' データ ファイルの自動拡張を設定
oDBFile.FileGrowthType = 0 'SQLDMOGrowth_MB MB拡張
oDBFile.FileGrowth = 1 ' 1MB拡張
 1MB拡張ってなんなんです?


592:デフォルトの名無しさん
04/11/23 21:42:51
>591
データファイルのサイズが足りなくなったときに1MBずつ
拡張すること。スレ違い。>573で既に指摘されてるだろ。

593:デフォルトの名無しさん
04/11/23 21:43:31
今後MSDE氏の質問には回答しないように。
回答自体もスレ違いなので。

594:MSDE
04/11/23 21:53:40
>592
 難にせよ。ありがとう。
 しかしRepositoryのNamespaceについて誰もしらんのか? そんなマニュアルを
のさばらせているのは、一体誰なんだ。 

>お前おもしれーな。ゴーストライターの意味分かってるか?

 著者じゃなくて馬鹿の壁を本当に書いた人のことね。あなた知ってる?
知らないでしょ。そう、誰も知らない。知ってるのは、当の精神科医と
檻のなかの機知外くらいだよ。

>ドキュメントのせいにして騒いでるw
>そんなんじゃ誰も相手にしてくれないよw

 あのドキュメントから読めるものは、タイトルが意図しているものとは
別のもの。そう脳みその異常。




595:MSDE
04/11/23 21:55:57
 ADOってのは.NETの目玉じゃないのか? ちがう? スレは目玉を
避けるのね? こわいから?

596:デフォルトの名無しさん
04/11/23 22:04:33
取りあえず見つけたサンプルとやらのアドレスを書け。
話はそれからだ。

597:デフォルトの名無しさん
04/11/23 22:06:29
>595
通報しときました。適切なスレを選ばないとこういうことになります。

598:デフォルトの名無しさん
04/11/23 23:40:05
イイヨイイヨー

599:デフォルトの名無しさん
04/11/23 23:40:06
>>579
ブッシュ?

600:デフォルトの名無しさん
04/11/24 04:43:30
面白いスレですね。
眠気が吹っ飛んだよ

601:デフォルトの名無しさん
04/11/24 07:24:55
夜はレベルが低くなるスレだな

602:573
04/11/24 09:01:09
まっとうなプログラマは昼間仕事するからね。

603:デフォルトの名無しさん
04/11/24 09:33:41
VB.NET 2005 Express Beta落として使ってるんだけど、
新規プロジェクトでForm1が出来る
 ↓
ファイル→名前を付けてForm1.vbを保存
 ↓
実行ファイルが作られていない

実行ファイルの作り方がわかりません。スレ違いだったら誘導おながいします

604:デフォルトの名無しさん
04/11/24 10:38:04
ビルド

605:デフォルトの名無しさん
04/11/24 11:38:31
F5

606:デフォルトの名無しさん
04/11/24 12:07:18
>>602
そりゃ説明になっとらん。
昼レベルが高いとしたら、まっとうなプログラマが昼間仕事さぼってここに書き込んでることになる。
漏れもだが。 orz


607:デフォルトの名無しさん
04/11/24 12:43:25
>606
あほ

608:デフォルトの名無しさん
04/11/24 14:40:46
>>604
>>605
ビルドですか。F5ですか、ありがとうございます。

609:デフォルトの名無しさん
04/11/24 15:26:06
すみません。続いての質問で恐縮なんですが。

ビルドしても実行ファイルが作られてないみたいなんですが
まず、パスを通さないといけないのでしょうか?
ビルド出力パスというのが関係するんでしょうか。
ソースファイルが2つと、リソースファイルまでは作れたんですが



610:デフォルトの名無しさん
04/11/24 15:31:51
VBで
文字列を入力すると、その文字列が回文(右から読んでも左から読んでも一緒)
であるかどうかを判別するプログラムのコードだれかわかりませんか?

611:デフォルトの名無しさん
04/11/24 15:44:10
誰か、VB.NET2005 betaのわかりやすい解説書いてほしいよ。
既存ぼ解説とずれてて微妙にわかんないや。ただでさえ時間がかかってるのに

612:500 困ったくん
04/11/24 16:29:25
割り算を減算(引き算で)行うプログラムを作っています。

[ Text1 ] ÷ [ Text2 ] = [ Text3 ] 余り [ Text4 ]

のように表示させるのですが、例えば、35÷6をしたときに、
答えが、Text3=1 Text4=29 になってしまいます。
どうすればいいのでしょうか?
よろしくお願いします。 なお、僕の考えたプログラムは以下の通りです。
(※”=”部分がコマンド1です)

Private Sub Command1_Click()
M = Text1.Text
N = Text2.Text
sho = 0

Do
M = M - N
sho = sho + 1
Loop While M >= N

Text3.Text = sho
Text4.Text = M
End Sub

結局、どうすればいいのでしょうか??
教えてください!!

613:デフォルトの名無しさん
04/11/24 16:41:13
>>609
デフォルトだと日本語のパスが通らないらしいんだけど
そのへんはどうだろ?

614:デフォルトの名無しさん
04/11/24 17:18:13
エンタープライズ版のVSを使って、AS/400にODBC接続を試みています。MSDEの時のと同じ要領で
データーセットを作るところまではあっさりできましたし、データーグリッドにこれを表示するところまで
はすんなり通ったのですが、このデーターグリッド上の数値を書き換える事ができません。

AS/400に対して、コマンドが通らないと言うのであれば納得もできるのですが、データーグリッド上の
数値をいじっている時点では、クライアント側での話しなので、とんと判らず弱っています。

同じような症状を解決出来た方、いらっしゃいませんか?

615:デフォルトの名無しさん
04/11/24 17:21:56
>>612
先にあまりを出しておいて、それを元の数からひいて、その上で、もう一回割り算
っていうのは、どうでせう?

616:デフォルトの名無しさん
04/11/24 17:42:16
>615
アホ

617:デフォルトの名無しさん
04/11/24 18:32:39
>>616
罵倒するだけの能無しよりはマシな希ガス、アルゴンガス、アセチレンガス。


618:617
04/11/24 18:35:34
すいません。>617の書き込みは自分自身に対してのものです。
気を悪くされた方、わたしのことですので気にしないでください。

619:デフォルトの名無しさん
04/11/24 18:38:10
結局>>501だろ。
MとNをintegerで宣言すれば解決する話だ。
DoWhileだと余計なループが発生して結果がおかしくなるのも指摘されてるな。

つかそもそもこれは本当にVB.NETのコードなのか?

620:デフォルトの名無しさん
04/11/24 19:10:53
Now()を実数に変換する方法おしえて。

621:デフォルトの名無しさん
04/11/24 19:16:58
>>612

35-6-6-6-6-6-6=-1<0  

-6でループ計算をさせ、この結果がでてきたら

Text1=35
Text2=6

Text3=ループ回数-1

※Text5=-1

Text4=-1-(-6)

こんなのでどうだろうか・・・




622:デフォルトの名無しさん
04/11/24 19:23:18
>620
実数って何のこと指してます?

623:デフォルトの名無しさん
04/11/24 19:34:23
>612
 それでプログラムはOKだが、数値の宣言とかで問題があるんかもな。
 確実に変数を宣言してみなさいよ。

 DIM N,M,sho as double 'M,N,SHOを実数として宣言する
M = TextBox1.Text
N = TextBox2.Text
sho = 0
Do
M = M - N
sho = sho + 1
Loop While M >= N
TextBox3.Text = sho
TextBox4.Text = M


624:620
04/11/24 19:43:47
実数っていうのは、つまり最初が0.0(多分1755年1月1日0:0:0:0?)
基準に3msec精度での積算値。 NOw()はDate型だけど実体は実数なの。
で dim msec as double
msec = NOw().todouble となるのが普通なのだけど、todouble()ってメソードを
なんか別の書き方にしているらしい。
 toStringがあるならtoDoubleだろう?普通なら。

 

625:620
04/11/24 19:56:03
>612
こうすると 1,29がこたえになる。

Dim M, N As String, sho As Double

M = TextBox1.Text
N = TextBox2.Text
sho = 0
Do
M = M - N
sho = sho + 1
Loop While M >= N
TextBox3.Text = sho
TextBox4.Text = M


626:デフォルトの名無しさん
04/11/24 20:05:26
>>624
それは一体どんな言語/環境の話なのよ。
URLリンク(www.microsoft.com)
VB.NET(と.NET Framework)では8バイトの整数として西暦1年1月1日から100ナノ秒単位で格納されてる。
UNIX時間でも整数を使ってるし。

627:620
04/11/24 20:20:04
 あっすまん。すこしいい加減なことを行ってしまったかも。
しかし、さっきどっかでみたんだが、西暦1年じゃなかったと
おもうが、、、、

628:620
04/11/24 20:24:51
1999・11・30日を変換すると変換すると0見たいだぞ

629:デフォルトの名無しさん
04/11/24 22:51:25
>>628
.NETとVB(とか他の言語)が混ざってないか?
URLリンク(www.atmarkit.co.jp)
こことか参考になるんじゃないの?


630:デフォルトの名無しさん
04/11/25 13:54:53
Aフォームを継承したA’フォームがある。
このA’フォームのデザイン画面をソリューションエクスプローラーから開いた時、
基底クラスAフォームのLoadイベントが実行されるなんてことがあるのだろうか・・・

現在そのロードイベントにはApplication.StartupPathでファイルをオープンする処理があるのだが、
StartupPathにC:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDEが入ってきているらしく
エラーが発生してしまう。これって何なんだ・・・orz

631:デフォルトの名無しさん
04/11/25 14:03:57
>>630
オリジナルのコントロール貼り付けてもLoadイベントは起きる

632:630
04/11/25 14:15:01
>>631
レス感謝。

確かにAフォームのLoadイベントにメッセージボックスを記述するとデザイン時でもメッセージボックスが出るな。
これって常識??
基底クラスのLoadイベントが発生するって解釈でいいのかな?

633:デフォルトの名無しさん
04/11/25 14:20:09
>>632
>  基底クラスのLoadイベントが発生するって解釈でいいのかな?
そうじゃなきゃ困る。

DesignModeプロテクトプロパティを使えばデザインモードかどうか判断できる。
ただしコンストラクタでは常にFalseを返すようなのでLoadイベント内で。

634:631
04/11/25 14:58:00
>>633

>>631だがDesignModeは知らんかったw
勉強になった

635:630
04/11/25 15:10:36
>>633
なるほど・・・実行中のことしか頭に無かったよ。
すごく勉強になった。ありがと。

636:デフォルトの名無しさん
04/11/25 19:36:40
Tabpageを使って、一つのフォーム内に

┃TabPage1┃TabPage2┃TabPage3┃TabPage4┃

というように、TabPageが4つあるフォームを作成しました。何をどうやったのか判らないのですが
気が付くと

┃TabPage1┃TabPage3┃TabPage2┃TabPage4┃

と順番が入れ替わってしまいました。元に戻したいのですが、どうすればよいでしょうか?

637:デフォルトの名無しさん
04/11/25 22:34:04
>636
ソースコード直接いじれば?addする順番変えれば
いいんじゃないの?

638:デフォルトの名無しさん
04/11/25 22:45:41
「表示」→「タブオーダー」


639:デフォルトの名無しさん
04/11/26 00:50:19
VB.NETの勉強の過程で
VB.NETを使いPocketPC用のRSSリーダーを作ろうと思ってるんですが
RSSの整形方法などを判りやすく解説されているサイトや書籍、サンプルコード等をご存じないでしょうか?

よろしくおねがいします

640:斉藤 ◆kvYxWFRquQ
04/11/26 05:16:10
リアル社会でVB.NET使ってる人はここ見ない方がいい、ってことですね。

641:デフォルトの名無しさん
04/11/26 14:10:18
最近VB.netをはじめたのですが、本を読みながら勉強中のところでわからないところがあります。

アクセス2000の形式を使ったデータベースでのレコード検索なのですが、
基本の形が「戻値=デートセット名.データテーブル名.Select(抽出条件)」
で,できるみたいなのですが、例題では抽出条件のところの書き方が...Select("単価 = 2000")
のようにしないさいとあります。

そこで実際にプログラミングしていく段階でテキストボックス内の値を抽出条件にするときに、
...Slect("商品グループ = '" & textbox1.Text & "'")
のようにしなければならないみたいです。抽出する値をシングルクォーテーション(')で囲むようにっと書いてあるので、
「'~~'」の意味はわかりますが、その中の「" & textbox1.Text & "」の意味がいまいちわかりません。
長くなってしまったのですが、ご教授のほどよろしくお願いします

642:デフォルトの名無しさん
04/11/26 14:30:02
&は文字列を連結する演算子であると言えば分かるだろうか。

643:デフォルトの名無しさん
04/11/26 14:30:37
TextBox1.Textの中に「生鮮食料品」と言う値が入ってた場合

Slect("商品グループ = '" & textbox1.Text & "'") 
この中身は
Slect("商品グループ = '生鮮食料品' ")
になる

ためしに
Dim str as String =  "商品グループ = '" & textbox1.Text & "'"
MessageBox.Show (str)
Slect(str)

に置き換えてみると解りやすいかも


644:デフォルトの名無しさん
04/11/26 14:33:19
>>641
その「&」の部分にカーソルを当ててF1キーを押すと、ヘルプが
出てくる。「&」は「+」と異なり、文字列だけを連結する機能
がある。

645:デフォルトの名無しさん
04/11/26 14:42:58
ふむふむぅ、、違うかもしれないのですけど、
シングルクォーテーションで囲まれた部分をひとつの固まりとみなして、
そのままではtextbox1.Textは文字列になってしまうのでそれをテキストボックスのプロパティにして、
さらにそれを「&」の結合演算子で繋げるということなのでしょうか?

646:デフォルトの名無しさん
04/11/26 15:05:16
あああ!!!わかった!!!ごめんなさいです;w;
区切り方を間違っていました;w;

「"商品グループ='"」& 「textbox1.Text」 & 「"'"」
っということなのですね('△';)
こんなことを気づかなかったとは;w; 親切に教えてくださった方ほんとにありがとうございます(^▽^)

647:デフォルトの名無しさん
04/11/26 15:12:31
>>646


648:yukki
04/11/26 15:53:20
UdpClient.Receive メソッドについて。
Receiveメソッドはメッセージを受信するまで実行をブロックします。
メッセージ受信以外の方法でブロックを解除するにはどうしたらよいでしょうか?

649:hoge
04/11/26 21:44:49
>>648
ちょうど俺もUDPのプログラム書いてたから

Do Until MainSock.Available > 0
   Application.DoEvents()
   System.Threading.Thread.Sleep(1)
   m_intResponsTime = timeGetTime() - ConnectStartTime
      If m_intResponsTime >= 2000 Then
         Exit Function’TimeOut
      End If
Loop

ReDim ReceiveBuffer(MainSock.Available - 1)
MainSock.Receive(ReceiveBuffer, MainSock.Available, SocketFlags.None)

650:デフォルトの名無しさん
04/11/26 22:24:23
激しく外出かもしれませんが、
VC++.NET:Win32-DLLプロジェクトで
#ifdef DLLTEST_EXPORTS
#define DLLTEST_API __declspec(dllexport)
#else
#define DLLTEST_API __declspec(dllimport)
#endif
DLLTEST_API int __stdcall funcAdd(int a,int b);
DLLTEST_API int __stdcall funcAdd(int a,int b){
return(a+b);
}
VB.NETで
Declare Function funcAdd Lib "DllTest.dll" (ByVal a As Long, ByVal b As Long) As Long
と言う風に宣言してDLLのfuncAddを呼ぼうとすると
 DLL DllTest.dll の funcAdd というエントリ ポイントが見つかりません。
と言うエラーが出てしまいます。対処法を教えてください。お願いします。

651:650
04/11/26 22:27:13
マニュアルだとDefファイルは書かなくても良いとの事なのですが…

652:デフォルトの名無しさん
04/11/26 22:31:28
C++の場合
extern "C"_declspec (dllexport)
とC言語型の関数として宣言しなけりゃいけないはず。

653:デフォルトの名無しさん
04/11/26 22:32:47
なんか変になった。
extern "C" __declspec (dllexport)

654:650
04/11/26 22:36:16
>>652>>653レスありがとうございます。
試したのですが、やっぱりエントリポイントが無いと
怒られてしまいましたvro

655:デフォルトの名無しさん
04/11/26 23:28:04
__stdcallの場合VB.NET側の宣言で
1)Aliasを指定する
 Alias "_関数名@引数のバイト数合計"
2)Autoを指定する

のどっちかが必要なようだ。

あと通常C/C++のintはVB.NETではInteger(Int32)であってLong(Int64)ではない。

656:650
04/11/26 23:40:32
>>655
出来ました。ありがとうございました。

・・・しかし、defファイルが無いとやっぱりエントリポイント
が無いと怒られてしまいます。
__declspec (dllexport)をVC++側でやっとけばdefファイルはいらんと
マニュアルに書いてあるんですが・・・残念。
レス、ありがとうございました。

657:デフォルトの名無しさん
04/11/26 23:47:06
で、結局何をどうやったの?
>653と>655でこっちでは問題なくエントリポイントを取得できたんだけど。

//Alias "#1" でもいいな。これが一番妥当か。

658:650
04/11/26 23:59:30
>>657
File:DllTest.def------------
LIBRARY DllTest.dll
EXPORTS
funcAdd
------eof--------------
>650を
Declare Function funcAdd Lib "DllTest.dll" (ByVal a As Integer, ByVal b As Integer) As Integer
にしてDllTest.defをソリューションプロパティのモジュール定義ファイル
に置いたら出来ました。
でも、>653&>655の方が良さそうなのでそちらにさせていただきました。
多謝。

659:650
04/11/27 00:00:19
>>658
Declare Auto Function...
でした。

660:デフォルトの名無しさん
04/11/27 00:11:12
某社のグリッドコンポーネントを使用してpostbackした時に
非常に時間がかかるのだけど・・・・

htmlのサイズとしては500k位、postbackするのに5分位かかる
こんなもんなん!?

誰か詳しい人教えてください

661:デフォルトの名無しさん
04/11/27 00:12:54
なぜ某社

662:デフォルトの名無しさん
04/11/27 00:18:26
グレープシティーです

663:デフォルトの名無しさん
04/11/27 04:36:05
質問です.
初めてVBを使います.
Data0001
Data0002
:
:
と,順番にファイルを読み込みたいです.
For i=1 to n
Workbooks.Open Filename:="Data000???.xls"

???のとこのプログラムをどのようにすればいいでしょうか?

664:デフォルトの名無しさん
04/11/27 04:37:15
きわめてウイルスチックな香りが

665:デフォルトの名無しさん
04/11/27 04:41:32
マクロに応用するだけですよ

666:デフォルトの名無しさん
04/11/27 05:05:21
ここはVB.NET専門だから記述が異なる
VB6かVBAのスレに行ってみてはいかが?

VBAについて Ver.3.0
スレリンク(tech板)l50

VBプログラマ質問スレ(6.0以前) Part39
スレリンク(tech板)l50



667:デフォルトの名無しさん
04/11/27 05:36:12
開発者じゃなくて利用者の立場の質問なのですが・・・、

VB.NET で開発されたソフトウェアを動かすには、
Microsoft Windows Update などから、
「Microsoft .NET Framework Version 1.1 日本語版」 みたいなのをダウンロードしなきゃいけないんですか?

だとしたら、Windows 2000 や XP のデフォルトの状態では動作しないのでしょうか?

よろしくお願いします。


668:デフォルトの名無しさん
04/11/27 06:17:00
>>667
ランタイムが必要。
URLリンク(www.microsoft.com)
Javaと同じで素の2000,XPじゃ動かん。

669:667
04/11/27 06:24:16
>>668
回答ありがとうございます。
やっぱり、「.NET Framework」というランタイムが必要なんですね。
今まで色々な商用ソフトやフリーソフト、シェアウェアを使ってきましたが、
.NET Framework のインストールを要求された事はありませんでした。
やっぱり、.NET で作成されたプログラムって普及してないんでしょうか?
現在でも、VB6とかVisual C++ とかが一般的なのですか?





670:デフォルトの名無しさん
04/11/27 10:31:37
>>669
新しい技術(?)についていけてないだけ

671:デフォルトの名無しさん
04/11/27 11:22:49
>>669
Microsoft が こりゃーいい感じ と思ったら、
新しい Windows にデフォルトで入れてきて
一気に普及するということもありうるよね。

でも、現状では、Javeとか .Net のランタイム
のインストールを嫌がる人も多いので、、、
そう言うことでしょう。

672:デフォルトの名無しさん
04/11/27 16:26:41
.NETの終わり方が分かりません。Disposeで終わっても、タスクリストに
EXEが稀に残ります。なんででしょう。とりあえず、終了まえにThread.Abort
とApplication.exitはやってます。他になにかやることがあるんでしょうか?
threadが一つ動いてます。MSDEを使ってます。ComのFlexgridをつかって
ます。それ以外は特別変わったことはしてません。


673:デフォルトの名無しさん
04/11/27 16:27:57
>>669
ってか、WindowsUpdateしろよ。ちゃんとしてたら自動的に入ってる筈だぞ。

674:デフォルトの名無しさん
04/11/27 16:33:17
taskリストにいつまでも残ってる奴を殺す方法を教えてください。

675:デフォルトの名無しさん
04/11/27 17:26:44
窓から(ry

676:デフォルトの名無しさん
04/11/27 19:24:43
>675
窓から手はだめ。手を使わないでプログラムで殺す方法。

677:デフォルトの名無しさん
04/11/27 19:28:58
' 角の丸い長方形を描く関数の宣言
Declare Function RoundRect Lib "gdi32.dll" _
(ByVal hdc As Integer, _
ByVal nLeftRect As Integer, _
ByVal nTopRect As Integer, _
ByVal nRightRect As Integer, _
ByVal nBottomRect As Integer, _
ByVal nWidth As Integer, _
ByVal nHeight As Integer) As Integer
Public pic As PictureBox

RoundRect(PictureBox1.hdc,10,10,10,10,10,10)
PictureBox1.hdc がVBNETじゃだめなの。 何を渡すの?


678:デフォルトの名無しさん
04/11/27 19:58:23
解決
Dim hn As IntPtr = pic.Handle
Dim hDC As IntPtr = GetDC(hn)
ででけた。
しかし、中をグリーンにしたいんだがどうすればいいの?

679:デフォルトの名無しさん
04/11/27 20:15:17
>671
 Windows Server 2003には.NET 1.1のRuntimeがプリインスト。
 Windows XPは初期状態で.NET 1.0のRuntimeが入っていたような?

 次期Windowsは、それ自体が.NETのコンポーネントで構成されるって
聞いたような。

680:デフォルトの名無しさん
04/11/27 21:58:04
>>678
CreateSolidBrushでブラシを作成。
SelectObjectで作成したブラシを選択。
RoundRectで描画。
SelectObjectで作成したブラシから元々選択していたオブジェクトに戻す。
DeleteObjectで作成したブラシを削除。

Graphics.FillPathとどっちが楽だろ。
//まあマネージドで完結させ得る点でGraphicsの方が良いが。

>>679
XPはSP2でも入らない。
WindowsUpdateの追加選択で任意にインストール、レベル。
自動通知の場合は知らない。

681:デフォルトの名無しさん
04/11/27 23:03:31
リストビューのレポートスタイルで、カラムをクリックしてソート
したときに▼とか▲をヘッダに出したいのですが、あれはやっぱり
オーナードローとかいうものをしないとダメなのでしょうか。
VBでも可能なんでしょうか。

682:デフォルトの名無しさん
04/11/27 23:21:32
VB.NETで作成したアプリケーションのバックグラウンド
処理の優先度を下げる方法はありますか?

683:デフォルトの名無しさん
04/11/28 00:09:41
すいません。>681はVB6.0についての質問だったのに
間違えてこちらに投げてしまいました。
すいませんが>681は取り下げさせてください。

684:フナ太郎
04/11/28 05:30:47
>>673
自動的に、ってことはねーべ。
.NET Framework のインストールはオプションだっぺ。

685:デフォルトの名無しさん
04/11/28 05:56:55
>680
ありがとう
>DeleteObjectで作成したブラシを削除。
えっ、ガベッジコレクションきかないのですか? 
削除する必要があるんですか?

>'Graphics.FillPathとどっちが楽だろ。
>'//まあマネージドで完結させ得る点でGraphicsの方が良いが。

 APIで描いた図形にGraphics.FillPathできます?

GraphicsにRoundRectさえあれば、APIなんて使いませんよ。図形描画に関しては
滅茶苦茶原始的。MSDOSのまんまだね。 2Dで回転すらできないのか? あーあ。


686:デフォルトの名無しさん
04/11/28 08:30:31
>>685
>  えっ、ガベッジコレクションきかないのですか? 
> 削除する必要があるんですか?

ガベージコレクションをもう一度勉強すれ。
メモリ以外はガベージコレクションの対象外だ。
アンマネージドなものを使うならDeleteObjectやReleaseDCなんか常に意識しないと駄目。
マネージドなものならGCされる時に関連リソースもファイナライザで破棄できるんだが。

> APIで描いた図形にGraphics.FillPathできます?

できるんじゃないかね。言っている意味がよくわからんが。
hDCからGraphicsを取得する事もその逆もできるし。

> 滅茶苦茶原始的。MSDOSのまんまだね。 2Dで回転すらできないのか? あーあ。

Graphics.RotateTransformとか駄目か。

687:686
04/11/28 09:26:57
まあ俺もガベージコレクションなんか意識してないけどな。
適当適当。プログラムなんてそんなもんよ。

688:デフォルトの名無しさん
04/11/28 12:59:45
>>613
通らないみたい。レス遅くなってすいません。
プロジェクトで、ビルド出力パスというのを設定したら実行ファイルがつくられてました。


689:デフォルトの名無しさん
04/11/28 13:00:33
>688
謝って済む問題じゃないだろ。

690:デフォルトの名無しさん
04/11/28 13:04:16
>>613
それでもビルドしたときになんかエラーがでてたよ。詳細はわかんないけど、無事exeができてました。ありがとう

691:デフォルトの名無しさん
04/11/28 13:11:33
>>689
報告が遅れてすまんかったね

692:デフォルトの名無しさん
04/11/28 13:12:21
>687
マジメにやれや。

693:デフォルトの名無しさん
04/11/28 13:12:53
>691
謝って済む問題じゃないだろ。二度とここに書き込むな。

694:デフォルトの名無しさん
04/11/28 13:21:14
>>693
どういう点が、謝ってすむ問題じゃない?何も問題起こしてませんよ。てかさ、質問と解答と報告以外のことすんなよ、オッサン。
基本的に「謝ってすむ問題」の定義からしておかしいしね。文章嫁や。イライラしてるんなら、最悪板にでも逝って下さいおながいします
あなたがいると迷惑ですよ?

695:デフォルトの名無しさん
04/11/28 13:23:30
>694
釣られすぎ

696:デフォルトの名無しさん
04/11/28 13:24:07
>694
え?誰がどこに「謝って済む問題」をどう定義したの?

697:デフォルトの名無しさん
04/11/28 13:29:44
>アンマネージドなものを使うならDeleteObjectやReleaseDCなんか常に意識しないと駄目。

そういうことですか。

>Graphics.RotateTransformとか駄目か。

OK。これでおけ。

>hDCからGraphicsを取得する事もその逆もできるし。

 hDCからGraphicsをとる方法おしえてくだされ。


698:デフォルトの名無しさん
04/11/28 13:34:48
689 名前: デフォルトの名無しさん [sage] 投稿日: 04/11/28 13:00:33
>688
謝って済む問題じゃないだろ。

お前が定義してるね↑笑

>696はVBよりもまずは日本語を覚えようよ♪うん♪

699:デフォルトの名無しさん
04/11/28 13:36:21
>698
笑じゃなくて。質問に答えてくれませんかね。


あーーーー、すいません。脳が少ない方でしたか。
あらかじめ言って頂ければそれなりに対処したんですが。
すいません。

700:デフォルトの名無しさん
04/11/28 13:40:12
>>698
定義してないよ。

>694
>基本的に「謝ってすむ問題」の定義からしておかしいしね
何に対して何がどうだからおかしいと思ったの?

701:デフォルトの名無しさん
04/11/28 13:40:18
 定義:謝って住む問題。
  謝ると、それ以後問題とならない問題。もともと問題とならない
  些細な問題を含む。
  もともと謝って住む問題であっても、一旦謝ると謝っても済まない
  問題となることがある。


702:デフォルトの名無しさん
04/11/28 13:41:33
>701
余計な書き込みをしないように。お前には関係ないし、誤字があって
意味がわからん。

703:デフォルトの名無しさん
04/11/28 13:43:01
694に質問。「定義」ってどういう意味?
君が思う(思い込んでいる)「定義」の意味でいいよ。

704:デフォルトの名無しさん
04/11/28 13:43:54
>700
アホをまともに相手するな。お前も荒らしと言われるぞ。

705:デフォルトの名無しさん
04/11/28 13:44:52
>701
いそうろうのことか?

706:デフォルトの名無しさん
04/11/28 13:47:20
>>699

お前が定義してるっていってるじゃん。爆笑
俺があやまってるのをみて。謝ってすむ問題じゃないって思ったんでしょ?w

それで、謝ってすむ済む問題じゃないだろ。↓笑

689 名前: デフォルトの名無しさん [sage] 投稿日: 04/11/28 13:00:33
>688
謝って済む問題じゃないだろ。

お前は、日本語読めてるの?ワラ
脳が少ない??
へぇ。ケッサクだね。脳が少ないなんて普通言わないしねw普通はw Iちなみに俺とお前だったら、レスの内容から、あきらかにお前の方が少ないしね
うん。それから、別に話しかけてこなくて良いよw
すいません。ってw

707:デフォルトの名無しさん
04/11/28 13:52:00
>>703
定義:謝って住む問題。
  謝ると、それ以後問題とならない問題。もともと問題とならない
  些細な問題を含む。
  もともと謝って住む問題であっても、一旦謝ると謝っても済まない
  問題となることがある。

おれもこれで↑定義はあってると思うよ。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch