VB.NET質問スレ (Part10)

このエントリーをはてなブックマークに追加
1最凶VB厨房
VB.NETの質問全般です

過去スレ
VB.NET質問スレ (Part9)
http://pc5.2ch.net/test/read.cgi/tech/1106577850/
VB.NET質問スレ (Part8)
http://pc5.2ch.net/test/read.cgi/tech/1102512868/
VB.NET質問スレ (Part7)
http://pc5.2ch.net/test/read.cgi/tech/1096683017/
VB.NET質問スレ (Part6)
http://pc5.2ch.net/test/read.cgi/tech/1088812165/
VB.NET質問スレ (Part5)
http://pc5.2ch.net/test/read.cgi/tech/1078134703/
VB.NET質問スレ (Part4)
http://pc2.2ch.net/test/read.cgi/tech/1065269043/
【老若】VB.net質問スレ【男女】 (Part3)
http://pc5.2ch.net/tech/kako/1056/10562/1056281084.html
【老若】VB.net質問スレ【男女】 (Part2)
http://pc2.2ch.net/tech/kako/1043/10436/1043629429.html
【老若】VB.net質問スレ【男女】
http://pc2.2ch.net/tech/kako/1025/10258/1025848458.html
2最凶VB厨房:05/02/26 00:01:07
3最凶VB厨房:05/02/26 00:02:06
どぼん!のVB道のトップページとTipsページ
http://dobon.net/vb/
http://dobon.net/vb/dotnet/index.html
Microsoftクイック スタート チュートリアル
http://ja.gotdotnet.com/quickstart/default.aspx
Insider.NET
http://www.atmarkit.co.jp/fdotnet/index.html
宇宙仮面の C# プログラミング
http://ukamen.hp.infoseek.co.jp/
.NET のつぼ
http://park16.wakwak.com/~mimi/dotnet/top.html
.NET TIPS
http://www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html
緑のバイク ★ 初めてのC# プログラム全般
http://homepage3.nifty.com/midori_no_bike/CS/
VB.NETとC#でデザインパターン
http://hccweb1.bai.ne.jp/tsune-1/
C#プログラミングTips
http://www.atmarkit.co.jp/fdotnet/csharptips/index/csharptips_index.html
WisdomSoft
http://wisdom.sakura.ne.jp/
CodeProject
http://www.codeproject.com/vb/net/
the GotDotNet Home Page
http://www.gotdotnet.com/
4最凶VB厨房:05/02/26 00:03:07
KEN's .NET
http://www5b.biglobe.ne.jp/~yone-ken/VBNET/index.html
Cetus Links: 19,498 Links on Objects and Components / .NET
http://www.cetus-links.org/oo_dotnet.html
どっとねっとふぁん - C# Tips And Samples -
http://homepage3.nifty.com/dotnetfan/index.html
HIRO's.NET
http://vbdotnet.fc2web.com/index.html
@IT:特集 .NET開発者のためのオンライン・リソース・ガイド
http://www.atmarkit.co.jp/fdotnet/special/onlineres/onlineres_01.html
匣の向こう側
http://www.ne.jp/asahi/nami/mei/index.html
.NETでいきまっしょい!
http://santamartadotnet.hp.infoseek.co.jp/
これがほしかった!厳選サンプルツール集
http://anetm.com/dev/tools/vbdotnet.htm
ぬーやんのdotNET講座
http://www.geocities.jp/nuu_yan/dotNET/index.html
5最凶VB厨房:05/02/26 00:04:09
PINVOKE.NET
http://www.pinvoke.net/
WinAPI Database for VB Programmer
http://www.geocities.co.jp/SiliconValley-Cupertino/5872/
Windows Api programming in C# , VB.NET, and VB6. Examples of P/Invoke and DllImport with Source code
http://custom.programming-in.net/
ConvertCSharp2VB
http://www.kamalpatel.net/ConvertCSharp2VB.aspx
@IT:.NET Tools
http://www.atmarkit.co.jp/fdotnet/tools/index/index.html
SharpLibrary Redirector
http://www.sharplibrary.com/
MSDN アカデミック アライアンス 技術資料
http://www.microsoft.com/japan/msdn/academic/articles/
「300 秒でズバリ !!」&「10 行でズバリ !!」シリーズ
http://www.microsoft.com/japan/msdn/thisweek/wednesday/default.asp
(Java覚え書き)デザインパターンあれこれ
http://www.dmz.hitachi-sk.co.jp/Java/Tech/pattern/
6最凶VB厨房:05/02/26 00:05:24
うまくいきません。

コンパイルが通らないのか例外がスローされるのか明記してください。
コンパイルが通らない場合、タスク一覧の説明を書いてください。
例⇒(1267): ) が必要です。
例外がスローされる場合、
例⇒'System.Xml.XmlException' のハンドルされていない例外が system.xml.dll で発生しました。
    追加情報 : システム エラーです。
上記に当てはまらない場合は詳細に説明してください。
エラーメッセージが出るならどういったことをするとエラーメッセージが出るのか、
またエラーメッセージの文も併せて書いてください。
7最凶VB厨房:05/02/26 00:06:11
テンプレ完
8デフォルトの名無しさん:05/02/26 00:20:42
>>1
まいど乙。
( ´・ω・)っ旦
9最凶VB厨房:05/02/26 00:39:38
旦⊂(´・ω・ `)ども

prog-blog
http://s03.2log.net/home/nsharp/
10デフォルトの名無しさん:05/02/26 01:31:30
>>1
乙鰈
11最凶VB厨房:05/02/26 01:39:21
楽ちんに文字列抽出したいor置換したい。
となれば正規表現の出番。
http://www.microsoft.com/japan/msdn/library/?url=/japan/msdn/library/ja/cpgenref/html/cpconregularexpressionslanguageelements.asp?frame=true
学習不可避なので知らん人は知っとけ。
12デフォルトの名無しさん:05/02/26 14:16:20
Graphics.FromImageでimageから画像をコピーするとそのままコピーされますが、
DirectDrawのbitbltのような背景色を透過させてコピーするようなメソッドはありませんか?
13デフォルトの名無しさん:05/02/26 14:50:06
>Graphics.FromImageでimageから画像をコピー
これ意味わかんないのは俺だけ?
14デフォルトの名無しさん:05/02/26 14:58:11
背景色でMakeTransparent
15デフォルトの名無しさん:05/02/26 22:38:34
まちがいた。Graphics.DrawImageだ。Fromじゃねぇ
>>14
ありがとん
16デフォルトの名無しさん:05/02/26 22:51:54
>>11
お前のことだろ?

>>13
お前だけ
17デフォルトの名無しさん:05/02/26 23:01:05
うああ
がんばってますねみなさん。
Insider更新されて、Myキーワードについてかかれてますよ。
俺は、設定は、XMLファイルにしてたんだけど、My.Settingですむようになるんかな
18デフォルトの名無しさん:05/02/27 12:06:02
クラスの継承について説明されてるページありませんか?
19デフォルトの名無しさん:05/02/27 13:13:03
>>18
アホか
20デフォルトの名無しさん:05/02/27 14:26:48
>>18
MSDN
21デフォルトの名無しさん:05/02/27 15:33:48
>>20
さらにアホ
22デフォルトの名無しさん:05/02/27 20:20:10
ステータスバーにいくつかパネルがあって、そのうちの
特定のパネルがクリックされた場合だけある処理を
実行したいのですが、どのようにすれば可能でしょうか。
23デフォルトの名無しさん:05/02/27 20:24:26
PanelClickイベントのハンドラの引数eにあるだろ。
24デフォルトの名無しさん:05/02/27 20:41:07
>>23
うわー、PanelClickっていうイベントがあったんですかー
ありがとうございました。
25デフォルトの名無しさん:05/02/28 00:19:53
Dock で、例えば Fill に設定するコントロールを一番初めに作成してしまうと、
後からコントロールを追加した場合、下に隠れてしまいます。

これは事前に作成する順序を気をつけるしかないのでしょうか。
それともどこかで、作成したコントロールの順序?を変更等して対応できるのでしょうか。
26デフォルトの名無しさん:05/02/28 00:23:04
>>25
コントロール上で右クリックしてみそ。
2725:05/02/28 00:35:16
>>27
最前面、最前列ですね!
ありがとうございました。
28デフォルトの名無しさん:05/02/28 09:40:22
リストビューで教えてください。
DetailsタイプのリストビューでFullRowSelectがTrueのもので
フォーカスがリストビューから他のボタンなどのコントロールに移ったあとでも
リストビューの選択状態が維持される方法を教えてください。
29デフォルトの名無しさん:05/02/28 10:08:52
>>28
プロパティのHideSelectionだっけかな
30デフォルトの名無しさん:05/02/28 10:27:52
>>29
ありがトン
できました。
31デフォルトの名無しさん:05/02/28 11:21:19
デフォルトボタンを指定したいのですが
defaultプロパティがありません。
どうしたらよいでしょうか?
32デフォルトの名無しさん:05/02/28 11:29:09
FormのAcceptButtonプロパティかね。
33デフォルトの名無しさん:05/02/28 11:37:40
>>32
おぉ!たんくす。
フォームのプロパティになっていたとは
34デフォルトの名無しさん:05/02/28 11:40:09
VB.NETでActivXコントロールは作成できないのでしょうか?
VB.NETでプログラムを作ってたのに、VB6で作り直しかな・・・
35デフォルトの名無しさん:05/02/28 11:45:04
>>34
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconExposingNETFrameworkComponentsToCOM.asp
手間はないが、exe/dllを置く場所が微妙にやっかいなのでVB6で書けるならそっちの方が楽。
3634:05/02/28 11:51:03
>>35さん
ありがとうございます。調べてみます。
37デフォルトの名無しさん:05/02/28 12:20:25
Visual Studio 2003 です。

VB.NET で C# みたいな /// と入力してできるコメント(XMl コメント?)
を入力する事はできないんでしょうか?

VB で作成したクラスライブラリなどの引数など、
Visual Studio のインテリセンスに表示させたい場合は、
どのようにコメントを書けばよいのでしょうか?

よろしくお願いします
38デフォルトの名無しさん:05/02/28 12:29:16
XMLドキュメント機能はVB2005から。
それまではXMLを手書きするとかツールを使ってみるとか。
ttp://www.gdncom.jp/general/mllog/tech/techDetail.aspx?ID=76
39デフォルトの名無しさん:05/02/28 13:36:15
VB6.0のLeftBに相当するメソッドは.netにはありませんか?
40デフォルトの名無しさん:05/02/28 13:39:04
なにせUnicodeなもんだから、バイト数=文字数×2で固定だからなぁ。
41デフォルトの名無しさん:05/02/28 16:08:07
質問です。
自分(Form)がshowで表示されたのかshowDialogで表示されたのか
分かるプロパティとかありませんか?
42デフォルトの名無しさん:05/02/28 16:20:49
FormのModalプロパティ
43デフォルトの名無しさん:05/02/28 16:29:29
frm.modal = true は show() で
frm.modal = false で showDialog() なんですね〜。
ありがとうございました。
44デフォルトの名無しさん:05/02/28 16:35:07
>>39
前スレで外出だったかと。
45デフォルトの名無しさん:05/02/28 20:24:51
>>44
うむ、VB Commenterみたいなアドインを使うか、
VS2005を待てって感じで砂。
46デフォルトの名無しさん:05/02/28 22:06:37
Vb.net Standard Version2003を使用しています。
プロジェクトにアイコンを追加して、ビルドアクションを「埋め込まれたリソース」としてビルドしました。
適当なショートカットのプロパティからアイコン変更をしようとしてビルドされたファイルを指定したんですが、
アイコンが表示されません。
「アプリケーションのアイコン」に指定したアイコンは表示されます。
VB6の時はできたんですが、.netではできないのでしょうか?
47デフォルトの名無しさん:05/02/28 22:36:29
普通はフォームのタイトルバーをドラッグすると位置を動かすことが
できますが、X座標だけ変更不可とすることはできるでしょうか。
画面の左端にしか置けない(ただし、上下には動かせる)というのを
実現したいと思っています。
4847:05/02/28 22:47:23
すいません。補足です。
単純にMoveイベントの中でMe.Left = 0でもいいのですが、
それだとドラッグ中にフォームの枠だけは移動できてしまうので
できればこれをできなくしたい、ということです。
分かりにくくて申し訳ありません。
49デフォルトの名無しさん:05/02/28 22:57:49
ローカルで動く.NETプログラムをWEB上から呼び出すようにしたいのですが、
どうすれば良いのでしょうか?

ActiveX? APS.NET? どちらでも実現可能なのでしょうか?
50デフォルトの名無しさん:05/02/28 23:04:22
>>46
微妙に独自言語が含まれてて読みづらいけれど、
ttp://dobon.net/vb/dotnet/programing/bitmapresource.html
51デフォルトの名無しさん:05/02/28 23:15:42
52デフォルトの名無しさん:05/03/01 00:50:32
メニューバーやステータスバー等の背景色を、独自の色や画像で描画するには
どうすればいいのでしょうか?

「オーナードロー?を使えばいいらしい」というところまではどうにかわかった
のですが、具体的にどうコードを書けばいいのかわからず困っています。
53デフォルトの名無しさん:05/03/01 11:02:33
ソリューションエクスプローラーでプロジェクトから削除すると
一時的にプロジェクトからはずれるだけで表示自体は残るはずですよねえ・・・・
表示も消えてしまうんですが。。。
何か自分が間違っているのでしょうか?
54デフォルトの名無しさん:05/03/01 11:04:28
なんの表示さ。
5553:05/03/01 11:16:10
略しすぎですいません。
ソリューションエクスプローラーで表示する作成したASPです。
デバッグ作業する為、新規作成したもの以外のASPをプロジェクトから
削除したのですが表示が消えました。
昨日、PCのOSがあぼーんしてしまったのですべて入れなおしで
もちろんVB.NETも入れなおししました。
入れなおしする前の作業ではプロジェクトからASPを削除すると
表示は出ているままでASPファイル名は残ってました。
なにぶん初心者なので・・いろいろやっているので先に自己解決したらすいません。
56デフォルトの名無しさん:05/03/01 11:25:51
この肝心なところだけを巧みにぼかす手腕には感嘆を覚えるほか無い。
5749:05/03/01 11:37:48
>>51さん
ご返答ありがとうございます。 見てみましたが、ファイルのI/Oに制限が
ありすぎるので、使えないみたいです。 他の方法を検討してみます。
58デフォルトの名無しさん:05/03/01 11:42:42
でたー
なにぶん初心者なので
59デフォルトの名無しさん:05/03/01 11:46:57
>>57
「具体的に」何をどうしたいのか書けば助言できるかも知れないがね。
>49のじゃ曖昧すぎてどうにも。
6053:05/03/01 12:05:29
自己解決しました。ご迷惑おかけしました。

>>56
貴重なご意見ありがとうございます。

>>58
初めて一ヶ月足らずなので初心者ですが。それがなにか?
61デフォルトの名無しさん:05/03/01 13:30:09
リストビューに非表示カラムを作成することはできないでしょうか?
62デフォルトの名無しさん:05/03/01 13:31:43
できない。
6361:05/03/01 13:33:31
>>62
みなさんがこういったことをしたい場合、どのような代替案がありますか?
64デフォルトの名無しさん:05/03/01 13:51:51
単純なのはWidthを0にする。ユーザにカラム幅を操作されたら見える。
.NET 2.0でColumnWidthChangingイベントが追加されるのでそれならカラム幅の調整のキャンセルも可能。

普通は見せたくないのはListViewItemのTagに突っ込む。
動的にカラムの表示非表示を上手い事操作する手段は無さげ。サブアイテムがインデックスでしか管理されてないから。
改めてカラム&アイテムの作り直し。

それが不満ならDataGridに行くとか。
65デフォルトの名無しさん:05/03/01 13:56:25
COM オブジェクトまわりで質問です。

Me.comObject.value("ret")

のように COM オブジェクトが処理結果を返してくるのですが、これを
VB.NET で

if (Convert.ToInt32(Me.comObject.value("ret")) = 0) then

のように処理したいのですが、

型 '_ComObject' から '型 'Long' へのキャストが有効ではありません。

とエラーになってしまいます。上記ような判定を行なうには
どのように処理すべきなのでしょうか?

よろしくお願いします。
66デフォルトの名無しさん:05/03/01 14:04:18
>>65
_ComObjectを返すって事は返値が単純型でないような気がするが、
取りあえずCTypeでキャストしてみたらどうだ。
6761:05/03/01 14:04:51
>>64
おっ!
tagがあったんですか?
やってみます。スペシャルさんくす。
6861:05/03/01 14:08:05
>>64
できました。マジでさんくす。
6965:05/03/01 14:38:59
>>66
ありがとうございます。 CType でキャストしてみたところ、やはり同様に

型 '_ComObject' から '型 'Long' へのキャストが有効ではありません。

となってしまいました。他に試す事があればアドバイスください。
よろしくお願いします。
70デフォルトの名無しさん:05/03/01 14:46:18
そのCOMのリファレンスを読むことだな。
valueメソッドの返値が何型か分からなければどうしようもなかろ。

あとLongは符号付き64bit整数だがそれでいいのか?
7165:05/03/01 15:06:16
>>70
戻値の型は Int のはずなんですよね。
なので、CInt,CLng どちらも試したのですが、
どちらも同じようにキャストでエラーが出てしまうんです。
他に何かアドバイスがあればお願いします。

72デフォルトの名無しさん:05/03/01 15:21:56
panelのautoscrollのscrollイベントを入手するにはどうしたらいいんでしょうか?
73デフォルトの名無しさん:05/03/01 15:27:50
>>71
単純型ならそれに一致した型が返ってくる。
例えばADODB.StreamのtypeプロパティはSystem.Int32だ。
そうでなく_ComObjectが返ってくるって事は単純型じゃないって事になる。
何らかの構造体とかそんなんではないのか?
いずれにせよそのCOMがなんなのか分からない以上、アドバイスも出せないね。
いっそ参照設定で事前バインディングすればどうだ。

>>72
Panelの継承クラスを作って、WndProcをオーバーライドして、WM_VSCROLL/WM_HSCROLLを処理する。
7465:05/03/01 15:33:11
>> 73
レイトバインディングじゃなきゃならない理由がありまして…。
できるものな事前バインディングにしたいのですが…。

単純型ではないのですか。そういう事ですか。COM の仕様を把握しないと
いけないって事ですね。ありがとうございます。

ちなみに、同じ COM オブジェクトを VBA から操作するコードがあって、それは

if (comObject.value("ret") = 0) then

で問題なく処理できているんですよね…。同じく CreateObject しているので
参照設定云々はやっていません。

VBA と VB.NET の動きが違うって事なのでしょうね…
COM の資料をあさってみます。ありがとうございました。
75デフォルトの名無しさん:05/03/01 15:35:34
いやさ、取りあえず実験のためだけでも事前バインディングして何型で扱えばいいのかチェックすればいいじゃん。
7672:05/03/01 16:02:02
>>73
記述の仕方がよくわからないんですけど・・・。
77デフォルトの名無しさん:05/03/01 16:11:23
>>76
どれが?
・Panelの継承クラスを作って、
・WndProcをオーバーライドして、
・WM_VSCROLL/WM_HSCROLLを処理する。

ちなみに後ろ2つは纏めてキーワードをぐぐればトップにその記事が出たりするけどな。
7872:05/03/01 16:22:36
>>77
すいません出来ました。
ただ処理のところオブジェクト参照が必要ってでるのはどうしたらいいんでしょう?
79デフォルトの名無しさん:05/03/01 18:01:00
オブジェクト指向を一から説明する事になるので省略。
Panelの代わりに作った継承クラスを使う。
80デフォルトの名無しさん:05/03/01 18:31:43
VB.NET Standard 2003 で(.NET Frameworkではなく)VB6ランタイムライブラリを
使うアプリは作れますか?
81デフォルトの名無しさん:05/03/01 21:59:22
超初心者です
ここでこんなこと聞くのも痛いのですが

インストールは下もののさっぱり意味不明です。
こんなワタクシメにもわかる,解説書なりページを教えてください。
m(_ _)m
82デフォルトの名無しさん:05/03/01 22:23:19
今までデバッグの時にはウォッチウィンドウを無条件に使ってきたのですが、
ローカルウィンドウ と
イミディエイトウィンドウ と
ウォッチウィンドウ
はそれぞれ何が違うのでしょうか。

よろしくおねがいいたします。
83デフォルトの名無しさん:05/03/01 22:36:46
Visual Studio .NET Professional 2003を親戚の大学生に
アカデミーパックを買わせて、10万ほど得しようと考えてます。
何か問題がありますか?
84デフォルトの名無しさん:05/03/01 22:55:07
>>80
作れません!
85デフォルトの名無しさん:05/03/01 23:01:52
>>81
っ[www.amazon.jp]

>>82
ライセンス上、学生じゃないお前さんは買ってもらったソフトを使えない。

アカデミックエディションからは、VS2005にアップグレード出来ない可能性が高い。
毎度、アカデミック版を買うと結構高くつく。

安く上げたいならVS2005 Express Edition βでも使っておけ。
86デフォルトの名無しさん:05/03/01 23:34:44
>>85
アップグレードだって4万近くかかるのに、アカデミーは2万9千。
毎度アカデミー買っても得しそうだ。
ライセンス? それって食べられるの?
87デフォルトの名無しさん:05/03/02 11:01:41
違法とわかっていて、聞いてくるやつは無視。
88デフォルトの名無しさん:05/03/02 11:35:55
だれか、C1PrintDocumentとか使ってるのいねーかな?
C1PrintPreviewで画面出力して印刷の手順なのだが
ボタン1個作って押すと印刷するのだが、ボタンから印刷するとA3設定のはずの
用紙がA4で出てくるのだよorz

C1PrintPreviewでのデフォルトのツールバーの使えばA3で出てくるのだが・・

VB.NET
Private Sub C1PrintPreview1_PrintQueryPageSettings(ByVal sender As Object, _
ByVal e As System.Drawing.Printing.QueryPageSettingsEventArgs) Handles _
     C1PrintPreview1.PrintQueryPageSettings

e.PageSettings = C1PrintDocument1.PageSettings
End Sub
これだと、イベント発生時にA3の用紙でA4のサイズの内容がでてきてしまう・・

よかったら、教えてください
長文スマソ
89デフォルトの名無しさん:05/03/02 12:37:56
なんだよ、C1PrintDocumentだのC1PrintPreviewって。。。
そんなもん誰も知らねえよ。

俺様の命名した変数の型は世界中誰でも知ってるはずニダ、ってか?
90デフォルトの名無しさん:05/03/02 12:38:54
>>87
OKOK。違法かそうでないかの違いしかなく、中身は全く同じという確認を取りたかっただけだ。
9188:05/03/02 12:50:11
>>89
OK・・やっぱしらねーよな・・俺もしらねー・・
ttp://www.grapecity.com/japan/support/database/DOTNET_ProductList.htm

いきなり使ってくれといわれてな、まぁ何とかなる
レスアリガトヨ
92デフォルトの名無しさん:05/03/02 13:05:23
すでに開いているフォームへのフォーカス移動の方法を教えてください。

frmForm1とfrmForm2がありまして、frmForm1はメニュー画面(ボタンが数個のみ)で、そこにあるボタン(cmdForm1)から
frmForm2をShow()を使ってモードレス(これは必須)に呼び出しています。しかし、モードレスであるがために何度でも
frmForm1のcmdForm1押せてしまい、複数のfrmForm2が開いてしまいます。

希望する動作としてはfrmForm2が開いていないときにcmdForm1が押された場合はfrmForm2を開き、すでに開いている場合には
その開いているfrmForm2にフォーカスを移す、というものです。frmForm2上にあるコントロールにFocus()なども試して
みたのですが効果がありませんでした。

どのように上記を実現すればよいかおわかりになりましたらアドバイスいただけないでしょうか?
93デフォルトの名無しさん:05/03/02 15:02:54
>>92
> frmForm1のcmdForm1押せてしまい、複数のfrmForm2が開いてしまいます。

そりゃボタンを押すたびにForm2をNewしてたらそうなるだろう。
frmForm2はForm1のメンバとして宣言すればいい。
Private frmForm2 As New Form2()

あとはボタンを押したらShowとActivateだ。
94デフォルトの名無しさん:05/03/02 15:58:44
>>93

ありがとうございます。言われてみれば当然のことでした・・・。
いくら本やネットを調べても対処方法がみつからなかったのはあまりに
当然のことだったからのようです。(´・ω・`)

すっかりはまっていたので本当に助かりました。
95デフォルトの名無しさん:05/03/02 16:09:37
>>91
グレープに聞けばいいじゃん。たしかあそこのサポート評判良いんでしょ。
てかグレープのコンポーネントボり過ぎ。米ComponentOneとか
DataDynamicsから直接買った方が安いよね。
96デフォルトの名無しさん:05/03/02 16:11:41
白地に黒字というのがつらいのですが
コードエディタを黒地に白地にできますか?
97デフォルトの名無しさん:05/03/02 16:15:46
>>95
ああいうのはサポート代が寧ろ代金のメインではないか?
確かに高いと思うけどね。
まあ基本的に対象は企業なんであって大した問題じゃないんだろうな。

>>96
できる。
それぐらい探せ。
98デフォルトの名無しさん:05/03/02 18:40:59
>>90
買ってから後悔するんだな、ウフフ......
99デフォルトの名無しさん:05/03/02 18:42:54
100デフォルトの名無しさん:05/03/02 19:14:15
100get
101デフォルトの名無しさん:05/03/02 19:16:41
>>96
表示のプロパティページでも見ろや。

っつーか背景黒にしたいって、、
ひょっとしてcobolerか?
102デフォルトの名無しさん:05/03/02 19:26:12
>>99
VS.NET2002って「最新版の有無のチェック」でエラーが出てたから
とうに見捨てられてたと思ってたよ。これも直ってました(笑)。
103デフォルトの名無しさん:05/03/02 20:04:38
>>85
放送大学とかに入学してお前自身が学生になればライセンス上は問題ない。
104デフォルトの名無しさん:05/03/02 20:42:12
>>85
おまえニートだろう、買ってみろ、買って後悔しろ
アカデミックエディションはおまえのようなやつの為に
有るのだ。 フフフ...............
105デフォルトの名無しさん:05/03/02 20:55:13
参照渡しについて教えてください。

   Dim s As Integer
   s = 5
   XP(s)
   MessageBox.show(s)

   Public sub xp(ByRef Date As Integer)
   Date = Date * 100
   End sub

そもそも上記のコードは何がしたいんだ(汗

あとはFunctionプロシージャとか・・・・・。
どこで呼び出されたり呼び出したり、値を返したり返さなかったり・・・・・。

詳しく教えてください、マジ困ってます・・・・・。
106デフォルトの名無しさん:05/03/02 20:59:39
>>105
で、何を聞きたいの?
107デフォルトの名無しさん:05/03/02 21:23:49
>>105
俺は普通のやり方って知らないんだが
   Public sub xp(ByRef Date As Integer)
   Date = Date * 100
   End sub
上のやり方じゃなく
   Function xp(ByRef Date As Integer) as Integer
    Return Date * 100
   End Function
とかじゃねーのかと思うんだが、気のせいか。
108デフォルトの名無しさん:05/03/02 21:28:08
>>107
それではByRefで渡す意味が無い。
まあこんなメソッドはByValで渡してIntegerをRerutnするのが自然だけどさ。
109デフォルトの名無しさん:05/03/02 21:48:51
うぉ。ByValの間違いたっだ、_| ̄|○
110ニート:05/03/02 22:37:03
アンカーを正しく書けない池沼が多いスレだなw
土曜にアカデミーを受け取ることになった。流石に小学生には売れないみたいなので大学生に頼んだ。
その夜にでも後悔の弁を書き連ねるからな。
111デフォルトの名無しさん:05/03/02 22:49:49
>>110
余所行ってやれよ
112デフォルトの名無しさん:05/03/02 23:36:48
VB.NETでサービスアプリケーションを作って動かしてみたところ、
実行時のカレントディレクトリがwinnt\system32になっているようなのですが、
元々exeが置いてあった場所を取得することは可能でしょうか。

分かりにくいですが、
InstallUtil 〜.exe
で指定するパスのことです。
113デフォルトの名無しさん:05/03/02 23:41:42
GetType(起動アセンブリが含んでいる型).Assembly.Location
が一番シンプルかな。
114デフォルトの名無しさん:05/03/02 23:56:52
>>113
ありがとうございました。試してみます。
11581:05/03/03 00:03:18
こんな物が作りたいのですが,どうやったらいいのでしょ

スペースキー(キーは何でもよし)を押すとキーの押された時刻と,押している経過時間を記録してExcelに読み込ませるか,テキストでファイルに出力する。

当方,初心者につき,さーっぱりわかりません。

参考書でもいいです。何か教えてください。
116デフォルトの名無しさん:05/03/03 00:08:33
FormのKeyDownイベントと
Streamクラスあたりを調べてみては
11781:05/03/03 00:22:04
>116
dクス
すまん,Stream
11881:05/03/03 00:22:39
streamクラスの説明がほすぃ
119デフォルトの名無しさん:05/03/03 00:31:52
12081:05/03/03 00:44:13
>119
ありがとん
ガンガって見るッス
121デフォルトの名無しさん:05/03/03 10:37:58
日付を選択するDateTimePickerというのがありますが
月を選択するのに適したコントロールはありませんか?
122デフォルトの名無しさん:05/03/03 11:37:42
コンボボックスに1から12まで数字振ってみれば?
123デフォルトの名無しさん:05/03/03 16:03:47
Call System.Configuration.ConfigurationSettings.AppSettings.Set("hoge", hoge)
とすると、読み取り専用という例外エラーが発生してしまいます。
書き込み可能にするにはどうしたらよいでしょうか?
124デフォルトの名無しさん:05/03/03 16:18:23
手書き。
というかユーザデータは自前の設定ファイルに書くのが普通。。
125デフォルトの名無しさん:05/03/03 16:20:42
>>124
すみません。よく意味がわからないのですが
そーすると設定値を保存したい場合はINIファイルを使ったほうが
よいということでしょうか?
しかし、そーするとSetメソッドってなんのためにあるのかと疑問です。
126デフォルトの名無しさん:05/03/03 16:27:39
>>125
AppSettingsプロパティはNameValueCollection型。
NameValueCollectionクラスは一般的な文字列(非対称)ペアのコレクションであって、
ConfigurationSettings.AppSettingsにだけ使われるものじゃないから。

.NETでは一般的に設定ファイルはXmlSerializer辺りを使う。慣れない間は使いにくいが。
127デフォルトの名無しさん:05/03/03 16:31:02
>>126
さんくす。理解できました。XMLファイルに保存するわけですね。
.NETぽくて(・∀・)イイ!!
128デフォルトの名無しさん:05/03/03 18:49:45
文字列が全てカナ以外の文字が混ざっていないか
チェックできるメソッドはありますでしょうか?
129デフォルトの名無しさん:05/03/04 08:17:26
Regex.IsMatch
130デフォルトの名無しさん:05/03/04 09:36:49
>>129
たんくす
131デフォルトの名無しさん:05/03/04 17:18:11
BorderStyle.FixedSingleの実線の色とサイズを変更する方法を教えてください。

今は、
BorderStyle.Noneにして、Graphicsを使用してBitmapをClear(Color.Transparent)
その後、Penを使って、そのBitmapをDrawRectangleを使用して、ラインを描画
その後、BitmapをImageにぶち込んでやってるのですが、あまりにもスマートじゃない気がするので
132デフォルトの名無しさん:05/03/04 19:15:18
VB.NETと直接関係ないんだけどさ・・・
Microsoft ASP.NET Web Matrix
これ使っている人っている?
133デフォルトの名無しさん:05/03/04 23:29:47
VB6のLeftBみたいなことがしたいのですが、VB.NETでは
どうやればよいでしょうか。
134デフォルトの名無しさん:05/03/04 23:31:26
どいつもこいつもLeftBLeftBばっかだな。
だいたい「みたいな」って何だっての。
135NAME IS NULL:05/03/04 23:33:52
グリッドを貼り付けて、ある一つのセルの文字だけを変えたり、
背景色を変えるということは出来るのでしょうか。
ご教授よろしくお願いいたします。
136デフォルトの名無しさん:05/03/04 23:34:06
>>134
分かってないのはお前だけ。
137デフォルトの名無しさん:05/03/04 23:35:10
>>133
このスレでLeftBを検索するとか、ぐぐるとかしてみそ。
ttp://www.atmarkit.co.jp/fdotnet/dotnettips/113substr/substr.html
138デフォルトの名無しさん:05/03/04 23:43:54
>>137
アホか
139デフォルトの名無しさん:05/03/04 23:47:34
最近は逆切れするやつが多くてこまるね。(´・ω・`)
140デフォルトの名無しさん:05/03/04 23:49:52
>>135
WinFormなのかASP.NETなのか、
DataGridの話で良いのか、
そうならデータはどういう形式なのか、
辺りを聞こうか。
141デフォルトの名無しさん:05/03/04 23:51:20
>>140
アホか。
142デフォルトの名無しさん:05/03/05 00:07:26
>>139
多分君は「逆切れ」を正しく使えていないと思うが
どれのこと言ってるの?
143デフォルトの名無しさん:05/03/05 00:19:38
144デフォルトの名無しさん:05/03/05 16:19:16
「このオブジェクトは現在ほかの場所で使用されています」
このエラーの対処法を教えてください
145デフォルトの名無しさん:05/03/05 16:42:33
データグリッドで、行のサイズ変更を不可にするにはどうすればいいのでしょうか?
行のサイズとは、行の縦の長さのことです。

他の質問サイトでも聞いてみましたが返信はありませんでした。
意外と複雑な処理をしないといけないんでしょうか?
146デフォルトの名無しさん:05/03/05 18:59:47
147デフォルトの名無しさん:05/03/05 21:14:08
今日たまたまコーディング中に発見したんだが
何も選択されていない状態でCtrl+Cを押すと一行選択になるのな。
今まで知らんかった。
148デフォルトの名無しさん:05/03/05 21:20:15
Ctrl+Xなら一行切り取りだな。
削除代わりによく使う。
149デフォルトの名無しさん:05/03/06 05:27:54
なにもオペレーションが無い状態の時間
(スクリーンセーバーの起動条件となる状態)
を取得するのってどうするんでしょう?
150デフォルトの名無しさん:05/03/06 10:43:15
テキストファイルを拡張子に関連付けられたアプリケーションで
開くにはどうすればいいでしょうか。

メモ帳で開くのならば、

Shell("notepad.exe " & 〜)

みたいに開けることまでは分かったのですが・・・


よろしくお願いします。
151デフォルトの名無しさん:05/03/06 10:49:43
System.Diagnostics名前空間のProcessクラスのStart静的メソッド
152デフォルトの名無しさん:05/03/06 10:53:23
>>151
できました。

どうもありがとうございました。
153デフォルトの名無しさん:05/03/07 09:26:15
同じフィールド ( ID ) を持った、二つのDataTable ( dt1, dt2 ) があります。
dt1、dt2共に同じIDのレコードが存在する場合、
dt1からそのレコードを削除する方法はありますでしょうか。

DataSetのRelations.Add では思ったような結果が得られませんでした。
具体的には、DataTable間で、SQL文 ( OUTER JOIN句 ) を実行し、
別のDataTableを作成したいのですが、どうも出来ない?ようなので。

よろしくお願いします。
154デフォルトの名無しさん:05/03/07 10:33:09
>>147
>>148
シランカッター。
使わせてもらいまふ。
155デフォルトの名無しさん:05/03/07 10:50:57
>>153
ExecuteNonQueryで直接SQLを実行してみたら?
156デフォルトの名無しさん:05/03/07 10:53:09
tet
157デフォルトの名無しさん:05/03/07 10:55:42
ウィンドウハンドルからコントロールを取得する方法を教えてください。
そのコントロールかテキストボックスかどうか判定したいのですが
そのコントロールを識別するものがウィンドウハンドルしかわかりません。
If TypeOf Me.ActiveControl Is System.Windows.Forms.TextBox Then
Me.ActiveControlのところをウィンドウハンドルから取得したいです。
よろしくお願いします。
158デフォルトの名無しさん:05/03/07 11:05:58
>>157
別プロセスのは無理だよ?
159デフォルトの名無しさん:05/03/07 11:09:10
>>158
マジっすか?
160デフォルトの名無しさん:05/03/07 15:27:03
カードゲームを作ってるんですが、描画のタイミングがうまく調整
できません。

カードクリック→FromFileでjpg画像表示→役の判定→カードの破棄

こういう流れをひとつのプロシージャでやってると、その処理が終了
するまで画面更新がかからないんですね。カード表示されずに破棄ま
で進んでしまうので、いったい何のカードを引いたのかプレイヤーが
わからないんです。

中にウエイトを置いても同じことなので、今はTimerで100msごとに
役判定するという乱暴な手段を使ってますが、これもクリックするタ
イミングによって妙な挙動になります。

何かいい方法はありませんでしょうか?
161デフォルトの名無しさん:05/03/07 15:29:37
Refreshを挟めば?
162160:05/03/07 17:27:32
>>161
さんくす。
Me.Refreshであっさりできました。ウエイト前に置いても無問題。
Picturebox使ってて気がつかなかったのはお恥ずかしい限りです。
163デフォルトの名無しさん:05/03/07 18:33:37
超初心者の質問で申しわけありませんが、
textboxで入力後、カーソルが自動的に次のtextboxへ移動するにはどうしたらいいですか?
VBAではautotabの機能があったのですが、VB.NETには無いようなので
どなたか教えていただけないでしょうか?
164デフォルトの名無しさん:05/03/07 19:12:20
>>163
無いので、TextChangedイベント辺りで自分で処理。SelectNextControlメソッドとか。
165デフォルトの名無しさん:05/03/07 20:28:42
作ったプログラムを他の人のPCで動かすときには
何をインストールすれば良いの?
Win2000です・・・
166デフォルトの名無しさん:05/03/07 20:33:19
binフォルダの中にあるexeファイルと.Net Frameworks。
167デフォルトの名無しさん:05/03/07 20:45:17
ツールバーのアイコンって、自分で作らないといけないんでしょうか?
VBや C++Builderには、アイコン集があった気がするのですが、.net には
見当たりません。
何か良いアイコン集があったら、教えてください。
168デフォルトの名無しさん:05/03/07 21:01:39
>>167
VBやC++BuilderのインストールされてるPCから
ビットマップだけコピーすればいいじゃないか。
169デフォルトの名無しさん:05/03/07 21:19:01
っていうか\Common7\Graphicsにあるでしょ
VS5の時代から進歩がないけど。。
170デフォルトの名無しさん:05/03/07 21:59:35
>>168
ラ、ライセンスの問題が…。

>>169
スタンダード版には、入ってないようです。
171デフォルトの名無しさん:05/03/07 22:24:23
CDの中も探した?
172デフォルトの名無しさん:05/03/08 01:00:43
>167
VB.NET Power Packに結構いいの入ってたよ。
ライセンスはどうかわからんけど・・・
173デフォルトの名無しさん:05/03/08 02:46:00
適当にフリーアイコン素材サイトからもってくる。
or
デザイナーの友達を作る。
174デフォルトの名無しさん:05/03/08 08:19:47
VB.NETで作成したアプリケーションがメモリリークしていないか
調べたいのですがどのような方法がありますか?
175デフォルトの名無しさん:05/03/08 08:46:21
>>174
パフォーマンスモニタ
176デフォルトの名無しさん:05/03/08 10:56:14
vb.net compact frameworkにて
以下で定義してテーブルより、特定のレコードを削除する方法を教えてください。

'テーブル宣言
Public dataSet1 As New DataSet("テスト一覧")
Public dataTable1 As DataTable = dataSet1.Tables.Add("テストテーブル")
Public dataClumn1 As DataColumn = dataTable1.Columns.Add("番号")
Public dataClumn2 As DataColumn = dataTable1.Columns.Add("項目")
Public dataClumn3 As DataColumn = dataTable1.Columns.Add("得点")

'レコード追加
dataTable1.Rows.Add(New [Object]() {"0001", "国語", "100"})
dataTable1.Rows.Add(New [Object]() {"0002", "国語", "90"})
dataTable1.Rows.Add(New [Object]() {"0003", "国語", "80"})
dataTable1.Rows.Add(New [Object]() {"0004", "国語", "70"})
dataTable1.Rows.Add(New [Object]() {"0005", "国語", "60"})
177デフォルトの名無しさん:05/03/08 11:36:20
>>176
dataviewで条件抽出してDeleteするもよし、datatableで行決め打ち
削除するもよし。
178デフォルトの名無しさん:05/03/08 12:08:30
>>177
回答ありがとうです。

datatableで行決め打ち削除ってどうやればいいんですか?
179デフォルトの名無しさん:05/03/08 13:25:59
>>178
DataTable.Rows(削除したい行Index).Delete()
180デフォルトの名無しさん:05/03/08 14:30:10
Accessのグラフ画像をクリップボード経由で、FormにあるPictureBox
に貼り付けたいんですが、EnhancedMetafileから変換できないんです。

Dim iData As IDataObject = Clipboard.GetDataObject()
If iData.GetDataPresent(System.Windows.Forms.DataFormats.EnhancedMetafile) Then _
PictureBox1.Image = _
CType(iData.GetData(System.Windows.Forms.DataFormats.EnhancedMetafile), Image)
End If

ネットで探したこういうコードで実行すると、CTypeでNothingしか帰
ってきません。そのままワードパッドに貼り付けるとMicrosoft Graph
という形式だとプロパティで確認できました。

一度ファイルに落として、直接FromFileで表示しようとも思いましたが
CTypeが通らないのでSaveもできない状態です。

MemoryStreamを使った方法が下記にありましたが、同じくNothingが
帰ってきてどうにもこうにも。_| ̄|○

ttp://backno.mag2.com/reader/BackBody?id=200407270600000000104516000
181デフォルトの名無しさん:05/03/08 14:47:08
>>179
ありがとうございましたー。
多謝 m(_ _)v
182デフォルトの名無しさん:05/03/08 15:45:14
>>180
まずiData.GetFormatsと、それで取得できたそれぞれの形式に対してGetType(iData.GetData(形式名))をやってみては?
183デフォルトの名無しさん:05/03/08 17:21:53
>>182
GetFormatsの結果、下記の3つが取得できました。

Embedded Object
Object Descriptor
MetaFilePict

こんなのImageやBitmapにできないよね。orz
調べてたらなんかヤバそうなネタも見つかったし。
ttp://support.microsoft.com/?id=323530
184デフォルトの名無しさん:05/03/08 19:13:45
すいません、おしえていただきたいのですが。

時間計算なのですが 10:30〜13:00 を下記のようにしたのですが、

textbox1=10 (開始 時)
textbox2=30 (開始 分)

textbox3=13 (終了 時)
textbox4=00 (終了 分)

これを 働いた時間 2:30としてLabel1に表示したのですが

どういった計算方法ですればいいですか?

よろしくおねがいします。
185デフォルトの名無しさん:05/03/08 19:28:22
186デフォルトの名無しさん:05/03/08 20:49:27
VB.NETを勉強したいのですが、ACCESSしか知らない人に分かりやすい参考書ありませんか?
187デフォルトの名無しさん:05/03/08 23:25:20
サービスアプリケーションってソケット通信可能ですか?
188デフォルトの名無しさん:05/03/09 01:04:58
自分で試せよ。
189デフォルトの名無しさん:05/03/09 02:22:31
>>187
当たり前だ
190デフォルトの名無しさん:05/03/09 02:43:55
>>186
谷尻かおりさんのとか、イメージをつかむにはいいかも
Access本に比べてるとが悪いけど
191デフォルトの名無しさん:05/03/09 02:45:19
×Access本に比べてるとが悪いけど
○Access本に比べると出来が悪いけど
192デフォルトの名無しさん:05/03/09 07:07:24
>>191
そんな打ち間違えあるか。
脳みそ少なすぎ。
193デフォルトの名無しさん:05/03/09 09:07:22
リストビューの各サブアイテムごとに文字の色を変更したいのですが
可能でしょうか?
もし、可能であればやり方を教えてください。よろしくお願いします。
194デフォルトの名無しさん:05/03/09 09:32:02
ListViewSubItemのプロパティ一覧とその解説を良く読め。
195デフォルトの名無しさん:05/03/09 10:25:21
Dim subItem As System.Windows.Forms.ListViewItem.ListViewSubItem
subItem = item.SubItems.Add("hoge")
subItem.ForeColor = Color.Red

とやってみたのですが色が変わってくれません。
なぜでしょうか?
196デフォルトの名無しさん:05/03/09 10:27:13
解説を良く読めと。
197デフォルトの名無しさん:05/03/09 10:28:56
item.UseItemStyleForSubItems = False
でできました。ご迷惑お掛けしました。
198デフォルトの名無しさん:05/03/09 10:57:10
>>186
これで取り敢えず動くものを作ってみる。
http://www.amazon.co.jp/exec/obidos/ASIN/4774116955/
これでVB.NETの概要を掴む。
http://www.amazon.co.jp/exec/obidos/ASIN/4774121789/
辞書代わりにこれを使う。
http://www.amazon.co.jp/exec/obidos/ASIN/4891003170/

DB連携のシステムを勉強したいならこんな感じだと思う。
199デフォルトの名無しさん:05/03/09 13:27:20
最近はじめたんだけど、VB.NETで作ったプログラムってMACでも動くの?
.NETフレームワークってMAC版も出てるのかな?
200デフォルトの名無しさん:05/03/09 13:29:05
Mac OS Xならmonoが動くんじゃないか?
201デフォルトの名無しさん:05/03/09 13:31:46
>>199
無理。
REALBASICで開発すれば、Windowsでも動く実行ファイルを生成
できるらしいけどね。
202201:05/03/09 13:34:54
おお、monoってのがあったんだね。知らなかったーよ。

ttp://www.macinbasic.info/modules.php?name=News&file=article&sid=553&mode=&order=0&thold=0
203199:05/03/09 14:05:19
なるほど、基本的には無理なんですね。
フリーソフト作ってるんだけど「MAC対応」って銘打つにはmonoではまだ厳しいのかな。

っていうか中間コード生成する最大の理由は「OSに依存しないで動く」っていうことじゃないの?
Windowsでしか動かないなら中間コードでコンパイルする価値があまりない気が・・・。
なぜなんでしょう?
204デフォルトの名無しさん:05/03/09 14:18:43
ぶっちゃけ、Windowsにおける32bit環境から64bit環境へのスムーズな移行が
最大の目的じゃないかな。
205デフォルトの名無しさん:05/03/09 14:22:38
>>203
>っていうか中間コード生成する最大の理由は「OSに依存しないで動く」っていうことじゃないの?
>Windowsでしか動かないなら中間コードでコンパイルする価値があまりない気が・・・。
>なぜなんでしょう?

1つは、やっぱり異なるOSで動かす事には無理があるんじゃない?
というのはWin32APIに相当する機能も.NetFrameworkには存在するわけだが、
こういった部分はOSに依存する訳だし。

ただ、中間コードのメリットがOSに依存しない事だけかと言われれば、
そんな事無いと思うんだが?

実際、C#だろうがVB.NETだろうが同じ処理するプログラムを書けば、
生成される中間コードは同じになる。
そして、C#からVB.NETのクラスを呼んだり逆にVB.NETからの呼び出しも出来る。

一般的に大規模アプリになれば複数人で開発する訳だが、
それぞれが得意な言語で開発しても問題無くお互いのクラスを呼び出せる。

これだけでも十分メリットになると思うんだが?
206デフォルトの名無しさん:05/03/09 15:06:00
VB.NETでアプリケーションを作っているのですが
起動しただけで35メガもメモリを食います。
ひょっとしてすべてのウィンドウのインスタンス化を起動時に
やってしまうのでしょうか?
確かdelphiもそうだったと思うのですが、delphiは
その辺のコードもいじれたのですがVB.NETはそのあたりの
コードはどこにあるのでしょうか?

207デフォルトの名無しさん:05/03/09 15:13:41
そんなことはない。
ネイティブのコードへのコンパイルすら「初めてそのメソッドが出てきた時」に行われるのに。
起動時にメモリを食われるのは.NET Frameworkを通して起動させるためのコスト。
起動した後は不要になるので、気になるならウィンドウを一旦最小化させれば仮想メモリにしまい込まれる。
根本的にネイティブのアプリより消費メモリが大きめなのはしょうがないがね。
208デフォルトの名無しさん:05/03/09 15:18:44
>>207
了解です。
ちょっと起動に時間が掛かるなと思いタスクマネージャを見たら
30メガも使ってるのでびっくりしたしだいです。
それが普通ならまったく問題ありません。
209デフォルトの名無しさん:05/03/09 16:11:19
リストビューのカラムごとにTextAlignを指定したいのですが
指定するメソッドが見つかりません。
これは不可能でしょうか?
210デフォルトの名無しさん:05/03/09 16:18:27
ColumnHeader.TextAlign
ただし先頭列だけは必ず左寄せ。
211デフォルトの名無しさん:05/03/09 16:22:26
listview.Columns(2).TextAlign = HorizontalAlignment.Right
listview.Columns(3).TextAlign = HorizontalAlignment.Right
でできました。さんくす。
212デフォルトの名無しさん:05/03/09 16:58:55
>>203
「開発環境(言語)の差を吸収出来る」ことと
「安全なコードを書ける可能性が高い」こと、これらから
「開発生産性が高い」ことがメリットだと思うよ。

例えばJAVAのWORAというのは嘘とは言い切れないけど
未だに盲信してる人は少ないよね。
MSは良くも悪くもリアリストだから、「どこでも動く」ことより
「どこからでも繋がる」ことを .NET の宣伝材料にしてる。
213デフォルトの名無しさん:05/03/09 19:52:20
compact frameworkにて、設定ファイルを使用したい場合、
どのようにファイルを作って、どのように読み込めばいいのでしょうか?

質問が大雑把ですみません。とっかかりすらわかっていない状態ですので。
214デフォルトの名無しさん:05/03/09 22:28:54
設定ファイルとやらを使って何をしたいのかによるけど。
App.configなら
ttp://dobon.net/vb/dotnet/programing/appconfigfile.html
215デフォルトの名無しさん:05/03/09 22:43:04
VB.NETでWSDLがない状態でSoap通信したいんですけど
Soap ToolkitにあったSoapConnectorにあたるクラスってないんでしょうか?
216デフォルトの名無しさん:05/03/10 08:31:10
デストラクタってどうやって定義すればよいでしょうか?
コンストラクタは
public sub new()
end sub
でよいみたいですが
217デフォルトの名無しさん:05/03/10 08:38:44
Overrides Protected Sub Finalize()
218デフォルトの名無しさん:05/03/10 08:49:38
>>217
ありがとん
219デフォルトの名無しさん:05/03/10 11:01:20
EXCELを操作しているのですが
アプリケーションを終了するまでEXCEL.EXEがタスクマネージャの
プロセス一覧から消えてくれません。
消すにはどうしたらよいでしょうか?

Dim exl As New Excel.Application()
exl.Visible = True
exl.Workbooks.Add()

exl.Cells(1, 1) = "hoge"
220デフォルトの名無しさん:05/03/10 11:15:10
Quitも呼んでない辺りアレっぽいが。
ttp://support.microsoft.com/default.aspx?scid=kb;ja;317109
221デフォルトの名無しさん:05/03/10 11:23:19
>>220
さんくす。熟読します。
222デフォルトの名無しさん:05/03/10 11:33:57
消えました。ありがとん。
223デフォルトの名無しさん:05/03/10 14:19:06
Private m_Pos() As Point
Private m_Pos As Point()
の違いはなんでしょうか?
224デフォルトの名無しさん:05/03/10 16:03:14
GCってちゃんと仕事してくれますか?
なんか不安。メモリ使用量がどんどん増えるよー
225デフォルトの名無しさん:05/03/10 16:10:34
>>224
メモリは特に気にする必要ない。
226デフォルトの名無しさん:05/03/10 16:18:13
>>225
そうなんですかー
なんかC房だから気になって仕方ないよー
227デフォルトの名無しさん:05/03/10 16:38:58
Form1からForm2をShowDialogで表示し、Form2からForm3をShowDialogでまたまた表示する。
タイマーイベントで規定時間後に、自動でForm2とForm3を閉じてForm1を表示するようにしたい場合、どのようにすればいいですか?
今、Form1のタイマーイベントで
Form3.close()
Form2.close()
ってやるとForm3は閉じるけどForm2は閉じてくれません。
だれかわかりますか?
228デフォルトの名無しさん:05/03/10 17:33:27
ピクチャーボックス上の
線などを消去するには?
229デフォルトの名無しさん:05/03/10 19:47:14
>>223
基本的に無い。好み。
個人的には配列型を宣言してると分かりやすい後者の方が良い。

>>227
私の所では閉じる。

>>228
何らかで上書きする。
230デフォルトの名無しさん:05/03/10 21:02:53
簡単なテキストエディタを作っています。カレットが移動するたびに、その位置を
ステータスバーに表示したいと考えています。で、一番最初に思いついたのが、
KeyDown/Upイベントを利用することです。しかしながら、IMEがオンになって
いると、KeyDown/Upイベントが発生するたびに変換が解かれてしまい、実用に
なりません。なにかいい方法はないでしょうか。
231デフォルトの名無しさん:05/03/11 00:13:11
MDI子フォームのKeyDownイベントでファンクションキーが
押された場合の処理を書いているのですが、このイベントが
親フォームにも送られているらしく、F1キーを押すと
ヘルプが起動してしまいます。
ファンクションキーイベントは子フォームだけで受け取り
(子フォームがアクティブの場合)
親フォームには送られないようにするにはどうしたらよいでしょうか。
e.Handle=True
は試してみたのですが、ダメでした。
232デフォルトの名無しさん:05/03/11 00:28:57
メニューのイベントでヘルプ表示してるんでしょ?

だったら自分がアクティブじゃなかったら
ヘルプ表示しないようにするだけだと思うんだけど。。
何か間違ってるか?
233デフォルトの名無しさん:05/03/11 00:33:11
ウケる。要求仕様と違うとはまさにこのことか。
234デフォルトの名無しさん:05/03/11 00:34:05
>>232 「自分」って誰?(バク
235デフォルトの名無しさん:05/03/11 00:38:42
>>232
それって親フォームにキーイベント飛んでるじゃん。
e.Handle = True
じゃムリなの?
236デフォルトの名無しさん:05/03/11 00:42:25
馬鹿な上に幼稚なVB厨どもはしょうがないですな。

別にウィンドウメッセージそのものをキャンセルする必要なんて全然ない。
要はそれを処理するべき場合かどうかを判断できれば必要十分だろといってるの。
237デフォルトの名無しさん:05/03/11 00:48:27
>>236
必要かどうかの問題ではなく、231がやりたいのはメッセージを
キャンセルしたいのだろう。別に君がその方法を知らないなら
ムリに書き込む必要ないんじゃないの?何がしたいの?
238234:05/03/11 00:49:18
どうでもいいけど「自分」って誰?(ププッ
239デフォルトの名無しさん:05/03/11 00:52:02
>>237
そういうSEは最近多いよ。勝手に要求仕様を捻じ曲げて
得意げな大馬鹿
240デフォルトの名無しさん:05/03/11 00:54:28
>>231ですが、メイン画面(親フォーム)は別の外注の会社が
作っていて、私が作っているフォームでファンクションキーを
処理する都合でメイン画面に修正が入るのはあまり
好ましくないのでメッセージをキャンセルする方法があるのならば
それがやりたいです。分かりにくくてすいません。
241デフォルトの名無しさん:05/03/11 01:28:29
VBで、ある業務システムつくろうと思ったけど。
スタックが心配で見合わせてる。
242デフォルトの名無しさん:05/03/11 01:29:27
で?
243デフォルトの名無しさん:05/03/11 01:34:56
どうしたものかな。
VB6では、スタック領域を設定することできないんだよ。
NETは、どうなの。
244デフォルトの名無しさん:05/03/11 01:40:41
質問です。
IEで表示した内容を印刷ダイアログを表示せずに
プログラムから印刷する方法を教えてください。
245最凶VB厨房:05/03/11 01:42:20
>>231
もしかして親フォームのKeyPreviewプロパティはTrue??
246デフォルトの名無しさん:05/03/11 01:45:52
アホか。
要求仕様は、「子フォームがアクティブの時には親フォームのヘルプを表示しないようにしたい」
メッセージをキャンセルするってのはその一手段に過ぎない。

>>240
やっぱり無理なんじゃないか。
というのは、別に子が親にメッセージ送ってるわけじゃないのだから。
いま実際WndProcでメッセージ拾うコード書いて確認したので間違いないと思う。
247デフォルトの名無しさん:05/03/11 02:01:28
WndProcをオーバーライド。
該当するキーの場合、基底クラスのWndProcを呼ばない。
あるいはProcessCmdKeyをオーバーライド。
該当するキーの場合、trueを返す。
248デフォルトの名無しさん:05/03/11 07:13:39
>>246
>>240

アホ
249デフォルトの名無しさん:05/03/11 07:15:36
>>246
>いま実際WndProcでメッセージ拾うコード書いて確認したので間違いないと思う。
間違ってるじゃんw

お前、マジでもういいよ
250デフォルトの名無しさん:05/03/11 08:35:18
タスクバーを除いたデスクトップのサイズを取得したいのですが
どのようにすればよいでしょうか?
251250:05/03/11 10:40:54
すみません。わかりました。
252デフォルトの名無しさん:05/03/11 12:26:42
>>249
幼稚な奴。
実際に自分でやってみてから言ってるか?
っていうか、「本当はWndProcなんてわかんない」に五万両。
253デフォルトの名無しさん:05/03/11 19:48:58
このスレの大半はアホなのはわかっている。
254最凶VB厨房:05/03/11 22:50:51
ドアホがスレ立ててんだからしょうがねぇってこった。
255デフォルトの名無しさん:05/03/11 23:07:27
アホは自分がアホだと認識した時点でアホではなくなる。
256デフォルトの名無しさん:05/03/12 00:35:42
>>252
>>246が間違っていることを確認し、問題を解決できました。
回答くださった方(>>246の人は除き)、どうもありがとうございました。
257デフォルトの名無しさん:05/03/12 23:09:18
どなたか教えてください。

datagridのDataGridTableStyleでFormatを設定する部分があると思うのですが、
番号を01,02,03・・・という感じでしたいので 00 と入れたのですがちゃんと表示されず、
1,2、・・とでてしまいます。
どの部分がおかしいのでしょうか?
258デフォルトの名無しさん:05/03/12 23:13:34
Dim str As String : Dim time As Integer : Dim ch As ListView.CheckedListViewItemCollection
ListView1.View = View.Details : ListView1.CheckBoxes = True : ListView1.Columns.Add("test", 100, HorizontalAlignment.Left)
''' テストデータセット 偶数にチェック
For ii As Integer = 0 To 5000
ListView1.Items.Add(CStr(ii)) : If (ii Mod 2) = 0 Then ListView1.Items(ii).Checked = True
Next ii
''' チェックデータ取得 @〜B のどれが一番早い??
time = Environment.TickCount() ''''@
Dim txt1 As New System.Text.StringBuilder
For ii As Integer = 0 To ListView1.Items.Count - 1
If ListView1.Items(ii).Checked Then str = ListView1.Items(ii).Text
Next ii
Console.WriteLine(Environment.TickCount() - time)
time = Environment.TickCount() ''''A
ch = ListView1.CheckedItems
For ii As Integer = 0 To ch.Count - 1
str = ch.Item(ii).Text
Next ii
Console.WriteLine(Environment.TickCount() - time)
time = Environment.TickCount() ''''B
ch = ListView1.CheckedItems
For Each item As ListViewItem In ch
str = item.Text
Next
Console.WriteLine(Environment.TickCount() - time)
259258:05/03/12 23:14:09
上記サンプルの、ListViewコントロールについて質問です。
Details モードで、チェックボックスを付けた状態で、チェックされた行を
取得する方法なのですが、以前より何故こんなに遅いのかと疑問に感じていました。
が、どうやらコーディング次第でものすごく差があるようです。
私は、A<B<@となると思っていたのですが、現実は、@<B<<<<Aになりました。
何故このような結果が出るかどうしても説明出来ません。
誰か偉い人教えてください。
260デフォルトの名無しさん:05/03/12 23:20:00
>>257
DataGirdTextBoxColumnのFormatプロパティだな。
該当するDataColumnのDataTypeがString型になってるんだろう。
261デフォルトの名無しさん:05/03/13 00:40:04
>>259
面白そうなのでちょっとILDASMで見てみた。

(2)の最大のボトルネックはCountプロパティの取得部分であるのは動作を見れば一目瞭然。
では内部でどんな作業をしてるのかというと、
1.オーナーであるListViewのCheckedIndicesを取得して、そのCountプロパティを返す。
2.CheckedIndices.Countは、内部ではオーナーであるListViewのItemsプロパティを取得し、
 それをFor Eachで回して一つ一つCheckedプロパティを確認し、インクリメントして計測する。
という遠大な事をやっている。
For ... To で毎回Countプロパティを取得してればそりゃ死ねる。
Forの前に一度Countを別変数に取り出すだけで劇的に改善され、(3)にほぼ並ぶ。

さて、(2)と(3)の違いだが。
(2)は毎回Item(Integer)を呼んでいる。この動作の遷移は、
1.ListViewのCheckedIndicesを取得、CheckedIndices.Itemを呼ぶ
2.CheckedIndices.Itemは内部でListView.ItemsをForで回し、Index回目で見つかったCheckedのインデックスを返す
3.返されたインデックスのアイテムをListView.Itemsから取得し、それを返す
という流れだ。分かりにくいなんて意見はスルー。

(3)、For Eachは内部でGetEnumeratorが呼ばれ、それで返されるIEnumeratorのCurrentプロパティ・MoveNextメソッドで列挙動作が行われる。
ではGetEnumeratorはどうなってるかというと、
1.CheckedListViewItemCollection.Countを取得し、その数でListViewItem配列を作成する
2.ListViewのItemsをForで回し、Checkedかどうか確かめてCheckedなアイテムを順に配列に格納する
3.配列のGetEnumeratorを返す
って流れになる。
配列のGetEnumeratorは、MoveNextが呼ばれるごとにインデックスをインクリメントして、Currentで現在のインデックスのアイテムを返すってだけの簡単な処理。

(3)はCheckedListViewItemCollection.Countを取得してる以外にコストがかかる処理はなさそうだ。それが大きいけど。
(2)は2.の所だな。指すインデックスが後ろになればなるほどコストがかかるようになる。
その上ch.Item(ii)がループ回数呼ばれてる訳で、その回数分のListView.Itemsのループが発生してしまうと。

こんな動作を知ってしまった後では、でかいビューでCheckedItemsを使うのは躊躇しちゃうね。
262258:05/03/13 12:06:00
>>261
ホントにありがとうございます。
非常に分かり易い神な回答が返って来るとは思いませんでした。

ヘッポコ同僚が(1)でコーディングを行っていて、カコ悪いなーと思っていましたが
それが一番コストが掛からないなんて・・・orz
263デフォルトの名無しさん:05/03/13 13:17:14
配列の概念がよくわかりません
264デフォルトの名無しさん:05/03/13 13:18:37
そうか頑張れ。
265デフォルトの名無しさん:05/03/13 14:43:45
>>264
なんだそれ
266デフォルトの名無しさん:05/03/14 12:24:47
LinkLabelをクリックした時に左右どちらのボタンでクリックしたか調べるには
どうすればいいですか?
LinkClickedのイベントプロシージャ内で判定させたいのですが。
267デフォルトの名無しさん:05/03/14 12:40:47
>>266
MouseDownで保存しとくとか。
268デフォルトの名無しさん:05/03/14 12:59:19
Excelでレポートを出力するアプリケーションを作っています。
一旦Excelに書き込んで保存して終了して
その書き込んだExcelファイルを開くという処理をしているのですが
System.Diagnostics.Process.Startをしたときに前のExcelの
プロセスが残っているためかExcelのメニューだけ表示された状態で
とまってしまいます。
GC.WaitForPendingFinalizers()
がないと100%そうなるのですが、これがあると
うまくいくときもあります。何か回避方法がありますでしょうか?

oBook.Close(False)
NAR(oBook)
NAR(oBooks)
oApp.Quit()
NAR(oApp)

GC.Collect()
GC.WaitForPendingFinalizers()

System.Diagnostics.Process.Start("hoge.xls")

269デフォルトの名無しさん:05/03/14 13:08:04
FlexGridの新しい奴がExcel直接操作できる
270268:05/03/14 13:38:21
すみません。お騒がせしました。
データを書き込んでいるところを関数にしたら直りました。
データを持っているオブジェクトが解放されなかったためのようです。
271デフォルトの名無しさん:05/03/14 14:33:51
リストビューでカラムヘッダーをクリックしたら
そのカラムでソートしたいのですがどのようにしたらよいでしょうか?
272デフォルトの名無しさん:05/03/14 15:55:47
273デフォルトの名無しさん:05/03/14 16:03:41
>>272
ありがとん。
できました。
274デフォルトの名無しさん:05/03/14 18:42:38
--------------------------------------------------
Java
--------------------------------------------------
public class Foo {
public static void main(String[] args) {
new Foo();
}

public Foo() {
}
}


と同等なコードをVB.NETで書きたいのですが、
New Foo()と書くと構文が違うと怒られるんですが、
こういう書き方はできないのでしょうか?
275デフォルトの名無しさん:05/03/14 18:48:24
>>274
VB.NETの構文を勉強してください。
276デフォルトの名無しさん:05/03/14 18:49:32
Java'erならC#使った方が良くね?
277デフォルトの名無しさん:05/03/14 18:50:00
>>275
嫌なんで、教えてください。
278デフォルトの名無しさん:05/03/14 18:51:22
わかった、ちょっと待ってな・・・
279274:05/03/14 18:52:33
できればそうしたいんですが、
それができないんで○| ̄|_
VB冗長すぎる…。
280デフォルトの名無しさん:05/03/15 15:55:17
TextBox1をクリックしたりしてフォーカスがTextBox1に移動したときにLabel1.Textが
TextBox1の説明文に変更されて、また別のTextBoxが選ばれたらLabel1.TextがそのTextBoxの
説明文に変更されるというようなプログラムを書く場合、
Private Sub TextBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Click
  Label1.Text = "(TextBox1の説明文)"
End Sub
てな感じのを各TextBoxすべてについて書かなければいけないのでしょうか?
何か他にエレガントな方法はありませんか?
まぁ藻前ら、それほどの技術と経験と根性があるなら、今まさに危機に瀕している↓のMMORPGを救ってくれ。
軽く問題に触れておくと、要は開発者が逃げ出しましたよと。
そしてそれに痺れを切らした3Dモデリング担当の人もプロジェクト脱退しましたよと。
そこで藻前らの力が必要になったわけで。。
この企画に参加、若しくは引継ぎすれば少なくとも藻前らのスキルアップにも繋がるだろうし。。
頼むよ。絶望に満ち溢れた世界に新たな風を吹き込んでくれ。藻前らの力で・・・・・・

         頼       ん      だ       ぞ

                 http://rob2.jp/
282デフォルトの名無しさん:05/03/15 16:24:34
>>280
TextBoxのTagに説明文を入れて、
Label1.Text = CType(sender, TextBox).Tag.ToString()
を全てのTextBoxのEnterイベント共通メソッドにする、とかどうよ。
283デフォルトの名無しさん:05/03/15 17:29:04
>>282
それは全てのTextBoxのEnterイベントを共通メソッドとして一括で書く方法があるということですか?
それとも全てのTextBoxのイベントをひとつひとつ書かないといけないということでしょうか?
284デフォルトの名無しさん:05/03/15 17:43:04
なんでWebBrowserコントロールのドキュメント、MSDNに無いんだよ!!!!
285デフォルトの名無しさん:05/03/15 17:44:58
286デフォルトの名無しさん:05/03/15 17:50:07
>>282>>285
おお、百万の感謝を。
287デフォルトの名無しさん:05/03/15 22:54:31
RichTextBoxで100行目に書かれている1行をすばやく消す方法を教えてください。
288デフォルトの名無しさん:05/03/15 23:24:18
SendKeys "^({HOME})"
For intCnt = 1 To 99 Step 1
SendKeys "{DOWN}"
Next intCnt
SendKeys "+({END}){DEL}"
289デフォルトの名無しさん:05/03/15 23:51:37
↑こういうのって一般的なんですか?
290デフォルトの名無しさん:05/03/16 07:20:34
>>289
No
291デフォルトの名無しさん:05/03/16 12:55:13
>>287
WordWrapは考慮しなくてもいいの?
292デフォルトの名無しさん:05/03/16 17:06:23
Ctrl+Xで削除する行って、削除と同時に複写もするんですか?
293デフォルトの名無しさん:05/03/16 17:15:48
すみません。教えていただきたいのですが、

DatagridにListBoxを使用しています。
たとえば

あああ
いいい
うううう
えええ
おおお

のリスト中の「あああ」と「えええ」 を複数選択してそれを
A列とB列に入れたい場合はどういうふうにすればいいでしょうか?

リストボックスプロパティのselectionmode=MultiSimpleで複数選択はできました。

よろしくおねがいします。

294デフォルトの名無しさん:05/03/16 17:22:24
>>293
A列とB列はどこから出てきたんだ?
295デフォルトの名無しさん:05/03/16 17:41:04
>>294

SQLサーバーで従業員のデータを作成してdatagridで使用してます。
従業員の担当業務が複数あってそれを入れたいと思っています。
複数あるので担当業務の列を5つ設けています。
2つであればA列、B列。3つあればC列までって感じです。


296289:05/03/16 22:04:52
>290
んじゃ〜正しいの教えてください。御願いします。
Select〜で選んで消さなきゃいけないのはわかるんですが、目的の場所にたどり着くのに
えらいこと時間がかかるから、、、
せっかくLinesみたいなのがあるのに、その行を消せないし。
297デフォルトの名無しさん:05/03/16 22:15:29
APIのSendMessageでEM_GETLINEを送れば特定行の先頭インデックスを取得できる。
298デフォルトの名無しさん:05/03/16 22:49:10
Windows2000/XP でログオフ/終了/再起動ををするのをフックにして
動作するプログラムを書きたいのですが、どうやって判断すれば
いいでしょうか?

299デフォルトの名無しさん:05/03/16 22:50:11
VB.NETでCABファイルを扱いたいのですが、専用のクラスとかは
あるでしょうか。
300デフォルトの名無しさん:05/03/16 22:54:46
>>299
ない。
301デフォルトの名無しさん:05/03/16 23:20:05
302デフォルトの名無しさん:05/03/16 23:36:02
そろそろ、テンプレのリンクに色んなサイト追加しない?
漏れ自身は、結構良いサイト増えてきてると思ってる。
掲示板が設置してあるサイトをまとめてみたりすると良いかも。
303デフォルトの名無しさん:05/03/17 00:38:38
>>302
頼む
304デフォルトの名無しさん:05/03/17 11:48:34
>>292
Ctrl-X は切り取り
305デフォルトの名無しさん:05/03/17 16:51:33
VB.NETのソースはJavaのようにフォルダを階層構造にして
管理できますか?
306デフォルトの名無しさん:05/03/17 18:37:27
シリアルキー解析集「ALTEA」
大好評発売中!

http://openuser10.auctions.yahoo.co.jp/jp/user/dancexxx1960?


市販SOFTやオンラインSOFTのパスワード集です。
オークション関係から画像・OS・表計算・CAD・・・・etc
国内・国外のあらゆる分野のSoftを解析済です。


これを初めて手にされた時には、驚愕される事でしょう。
そして・・・手当たり次第にインストールを始める筈ですw
パソコンをご使用の方なら、必ず!満足されると思います。

解析結果のデータベースには15,000点を越えるパスワードが入ってます。
このパスワード集から検索するだけで、登録や制限解除が出来てしまいます。
シェアウェアを購入して、正規登録したのと同じ状態になります。
余りにもデータが多すぎる為、辞書引のようなパスワード検索SOFTで提供します。

シェアウェア以外にもパッケージ版をVectorなどでオンライン販売してるSOFTにも
多数対応しています。これらをダウンロードして無期限に試用する事も可能です(^^;

WindowsXPやOfficeなどのCDキー(プロダクトキー)ジェネレーターを使えば複数のパソコンに
インストールする事も可能です。デスクトップとノートPCなど2台以上持ってる場合は特に有効ですね。

オンラインSOFTを購入した経験は有りますか?
ありとあらゆる分野の優れたSOFTが、数多くありますよね。
しかし、ほとんどが試用期間や機能制限をして、「気に入ったら購入してください」です。

もう少し使いたいが使用期限切れで、削除・・・再インストールを繰り返していませんか?
307デフォルトの名無しさん:05/03/17 21:10:23
だれかおしえて!

datagrid使ってデータベース作ってるんだけど、
別のフォームで作成したデータベースのデータをComboboxを使って
よびだしたとき、ほかのTextboxにComboboxを使って呼び出したデータと
同じ行の違う列のデータを表示させたいんです。
どうしたらいいですか?
308デフォルトの名無しさん:05/03/17 21:12:22
>>307
わけがわからんのでもうちょっと整理して。
309デフォルトの名無しさん:05/03/17 21:20:19
>>307
まさかプロじゃないだろうな?
310デフォルトの名無しさん:05/03/17 21:31:23
「データベース作る」って何やってんだ?
311デフォルトの名無しさん:05/03/17 23:21:44
>>307
ComboBoxのSelectedIndexを使う
選択された行を認識して任意の列を取り出せばいいんでないの
ValueMemberに抽出のキーとなるデータをほりこんでおいてそれで探してもいいけど

しかしもう少し聞き方何とかならねぇのか?
312デフォルトの名無しさん:05/03/17 23:37:21
VB.NETにはRebarってありますか?
あのツールバーの場所を移動したりするやつです。
313デフォルトの名無しさん:05/03/17 23:40:55
.NET Frameworkのライブラリにはない。.NET 2.0で追加される。
それまではサードパーティのを。どぼんとかに紹介もされてたはず。
314デフォルトの名無しさん:05/03/17 23:48:00
>>313
そうだったんですか。今年後半まで我慢ですね。
Twintailというソフト確認したら、それも外部のものを使ってました。
探してみます。ありがとうございました。
315デフォルトの名無しさん:05/03/18 00:15:56
フォームの左上に表示されるアイコンを条件によって
切り替えたいのですが、どうすればできますか?
316デフォルトの名無しさん:05/03/18 00:17:08
Iconプロパティを操作する
317デフォルトの名無しさん:05/03/18 00:25:59
>>316
それはそうなのですが、デザイナでIconプロパティを設定すると
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
みたいなコードが生成されますよね。この右辺部分を動的に変える
方法がよく分からないのです。リソースファイルみたいなものを
使うのでしょうか。
318デフォルトの名無しさん:05/03/18 00:42:11
>>317
ま、普通はリソースを埋め込むね。
ttp://dobon.net/vb/dotnet/programing/
319デフォルトの名無しさん:05/03/18 01:02:43
>>318
サンクス
320302:05/03/18 04:24:31
>>303
頼むって・・・そんな・・・。
最凶VB厨房先生に頼まないとダメなのかしらねん。
まあ、いいや、ほどほどにあげとこ。

VB.NET初心者の館(初心者専用ですな)
http://vbnet-iku2.hp.infoseek.co.jp/

PAPA'n VB (API 系のサンプルが結構ある)
http://www.mitene.or.jp/~sugisita/index.html

じゃんぬねっと(VB.NET だけでなく、C#, J# も、なんと VB6 も)
http://jeanne.wankuma.com/

VB レスキュー花ちゃん(.NET 専用のコーナーがある)
http://www.bcap.co.jp/hanafusa/dotnet/index.html

掲示板も紹介しようかと思ったけど、ここの人がいなくなるからやめた(w
321302:05/03/18 04:26:35
あ、一応全部リンクフリーみたい。
てんぷらに合わせて書くとこんな感じ?

VB.NET初心者の館
http://vbnet-iku2.hp.infoseek.co.jp/
PAPA'n VB
http://www.mitene.or.jp/~sugisita/index.html
じゃんぬねっと
http://jeanne.wankuma.com/
VB レスキュー花ちゃん
http://www.bcap.co.jp/hanafusa/dotnet/index.html
322デフォルトの名無しさん:05/03/18 09:36:17
MDBファイルにアクセスするプログラムを組んでいるのですが
「この接続に関連付けられている DataReader が既に開いています。この DataReader を最初に閉じる必要があります。」
というエラーメッセージが出ます。
Oracleへアクセスするプログラムの時は問題なかったのですが
MDBファイルへアクセスするときはDataReaderが一つしか開けない
ということでしょうか?
これを簡単に回避する方法はないでしょうか?
323デフォルトの名無しさん:05/03/18 09:42:56
開いた接続はさっさとClose。
324デフォルトの名無しさん:05/03/18 09:45:40
>>323
ネストしたい場合はどうしますか?
325デフォルトの名無しさん:05/03/18 10:05:19
新たにコネクションを張る、Readerから取得したデータを変数に格納する、DataAdapterとDataSetを使った手法に変える。
326デフォルトの名無しさん:05/03/18 10:10:16
>>325
さんくす。うーん。どれにしようかな。
DataSetにするかなー
327デフォルトの名無しさん:05/03/18 11:24:45
>>320-321
Good Job!
328デフォルトの名無しさん:05/03/18 16:09:36
>321
3つとも知ってましたがなにか?
329328:05/03/18 16:09:57
間違えた、4つともだった。OTZ
330デフォルトの名無しさん:05/03/18 23:35:01
InstallShieldのスレってある?
331デフォルトの名無しさん:05/03/19 10:14:51
以前はあったんだけどな。

インストーラー相談室
http://pc5.2ch.net/test/read.cgi/tech/997727326/

過疎ってるけどageで質問すれば誰か来るでしょ。
332デフォルトの名無しさん:05/03/20 01:05:38
Dim a As String = "4+2*15/3"
と 4+2*15/3 をStringで宣言し
これを計算させて14という答えを導いて
それを他の変数に代入するには
どうしたらいいのでしょうか?
333最凶VB厨房:05/03/20 02:12:03
参照の追加
Microsoft.JScript
Microsoft.Vsa
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Imports System
Imports Microsoft.JScript.Vsa
Imports Microsoft.JScript
Public Class calc
  Public Shared Sub Main()
    Dim exp As String = "4+2*15/3"
    Dim ve As VsaEngine = VsaEngine.CreateEngine()
    Dim result As Double = CDbl(Eval.JScriptEvaluate(exp, ve))
    '結果を表示
    Console.WriteLine(result)
    Console.ReadLine()
  End Sub
End Class

実行時の動的な式の評価 - Insider.NET
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=18271&forum=7
どぼん!のプログラミング道のメルマガ
http://dobon.net/vb/melma/dotnet34.txt
334デフォルトの名無しさん:05/03/20 14:32:30
>>333
遅くなってすいません。
ありがとうございました。
335デフォルトの名無しさん:05/03/20 14:57:20
For文で繰り返し処理しているときでもユーザーの入力を
受け付けるようウェイトをかけたいんですが?
336デフォルトの名無しさん:05/03/20 15:00:32
そう言う処理は別スレッドでやって下さい。
337デフォルトの名無しさん:05/03/20 15:23:34
そして別スレッドのコントロールを触ってあぼーん
338デフォルトの名無しさん:05/03/20 16:37:32
え、waitとかsleepとかないんですか
339デフォルトの名無しさん:05/03/20 16:38:05
基本だな。
340デフォルトの名無しさん:05/03/20 16:41:32
>>338
あるけどね。お薦めしない。
UIスレッドはユーザとの対話だけやって、重い処理は別スレッドでやるべき。
VB6までの常識は捨て去れ。
.NETでマルチスレッディングは簡単になったし。
コントロールを別スレッドから扱うのは工夫が必要だが。
341デフォルトの名無しさん:05/03/20 16:47:13
>あるけどね。お薦めしない。
一応教えてください。
342デフォルトの名無しさん:05/03/20 17:36:07
>>340
>>コントロールを別スレッドから扱うのは工夫が必要だが。
コントロールを貼り付けたりする方法を教えてけれ。
343デフォルトの名無しさん:05/03/20 17:45:10
>>342
端的に言えばFormのInvoke/BeginInvokeメソッドを使え、と言う事。
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=7&topic=18718

その辺をキーワードにぐぐればいろいろ情報も出てくるだろう。
344341:05/03/20 17:51:08
342とは別人なんですが

>あるけどね。お薦めしない。
一応教えてください。
345デフォルトの名無しさん:05/03/20 19:38:13
なんだ、バカばかりだな。
346デフォルトの名無しさん:05/03/20 19:47:09
そうだな。
347デフォルトの名無しさん:05/03/20 19:50:15
バカで悪いか?
348デフォルトの名無しさん:05/03/20 21:08:59
>>347
悪いのでは?
349デフォルトの名無しさん:05/03/20 21:51:06
質問です。VBには先人の開発したモジュール郡を無料で配布管理してる
サイトが存在しますか?
perlではCPANというボランティア団体が大量のモジュールを提供していました。
(ALL英語なので敷居が高く挫折気味ですが..)
MSDNを彷徨って探してみてのですが、膨大なコンテンツ群に圧倒され
お目当ての物はみつけられませんでした。
350デフォルトの名無しさん:05/03/20 21:53:46
GotDotNetとかthe Code Projectとか。
ん? .NETの話だよな?
351デフォルトの名無しさん:05/03/20 22:18:06
ええと...単体で買うとNETでは無くなるのかな?
新しいの買ってこようと考えていますが...
the Code Projectは英語表記ですね><
GotDotNetはあまり20-30くらいしかモジュールないのかな...

...英語面倒だとか贅沢いうな ハゲとか言わないでください..><
簡易にオブジェクト組めるVBに興味が湧き出しているのですが
できれば、モジュールを組み立ててコーディングしたいのですので
352デフォルトの名無しさん:05/03/20 23:06:31
.NET Frameworks自体が、でかいモジュールの集まりだと言えなくも
ない罠。
353デフォルトの名無しさん:05/03/21 02:11:58
.NETでは6.0で書かれたVBソースって見れないんでしょうか?

今日電気店にて聞いたところ
「6.0で書かれたソースを.NETで開くと
.NETの形式に変換されて表示されちゃう。」
と言われました。

当方ソースを閲覧できさえすればよいのですが
エディタを使うしかないのでしょうか?
.NETを使用して見れるとよいのですが…。
6.0は販売してないし…。
354デフォルトの名無しさん:05/03/21 02:18:20
閲覧だけならテキストエディタで良いじゃんと思うんだが。
VSは一々重いし。
VBの色つけならそれなりのエディタが対応してるんじゃない?
355デフォルトの名無しさん:2005/03/21(月) 06:52:08
>>354
それなりとは?
356デフォルトの名無しさん:2005/03/21(月) 08:18:33
>>354
重いってどこが?
357デフォルトの名無しさん:2005/03/21(月) 08:51:59
おまいら>>353の電気店ってほうが突っ込むべきところだと思うが。
358デフォルトの名無しさん:2005/03/21(月) 11:00:25
>>357
思いません。
359デフォルトの名無しさん:2005/03/21(月) 14:47:34
すいません、質問させてください。
IEのフォームにVB.NETで文字を自動入力させることは可能でしょうか?
注文ページに住所氏名電話番号など、自動入力できる常駐ソフトなど、
よろしければ教えてください。
360デフォルトの名無しさん:2005/03/21(月) 18:24:38
'Yahooにログイン.vbs

'-------------------
Set ie = CreateObject("InternetExplorer.Application")
ie.visible = True
ie.navigate "http://www.yahoo.co.jp/r/l1"
Do
   WScript.Sleep 100
Loop While ie.Busy
With ie.document.forms(0)
   .item("login").value = "なまえ"
   .item("passwd").value = "ぱすわーど"
   .submit
End With
361デフォルトの名無しさん:2005/03/21(月) 19:13:14
AddHandlerで、イベントをデリゲートした場合、
明示的に、RemoveHandlerを呼び出さないと、ガベージコレクトされませんか?
362デフォルトの名無しさん:2005/03/21(月) 19:26:52
361ですが、
イベントハンドラ(イベントを関連付けたメソッド)
を持つクラスのインスタンスをNothingしても、RemoveHandlerを呼び出していなかった場合、
ガベージコレクトされずに、メモリに残ることはないのだろうかということです。
363デフォルトの名無しさん:2005/03/21(月) 19:34:14
ないよ。普通にGCされる。
364デフォルトの名無しさん:2005/03/21(月) 19:44:02
>>362
VB.NETではリソースの解放は一切必要ないよ。
ベストは1秒間隔くらいで動くタイマ仕掛けておいて、
その中でSystem.gc.Collect()しとけば絶対リークなしだよ。
365デフォルトの名無しさん:2005/03/21(月) 19:47:21
ReDimも解放されますか?
366デフォルトの名無しさん:2005/03/21(月) 19:47:43
無茶言うな。
367デフォルトの名無しさん:2005/03/21(月) 19:48:45
>>365
されるよ。GCは最強。
368デフォルトの名無しさん:2005/03/21(月) 19:57:32
そうですか。レスありがとう
一応、REmoveやっとけばいい話だけども。
ヘルプによると、
Event ステートメントで型が定義されて、
AddHandlerで、その型にインスタンスされるそうです。(デリゲートが?)
>>364
そりゃないよ。
369デフォルトの名無しさん:2005/03/21(月) 20:34:25
一応技術的な解説をしとこう。

イベントは、対応する引数・返値を持ったデリゲートの一種のプロパティだ。
デリゲートというのは、メソッドへの参照リストを保持する特殊なクラス。
Event Hogeを宣言すると、VB.NETコンパイラは以下の操作を行う。

・MulticastDelegateを継承するHogeEventHandlerクラスを作成する
・HogeEventHandler型のフィールドHogeを追加する
・メソッドadd_Hogeとメソッドremove_Hogeを追加する

イベントの実体は結局の所デリゲートの派生クラスであるHogeEventHandler型のフィールドHogeである。

AddHandlerステートメントは、まずメソッドの参照をラップするHogeEventHandlerインスタンスを作成する。
その後add_Hogeを呼び出して、フィールドHogeと作成したインスタンスを合成し、新しくHogeとする。
これでHogeにはメソッドの参照であるHogeEventHadlerインスタンスのリストがあることになる。
//このリストは飽くまでインスタンスの参照のリストである、という点を忘れてはいけない。クラスインスタンスは全て参照でやりとりを行う。

RaiseEventステートメントを使うと、このメソッドリストを最初から順に実行していくわけだ。

さて、Hogeが持ってるのはHogeEventHandlerインスタンスのリストである。
それぞれのHogeEventHandlerインスタンスはこのHogeからしか参照されていないわけで、
Hogeが他から参照されなくなると、自動的に各HogeEventHandlerインスタンスも他からの参照はなくなる。つまりGCの対象となる。
ではHogeの参照を持っているのは、というと(SharedのEventでない限りでない限り)、
Eventを持ってるクラスのインスタンスが
・明示的にHogeにNothingを代入する(ただしVB.NETでは不可能)
・クラスのインスタンス自身が他から参照されなくなった
といった状況だ。
つまり、クラスのインスタンスがGCされる状況では必ずHogeとHogeが持っているHogeEventHandlerインスタンス達もGCの対象になっているというわけだ。

あと、RemoveHandlerすればHogeからHogeEventHandlerインスタンス(の参照)が一つはずれる。
はずされたHogeEventHandlerは当然他からの参照されていないためGCの対象になる。
370デフォルトの名無しさん:2005/03/21(月) 21:13:16
>>368
>そりゃないよ。
理由言ってみ。
371368:2005/03/21(月) 21:13:47
>>369
ダラダラ分かりにくい解説ありがとう
372デフォルトの名無しさん:2005/03/21(月) 21:33:35
>>371
俺は369じゃないが君人間として終わっとるな。
373デフォルトの名無しさん:2005/03/21(月) 22:17:23
>>372
理由言ってみ
374デフォルトの名無しさん:2005/03/21(月) 22:34:07
言われないと分からないようなやつがいるこんな世の中じゃ(ry
375デフォルトの名無しさん:2005/03/21(月) 22:35:28
Python
376デフォルトの名無しさん:2005/03/21(月) 22:37:24
うまいな。(w
377デフォルトの名無しさん:2005/03/21(月) 22:48:36
>>374
つまり説明はできないということだね。
378デフォルトの名無しさん:2005/03/21(月) 22:49:01
>>374-376
自演乙
379デフォルトの名無しさん:2005/03/21(月) 22:54:45
分かりやすい自演をするのが最近の2ちゃんのトレンドだと思うが。
380デフォルトの名無しさん:2005/03/22(火) 17:07:50
ListViewのアイテムをカラムの値を使ってソートしたいのですがやり方がサッパリわかりません。
教えていただけないでしょうか?
381デフォルトの名無しさん:2005/03/22(火) 17:13:16
>>380
どぼん
382デフォルトの名無しさん:2005/03/23(水) 01:01:41
ブラウザコントロール(?)を利用してデータをPOSTで送信しているのですが、
特定のコード(Chr(81)〜Chr(9F))が00に化けてしまいます。

コードはこのような感じです。

Dim sendPOST As Object
Dim i As Integer

sendPOST = "test="

For i = 0 To 255
sendPOST += Chr(i)
Next i

sendPOST = Encoding.GetEncoding("Shift-JIS").GetBytes(sendPOST)

AxWebBrowser1.Navigate2("http://xxxxxxxxxxx/test.php", "", "", sendPOST, "")

化けない方法はありますか?
383382:2005/03/23(水) 01:03:51
>特定のコード(Chr(129)〜Chr(159))が00に化けてしまいます。
384sage:2005/03/23(水) 01:48:09
算術演算子はオーバーロードできないのですか?
385デフォルトの名無しさん:2005/03/23(水) 03:26:18
>>382
アスキー未定義コードだし、相手がLinux鯖じゃないのかな?
386デフォルトの名無しさん:2005/03/23(水) 05:12:48
>>384
できない。
VB2005では、できるようになるらしい。
387デフォルトの名無しさん:2005/03/23(水) 11:53:42
最初の画面のコンボボックスで、”AAA”という値を選択したとして
次の画面のコンボボックスで、”AAA”という同じ値が存在したら
選択状態にしたいのですが、どーすればいいのでしょうか?
388368:2005/03/23(水) 12:08:50
371は俺じゃないぞ。
389デフォルトの名無しさん:2005/03/23(水) 13:29:56
>>387
そう言う風に書け、としか言いようがないな。
390デフォルトの名無しさん:2005/03/23(水) 14:01:51
>>389
すみません、具体的なコマンドが知りたいのですが。。。
391デフォルトの名無しさん:2005/03/23(水) 14:27:55
グローバルで値を渡してselectedItemに投げろ。
392デフォルトの名無しさん:2005/03/23(水) 14:40:59
サンクス子!
393デフォルトの名無しさん:2005/03/24(木) 08:27:18
VB.NETからボタンなどのコントロールの配列ができなくなって
結構めんどくさいのですが、
ボタンがcmdBtn00からcmdBtn99まであって、
String="33"の場合、cmdBtn33のボタンオブジェクトが欲しいのですが、
どうすれば可能でしょうか?
Select Caseでだらだらと書くのでなく、
2,3行以内で書きたいのですが。
394デフォルトの名無しさん:2005/03/24(木) 08:28:03
VB.NETでアプリケーションを作りました。
配布のためにインストーラを作成したいのですが
定番はどのような方法でしょうか?
395デフォルトの名無しさん:2005/03/24(木) 08:44:44
>>393
コントロールの配列はできますよ
396デフォルトの名無しさん:2005/03/24(木) 08:47:18
397デフォルトの名無しさん:2005/03/24(木) 08:50:04
>>393
6.0の頃みたいに添字で配列化はできないけれど、普通に1次元配列
を宣言して、そこにオブジェクトを代入すればそれっぽく使える。
398デフォルトの名無しさん:2005/03/24(木) 09:04:22
配列いらないよ。
Formにボタンおいてるなら、そのフォームのControlsコレクションに入ってるから、
TypeOfで、取り出せる。
399デフォルトの名無しさん:2005/03/24(木) 10:40:07
ShowDialogで表示したページに
明示的にDislogResultを設定すると
勝手にページが閉じるんだが
これは仕様?
400デフォルトの名無しさん:2005/03/24(木) 10:50:52
仕様。
401デフォルトの名無しさん:2005/03/24(木) 11:41:14
>>400
トンクス
402デフォルトの名無しさん:2005/03/24(木) 12:30:08
>>393です。
みなさんありがとうございます。
結果、下記のようになりました。
Private Function GetButton(ByVal a_str As String) As Button
Dim objControl As Control
Dim btn As Button
Dim strWork As String
For Each objControl In Me.Controls
If objControl.GetType Is GetType(Button) Then
btn = CType(objControl, Button)
strWork = btn.Name
If strWork = a_str Then
GetButton = objControl
Exit For
End If
End If
Next
End Function
403デフォルトの名無しさん:2005/03/24(木) 16:59:07
俺のやり方が正しいかわかんないけど、
ボタンコントロールがたくさんあるなら、デザイナからも設定できるけど、プロパティにTagってのがあるでしょ。
そこに、1とか、2とか番号振っといて、
For Each C as Control In Me.Controls
   If TypeOf C Is Button Then
      If C.Tag.ToString = "1" Then
        Btn=DirectCast(C,Button)
      End If
   End If
Next
試してはいないです。
404デフォルトの名無しさん:2005/03/24(木) 18:25:27
>>403
あーTagですか。
他社製品のコンポーネントでtagを使用してたのに
Windows標準のコンポーネントでのTagの存在、
全く気づきませんでした。
軽く見ると、もしかしてコントロールには
すべてTagがついてそうで、
そのやり方の方が短くていいかも。
やってみたら、5行も短くなりました。
さんくす。
Private Function GetButton(ByVal a_str As String) As Button
Dim objControl As Control
Dim btn As Button
For Each objControl In Me.Controls
If objControl.Tag = a_str Then
GetButton = objControl
Exit For
End If
Next
End Function
405デフォルトの名無しさん:2005/03/24(木) 19:11:53
ここはバカが結構いるインターネッツですよね?
406デフォルトの名無しさん:2005/03/24(木) 19:12:29
そんなに自分を責めるなよ。
407デフォルトの名無しさん:2005/03/24(木) 21:00:36
いや、実際バカばかりだよな。
全員がそうではないけど。
408デフォルトの名無しさん:2005/03/24(木) 21:43:22
obj=controls.contains(Button1)とか。
409デフォルトの名無しさん:2005/03/24(木) 21:44:08
これじゃ意味内科。
410デフォルトの名無しさん:2005/03/25(金) 16:17:50
質問です。
Windowsアプリケーションなのですが、
ShowDialogで表示したページを閉じて親ページにもどる時に親ページをリフレッシュ
する一般的な方法ってありますか?
Webアプリケーションの時はフレームを使ってJavaScriptを埋め込みました。
411デフォルトの名無しさん:2005/03/25(金) 16:19:36
>>410のつづき
しかし、Windowsアプリケーションでは方法が見つかりません。
回答よろしくお願いします。
412デフォルトの名無しさん:2005/03/25(金) 16:21:09
リフレッシュの意味がわからん。
413デフォルトの名無しさん:2005/03/25(金) 16:24:44
>>410
FormLoadを明示的に呼ぶ
414デフォルトの名無しさん:2005/03/25(金) 16:26:53
>>412
すいません。分かりにくかったですね。
>>413
やってみます。サンクス子
415デフォルトの名無しさん:2005/03/25(金) 16:42:27
↓もしかしてこれだけとかゆう落ちだったかも・・
Dim f2 As New Form2
f2.ShowDialog()
Me.Form1_Load(sender, e)

Webアプリケーションももっと楽な方法がありそうですね。
416デフォルトの名無しさん:2005/03/25(金) 20:13:07
閉じる時に、クローズドイベントとかあるのでは?
417デフォルトの名無しさん:2005/03/25(金) 23:18:14
VB.NETから簡単に使えるHTMLパーサはないでしょうか。
418デフォルトの名無しさん:2005/03/26(土) 20:42:12
>>413
おバカ!!
イベントの概念勉強してこい。ぼけ。
419デフォルトの名無しさん:2005/03/26(土) 20:50:06
Form1_Loadメソッドを
呼びだすという意味じゃないの?
420デフォルトの名無しさん:2005/03/26(土) 20:54:20
ひとをバカ呼ばわりするなら、解決策も併記してほしいもんだな。
421デフォルトの名無しさん:2005/03/26(土) 22:13:40
>>420
Form1_Load()を呼び出しても何の問題もないよ。
でも>>418さんの説明を待ってみましょうか?w
422デフォルトの名無しさん:2005/03/26(土) 22:15:52
すいません。どなたか>>417のヒントかアイディアだけでも
いいのでお願いします。
423デフォルトの名無しさん:2005/03/26(土) 22:15:53
>>418は説明できなくて逃亡に65535バイト。
424デフォルトの名無しさん:2005/03/26(土) 22:26:17
425デフォルトの名無しさん:2005/03/26(土) 23:25:30
>>423
つまんね
426デフォルトの名無しさん:2005/03/26(土) 23:26:38
>>424
どうもありがとうございました。
427デフォルトの名無しさん:2005/03/27(日) 06:44:06
ListBoxで一つの項目だけフォントを太字にすることはできないのでしょうか?
428デフォルトの名無しさん:2005/03/27(日) 06:55:38
listViewだとできますがいかがでしょう。
429デフォルトの名無しさん:2005/03/27(日) 08:16:40
>>427
できないのでしょうか?はご法度ですが?
430デフォルトの名無しさん:2005/03/27(日) 13:08:12
>>427
オーナードロー
431デフォルトの名無しさん:2005/03/28(月) 00:30:20
コントロールのフォントを太字にしたいとき
Control.FontBold = True [VB]
Control.Font = New Font (Control.Font, FontStyle.Bold) [VB.NET]
同時に斜体や下線も指定するときはVB.NETの方が一括で指定できて便利だが、
現在のフォントを指定することなくもう少し簡略に書く方法はないだろうか。
432デフォルトの名無しさん:2005/03/28(月) 00:38:50
ない。
433デフォルトの名無しさん:2005/03/28(月) 00:42:22
というか、>>431は何が不満でどうしたいのかよくわからない。
旧VBライクに現在のフォントからスタイルだけを変更したいということ?
434デフォルトの名無しさん:2005/03/28(月) 02:18:50
>>433 それしかないだろ
435デフォルトの名無しさん:2005/03/28(月) 07:06:53
>>433
なんでそれが理解できないの?
436デフォルトの名無しさん:2005/03/28(月) 08:18:06
>なんでそれが理解できないの?
>>431の文章が意味不明で一義的に解釈できないから。
だから言わんとしていることを忖度はできるが、理解はできない。
忖度は所詮忖度にすぎない。
そんなこともわからない奴にエンジニアの資格はないと思う。
437デフォルトの名無しさん:2005/03/28(月) 08:58:07
「もう少し簡略に書く方法はないか」と聞かれたら、
単純にその方法があるかないかを答えればすぐに済む話ではないのか?
そもそも>>432で答えが出てるんだから、その後に何が不満で
どうしたいのかなんてわざわざ聞く必要すらないだろう。
438デフォルトの名無しさん:2005/03/28(月) 13:17:12
品名A メーカー1
品名B メーカー1
品名C メーカー2
品名D メーカー2
品名E メーカー3

というデーターを、メーカー名で検索できるような画面を作っているのですが、
単純にメーカー名でSQLで抽出すると

メーカー1
メーカー1
メーカー2
メーカー2
メーカー3

と抽出されてしまいます。

メーカー1
メーカー2
メーカー3

とデーターグリッドに出力したい場合は、何を使えばよいのでしょうか?
439デフォルトの名無しさん:2005/03/28(月) 13:20:52
メーカーが別テーブルになってない?
そんな馬鹿な! 何のための「リレーショナル」データベースだ!
440デフォルトの名無しさん:2005/03/28(月) 13:53:53
distinct
441デフォルトの名無しさん:2005/03/28(月) 15:42:14
>>440
だな。
SQLクエリで処理するのが大吉。
ttp://www.accessclub.jp/sql/18.html
442デフォルトの名無しさん:2005/03/28(月) 16:34:34
VBってもしかして正規表現ない?
443デフォルトの名無しさん:2005/03/28(月) 16:37:19
VBは知らないがVB.NETにはRegexクラスがある。
444デフォルトの名無しさん:2005/03/28(月) 17:39:42
VB6にはないな。
正規表現は遅くなるから、あんまり使わないな。
445デフォルトの名無しさん:2005/03/28(月) 21:12:38
>>436
あれ?君は自分がエンジニアのつもりだったのかな?
エンジニアはこんなところには来ないはずですけど。
私も含め、エンジニアなんてここには来てないと思ってました。
認識を改めるように。
446デフォルトの名無しさん:2005/03/28(月) 21:16:13
>>436
お前普段そんな言葉遣いしてるの?
ムリしなくていいぞ。
447デフォルトの名無しさん:2005/03/28(月) 21:16:49
>>433
分からないのになんで書き込むの?
448デフォルトの名無しさん:2005/03/28(月) 21:19:12
てか、ほっときゃいいじゃねーか
449デフォルトの名無しさん:2005/03/28(月) 21:19:43
>441
意味不明。
450デフォルトの名無しさん:2005/03/28(月) 21:21:02
>>437
>>436みたいな投稿への2ちゃん流の対処は「必死だな」の4文字で
十分だよ。まともに相手する必要なしw
451デフォルトの名無しさん:2005/03/28(月) 21:28:00
図に乗るからな。
452デフォルトの名無しさん:2005/03/28(月) 22:04:08
何を騒いでるかと思えば荒らし(>>436)を放置できない奴らの集まりか。
あ、俺もか。
453デフォルトの名無しさん:2005/03/29(火) 06:26:50
ランタイム不要なアプリを作るにはどうしたらいい?
454デフォルトの名無しさん:2005/03/29(火) 07:13:07
>>453
ランタイムを使わない。
455デフォルトの名無しさん:2005/03/29(火) 13:30:07
前から言ってるが、本当にバカばっかりだな。
ばかりというだけで、全員がバカではないのが救いだ。
456デフォルトの名無しさん:2005/03/29(火) 13:32:46
↑バカw
457デフォルトの名無しさん:2005/03/29(火) 18:02:05
あっ、あのぉ・・・
メモリエディタってあるじゃないですかぁ・・
あんな感じのメモリを弄る(?)ツールを作りたいんですけど
どうやったらいいですかねw
プログラミング初心者なので
メモリを取得したり弄ったりできる方法を教えて下さいw
458デフォルトの名無しさん:2005/03/29(火) 18:10:41
ねこまんま作者のサイトとリンクを熟読すればいいと思う。
459デフォルトの名無しさん:2005/03/29(火) 19:00:34
pocket PC 2003用のプログラムで
他のexeを実行するにはどうすればいい?
processが使えなくて困った
460デフォルトの名無しさん:2005/03/29(火) 20:53:13
いまどき実メモリ好き勝手にいじること許すようなOSがあったら見てみたい。
>>457はメモリとファイルの区別がついてないんじゃないか?
バイナリエディタのこと言ってるんでしょ?
こんなレベル人の作ったバイナリエディタなんて怖くて使う気しないけどw
461デフォルトの名無しさん:2005/03/29(火) 20:58:21
釣られないぞ
462デフォルトの名無しさん:2005/03/29(火) 21:07:03
>>459
APIを直接操作するしかないんじゃない?
Pocket PCのAPIに詳しくないからアドバイスはできないが。
Win32APIならKernel32.dllのCreateProcess関数だが。

//.NET 2.0でProcessクラスがCompact Frameworkでもサポートされるようになるようだ。
463デフォルトの名無しさん:2005/03/29(火) 21:15:13
>>458
熟読してみまーす
>>460
そーなんですかぁー、もうちょっと勉強してみまーす

答えてくださった方ありあとうございました。
464デフォルトの名無しさん:2005/03/30(水) 09:13:18
VB.NETとC#.NETで書いたプログラムに処理速度の違いはあるんでしょうか。
C言語の方が高速だと言いますが、.NETで書いたプログラムはビルドすると
MSILという中間コードになるので基本的にはどちらも同じですよね。
ただ“VB.NET製のプログラムにはMicrosoft.VisualBasic.dllが必ずImportされて、
はずせない”ようなのでここで若干変わるんでしょう。だとしたら速度は
VB.NET<C#.NET<C++.NETだと思うんですがこれで合ってるでしょうか。
C++.NETはネイティブコードもできるということで一番上です。
465デフォルトの名無しさん:2005/03/30(水) 09:14:59
有意の差はない。
466デフォルトの名無しさん:2005/03/30(水) 20:59:10
.NET Frameworkって何たるかわかってないな。
MSILが何たるかわかってないな。
467デフォルトの名無しさん:2005/03/30(水) 20:59:54
>>456 もバカ。

とイッテミルテスト。
468デフォルトの名無しさん:2005/03/30(水) 21:14:06
>>466
誰に言ってるの?
469最凶VB厨房:2005/03/30(水) 21:16:57
>VB.NET製のプログラムにはMicrosoft.VisualBasic.dllが必ずImportされて、
>はずせない

根拠を教えてください。
470デフォルトの名無しさん:2005/03/30(水) 21:56:41
>>469
そんな厨房みたいな突込みわざわざせんでも。。
471デフォルトの名無しさん:2005/03/30(水) 21:58:56
ちゃんと自称してるじゃないか。
472デフォルトの名無しさん:2005/03/30(水) 22:28:21
>>465
有意の差ってどういう意味?
473デフォルトの名無しさん:2005/03/30(水) 22:28:27
>>464
>VB.NETとC#.NETで書いたプログラムに処理速度の違いはあるんでしょうか。
C#の方が、効率のいいCILを出力するみたいだね。
速度はわずかに違うと思う。

>VB.NET製のプログラムにはMicrosoft.VisualBasic.dllが必ずImportされて
はずすことは出来るみたい。
ttp://homepage3.nifty.com/salv/vb/01/vb01_01.html
474デフォルトの名無しさん:2005/03/30(水) 22:30:49
Microsoft Text Driverを使ってCSVファイルのデータを
DataTableに入れたいのですが、CSVファイルの文字コードが
Shift-JIS以外では文字化けして正しく取得できませんでした。
(試したのはUTF-8とEUC-JP)
Shift-JIS以外のCSVファイルをMicrosoft Text Driverで
読み込むのは無理でしょうか。

objConn = New OdbcConnection
objAdapter = New OdbcDataAdapter
dtCsvData = New DataTable
objConn.ConnectionString = "Driver={Microsoft Text driver (*.txt; *.csv)};DBQ=" & Directory.GetCurrentDirectory() & "\.."
objAdapter.SelectCommand = New OdbcCommand("SELECT * FROM UTF8.csv", objConn)
objConn.Open()
objAdapter.Fill(dtCsvData)
475デフォルトの名無しさん:2005/03/30(水) 23:01:14
>>470
しょうがないよ春休み終わるまで忍々
476デフォルトの名無しさん:2005/03/30(水) 23:51:04
Hi japanese -)
im jon from new york
477デフォルトの名無しさん:2005/03/31(木) 01:12:54
>>472
実感できるほど変わらないってことじゃねーの?
478デフォルトの名無しさん:2005/03/31(木) 02:43:41
2005っていつ発売なのですか?
479デフォルトの名無しさん:2005/03/31(木) 05:06:41
>>470
厨房みたいな突込みなのか?
480デフォルトの名無しさん:2005/03/31(木) 09:08:57
どなたか>>474をお願いします。
481デフォルトの名無しさん:2005/03/31(木) 10:35:27
>>424
うぅぅ、せっかく教えて頂いたのですが、使い方が全然分かりません・・・
分かりやすく解説してあるサイトや書籍などはないでしょうか。
MSDNに日本語のリファレンスとかないんですね・・・
482デフォルトの名無しさん:2005/03/31(木) 10:56:05
やはり、バカばかりだ。
最低限の検証くらいしろよ。
せめてILレベルくらいの検証はしろ。ぼけ。
483デフォルトの名無しさん:2005/03/31(木) 10:58:41
>>482
わたしのことですか?
484デフォルトの名無しさん:2005/03/31(木) 10:59:50
>>482
君はそんなに優秀なのかな?このスレに誰からも
回答がつかなかった質問もたくさんあるようだけど、
どうして答えてあげないの?
485482:2005/03/31(木) 11:03:55
うるせーな、ぼけ。わかんねーんだよ、バカ。
486デフォルトの名無しさん:2005/03/31(木) 11:06:21
>>481
リファレンスぐらい英語で困る事なんかないと思うんだが……。
必要なのは型/メソッド/プロパティ名と仮引数と返値の型くらいじゃん。
統合開発環境使ってればカバーしてくれるし。
それともDOMを今までいじった事がないのか?
487デフォルトの名無しさん:2005/03/31(木) 11:13:27
>>486
英語のリファレンスとは
ttp://msdn.microsoft.com/library/default.asp?url=/workshop/browser/mshtml/reference/reference.asp
のことでしょうか。

とりあえずファイルから読み込みたいのですが、IPersistFilePtrが
見当たらなくて困っています・・・
488デフォルトの名無しさん:2005/03/31(木) 11:18:20
すいません。>>474はムリでしょうか。
489デフォルトの名無しさん:2005/03/31(木) 13:02:49
自分が出来るからってきどってんじゃーねよタコ
490デフォルトの名無しさん:2005/03/31(木) 14:24:37
>>487
IHTMLDocument2にキャストして、StreamReaderとかでファイルから読み込んだ文字列をwriteしてやればいいようだな。
IPersistFileは自分で定義しても何故かどうもうまくいかない。createDocumentFromUrlも。
491デフォルトの名無しさん:2005/03/31(木) 15:45:56
コマンドラインパラメータを取得するにはどうしたらよいでしょうか?
492デフォルトの名無しさん:2005/03/31(木) 15:52:52
Mainメソッドの引数に与えられるが、Mainメソッドは普段隠蔽されてるんだよな。
System.Environment.GetCommandLineArgsメソッド。
493デフォルトの名無しさん:2005/03/31(木) 15:57:47
vbのプログラム上からアクロバットリーダーを呼び出したいのですが
立ち上がるアクロバットリーダーが常に一つしか立ち上がりません。
ファイル名が異なれば新しくアクロバットリーダーを立ち上げたいのですが
どうしたらいいんでしょうか?
以下はアクロバットリーダーを立ち上げている部分のソースです

Dim myProcess As Process
Dim startInfo As ProcessStartInfo
startInfo = New ProcessStartInfo(Path)
myProcess = Process.Start(startInfo)
494デフォルトの名無しさん:2005/03/31(木) 16:03:35
>>482
お前、いったい誰に言ってんの?
495デフォルトの名無しさん:2005/03/31(木) 16:05:48
>>494
反応するような、藻前みたいなヤツに言ってるんだろう (プ
496デフォルトの名無しさん:2005/03/31(木) 16:06:38
>>492
さんきゅう!
497デフォルトの名無しさん:2005/03/31(木) 16:14:49
>>490
>IHTMLDocument2にキャストして、StreamReaderとかでファイルから読み込んだ文字列をwriteしてやればいいようだな。
申し訳ないのですが、サンプルソースを載せていただけないでしょうか。
498デフォルトの名無しさん:2005/03/31(木) 16:22:04
>>495
オレのレスがおかしかったのか、気になったんでな。
499デフォルトの名無しさん:2005/03/31(木) 16:23:07
>>497
えー。それくらい書こうよー。

Dim doc As New mshtml.HTMLDocument()
Dim sr As New StreamReader("c:\hoge.html", System.Text.Encoding.GetEncoding("Shift_jis"))
Dim doc2 As mshtml.IHTMLDocument2 = doc
doc2.write(sr.ReadToEnd())
doc2.close()
sr.Close()
Dim elem As mshtml.IHTMLElement
For Each elem In doc.all
    Debug.WriteLine(elem.tagName)
Next
500デフォルトの名無しさん:2005/03/31(木) 16:36:24
>>493
どういう状況になってるのかは書いてないから分からないけど、
アクロバットリーダーの制限じゃないの?

私のとこのアクロバットリーダー7.0だと、初めにプロセスが一つ立ち上がって、
その後Prcess.StartするたびにMDI子ウィンドウが増えるようになるが。
501デフォルトの名無しさん:2005/03/31(木) 17:05:17
>>500
ありがとうございます。
>Prcess.StartするたびにMDI子ウィンドウが増えるようになるが。
のレスで自分の間違いに気づきました。
アクロバットを立ち上げるメソッド内でProcessを宣言して
正常に起動したらProcessはcloseしていました。
フォームが立ち上がってる間はProcessはcloseせずに
ずっと開きっぱなしにしておかないと駄目だったんですね。
お手数おかけしました。
502デフォルトの名無しさん:2005/03/31(木) 17:21:20
ShowDialogで生成されたインスタンスって
ほおって置けば勝手にガベージされるの?
それともDisposeしないと永久に残る?
503デフォルトの名無しさん:2005/03/31(木) 17:30:05
>>499

んー、ヘタなソースですが参考にさせて頂きます。
504デフォルトの名無しさん:2005/03/31(木) 17:52:44 BE:157221599-
タダで他人にコード書かせておいて「下手なソース」とかよく言えるよな。
505デフォルトの名無しさん:2005/03/31(木) 17:53:24
>>502
DisposeはGCとは関係ないぞ。

参照が無くなったらGCの対象になる。
506デフォルトの名無しさん:2005/03/31(木) 18:07:18
>>505
トンクス

どうやら勘違いしてたようです
ボタンクリック等のプライベート関数で
FormをShowDialogすると
アプリケーション終了の段階でようやくForm.Disposeが走ってたので
CGがDisposeを実行してるのかと

もうちょっと調べてみますです


507デフォルトの名無しさん:2005/03/31(木) 18:25:02
今すごいことに気づきました。
今まで自分で作ったソースを見ると、
イベントハンドラの第一引数senderの型が
ObjectだったりSystem.Objectだったりしてます。
フォームのロードでもクロージングでもクローズドでも
ボタンのクリックでもメニューのクリックでもです。
これってなんででしょうか?
みなさんのソースはどうですか?
508デフォルトの名無しさん:2005/03/31(木) 18:26:23
どこがすごいんだ?
509デフォルトの名無しさん:2005/03/31(木) 18:29:00
senderはイベントを起こしたオブジェクトが入る。
Button1_ClickならButton1が入ってるし、Form1_LoadならForm1が入ってる。
そのためどんな型でも入るようにObject型で宣言する。

それだけの話。
510デフォルトの名無しさん:2005/03/31(木) 19:05:35
> ObjectだったりSystem.Objectだったりしてます。

これも突っ込むところなのだろうか・・・?
511デフォルトの名無しさん:2005/03/31(木) 19:20:05
>>504

んーと、タダからヘタでも許してあげる、ってとこですかね。
512デフォルトの名無しさん:2005/03/31(木) 19:33:33
>>507
> ObjectだったりSystem.Objectだったりしてます。
同じじゃねーか
513デフォルトの名無しさん:2005/03/31(木) 20:21:56
>>512
その違いも分かってないのか・・・いたたたたた・・・
514デフォルトの名無しさん:2005/03/31(木) 21:04:25
どなたか>>474をお願いします・・・
515デフォルトの名無しさん:2005/03/31(木) 21:20:18
CE用のプログラムで
ポケットPCのシステム日付時刻を変更する方法はありませんか?
516デフォルトの名無しさん:2005/03/31(木) 21:26:52
>>515
DateAndTimeモジュールのTodayプロパティ・TimeOfDayプロパティはサポートされてない?
517デフォルトの名無しさん:2005/03/31(木) 21:38:16
>>516
ヘルプ
518デフォルトの名無しさん:2005/03/31(木) 21:42:03
断末魔?
519デフォルトの名無しさん:2005/03/31(木) 21:48:24
>>518
そう。消えろ。
520デフォルトの名無しさん:2005/03/31(木) 22:00:56 BE:28350533-###
VC++に比べてなんでこんなにVBは簡単なのでしょうか?
521デフォルトの名無しさん:2005/03/31(木) 22:06:42
DateAndTime.TodayにDateを入れて変更しようとすると
noSupportedExceptionのエラーが出てしまいます…
522デフォルトの名無しさん:2005/03/31(木) 22:17:37
>>502
ShowDialogのときは、不要になったときに
Disposeしておいた方がいい。

ほうっておいてもアプリケーション
終了時に破棄されるとは思うけど。
523デフォルトの名無しさん:2005/03/31(木) 22:21:50
>>521
となるとこいつかな。
ttp://bbs.wince.ne.jp/ch1/mqbbs.cgi?MODE=MSG&NUM=10992&FILE=bbs.log.108
VBのソースなので注意。
524デフォルトの名無しさん:2005/03/31(木) 22:55:26
VBのやり方だと出来ないっぽいです…
Microsoft.VisualBasic.DateAndTime.Todayを使おうとすると
notFupportedExceptionが発生してしまっています
525デフォルトの名無しさん:2005/03/31(木) 23:02:15
> VBのやり方だと出来ないっぽいです…

てのはどういう意味かな?
523の話?
526デフォルトの名無しさん:2005/03/31(木) 23:03:52
どなたか>>474をお願いします。
527デフォルトの名無しさん:2005/03/31(木) 23:10:54
>>525
ごめんなさい
523のことです

compactだと時刻設定は出来ないんですかねえ…
528デフォルトの名無しさん:2005/03/31(木) 23:14:25
>>527
どうできないのかを聞くまでは。
何かの例外が投げられるのか?
(リンク先で言う)SetTime関数がFalseを返すのか?
文字変換部分はうまくできているのか?
529デフォルトの名無しさん:2005/03/31(木) 23:27:03
SmtpMail使ってtext/plainなメールを送信したら本文の最後に必ず改行が足されるんですけど、
これって仕様?
530デフォルトの名無しさん:皇紀2665/04/01(金) 08:59:13
>>513
ObjectとSystem.Objectの違いを教えて下さい。
旧型Objectと新型Object(.NET)
ってことだけで、同じですよね?
531デフォルトの名無しさん:皇紀2665/04/01(金) 09:31:42
>>530
>>513ではないが
ObjectはSystem.Objectのエイリアスだよ。
要するに、同じものです。
532デフォルトの名無しさん:皇紀2665/04/01(金) 10:01:44
名前空間を理解してないんじゃない?
533デフォルトの名無しさん:皇紀2665/04/01(金) 10:14:47
>>531
さんくす。

でもなんで、同じForm_Loadで
senderがObjectだったり、System.Objectだったりするのだろう?
エイリアス使ったりそうでなかったりなのでしょう?
どうして使う名前が統一してないのでしょう?
534デフォルトの名無しさん:皇紀2665/04/01(金) 10:43:07
>>533
残念ながら、私はVB.NETを
使ったことがないんでよくわからないです。

>>532
名前空間は関係ないよ。
535デフォルトの名無しさん:皇紀2665/04/01(金) 11:00:17
>>534
.NET使ったことなくてよくわかんねーならだまってろ。

名前空間そのものの話だろうがよ。
536デフォルトの名無しさん:皇紀2665/04/01(金) 11:21:49
.NET使ったことがないとは言ってないが・・・

>名前空間そのものの話だろうがよ。
IntegerとSystem.Int32のような関係といったらわかる?
537デフォルトの名無しさん:皇紀2665/04/01(金) 11:57:59
>>533ですが、なんか文がおかしいので訂正します。

×どうして使う名前が統一してないのでしょう?
○どうして使う名前が統一されてないのでしょう?
○どうして(MSは)使う名前を統一してないのでしょう?

選択すると自動で作成されるイベントハンドラで、
Form_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
だったり、なんかソースが統一されてなくていやです。
538デフォルトの名無しさん:皇紀2665/04/01(金) 12:30:19
なんか厨房ネタが続いているなあ。。
>>536
Objectがエイリアスだと思ってるのか。。
それこそ違うよ。
539デフォルトの名無しさん:皇紀2665/04/01(金) 12:31:53
>>538
じゃあ、Systemをインポートしなくても大丈夫なのは何で?
540デフォルトの名無しさん:皇紀2665/04/01(金) 12:41:08
>>539
ネタだと思うけど一応回答ね。
プロジェクトのプロパティを見るべし。
541デフォルトの名無しさん:皇紀2665/04/01(金) 12:43:42
>>540
はっはっは、vbc.exeでメモ帳に書いたソースをコンパイルした事もないのかい?
542デフォルトの名無しさん:皇紀2665/04/01(金) 12:45:00
うろ覚えだが、プロパティのインポートってとこ?
Systemを削除してもコンパイル通るけど。
543デフォルトの名無しさん:皇紀2665/04/01(金) 13:38:06
さちこさん。お茶
544デフォルトの名無しさん:皇紀2665/04/01(金) 15:00:00
マルチスレッドについて質問です

http://dobon.net/vb/dotnet/programing/abortprocess.html

の後半に、マルチスレッドのサンプルコードがあります。
その中で、ボタンのEnabledを変更するためや、コントロールの値を変更するために
デリゲートを使用しているのですが、これはなぜでしょうか?

調べてみると、どうやら非同期デリゲートというものらしいのですが、
いかんせんスレッドもデリゲートも初心者の旧VBプログラマなので、
なぜこういうコーディングになったのかを理解したいのです。

デリゲートにすると非同期になるんですか?
なぜ非同期でないとまずいのでしょう?
普通にButton1.Enabled = true とするとどうなってしまうの?

どなたかお分かりになる方、ご教示ください
545デフォルトの名無しさん:皇紀2665/04/01(金) 15:17:50
文字列を指定したキーで暗号化してくれる関数を探しています。
もしご存知のかたがいましたら教えてください。
こんな感じで・・・

private function 文字列暗号化(byval s as string, byval key as string) as string
546デフォルトの名無しさん:皇紀2665/04/01(金) 15:27:24
ありました。
547デフォルトの名無しさん:皇紀2665/04/01(金) 15:28:25
>>544
> デリゲートを使用しているのですが、これはなぜでしょうか?

Invokeを使うから。

デリゲートというのは、メソッドそのものを変数に代入できるようにしたもの。
そうすることで、例えばデリゲートを引数に取るメソッドを書くと、そのメソッド先で“デリゲートで指定されたメソッド”を実行できるようになるわけ。
で、Invokeメソッドはデリゲートを引数に取るから、デリゲートを作ってるわけ。

InvokeメソッドはForm(の基底クラスのControl)に実装されたもので、
「“自分を作ったスレッド”で、“渡されたデリゲートで指定されたメソッド”を実行する」
という働きをする。

デリゲートもクラスの一種なんだけど、宣言すると自動的にBeginInvoke/EndInvokeと言うメソッドが追加される。
これが非同期デリゲートと言って、BeginInvokeを呼び出すとそのデリゲートに指定されているメソッドが別スレッドで実行される事になる。
んだけれども、この場合は関係ない話なので、非同期デリゲートの事は棚に上げておいて良い。
あと一応フォローしておくと、「非同期で実行」=「別スレッドで実行」。

> 普通にButton1.Enabled = true とするとどうなってしまうの?

なぜInvokeを使うか、というのの詳細は面倒なので省略。
・必ずコントロールを作成したのと同じスレッドで操作しなければならない
・作成スレッドと同じスレッドで操作するのにはそのコントロールのInvokeまたはBeginInvokeを使う
・その操作処理はデリゲートでラップしてInvoke/BeginInvokeの引数に渡す
という点だけ覚えればいい。
そうしない場合、「何が起こるかは保証されない」。
548デフォルトの名無しさん:皇紀2665/04/01(金) 16:45:37
ネットワーク上のPCの共有フォルダにアクセスしたいのですが、
ユーザーとパスワードを指定してアクセスできるようなクラスはありますか?
549デフォルトの名無しさん:皇紀2665/04/01(金) 16:52:30
クラスはない。
Win32API使うしか。
550548:皇紀2665/04/01(金) 16:55:36
>>549
む、マジすか・・・
551デフォルトの名無しさん:皇紀2665/04/01(金) 17:03:07
>>547
詳細な解説、ありがとうございます
30回くらい読み返して、ようやく意味が分かってきました

ちなみに、コントロール(とか、そのスレッド内で作成されたオブジェクト)に関わらないメソッドなら
そのまま呼び出してもいいという理解でよろしいですか?
数値・文字列等の演算系関数とか

あ、でもStringすらクラスですよね
ということは、クラスのスコープが大事ということでしょうか?
呼び出すメソッド内で作成され、消滅するクラスオンリーで構成されたメソッドなら、そのまま呼んでよし、とか
プロジェクトや、フォーム全体で使用しているクラス(グローバルやソースの上の方で宣言したりするもの)を触るメソッドなら、デリゲートで呼ばないとだめ、とか

マルチスレッドは奥が深いですね
むずかしー
552デフォルトの名無しさん:皇紀2665/04/01(金) 19:05:46
>>551
> ちなみに、コントロール(とか、そのスレッド内で作成されたオブジェクト)に関わらないメソッドなら
> そのまま呼び出してもいいという理解でよろしいですか?
> 数値・文字列等の演算系関数とか

勿論。
というかInvokeしたら全てコントロール作成スレッドで実行される事になって、マルチスレッドじゃなくなってしまう。

> あ、でもStringすらクラスですよね
> ということは、クラスのスコープが大事ということでしょうか?

いいや、スレッドを超えてオブジェクトを共有して構わない。
寧ろオブジェクトを共有できる事にスレッドの意味がある。
Invokeしなければならないのは、コントロール(System.Windows.Forms.Controlとその派生クラス)を操作する時のみ。

ただし2つのスレッドから同時にあるオブジェクトを操作してしまったりすると問題が起こりうるから注意が必要だ。
例えばあるスレッドでArrayListをFor Eachしている時に、別のスレッドでこのArrayListにAddしたりRemoveしたりしたら、正しくFor Eachできなくなる。
そういうのを避けるためにSyncLockステートメントなどがある。
553デフォルトの名無しさん:皇紀2665/04/01(金) 19:09:27
DOBONさんとこのメルマガのバックナンバー嫁、でいいんじゃないの?
ここで説明しきるなんて無理なんだから。
554デフォルトの名無しさん:int 2ch =05/04/01(金) 20:50:13
まあ、自分の中での整理も兼ねて。
555デフォルトの名無しさん:int 2ch =05/04/01(金) 21:58:08
バカばかりだしな。
556551:int 2ch =05/04/01(金) 22:44:26
>>552
なるほど!
重ね重ねありがとうございました。
大変参考になりました。
精進致しますです。

>>553,555
申し訳ありませんでした。もう消えますので勘弁して下さい。
557デフォルトの名無しさん:int 2ch =05/04/01(金) 23:29:40
どなたか>>474をお願いします。
558デフォルトの名無しさん:int 2ch =05/04/02(土) 01:47:58
結局>>533は誰もわからないということでしょうか?

559最凶VB厨房:int 2ch =05/04/02(土) 01:59:26
なんで統一してないかなんて作った奴に聞かんとわからんだろう。
だぼーくぃっくで生成したかリストから選んで生成したかがわかるかも
しれんぐらいだな。
560デフォルトの名無しさん:int 2ch =05/04/02(土) 10:10:38
>>559
しょーがないな。
このスレは、言語だけでなく文章まで初心者の香具師ばかりだから。
561559:int 2ch =05/04/02(土) 10:17:11
文章を正して投稿して。
562デフォルトの名無しさん:int 2ch =05/04/02(土) 13:47:52
>>558
IDE の仕様の話をされても困りますから (w
563デフォルトの名無しさん:int 2ch =05/04/02(土) 13:48:29
>>557
あのな・・・
『少しは』自分で考えなさい。
『少しは』ね。
564デフォルトの名無しさん:int 2ch =5,2005/04/02(土) 14:48:06
>>563
いや、もちろん自分でも考えるというか試してますが、
どうも私にはムリそうなので質問しているのです。
565564:int 2ch =5,2005/04/02(土) 14:51:41
ちなみにShift-JIS以外の場合はいったんShift-JISの一時ファイルに
変換してから>>474の方法で読み込む、という方法で一応は
解決しています・・・が、どうにも不細工なやり方に思えるので、
スマートにできるやり方を知っている方がおられましたら
是非お願いします。
566デフォルトの名無しさん:2005/04/02(土) 20:17:50
このスレは馬鹿の溜まり場みたいな
ところだから、聞くだけ無駄だろ。
567デフォルトの名無しさん:2005/04/02(土) 20:45:09
春だねぇ。縦読みにすらなってない。
568デフォルトの名無しさん:2005/04/02(土) 20:52:13
バグにもならないコメント文みたいなもんだな。
569デフォルトの名無しさん:2005/04/02(土) 21:05:16
>>568
いいえ。
570デフォルトの名無しさん:2005/04/02(土) 21:05:37
>>566
了解しました。
571デフォルトの名無しさん:2005/04/02(土) 23:53:02
VB.NETの初心者です。
テキストファイルをStreamReaderで開くときにエンコードを
指定できますが、あらかじめ文字コードが分かっていない
場合はどう指定すればよいのでしょうか。


JavaだとJISAutoDetectとかいうのがあって便利だったのですが。
572デフォルトの名無しさん:2005/04/02(土) 23:58:01
>>571
ttp://www.gprj.net/dev/tips/net/txtenc.shtml
これでも使わせて貰うか。
573デフォルトの名無しさん:2005/04/03(日) 00:11:17
>>572
却下します。
574デフォルトの名無しさん:2005/04/03(日) 00:15:33
そうか。じゃあ自前実装で車輪の再発明を頑張れ。
575デフォルトの名無しさん:2005/04/03(日) 08:38:26
発明じゃなくて、作りなおしだろ。ばか
576デフォルトの名無しさん:2005/04/03(日) 10:07:36
>>574
アホな人
577デフォルトの名無しさん:2005/04/03(日) 12:25:00
普通のスレなら春休みの厨房クンが……と思うところだけど
もともとVBやってる奴ってスキルだけでなく人格的にも未熟な奴が多いからなあ。。

幼稚な自分に嫌気がささないところが不思議でしょうがないんだけど、
まあ自意識ないんだろうなこういう輩は。
578デフォルトの名無しさん:2005/04/03(日) 12:39:25
>>577
自意識ないんだろうなぁ、こういう輩は。
579デフォルトの名無しさん:2005/04/03(日) 13:45:57
C#             VB.NET       VB(p-code)
平均    310    平均    1190    平均    5488
最小    296    最小    1156    最小    5468
最大    329    最大    1313    最大    5625

1億回の計算を連続で行うのにかかった時間(ミリ秒)
580デフォルトの名無しさん:2005/04/03(日) 13:56:43
これだけじゃ判断しようがないんだが。
581デフォルトの名無しさん:2005/04/03(日) 14:33:46
>>580
許してやれよ。
582デフォルトの名無しさん:2005/04/03(日) 14:34:23
>>579
どうせ等価なコードは書けてないんだろ。
583デフォルトの名無しさん:2005/04/03(日) 14:36:41
>>579
それぞれのソースを晒せ
584デフォルトの名無しさん:2005/04/03(日) 14:40:03
>>583
多分全然等価じゃないコードが出てくると予想。
585デフォルトの名無しさん:2005/04/03(日) 14:45:12
コードは等価なんです!

実行した機材が違うだけで。

とか?
586デフォルトの名無しさん:2005/04/03(日) 14:46:43
>>585
つまんね。
587デフォルトの名無しさん:2005/04/03(日) 14:47:19
>>585
見当違いのツッコミはやめてくれ。
588デフォルトの名無しさん:2005/04/03(日) 17:09:44
不満があるなら自分で試せよ
589デフォルトの名無しさん:2005/04/03(日) 17:12:33
>>588
とうの昔に試してるけど?
バカにデータは公開しないが。
590デフォルトの名無しさん:2005/04/03(日) 17:13:15
>>579
ソースを含め、何の条件も添えずにこんなデータ出す奴の
気が知れないよな。
591デフォルトの名無しさん:2005/04/03(日) 17:42:03
>>589
口だけじゃダメだな
592デフォルトの名無しさん:2005/04/03(日) 18:03:13
>>591
あらら。あなたは?
593デフォルトの名無しさん:2005/04/03(日) 18:09:50
>>592
わたしは星の王子様よ
594デフォルトの名無しさん:2005/04/03(日) 18:18:43
自分でやろうやろうと思って忘れてて、
いざ他人に先越されると悔しくて難癖つける・・と。メモ
595デフォルトの名無しさん:2005/04/03(日) 18:45:52
メモ♥
596デフォルトの名無しさん:2005/04/03(日) 18:58:19
>>593-595
あのー、色々書いてるようですけど、あなたは
どこが違うのですか?
597デフォルトの名無しさん:2005/04/03(日) 19:01:17
この板も早くIDつけてほしいよな。
598デフォルトの名無しさん:2005/04/03(日) 19:34:13 BE:104814869-
みんなでbe付ければ解決。
599デフォルトの名無しさん:2005/04/03(日) 20:06:46
>>594
で?君は?
600デフォルトの名無しさん:2005/04/03(日) 20:20:52
>>598
おお、こんなのあったんだ。
で、beってどうやって付けるの?
601デフォルトの名無しさん:2005/04/03(日) 22:33:41
他の人のベンチマークまだぁ?
602デフォルトの名無しさん:2005/04/03(日) 22:51:44
>>601
お前のは?
603デフォルトの名無しさん:2005/04/03(日) 23:17:50
>>579のデータがおかしいと言うのなら、まず自分で数値出さないとねぇ。
C#とVB.NETなんて速度ちっとも変わらねぇよとでも言いたいのか?
そう言いたいならハッキリそう言えばいい。
604デフォルトの名無しさん:2005/04/03(日) 23:29:21
折れのでは、C#:VB.NET = 1:1 だった。
変わんない
605デフォルトの名無しさん:2005/04/04(月) 01:58:32
C#とVB.NETに速度の違いがあるとすると整数のオーバーフローチェックの
デフォルトの違いくらい。それほど違いが出るものかな?
/removeintchecks
/checked
606デフォルトの名無しさん:2005/04/04(月) 05:06:16
関数使ってると変わってくるんじゃないのか
607デフォルトの名無しさん:2005/04/04(月) 09:38:39
>>603
それ以前の問題であることに早く気付いてください。
>>590とかで乱暴ながらも指摘されてるのに
気付かなかった?
608デフォルトの名無しさん:2005/04/04(月) 10:06:37
> まず自分で数値出さないとねぇ。

利用規約違反ですね。タイーホします。
609デフォルトの名無しさん:2005/04/04(月) 10:33:22
>>608
だな。

おまえら、EULAをちゃんと嫁。
このうんこやろう。
610デフォルトの名無しさん:2005/04/04(月) 10:33:49

If button Is TBB0 Then
'TBB0のときに必要な処理

ElseIf button Is TBB5 Then
'TBB5のときに必要な処理

End If

↑こんなコード(button、TBB0、TBB5はいずれもButton型)
をSelect Caseで整理しようとしてるんだが、Select Caseでは
Button型は使えないみたいで、CObj()を通してもだめで、
しかたなく

Select Case button.Text
Case TBB0.Text
'TBB0のときに必要な処理
Case TBB5.Text
'TBB5のときに必要な処理
End Select

こんなごまかしで動かしていますが、もっとうまい方法はないものでしょうか?
(TBB0.Text=TBB5.Textになっちゃうとおかしくなりますし)
611デフォルトの名無しさん:2005/04/04(月) 11:07:56
>>610
どうしてもというなら.Nameで分岐するとか。
612610:2005/04/04(月) 12:07:59
>>611

うう、ありがとうごぜぇますだ。さっそく試すべ。。。
あれ、なんか違うかも?ん?、Button型じゃなくてToolBarButton型?
え、なんでNameプロパティないの?

すみません、質問するまえにもうちょい下調べしないと。
でもオブジェクトを確実に識別できるプロパティを探せばいいわけだし、
がんばってみます。
613デフォルトの名無しさん:2005/04/04(月) 12:27:50
>>607
いちいちソース書くのめんどくせ
614デフォルトの名無しさん:2005/04/04(月) 12:42:10
下手したら30代超えのオッサンが「うんこ野郎」だの「タイーホ」だの言ってるかと
思うと反吐が出るな。

幼稚臭っ。キモ過ぎる。
615デフォルトの名無しさん:2005/04/04(月) 12:43:25
なんでVB使いにはこんな幼稚な奴が多いんだ?
616デフォルトの名無しさん:2005/04/04(月) 16:02:32
>>612
.Tagがあるなら、好きなのを定義して分岐のキーにできる。
617デフォルトの名無しさん:2005/04/04(月) 16:11:07
ToolBarButtonなら、ToolBarのButtons.IndexOf(button)でインデックスベースという手もあるが。
618デフォルトの名無しさん:2005/04/04(月) 16:35:05
>>610
ヘルプぐらい読め。
619デフォルトの名無しさん:2005/04/04(月) 16:59:12
>>613
発想がおかしい。省略していいかどうかの判断ができていない。
それにソースだけではないとも指摘されているが
それについて触れようともしていない。

結論。アホ。
620610:2005/04/04(月) 18:02:49
>>616

Tagは真っ先に考えたのですが、フォームが多数あって
Tagを入れ忘れるやつがいないとも限らないので
(VBのToolbarでKeyの入れ忘れを散々やってます(汗))
他の方法がないかと勉強してたところなのです。
(入れ忘れさえなければいい方法なのですが)


>>617

With TB1.Buttons
Select Case .IndexOf(button)
Case .IndexOf(TBB0)
Case .IndexOf(TBB5)

こんな感じになりますた。だいぶすっきりだし、判定もまちがいなさそうです。


>>618

すまぬ。ヘルプみたのだがいい方法が見つからなんだ。
621デフォルトの名無しさん:2005/04/04(月) 19:41:17
素直にIf...ElseIfで書いたほうが後々理解しやすいと思うけど。。
622デフォルトの名無しさん:2005/04/04(月) 20:25:05
623デフォルトの名無しさん:2005/04/04(月) 20:26:18
>>621
まあまあ。こういう輩にそんなこと言ったって
わかんないんだって。分かりやすいプログラムを書ける人が
PGとして高く評価されることにそのうち気付くかなぁ。
624デフォルトの名無しさん:2005/04/04(月) 20:57:04
>>621 現場の事わかってない厨か学厨でしょ しょせん
自分でマスかいて、高度な事やってるつもりでも
周りはいい迷惑なんだって
おまえが責任もって最後まで虫取り保守やれっていいたくなる
625デフォルトの名無しさん:2005/04/04(月) 21:14:15
やっぱり、バカが集まるところだ。ここは。
626デフォルトの名無しさん:2005/04/04(月) 21:28:21
>>624
現場を気取ってるが多分学生だな。
多分本当に現場にいるPGなら後半2行にそのことを
露呈した記述があることにすぐ気付くと思うが。
>>625はそれを指摘してるんだよな。
627デフォルトの名無しさん:2005/04/04(月) 21:35:33
一人芝居が上手なスレはここですか?
628デフォルトの名無しさん:2005/04/04(月) 21:44:22
>>626
げっ
ばれましたか
さすがです...ショボーン
629デフォルトの名無しさん:2005/04/04(月) 22:08:57
>>626
はい。626は私ですよ。
一人芝居は>>627-628ですね。
それじゃ。
630629:2005/04/04(月) 22:09:38
あー、アンカーは626じゃなくて628にするべきだったね。
まーどうでもいいけど。
631デフォルトの名無しさん:2005/04/04(月) 22:13:44
>>619
数値だけ出して読む側がそれを信じようが信じまいが問題なし
別に何をどう書こうが自由だしw
632デフォルトの名無しさん:2005/04/04(月) 22:55:13
>>631
まだ分かってないみたい。信じる信じない以前に
判断を下しようがない、って言ったら分かる?

分かりやすいように、君がやったことを極端な例にしてあげようか?

パフォーマンス測定しました!
VB.NETは1秒、C#では100秒でした。
終わり。
633デフォルトの名無しさん:2005/04/04(月) 23:50:52
>>632
まだ分かってないみたい。読み手が判断を下す以前に
何を書こうがどんな書き方をしようが自由だって言ったらわかる?
終わり。
634デフォルトの名無しさん:2005/04/04(月) 23:53:12
>>633
それはいいけどその後の君の対応はNG。
635デフォルトの名無しさん:2005/04/04(月) 23:55:05
>>633
はいはい。このスレを君の落書き帳として使わせてくださいってことね。
それに対しては「いいよ、通報されない程度にね」としか
言いようがないな。
636デフォルトの名無しさん:2005/04/04(月) 23:55:59
>>633
分かりました。あのデータがどんな条件やどんなソースから
得られた数値なのか興味があるのですが、提示して頂けませんか?
637デフォルトの名無しさん:2005/04/04(月) 23:56:14
>>634
どんな対応をしても自由だしw、NGだと思っているだけだろう
638デフォルトの名無しさん:2005/04/05(火) 00:03:29
必死になりすぎて恰も別人を装っているかのように思える。
>>635
もし荒らしだと思っているなら、それに反応するのも荒らしだな。
荒らしを助長していることになる。
>>636
めんどくせ
639デフォルトの名無しさん:2005/04/05(火) 00:17:07
>>638
捏造データ?じゃないですよね。
ソースはもう消してしまったんですか?
640デフォルトの名無しさん:2005/04/05(火) 00:20:41
>>639
ごめんなさーい、もう消してしまったんですぅーm(_ _)mペコリ
641デフォルトの名無しさん:2005/04/05(火) 00:24:12
>>640
ふーん
642デフォルトの名無しさん:2005/04/05(火) 00:26:58
>>641
あきらめてね〜
643デフォルトの名無しさん:2005/04/05(火) 00:41:21
>>642
ソース見て叩こうと思ったけど無理みたいだから諦めます。
644デフォルトの名無しさん:2005/04/05(火) 00:42:51
>>642
よっぽど他人には見せられない代物だったんだろうなぁ。
645デフォルトの名無しさん:2005/04/05(火) 00:50:21
>>643
暇つぶしができると思って期待してたのかな?相手できなくてごめんね
>>644
見せられないのではなく、何度も言っているように見せるのがめんどくさいんだよ。
やっとわかってくれたかな?
646質問age:2005/04/05(火) 00:57:13
しつもんです!そもそも>>633さんは何が訊きたかったのでつか?
647デフォルトの名無しさん:2005/04/05(火) 01:01:22
>>646
その何かがわかるまでスレッドの中を何度も繰り返し読んでみよう!
きっと何かがわかってくるはずだよ。
648646:2005/04/05(火) 01:13:06

世の中は春休みだという事がわかりますた。。。_| ̄|○
649デフォルトの名無しさん:2005/04/05(火) 01:14:26
わかるの遅っ
650最凶VB厨房:2005/04/05(火) 01:14:47
世の中は春休みだったのか・・・。
俺がいる世界はもしかしてあの世なのか?!
こりゃまいったわぃ
651デフォルトの名無しさん:2005/04/05(火) 01:23:38
わかるの遅っ
652デフォルトの名無しさん:2005/04/05(火) 07:07:22
>>645
あれー?削除しちゃったんじゃなかったんだー。
コロコロ変わるねーw
653デフォルトの名無しさん:2005/04/05(火) 09:09:00
普通に組んでC#の方が速いならC#で作りたいなぁ
654デフォルトの名無しさん:2005/04/05(火) 09:12:28
普通に組んでC++の方が速いからC++で作るといいよ。
655デフォルトの名無しさん:2005/04/05(火) 09:19:03
C++は難しいのでやめておきます。
656デフォルトの名無しさん:2005/04/05(火) 09:36:16
>>652
削除したことどこでも否定してないけどw 頭大丈夫?
まぁ、めんどくさいと言っても削除しちゃったから見せることすらできないけどねw
657デフォルトの名無しさん:2005/04/05(火) 16:40:23
http://www.atmarkit.co.jp/fdotnet/winexp/index/index.html
↑サンプルアプリケーションがあったのでちょっと拝見

しかし、こんなもの見て「よし、これやってみよう」なんてプログラマいないよな?
まんど臭い機能つけて後で突っ込み浴びて却下とかなったら、破壊したくなるもんなあ。
Sのプログラマは駄目かと思われ・・受身が一番で常。

ただRAD手法は絶対必要だと思う。んでもって強気にいかないと(仕様変更をあの手この手で防がないと)、納期に間に合いません!

フィックスって言ってたやん・・なんて愚痴は何百回言ったことでしょうか・・
658デフォルトの名無しさん:2005/04/05(火) 23:54:06
>>656
>>656
>削除したことどこでも否定してない
まさにあなたはそこを突っ込まれたのですよ。
理解してから書くか、理解できてないのならダンマリでよろしく。
659デフォルトの名無しさん:2005/04/06(水) 00:58:46
そろそろウザいので相手するな。
660デフォルトの名無しさん:2005/04/06(水) 03:24:21
>>658
いやぁ以前にも書いたけどどんな書き方しようが自由だからね。
そんなに僕ちゃんのおふざけが気に入らなかったかなw
661デフォルトの名無しさん:2005/04/06(水) 07:11:59
>>659
うん。
662デフォルトの名無しさん:2005/04/06(水) 11:31:39
あるプロセスが起動中か確認したいのですが
どうのようにすればよいでしょうか?
例えばhoge.exeか起動中かどうかというのを
確認したいです。
663デフォルトの名無しさん:2005/04/06(水) 11:40:31
System.Diagnostics.Process.GetProcessesByName
664デフォルトの名無しさん:2005/04/06(水) 11:43:15
>>663
さんくす
665デフォルトの名無しさん:2005/04/06(水) 15:03:27
>>661
アホだったらいちいち相手しないよ。
666デフォルトの名無しさん:2005/04/06(水) 16:05:06
WebBrowserコンポーネントで開いたExcelのイベントを取ることは可能だろうか?
667初歩的な質問なのですが:2005/04/06(水) 16:05:18
初歩的な質問なのですが、vb.netを使ってアプリケーションを作成し、
セットアッププロジェクトでインストーラーを作成しています。

その際に作成した「プロジェクトファイル名\obj\Release」に作成したアプリケーションが出来ますが、
これをセットアッププロジェクトの「アプリケーションフォルダ」にドラックアンドドロップして、作成したアプリケーションを含めてビルドを行うと、依存関係が見つかりませんと出ます。

アプリケーション単体でビルド行った際には出ないのです。
もちろん、必要なCOMなどは参照設定で登録しております。

これは何が問題なのでしょうか?
668デフォルトの名無しさん:2005/04/06(水) 20:51:32
>>667
理解しようとする意欲がないのに、最初からいきなり複雑なことを
成し遂げようって発想が理解できない。
韓国人のパリパリとかいう主義みたい。

そういう場合はまず手始めにフォームだけの空っぽのアプリのインストーラを
作ってみる。小学生でもわかる定石でしょ。
話はそれから。
669デフォルトの名無しさん:2005/04/06(水) 22:28:25
年齢を生年月日から求めたいのですが
DateDiffで年の差を求めると月/日が無視されてしまいます。
困りました。
670デフォルトの名無しさん:2005/04/06(水) 22:37:12
DateTimeのSubtractメソッド、TimeSpanのTotalDaysプロパティ、除算。
671デフォルトの名無しさん:2005/04/06(水) 22:40:51
>>669はただ「困った」って言ってるだけじゃん。
何も質問してないぞ。
672デフォルトの名無しさん:2005/04/06(水) 22:42:07
>>670
それって365日と366日で結果が違ったりしませんか?
超てきとー

>>671
(・∀・)ニヤニヤ
673デフォルトの名無しさん:2005/04/06(水) 23:25:48
VBを始めようと思っているのですが、周りの人はCにしておけといっています。
VBの欠点を教えてください。
674デフォルトの名無しさん:2005/04/06(水) 23:49:21
>>673
数日前もだれかに言った気がするが・・・
馬鹿に思われるからやめなさい
675デフォルトの名無しさん:2005/04/07(木) 00:59:11
>>673
早く挫折できる。
676デフォルトの名無しさん:2005/04/07(木) 11:34:46
以下のようなエラーが出ます。
> 'System.ObjectDisposedException' のハンドルされていない例外が mscorlib.dll で発生しました。
> 追加情報 : 閉じている TextWriter に書き込むことはできません。
エラーが出るのは下のソースで「_WriteText.Flush()」です。
Finalize()でFlush()を呼ぶ前にClose()は呼んでません。
なぜこんなエラーが返るのか検討がつきません。知っている方、ご教授願います。

  Public Class TextOut
   Private _FStream As FileStream
   Private _WriteText As StreamWriter
   Public Sub New()
     _FStream = New FileStream("log.txt", FileMode.Append, FileAccess.Write)
     _WriteText = New StreamWriter(_FStream, Encoding.GetEncoding("Shift_JIS"))
   End Sub
   Protected Overrides Sub Finalize()
     _WriteText.Flush()
     _WriteText.Close()
     _FStream.Flush()
     _FStream.Close()
     _WriteText = Nothing
     _FStream = Nothing
     MyBase.Finalize()
   End Sub
  End Class
677デフォルトの名無しさん:2005/04/07(木) 13:24:02
.NETでの正規表現の質問はここでいいのでしょうか。

パターンAからパターンBが「最初」に出てきたところまで、
というパターンを作りたいのですがうまく行きません。

pA〇〇〇〇〇pBpA×××pBpA△△△△△△△△pBpA・・・・

↑から pA〜pBまでのセットを取りたいのです。

ここで、 pA.+pB とやると最初から最後まで引っかかってしまいます。

ただ、 pA[^pB]+pB とやれば意図したように動くのですが、
実際にはパターンA、パターンBとももう少し複雑なので
なにかいい方法はないでしょうか。
678デフォルトの名無しさん:2005/04/07(木) 13:25:30
最短一致は「?」
679デフォルトの名無しさん:2005/04/07(木) 13:30:19
VB.NETの質問スレだろ?なんでVB否定するヴォケがいるの?ROMってろよ、ゴラァ
680デフォルトの名無しさん:2005/04/07(木) 14:43:02
>>678
ありがとん
pA.+?pB で思うようにできました。
681デフォルトの名無しさん:2005/04/07(木) 17:40:37
普段はエラーなど起きないのに、ごく稀に発生するエラーに悩んでおります。
発生するエラーは2種類あります。

System.NullReferenceException: オブジェクト参照がオブジェクト インスタンスに設定されていません。
at System.Data.Common.Dbnetlib.ConnectionError(HandleRef pConnectionObject, IntPtr& netErr, IntPtr& netMsg, IntPtr& dberr)
at System.Data.SqlClient.TdsParser.ProcessNetlibError(IntPtr errno)
at System.Data.SqlClient.TdsParser.ReadNetlib(Int32 bytesExpected)
at System.Data.SqlClient.TdsParser.ReadBuffer()
at System.Data.SqlClient.TdsParser.ReadByteArray(Byte[] buff, Int32 offset, Int32 len)
at System.Data.SqlClient.TdsParser.ReadEncodingChar(Int32 length, Encoding encoding)
at System.Data.SqlClient.TdsParser.ReadValue(_SqlMetaData md, Int32 length)
at System.Data.SqlClient.TdsParser.ProcessRow(_SqlMetaData[] columns, Object[] buffer, Int32[] map, Boolean useSQLTypes)
at System.Data.SqlClient.SqlDataReader.PrepareRecord(Int32 i)
at System.Data.SqlClient.SqlDataReader.GetValues(Object[] values)
at System.Data.Common.DbEnumerator.MoveNext()
at System.Web.UI.WebControls.Repeater.CreateControlHierarchy(Boolean useDataSource)
at System.Web.UI.WebControls.Repeater.OnDataBinding(EventArgs e)
at System.Web.UI.WebControls.Repeater.DataBind()
at hoge.hogehoge.Button1_ServerClick(Object sender, EventArgs e)
at System.Web.UI.HtmlControls.HtmlInputButton.OnServerClick(EventArgs e)
at System.Web.UI.HtmlControls.HtmlInputButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
at System.Web.UI.Page.ProcessRequestMain()

続く...(本文長すぎって。。。)
682681:2005/04/07(木) 17:41:27
...続き

System.InvalidOperationException: データ リーダーが閉じているときに、無効な操作 Read をしようとしました。
at System.Data.SqlClient.SqlDataReader.Read()
at System.Data.Common.DbEnumerator.MoveNext()
at System.Web.UI.WebControls.Repeater.CreateControlHierarchy(Boolean useDataSource)
at System.Web.UI.WebControls.Repeater.OnDataBinding(EventArgs e)
at System.Web.UI.WebControls.Repeater.DataBind()
at hoge.hogehoge.Button1_ServerClick(Object sender, EventArgs e)
at System.Web.UI.HtmlControls.HtmlInputButton.OnServerClick(EventArgs e)
at System.Web.UI.HtmlControls.HtmlInputButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
at System.Web.UI.Page.ProcessRequestMain()

以下、ソース抜粋
Repeater1.DataSource = SqlDataReader1
Repeater1.DataBind() ★ ここで稀にエラーが発生
SqlDataReader1.Close()
SqlConnection1.Close()
SqlConnection1 = Nothing

データベースを検索して結果を表示する、といった簡単なものなのですが、
結果の件数が100件程度だと再現せず、1000件ほどになると稀に発生します。
よい解決案などありましたら、ご教授おねがいいたします。
683デフォルトの名無しさん:2005/04/07(木) 18:24:18
>>681
Repeater1が何ものか知らないが
DataSourceにReaderをつっこむのではなく
DataTableのDefaultViewを設定してみては?
684デフォルトの名無しさん:2005/04/07(木) 18:31:49
.netフレームワークのバージョンって
どうやって調べるの?
685デフォルトの名無しさん:2005/04/07(木) 18:48:52
>>676
_FStreamのファイナライザが既に動いてCloseしてるからだろう。
ttp://www.ascii.co.jp/pb/msdn/article/a09_0003.html
が参考になるかも知れない。

そもそも、どうせFileStreamがGCされた時にFileStreamのファイナライザが動いてフラッシュして閉じるので、
こちらでわざわざファイナライザを実装してCloseさせちゃいけない。

StreamWriterを使うと、デフォルトではStreamWriterがバッファリングしてストリームにすぐには書き込まないので、
書き込み内容が損失するわけだ。StreamWriterのファイナライザはストリームに操作しないから。
確実にはStreamWriter.Closeが喚ばれない場合の解決策としては、
StreamWriterを使わずWriteやWriteLineメソッドを自前で実装してFileStreamに直接書き込むとか、
StreamWriterを使うなら、AutoFlushをTrueにする手もある。

こういう場合はIDisposableを実装させてDisposeメソッドにファイル閉じる動作を書いて、
プログラマにDispose呼出を明示するのがベターなんだけどな。
VB2005でUsingステートメントもサポートされるようになるし。

ちなみに、StreamWriter.Closeは、自動でFlush動作もするので_WriteText.Flushは必要ないし、
基底のストリームも閉じてしまうのでその後の_FStream.Flushとかできない(意味無い)。
686デフォルトの名無しさん:2005/04/07(木) 19:01:57
>>684
コード上から(実行時に)調べる、というのなら
ttp://www.atmarkit.co.jp/fdotnet/dotnettips/278clrversion/clrversion.html
687676:2005/04/07(木) 21:05:29
>>685
レスありがとうございます。凄く×∞参考になりました。m(_ _)m
ついでに、自分のバカさ加減がよ〜くわかりました…
全て685さんの指摘どおりです。
私はVB.NET歴2日の上、JavaやC++(こっちは4年くらいやってる)と同じ
程度の処理が出来ると思ってました(爆)。

StreamWriter.CloseがFileStream.Closeを呼び出すのはいいとして、
Finalize()の呼び出し順序が明確に決まってない事には驚きました。
指摘にあったDisposeの実装で対応するしかなさそうです。
Finalize()を使った「後始末はおまえにまかせる」は無理っぽいですね。
書き込みの精度は、一定のWriteをした直後にFlushするようにします。


StreamWriterとFileStreamの問題は有名なんですね。
しかもStreamWriterのFinalize()が何もしないっては……orz
688デフォルトの名無しさん:2005/04/08(金) 01:06:57
何かしてくれるとバグに気づきにくい可能性があるからだよ。
689デフォルトの名無しさん:2005/04/08(金) 03:00:17
>>679
あなたはVBスレでVB万歳なレスだけみていてそれで満足なんですね?
たまには自己否定も必要なんですよ。
690デフォルトの名無しさん:2005/04/08(金) 05:20:35
VB6からの移行組です。
簡単な通信(チャット)を行うプログラムを作ろうと思います。
Winsockコントロールが標準で無いのでSystem.Net.Socketsを
使う方法を初歩から学習中です。

そこで分からないのは、Winsock.ocxのデータ受信イベント
(DataArrival)の代わりの方法についてです。

WithEvents 付きで System.Net.Sockets.TcpClient を宣言すると
「WithEvents変数はイベントを発生させません」と怒られます。

何か、Eventドリブン式で書く方法は有りますでしょうか?

とりあえず、Threadクラスを使ってループ待ちさせる方法を見つけ
自作イベントのような形では実現できましたが、こっちのスレッド
方式と、Event方式とどちらが一般的でしょうか?

VB6の時にクラスは使ってましたが理解度は低めです。
よろしくお願いいたします。
691デフォルトの名無しさん:2005/04/08(金) 05:33:58
わざわざイベントで書く必要がないんだが。
送受信を行うNetworkStreamは、データが来るまで自動的にブロッキングしてプログラムの流れを中断させる。
別スレッドでReadさせておけばいい。
692デフォルトの名無しさん:2005/04/08(金) 06:04:23
>691 レスありがとうございます!それでは現在テストで動いた以下の
スレッド方式でも、悪い方ではないと考えていいでしょうか?
Private Sock1 As New System.Net.Sockets.TcpClient
Private Stream As NetworkStream
Private myThread As Threading.Thread
-----ボタンクリック
Private Sub Button1_Click(〜) Handles Button1.Click
   Sock1.Connect("www.yahoo.co.jp", 80)
   TextBox1.Text = ""
   Stream = Sock1.GetStream()
   Dim ByteSend As Byte() = System.Text.Encoding.ASCII.GetBytes("GET / HTTP/1.0" + vbCrLf + vbCrLf)
   Stream.Write(ByteSend, 0, ByteSend.Length())
   myThread = New Threading.Thread(AddressOf DataArrave)
   myThread.Start()
End Sub
-----自作SUB
Private Sub DataArrave()
   Dim ByteRead(2000) As Byte
   Dim strText As String
   Dim intLength As Integer
   Dim lngRevcnt As Long
   Dim lngRevByt As Long
   Do
     intLength = Stream.Read(ByteRead, 0, ByteRead.Length())
     lngRevcnt += 1 : lngRevByt += CLng(intLength)
     Me.Text = "受信パケット数:" & lngRevcnt & " (" & lngRevByt & " byte)"
     strText += System.Text.Encoding.ASCII.GetString(ByteRead, 0, intLength)
     If intLength < 1 Then Exit Do
     Sock1.Close()
   Loop
   TextBox1.Text = strText
End Sub
693690=692:2005/04/08(金) 06:08:49
↑すみません、レスの改行制限で見づらくなりました。
とりあえずの確認用なので、単に、HTTP-GETを送信して
自作スレッドで受信させているだけのショボプログラムです。

とりあえずこんな感じでも、アリでしょうか?
694デフォルトの名無しさん:2005/04/08(金) 06:21:05
>>692
Readがパケットごとに実行される保証はどこにもないはずだがね。

> strText += System.Text.Encoding.ASCII.GetString(ByteRead, 0, intLength)

まあASCIIだからいいけど、shift_jisとかだとデコードに失敗する可能性があるよ。
最後の1バイトが2バイト文字の1バイト目だった場合に。
受信中はMemoryStreamに蓄えて、受信が完了してから一気にGetStringしたほうがいい。

> Do
(略)
>   If intLength < 1 Then Exit Do
>   Sock1.Close()
> Loop

このSock1.Close()はコピペミスかな?
Loopの外に出さなきゃいけないね。

> Me.Text = "受信パケット数:" & lngRevcnt & " (" & lngRevByt & " byte)"
> TextBox1.Text = strText

やっかいなのはこいつだ。
別スレッドからコントロールを操作しちゃいけない。
Invoke/BeginInvokeを使う必要がある。
ttp://dobon.net/vb/melma/index.html
の19から26、とくに25を良く読んでマルチスレッドに関する問題を良く把握してくれ。
695690=692:2005/04/08(金) 06:33:44
>694
うぉ!ありがとうございます!

1Read=1パケとは限らないのですね。分かりました!
確かに、逐次デコードはまずいですね。了解です。

> このSock1.Close()はコピペミスかな?
> Loopの外に出さなきゃいけないね。

そうなんです。実は少し悩んでました。
手持ちの書籍「VB..net逆引き大全500」の初歩サンプルに
こういった記述があったもんで丸写ししながら疑問に感じてました。
試してみたらコレでも動くんです。
今試したら外へ出しても動きますね。理屈通り外へ出します!

> Invoke/BeginInvokeを使う必要がある。

了解です。教えていただいた所を良く読んで勉強します!
とても丁寧に分かり易いレスを本当にありがとうございました!
696デフォルトの名無しさん:2005/04/08(金) 07:12:06
>>689
理由が書かれていませんね。
697デフォルトの名無しさん:2005/04/08(金) 08:29:05
>>686
遅くなりましたがありがとうございました。
698デフォルトの名無しさん:2005/04/08(金) 13:11:00
comboboxでデータソース指定だと、表示(DisplayMember)と値(ValueMember)を指定できるけど、
自分で項目を設定した場合は、そういった指定はできないものなのですか?
699デフォルトの名無しさん:2005/04/08(金) 13:14:27
どういう効果を求めているの?
700デフォルトの名無しさん:2005/04/08(金) 13:18:05
表示は

東京
大阪
名古屋
・・・(略)

などと表示して、内部の値としては

34
21
15
・・・(略)

などように、取り出せるようにしたいです。
701デフォルトの名無しさん:2005/04/08(金) 13:25:03
じゃあそういう都道府県クラスを作れば?
ComboBoxで表示されるのはToString()の結果だから。
Idと都道府県名を保持して、ToString()のオーバーライドで都道府県名を返す。
Idはプロパティとして公開。
702デフォルトの名無しさん:2005/04/08(金) 14:28:20
>>701
ありがとうごじあます。
データ構造を作ってやることにします。
703デフォルトの名無しさん:2005/04/08(金) 19:36:49
質問させてください

PrintDocument等を使っての印刷に関してです.
取得したデータの件数に応じて改ページして次のページに出力,
といった印刷物のページコントロールはどうやるのが定石なのでしょうか?

ヘルプドキュメントから,PrintPageEventArgs.HasMorePagesをTrueに
する,というのは見つけたのですがいまいち記述方法がわかりません…
その他,PrintDocument,Graphicsなどリファレンス一通りみたのですが,
ページコントロールに関わりそうなメンバが見つけられませんでした

よろしくお願いします.
704デフォルトの名無しさん:2005/04/08(金) 19:38:59
まあこの辺でも。
ttp://dobon.net/vb/dotnet/graphics/
705デフォルトの名無しさん:2005/04/08(金) 20:09:54
>>704
ありがとうございます
どうやら概念を理解していなかったようです

HasMorePagesがTrueである間は

PrintPageイベント発生→PrintPageハンドラ実行,
が繰り返される,

ということですね.
706デフォルトの名無しさん:2005/04/10(日) 00:34:19
VB.NETでiniファイルを読むにはどうすればよいのでしょうか。
707デフォルトの名無しさん:2005/04/10(日) 00:53:02
>>706
.netではXML推奨みたいだよ。
ttp://dobon.net/vb/dotnet/file/xmlserializer.html
708デフォルトの名無しさん:2005/04/10(日) 08:20:02
>>707
いや、それはそうなのですが、どうしても旧システムのINIファイルを
読まないといけない処理がありまして、どうしたものかと。
やはりAPIを叩くんですかね。
709デフォルトの名無しさん:2005/04/10(日) 08:27:03
710デフォルトの名無しさん:2005/04/10(日) 08:32:42
DataTableって何件くらいのデータ扱えるの?
711デフォルトの名無しさん:2005/04/10(日) 10:13:12
>>710

めっちゃたくさん
712デフォルトの名無しさん:2005/04/10(日) 10:18:18
713デフォルトの名無しさん:2005/04/10(日) 12:47:06
>>706
読むにはどうすればよいのでしょうか、って発想が理解できん。
別に全然煽りじゃなく読めばいいんだよ。
APIなんて使うまでもない。iniなんてただのテキストファイルじゃん。

読んだ後の処理だってどうってことない。
こんなこともできない人が人様から給料もらって仕事でPGやってるとしたら
そりゃ犯罪だよ。
714デフォルトの名無しさん:2005/04/10(日) 15:29:06
API使うのが一番楽だと思うのだけど
715デフォルトの名無しさん:2005/04/10(日) 15:38:40
Microsoftは切り捨てたがってるけどねー。
716デフォルトの名無しさん:2005/04/10(日) 20:46:21
>>713
回答ありがとう。理解できないのに回答するって発想が理解できません。

ちなみに何の罪でしょうか。
717デフォルトの名無しさん:2005/04/11(月) 02:28:04
vb6.0のプログラムを.NETにアップグレードしようと思い、
.NETに詳しそうな方に聞いてみました。

すると、

リストビューが消える!?(ただし、端末にインストールした.NETフレームワークにもよる、との由)
LenBが使えない!?(半角文字と全角文字の判定はどうするの!?)
KeyPress時にKeyAsciiに代入できるのは0だけ!?(小文字を大文字に変換するの面倒になりそう)

などという問題があるといわれ
それだけでもしり込みしています。

でも解決方法あるんですよね、あたりまえですが。
みなさんはどのように解決してらっしゃるんでしょうか。
718デフォルトの名無しさん:2005/04/11(月) 02:31:55
書き直す
719デフォルトの名無しさん:2005/04/11(月) 02:37:55
>>717

つまり、.NETにアップグレードした時のtips的な
纏めサイトが必要なんだろ。
LenBならこうしろ、みたいな情報が欲しい、と。
720デフォルトの名無しさん:2005/04/11(月) 07:21:39
聞いた人本当に.netに詳しいのか?

例えばLenBなんて関数ひとつ作れば終わりです

これくらいで尻込みしているようなら、アップグレードはやめとけ

こんなこと書いている俺の場合は、全部1からコードを書き直しましたよ
アップグレードウィザードも使えないし
まだ自作ライブラリの半分も終わってないから生産効率悪い悪い
721デフォルトの名無しさん:2005/04/11(月) 17:16:26
microsoft のftpで
以下のm_sRemoteHostにIPアドレスを指定すると
dns.resolveの処理がすごく遅くなってしまいます。
どうしたら速くなりますか?

Public Function Login() As Boolean
m_objClientSocket = _
New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
Dim ep As New IPEndPoint(Dns.Resolve(m_sRemoteHost).AddressList(0), m_iRemotePort)
Try
m_objClientSocket.Connect(ep)
Catch ex As Exception
MessageString = m_sReply
Throw New IOException("Cannot connect to the remote server")
End Try
722デフォルトの名無しさん:2005/04/11(月) 17:26:56
十進記法である事が分かってるなら、Dns.GetHostByAddressを使うとか。
.NET 1.1以降なら、ピリオドで分けてByte配列にしてIPAddressインスタンスを直接作るとか。
723デフォルトの名無しさん:2005/04/11(月) 17:41:36
Dns.GetHostByNameならホスト名でもIPでも両方可能だな。
724デフォルトの名無しさん:2005/04/11(月) 17:45:22
Dns.Resolve(m_sRemoteHost).AddressList(0)

Dns.GetHostByName(m_sRemoteHost).AddressList(0),
にするだけで速くなるのでしょうか?
725デフォルトの名無しさん:2005/04/11(月) 17:47:56
まず試せ。
話はそれからだ。
726デフォルトの名無しさん:2005/04/11(月) 17:51:02
試したいのですが自社のネットワークではどちらも速いのですが
お客様のネットワークではなぜか遅かったので質問している次第です。
727デフォルトの名無しさん:2005/04/11(月) 18:22:35
>>726
少なくとも.NET 1.1の実装では、与えられた文字列が十進表記の時、
ResolveだとDNSサーバに実際に問い合わせ、GetHostByNameだと問い合わせを行わない。
それで速くなるかどうかは別だが、内部処理で済む分GetHostByNameの方が速い可能性は高い。
728デフォルトの名無しさん:2005/04/11(月) 18:23:56
>>727
さんくす。
試す価値ありですね。
729デフォルトの名無しさん:2005/04/12(火) 01:28:07
Wordファイルを読み込むサンプル掲載してるサイトありませんか?
ぐぐってもどうもExcelばかり引っかかって・・・
730デフォルトの名無しさん:2005/04/12(火) 01:56:22
OpenMutexのVB.NETで使える宣言を教えてください。
なぜか、IntPtrで受けてもIntPtr.zeroしか帰ってこないし
Longで受けても常に同じ値(0ではない)が帰ってきます・・・

どうやって呼べばいいですか?
731デフォルトの名無しさん:2005/04/12(火) 04:21:24
>>730
Mutexクラス使えば?
732デフォルトの名無しさん:2005/04/12(火) 07:11:30
>>729
そういう質問したらまた>>713が騒ぎ出すよ。
733デフォルトの名無しさん:2005/04/12(火) 07:12:28
>>730
あのな、「なぜか」ってのやめろよ。
お前のせいなんだからさ。
734デフォルトの名無しさん:2005/04/12(火) 08:38:01
MutexクラスじゃOpenMutexできないでしょ?
VB6とかで実際に動いてるコードをもっていって動かないから
「なぜか」なんだけどなぁ
IntPtrはVB6にはないけど。

教えてくれる人はいないんか。ここには
735デフォルトの名無しさん:2005/04/12(火) 09:03:55
Mutexクラスで完全に代用できるけどな。
OpenMutexできないのもお前がへぼいだけだろ。
なにせLongの理解すらできてないようだからな。
736デフォルトの名無しさん:2005/04/12(火) 09:58:57
PictureBoxで、

Private Sub Command1_Click()
Picture1.Circle

としても、Intellisenseで「.Circle」がポップアップメニュー内に出てこないのですが、
どうしてなのでしょうか?

http://www.h5.dion.ne.jp/~tuyano/VBTutor/VBTutor3.html
上記のサイトでは、PictureBox内に描画関数が使えると記述されてますが、
なぜかコンパイルエラーになってしまいます。

ちなみに、開発環境は、
VB2005Expressです。
737デフォルトの名無しさん:2005/04/12(火) 10:03:45
>>736
それはVB6であってVB.NET/VB2005ではない。
VB.NET以降のお勉強はこちらで。
ttp://dobon.net/vb/dotnet/index.html
738736:2005/04/12(火) 10:08:30
>>737
ご返答助かります。

VB6とVB.NETでは仕様が多少異なっているのですか。
ありがとうございました。
739デフォルトの名無しさん:2005/04/12(火) 10:10:12
>>738
多少つか別物
740デフォルトの名無しさん:2005/04/12(火) 12:34:11
多少ワロタ

仕様は全く別物。使い方は似せてあるけどね。
単なるバージョンアップだとか思わない方がいいよ。

・・って、まぁ趣味ならどうでもいいかw
741デフォルトの名無しさん:2005/04/12(火) 12:45:06
何度もすいません先日からVB.netのPrintDocumentでの印刷実装で
てこずってるものです

質問ですが,PrintPreviewDialogでの表示と実際の印刷物でマージンに
差異が生じるのですが原因がわかりません.

PrintDocument.PrinterSetting.DefaultPageSettings.Margins
PrintPageEventArgs.PageSettings.Margins

上記二つのプロパティは調査済みですが他にも印刷時のマージンに関わる
プロパティ等ありますでしょうか?
742デフォルトの名無しさん:2005/04/12(火) 12:46:40
VB.NET2003でODP.NET 10gですがWindowsXP環境において
DBアクセス時に不安定になる場合があります。
例えば、応答がなくなったりshowしたダイアログが裏に回ってしまったり。
Windows2000環境で問題ありません。
何かパッチなどがありますでしょうか?
743デフォルトの名無しさん:2005/04/12(火) 12:59:33
>>741
PageSetupDialogにこういうバグがあるが……。
ttp://dobon.net/vb/dotnet/graphics/pagesetupdialogbug.html
744741:2005/04/12(火) 14:06:49
>>743
どうもこれとは症状が違うようなのです.
PageSettingDialogも現状では使っていません.
マージンをゼロにし,用紙の端からのサイズで描画してるのですが,
左端,上端に固定値のマージンが追加された状態で印刷されて
しまうのです.
プレビューでは真ん中に配置されているのに印刷してみると右下に
ずれて印刷されてしまいます.

描画の際にこの値がわかれば座標から引いて配置すればいいのですが,
プリンタ依存のマージンなのかそれともプログラム内部のプロパティで
設定されているものなのかわからなくて質問した次第です…
745デフォルトの名無しさん:2005/04/12(火) 14:17:18
>>744
とするとプリンタ固有のマージンかね。
こういうのは?
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=7782&forum=7
ttp://www.bcap.co.jp/hanafusa/dotnet/Prt10.htm
746デフォルトの名無しさん:2005/04/12(火) 14:37:39
>>745
おお,ありがとうございます.
早速試してみます.
747デフォルトの名無しさん:2005/04/12(火) 15:47:57
ひとつの〜.Config構成ファイルを
複数のEXEから読み込ませたいんだけど
いい方法ないですか?
748デフォルトの名無しさん:2005/04/12(火) 20:26:09
AppDomain.CurrentDomain.SetData("APP_CONFIG_FILE", "お好きなパス")
を一番最初に実行。
749デフォルトの名無しさん:2005/04/12(火) 20:41:02
自己解決したからいいけど、役にたたない質問スレだな。

>Mutexクラスで完全に代用できるけどな。
だって。プププ

頭の悪いフレームワークになれちゃってるのって怖いねぇ
750デフォルトの名無しさん:2005/04/12(火) 20:42:02
>>748
めちゃんこThx!!!
これで30個の〜.Configが1つに出来ます!!!
751デフォルトの名無しさん:2005/04/13(水) 13:22:48
バージョンアップ用のインストーラーの作成は出来ないんでしょうか?
初めてのインストール時にはユーザーがどこにインストールするか分からないので、
インストール先を判断し上書きするような動きはインストーラには出来ないのでしょうか?
752デフォルトの名無しさん:2005/04/13(水) 13:35:11
そんなもの、いくつか方法あるだろう。

インストール時にレジストリにインストール場所を書き込んでおいて、
バージョンアップはそのレジストリ情報を元に上書きする。

バージョンアップ用のインストーラーは、最初にインストールした場所と同じ場所に置き、
バージョンアップは同じディレクトリにあるファイルを上書きする。
753デフォルトの名無しさん:2005/04/14(木) 11:43:49
インストーラーが特定のレジストリ値を見るなんてことが出来るんですか?
754デフォルトの名無しさん
>>753
はい。できないと思う理由はなんでしょうか。