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


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

VB.NET質問スレ (Part20)



1 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 11:19:36 ]
前スレVB.NET質問スレ (Part19)
pc11.2ch.net/test/read.cgi/tech/1168585041/

202 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:39:29 ]
>>200
うはw初めて知った。
それって公式な略称なんですか?

203 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:39:53 ]
マイクロソフトの出す資料には.NET Fxと書いてある。

204 名前:デフォルトの名無しさん [2007/03/18(日) 23:40:14 ]
>>200
FXは俺も3.0とオモタw

そういえばみんなフレームワークなんて呼んでるんだろうな?
俺は普通にフレームワーク2.0とかの書き方なんだが略し方とかあるのか?
VisualStudio2005=VS2005みたいに


205 名前:デフォルトの名無しさん [2007/03/18(日) 23:41:16 ]
Clipboard.SetDataObject(Me.PictureBox.Image, True)
で、クリップボードにコピーしようとしたら、10回に8回くらいは、以下のエラーが出るんだけれど
何でかな?

System.Runtime.InteropServices.ExternalException: 要求されたクリップボード操作が失敗しました。
at System.Windows.Forms.Clipboard.SetDataObject(Object data, Boolean copy)


206 名前:デフォルトの名無しさん mailto:sage [2007/03/18(日) 23:46:05 ]
>>205
他所のアプリがクリップボードをロックしてる時にでもエラーになってんじゃね?

207 名前:デフォルトの名無しさん [2007/03/18(日) 23:50:34 ]
>206
サンキュウ。うーん、でもね、他のアプリは確かに沢山動いているけれど、
クリップボードをロックしているはずはないのだけれど。
例えば、このエラーが出たあとPaintを起動してクリップボード使っても
何も問題なく使える。うーん、おかしい。

208 名前:デフォルトの名無しさん [2007/03/18(日) 23:53:12 ]
その前後のプログラムのソース見ないといまいちわからんかもしれんなぁ・・・
なにやってんだ?
俺はクリップボード問題なさそうなんだが

209 名前:デフォルトの名無しさん [2007/03/19(月) 00:05:22 ]
プログラムはFormを3つ開いて、Form3のPictureBoxに絵を描いて
Buttonを押したらその絵をクリップボードにコピーするという簡単なもの。
このサンプルをそのまま使っている。
ttp://www.bcap.co.jp/hanafusa/dotnet/zu02.htm#no4
プログラムの中には、スレッドを使って別の処理を並行してやらせるようなルーチンも
あるのだけれどプログラム起動直後はそういうルーチンは全然実行していないので、
スレッドなどは関係ないと思う。

210 名前:デフォルトの名無しさん [2007/03/19(月) 00:15:10 ]
>>209
COM関連だよなInterRop
そうおもってググってみたら同じような質問があった

でうまくいったみたいだけど参考になるかな?



211 名前:デフォルトの名無しさん [2007/03/19(月) 00:15:56 ]
貼り忘れ 連投スマソ
piza.2ch.net/tech/kako/977/977112364.html
//*********************
232 名前: 名無しさん♯ 投稿日: 2001/04/17(火) 17:21

>>230
COMのスレッドの問題よん。
ここを参考にしてちょ。

質問
discuss.develop.com/archives/wa.exe?A2=ind0011B&L=DOTNET&P=R26673

回答 from Microsoft
discuss.develop.com/archives/wa.exe?A2=ind0011B&L=DOTNET&D=0&P=38177



233 名前: デフォルトの名無しさん 投稿日: 2001/04/18(水) 00:39

>>231-232
ありがとうです。
using System.Threading; して
Thread.CurrentThread.ApartmentState = ApartmentState.STA;
をMainの一番初めに入れればいいんですよね。
この方法で試してみたけど、うまくいったりいかなかったり…。
で、今試したら100%うまくいくようです。
ちょっと謎ですが、たぶん大丈夫でしょう。
どうもありがとうございました。



212 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 01:00:10 ]
普通はSTAThreadAttributeついてると思うんだけど、つけてないの?


213 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 01:01:36 ]
>>207
そりゃ問題なく使えて当然。そんな長時間クリップボードをロックしっぱなしするようなことはフツーしない。

214 名前:デフォルトの名無しさん [2007/03/19(月) 02:05:54 ]
>211
サンキュウ。
Thread.CurrentThread.ApartmentState = ApartmentState.STA
っていうのを入れてみたが効果なし。
おかしい。

215 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 07:39:15 ]
>>214
.NETのVersionはなに?.NETのVersionが2.0なら
>Thread.CurrentThread.ApartmentState = ApartmentState.STA 
は既にレガシーで機能しない。
メインスレッドは属性[STAThread]で指定し、それ以外のスレッドならスレッド開始前に
Thread.SetApartmentStateで初期化する必要がある。

それからPictureBoxはGUIコンポーネントだから、もしメインスレッド以外から
PictureBox.Imageを参照してるならおかしくなるのは当たり前だけどそこは大丈夫?

216 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 08:08:45 ]
マイクロソフトはレガシーって呼ぶのか…。obsoleteとか言ってくんないとわからんw

217 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 08:37:32 ]
>>215
もうだめだ .Image が .Invoke に見えた(orz

218 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 08:44:50 ]
それは目がピンヴォケですね

219 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 09:05:56 ]


220 名前:デフォルトの名無しさん [2007/03/19(月) 10:06:46 ]
Directoryクラスについて教えてください。

ヘルプに、
「Directory クラスの静的メソッドは、すべてのメソッドでセキュリティ チェックを実行します。
オブジェクトを何回か再利用する場合は、このようなセキュリティ チェックが必ずしも必要では
なくなるため、これらの静的メソッドの代わりに DirectoryInfo の対応するインスタンス メソッドを
使用することを検討してください」

とありますがこのセキュリティチェックというのは、Windows固有の機能でのチェックでしょうか、
それともウイルス対策ソフトにチェックをしてもらうということでしょうか?

このヘルプの意味するところは、「初回は必ずDirectoryクラスを使い、一度使ったフォルダは
すぐ次ではDirectoryInfoクラスを使うようにする」ことで、ウイルスチェックなどがしっかり掛かる
ということを意味しているのでしょうか?それともこれらのセキュリティチェックとは、いわゆる
コードアクセスセキュリティのようなもののことでしょうか?すみませんがよろしくお願いします。






221 名前:デフォルトの名無しさん [2007/03/19(月) 10:09:02 ]
また、逆に言うと、Directoryクラスを使わず、DirectoryInfoクラスだけを使ってしまうと
セキュリティチェックが掛からず、ウイルスに汚染されてしまう危険がある、といったことをも
意味するのでしょうか?これもあわせてお願いします。

222 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 10:13:30 ]
CASの事だよ。
ウィルスとか関係ない。
DirectoryInfoでもチェックは入るが、
例えばインスタンス作成時だけチェックすれば済むとか、
そういう話だよ。

223 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 10:24:35 ]
>>217

とりあえずもちつけ
落ち着いて理論的に考えていけばきっと解決できる問題だ!!


224 名前:デフォルトの名無しさん [2007/03/19(月) 10:32:50 ]
>>222
ありがとうございます。やはりコードアクセスセキュリティのことだったのですか、

>DirectoryInfoでもチェックは入るが、
>例えばインスタンス作成時だけチェックすれば済むとか

ということは、ヘルプの言ってることは、原則として、

 インスタンス作成時は Direvtoryクラスを使い、
 それ以降そのインスタンスの使用は DirevtoryInfoクラスを使ってください

と考えてよいということでしょうか?そしてみなさんもそういう原則を踏襲して
日々コードを作成しておられると考えてよいでしょうか?

225 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 10:44:13 ]
>>224
どこをどう読めばそう曲解できるのか不思議だが、書いてあるとおりだよ。
CASにかかる時間が気になるほど回数呼ばないならどっちでもいいってことだ。

226 名前:デフォルトの名無しさん [2007/03/19(月) 11:07:57 ]
>>225
たびたびすみませんです。

まだよく理解できていないのですが、DirectoryInfoでもDirectoryでも、
CASに関しては同等なのでしょうか、それともやはり顕著に異なるのでしょうか?

もし同等なのであれば、どちらを使ってもよい、ということになりコード作成で
気にする必要がなくなってありがたいのですが、ヘルプではやはり異なるように
書かれてあるようにも感じられます。CASをやってくれるのがDirecotryだけであるなら、

1.たくさんの回数呼ばないのなら、すべて 「Direcotry」 で済ませてよい、

しかし

2.もし同じフォルダーをたくさん回数呼ぶようであれば、最初だけはDirectoryを
  使って、あとは DirectoryInfo を使うようにするべきである、

ということでしょうか?そしてこの原則をはずしてすべてを DirectoryInfo だけで
記述してしまうと、.NETのプログラムとしては大きく欠陥となる、ということを意味する
のでしょうか?この辺が気になっています。VB6ではこういうことを考える必要が
なかったもので戸惑っています。

227 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:32:46 ]
なんでそうなる

228 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:35:12 ]
プログラミングがあまりに論理的なので忘れてしまうことが在る

プログラミングはスポーツ、つまり活動的な行為なのですよ

人に聞くなんて恥ずかしい行為は慎むとよい

229 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:36:24 ]
DirectoryInfoはチェックしないなんて
どこに書いてあんだよ。

同じディレクトリに対して操作を繰り返すんだから、
最初のインスタンス作成時にチェックするだけで済むだろ。
だからコンストラクタとかその辺でチェックしてるってことだよ。

230 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 11:39:44 ]
そろそろさじ投げてもいいほど俺たちは堪えてるよな?



231 名前:デフォルトの名無しさん [2007/03/19(月) 12:07:46 ]
>>229
>DirectoryInfoはチェックしないなんてどこに書いてあんだよ。

>>220で挙げたようなヘルプの説明はそういった意味かと思いました。
これは意味が異なるのでしょうか。いろいろお聞きしてすみません。

>同じディレクトリに対して操作を繰り返すんだから、
>最初のインスタンス作成時にチェックするだけで済むだろ。
>だからコンストラクタとかその辺でチェックしてるってことだよ。

ということは、コンストラクタを使う限りは、DirectoryでもDirectoryInfoでも
CASが掛かるということでしょうか、そうであれば、初めから両者の差は、
コンストラクタ以外のメソッドでのみ異なるということになるわけなのでしょうか。
たびたびお聞きしてすみません。

232 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:19:11 ]
reflector.netでも使えばいいんじゃないか?

233 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:32:20 ]
諦めた、もう無理w

234 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:37:29 ]
どうやってDirectoryのコンストラクタを使うんだ。
どうやってコンストラクタを使わずにDirectoryInfoを使うんだ。


って言ったらコンストラクタ使わずに使えるよ、とか言われんだろな。
そういうことじゃないんだ、そういうことじゃ…


235 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:38:41 ]
>>231
そのセキュリティチェック云々のたわ言は別にして
DirectoryとDirectoryInfoの違いはわかってるのか?

236 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:43:29 ]
>>231
・・・なんという電波解釈wwww

237 名前:デフォルトの名無しさん [2007/03/19(月) 12:46:37 ]
>>235
>DirectoryとDirectoryInfoの違いはわかってるのか?

それもあいまいなのですした。すみませんです。

>そのセキュリティチェック云々のたわ言は別にして

この件はそれほど気にしなくてもいいという感じでいいでしょうか?

238 名前:デフォルトの名無しさん [2007/03/19(月) 12:54:47 ]
TextBoxに入力した内容を次にソフトを立ち上げた時に表示するように保存しておくようにしたいんですけど。
どうやるんですか?
データファイルとかソフト本体以外のファイルは作らないでやりたいんです。

239 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 12:57:52 ]
1回のCASの検査にかかる時間はせいぜい1/1000秒かそれ以下。
1000回繰り返したら1秒遅くなることになるが、これが気になるならうまくやれってこと。

240 名前:デフォルトの名無しさん [2007/03/19(月) 13:01:52 ]
>215
サンキュウ。
VS.NET2003です。
その後のテストで、以下の事実が判明しました。ここで教えてもらったスレッド関係の設定をしなくても、
別のDELLマシンでは、何の問題もなくpictureBoxクリップボードにコピーできる。
エラー発生するのは最初に開発していたマシンのみ。
エラー発生しても、プログラムの実行を継続してやれば、2回目以降は成功する。

というわけで、よく分からない状態です。たまたま解決したのか、また、別のマシンで発生する可能性があるのか考えるとちょっと怖い。
お客さんのマシンで発生したら最悪。。。




241 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 13:02:17 ]
>>238
情報量増やさずに情報を増強するのは無理
普通は外部ファイルとして保存するかアプリケーション構成とかに保存するんだろうが、
嫌なら諦めろ

242 名前:デフォルトの名無しさん [2007/03/19(月) 13:04:20 ]
>>238
念じるしかないんじゃないの?
増やさないで情報を保存するなんて、エスパーしかできねーし。


243 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 13:04:37 ]
>>238
レジストリに格納できないか?


244 名前:デフォルトの名無しさん [2007/03/19(月) 13:14:38 ]
>>239
>1回のCASの検査にかかる時間はせいぜい1/1000秒かそれ以下。
>1000回繰り返したら1秒遅くなることになる

そうだったのですか。わかりました、ということは原則としてアクセス回数が
少ないものの場合は、Directoryですべてまかなう方がむしろよい、というふうに
つまりCASを必ず通すという考えでやれば間違いはない、ということなのですね。
どうもありがとうございました。

あとは、DirectoryとDirectoryInfoの違いについてまた調べてみますです。
どうもでした。


245 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 14:16:26 ]
おめでとうございます。
日常生活でのコミュニケーションに障害を感じるレベルです。


246 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:36:42 ]
>>238
アプリ本体のアセンブリ自身を書き換えてやればいいんじゃないか?

247 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:40:19 ]
>>243
それも外部ファイルいじってるやんw

>>238みたいなのはもう居なくなれよwwwww
常識的に考えてそんなことしねぇよwwwww

248 名前:デフォルトの名無しさん [2007/03/19(月) 15:41:53 ]
まあ、彼がファイルとか作りたくないっていう理由が全くわからんけどね。
Assembly自身の書き換えは、厳格名を持ってる場合に問題出るだろうし、そもそも最近のセキュリティソフトが嫌うと思う。
EXEの書き換えなんて。
普通にapp.configに書き出せばいいのに。


249 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:52:26 ]
>>247
少なくとも新規作成はしない罠

250 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:55:27 ]
>>249
確かにw


しかしまぁ、何故新規作成したくないというか・・・・
きっとダメな理由でもあるんだろうけどなぁ





251 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 15:59:14 ]
それならSystem32あたりで適当なファイルをランダムに選んで乗っ取れ

252 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:04:16 ]
ブートローダ乗っ取ればいいんじゃね?

253 名前:デフォルトの名無しさん [2007/03/19(月) 16:05:35 ]
PCに残せないなら、前回の最終入力を作業者の脳内に残してもらえばいいじゃん。
それを画面起動時に入力してもらう。

254 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:08:58 ]
ふっかつのじゅもんか。

255 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:11:21 ]
設定サーバを立ててオンラインで保存・読み込みすればいいんじゃね

256 名前:デフォルトの名無しさん [2007/03/19(月) 16:13:15 ]
まあ、普通に馬鹿な仕様を変更すればいいだけだろ?
ローカル保存可とするか、保存する場所ないならば前回入力なんぞ保持しないか。

257 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:38:26 ]
VBでいうAsc関数はフレームワークではどの様に記述するのでしょうか?
Microsoft.VisualBasic.Strings のメンバではなくてです。

258 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:38:54 ]
system.math
名前空間の中じゃねぇの?

259 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:44:21 ]
Reflectorで覗いてみたら?
自己責任で

260 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 16:44:27 ]
>>257
普通にInt32にキャストしろ



261 名前:257 mailto:sage [2007/03/19(月) 17:18:27 ]
たくさんの回答ありがとうございます。

>>258
名前からして違うと思います。一応確認しました。

>>259
リコンパイラ以前使ったのですが、どこに入れたのか忘れちゃいました。
Platform SDK か何かをインスコしたパスの中に実行体があるんでしたっけ?

>>260
キャストですか?

262 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 17:28:34 ]
Dim row as DataRow
row("ID") = 3
みたいに、括弧をつけてアクセス出来るようにするには、
クラス定義の時、どのようなメソッドを追加すれば良いのでしょうか。

263 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 17:34:18 ]

引数設定すればいいんじゃね?

Public Property Row(ByVal ColName As String) As DataRow
Get
return HOGEHOGE
End Get
Set(ByVal value As DataRow)
_HOGEHOGE= Value
End Set
End Property

264 名前:デフォルトの名無しさん [2007/03/19(月) 17:34:47 ]
とりあえずHashMapとかディクショナリとか。
.netになって意識してないけど、デフォルトプロパティもあるんだっけ?

上記の場合、Row.Item("ID")な書き方が正なように思う。
で、ItemってのがHashMapなりディクショナリで実装。
DataRowのデフォルトプロパティがItemだから、row("ID")でもアクセスできる。
かな?

265 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 17:46:36 ]
>>264
あ、そっち方面の話だったのねwww

266 名前:デフォルトの名無しさん [2007/03/19(月) 18:22:31 ]
>>263-265
どうも丁寧にありがとうございました。

267 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 18:38:05 ]
ちょっと質問です

VB.NET 2005のWinアプリでXSDスキーマ(スキーマA)使ってデータを読み込んだりしようとしている。

このスキーマAはプロジェクトAのSchemaフォルダに配置されていて実行時にこれを読み込みたい
(ただし、直でファイルパスを切りたくないので相対パスでアクセスしたい)

開発環境では、プロジェクトAのBinフォルダ以下のReleaseやDebugフォルダの中に保存されてしまい、
インストーラからインストールした時は、実行ファイルと同じ階層にSchemaフォルダがあるため、相対パスではアクセスできないので
相対パスで開発環境でも、実行環境でも同じ相対パスでアクセスしたい。

インストール時のフォルダ構造を開発環境に合わせればいいじゃないかといわれればそうだけど、
もし特に設定ナシで目的が達成できるならと思い質問させてもらいました。

説明が下手で伝わりにくいかもしれませんが、よろしくお願いします。



268 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 19:09:56 ]
exeファイルにNTFSストリームをくっ付ければ
hoge.exe:hoge.txt
とかに保存すれば

269 名前:268 mailto:sage [2007/03/19(月) 19:11:17 ]
>>238
です

270 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:04:50 ]
>>267
Schema フォルダのパスを設定ファイルに書いとけばいいんじゃね?



271 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:08:41 ]
>>257
これでわかるかい?

Dim s As String = "abcABC"

For Each c As Char In s
  Dim a As Integer = Convert.ToInt32(c)
  Console.WriteLine("{0}: {1}", c, a)
Next


272 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:34:45 ]
Ascをreflectorで見た
何気に気合入ってたよ
Unicode<->ASCII(MS-shiftjis?)

273 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:39:15 ]
Microsoft.VisualBasic.Asc() じゃダメ?

274 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 23:16:11 ]
>>271
それはAscW

275 名前:デフォルトの名無しさん [2007/03/19(月) 23:34:22 ]
>>270
やっぱそうなっちゃいますよね?
あんまり、パスの直書きはしたくなかったんで聞いてみたんですが
とりあえずいい案思いつくまでそれでしのごうかと思います
(というか、そのままになりそうな予感)

レスサンクスでした

276 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:03:30 ]
質問。StreamReader.Read(Char(), Int32, Int32) で文字列を読み込んだら、空白部分がnothing扱い(!?)になるんだが、
空かどうかはどう判定すればいいの?C#では普通にナル文字が入ったんだけどなぁ・・・。


277 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:11:46 ]
VB の Nothing は C# では default(T)。
default(Char) は '\0' だな。

で、空白とか空とかって何?

278 名前:デフォルトの名無しさん [2007/03/20(火) 00:20:32 ]
この質問はVBの質問とはちょっと違いますが、
Windowsの仕組みを良く知っている人が多そうなここで質問させていただきます。
間違っていたらごめんなさい。
質問は、
Cでコンパイル済のEXEファイルAがあって、それはある種のシミュレーションを
繰り返し計算して、計算結果の数値を画面にずらずらと出力しています。
i=1 数字1  数字2  数字3
i=2 数字1  数字2  数字3
i=3 数字1  数字2  数字3
...
...
こんな感じです。そのソースを入手できないのですが、何らかの方法でこの出力している数字を
リアルタイムで取得して、それを別プロセスで動いているVBで作ったグラフ描画ソフトBに
データとして送りたいのです(ファイルマッピングか何かの方法で)。
問題は、画面の数字を取り込む方法なのですが、何か良い方法はありますか?

279 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:26:53 ]
タイマで WM_GETTEXT 投げてりゃ良いんじゃね

280 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:27:19 ]
ProcessStartInfo.RedirectStandardOutput プロパティがそれっぽい
ProcessStartInfoはProcess.Startの引数として使う
やったことないから合ってるかは知らんが



281 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:32:33 ]
> 画面にずらずら
もうプログラムとか横においてだな、
詳しく書かないといけないところを省略するなよ

OCRが最も汎用的だな

282 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:38:37 ]
ちょwwwOCRてwwwww


まずデジカメが必要だから買ってきて



283 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 00:45:04 ]
フォント固定で種類が数値+α程度なら、パターンマッチも
そんなに難しくはないだろうね、

284 名前:デフォルトの名無しさん [2007/03/20(火) 00:59:23 ]
>280
ありがとうございました。教えてもらった方法で、
意外にも簡単にできました。でも一つ問題がありまして、
出力をリダイレクトしたら、画面の表示が出なくなりますが、
希望としては、画面にも今までどおり出しながら、同時にリダイレクトして
取り込みたいのですが、それは無理でしょうか?

285 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 01:00:52 ]
受け取った出力をそのまま標準出力に流せばいいじゃない

286 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 01:09:57 ]
そのためのtee

287 名前:デフォルトの名無しさん [2007/03/20(火) 01:14:27 ]
>285
VBからシミュレーションソフトを起動していますが、そのConsoleに
AttachConsoleする方法が分かりません。
>286
TeeってDOSにありますか?探してみたのですが無いようでした。

もっと簡単に、リダイレクトしながらconsoleにもそのまま出力する
というプロパティ設定があるといいのですが。。

288 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 07:18:16 ]
無いならダウンロードするか作れよ。

289 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 09:41:48 ]
自分でコンソール作ればいいじゃないか

290 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 10:32:04 ]
あるテーブル2つのデータを持つDataSetがあります
TableA
TableB
がデータセットに格納されており、2つのテーブルは
TablA:TableB=1:Nの関係でリレーションが張られています。

TableA/TableB共にデータを追加・更新・削除した後にDBに繁栄させるためにUPDATEメソッドを実行したいのです。

ここで普通データアダプタで更新する場合

Tableという名前のDataTableがUpDateメソッドで反映される為
TableAの名前をTableに書き換えてデータアダプタでUpDateしています。
その後TableAの名前を元に戻し、
TableBの名前をに書き換えてデータアダプタでUpDateしています。

2回データアダプタを作成し、更新していますが、
同一コネクション内でトランザクションをかけている為、同時実行時などは問題なく処理できています。
しかし、この処理が非常にスマートでない気がします。

なにかもっと簡単にリレーションの張られたデータを更新する手法があるのではないかと情報を集めてみたのですが、うまい解決方法が見つかりません。
もし、なにかスマートな解決方法や考え方があるよ?とか、俺はこうしている
などの情報を少し分けてもらえないでしょうか?

よろしくお願いします。



291 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 10:35:25 ]
アダプタで出来るのは単純な更新のみと割り切って、SQLでごいごいと書く。


292 名前:デフォルトの名無しさん [2007/03/20(火) 10:36:29 ]
>289
VBアプリから他のコンソール画面に文字出せるのか?


293 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 10:46:59 ]
>>292
それは普通にムリつうか・・
実現できても手法が難しいんじゃね?


294 名前:デフォルトの名無しさん [2007/03/20(火) 15:04:17 ]
Relationネタに便乗

親と子の関係が
1:NならリレーションOK
0:N のデータが存在する場合エラーになるよね?
やっぱSQLで抽出して
1:N(0件含む)の関係にしてからじゃないとDataSetにリレーション設定できないの?

295 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 15:23:29 ]
>>294
親なし
子ありってのはできないんじゃね?
外部キー設定の云々があるから防御掛けられてるような希ガス

296 名前:デフォルトの名無しさん [2007/03/20(火) 18:05:29 ]
VB2005のExpress Editionを使いたいのですが
XPのSP2にしないとインストールできないみたいです。
ですがupdateができなくて困っています。
SP1で使えるようにはできないのでしょうか?

297 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 18:21:51 ]
>>296

ネット繋いでてSP2にUpDateしてないとか
今時どんな会社だよwwwww
まぁ、認証できないとか、管理者権限がないとか色々あるだろうが・・・
割ってんなら素直に2000でやっとけw

恐らくAPIのバージョン情報から取得できる部分で比較しているはずだから(その他のファイル場ジョンも見ているだろけど)
その辺の深い部分いじればいけるかもしれないけどまず無理だと思ったほうがいいんじゃないか?

むしろこの環境でしか動かないって言ってるんだからその環境に合わせるべきだと思う。
じゃないと、無理に入れれたとしても動かない可能性もあるし

298 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 19:17:21 ]
どうなんだろ。
SP2であることがインストールの絶対条件なのであれば打つ手なしだけど、
Web関連やIIS関連で引っかかってるなら何とかなりそうな気がしないでも
ない予感を若干感じるような気がする。

299 名前:デフォルトの名無しさん [2007/03/20(火) 22:19:18 ]
ttp://www.microsoft.com/japan/msdn/vstudio/support/readme/
ここに明確に書いてあるな
”Visual Studio 2005 は、次のいずれかのシステムにインストールできます。”と
XPはSP2しかダメみたいね

300 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 23:41:24 ]
2005でも2003と同じようにエディタの上部のドロップダウンリスト使って
オーバーライドのスケルトンを挿入できるようにする設定ってある?

しかし、どうしてこの機能カットされたんだろう。
余計なことすんなヴォケ、と言いたいよまったく。



301 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 03:08:16 ]
クラスウィザードが削除された時の衝撃よりマシだろ、慣れろ
つか、C#やVB.NETならドロップダウンでスケルトン挿入できるが
2003で、MFCやATL系のプロジェクトでスケルトン挿入なんかできたっけ

302 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 10:18:40 ]
こめん俺はクラスウィザートは無用の長物だと思ってたw

やっぱり削除されたのかな>オーバーロードのスケルトンの自動挿入
あの機能を発展させて、シャドウとかイベントハンドラ(もちろんWithEvents使わない
場合の話だけど)の自動挿入とかも欲しかったんだけどな。






[ 続きを読む ] / [ 携帯版 ]

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

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