トップページ⇒tech
1001コメント345KB

VBプログラマ質問スレ(6.0以前) Part50

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/10/22(日) 20:39:53
ここは Visual Basic 〜6.0 の質問スレです。
質問者は使用しているOS、VBのバージョン、サービスパックのバージョン、
「何がしたくて、どうしたけど、どう困っているのか」を明確に書きましょう。

VB.NETは別物なので専門スレで、VBA、APIの質問もそれぞれのスレで。

○ 質問者の心得
 一.質問する前にMSDNやGoogle、過去ログにも目を通してみる。
 二.VBScript、インストーラーなどはこのスレでOK。
 三.質問は第三者にもわかりやすいよう簡潔かつ具体的に。
 四.荒らしは相手しない。

○ 回答者の心得
 一.答えられない質問は無駄に罵倒せずスルー。無理するな。
 二.代用法を強制しない。
 三.回答する上で必須ではない情報をむやみに聞き返さない。
 四.荒らしは相手しない。
 五.VB情報募集中。
 六.回答は質問者が理解できるよう具体的に。

MSDN Online Japan ホーム
 http://www.microsoft.com/japan/msdn/default.asp
Visual Studio 6.0 Service Pack 6
 http://msdn.microsoft.com/vstudio/downloads/updates/sp/vs6/sp6/default.aspx
Google
 http://www.google.co.jp/

※「まず自分で調べる」クセを身につけよう。
01591562006/11/11(土) 10:17:50
レスどうもです。

>>157
やはりそういう手順になってしまいますか。

>>158
すみません。説明不足なところがありました。

すでに出来上がっているアプリケーションの画面のテキストボックスのサイズ
をマウスでドラッグするなどして変更する、というだけの行為なのですが、
変更する画面が複数あるので、実際の画面を確認するのに実行/開始(F5)
をして該当する画面までたどっていくというのが面倒だなと思い、ショートカット
する感じで変更した画面(編集中の画面)を確認する方法はないものかと質問
したしだいです。
ただ作っている最中の画面の確認をしたい、というだけなのでコード類はいじり
たくないというのがあります。
(ほかの人が作ったものの上、私はVB操作の経験があまりありません。)
それで方々調べてみたのですが、それらしいことが見つからなかったので、ここに
質問させていただきました。
>>156の文面じゃよくわかりませんね。orz
0160デフォルトの名無しさん2006/11/13(月) 15:40:34
VB6にSP6を充てたのですが、適用できているのかどうかは判るものでしょうか?
バージョン情報の中にはソレっぽい項目がなくて…
VB5のときにはタイトルに[(SP○)]とSP番号がくっついていたのですが今回見あたりません。

別のハードディスクに過去につかっていたVBがあり、SPのセットアップ中、そっちのドライブに書き込まれているような
表示もあったりでほんとうに適用できているか不安なもので…

そのへんの情報のググり方のコツでもいいです… orz
0161デフォルトの名無しさん2006/11/13(月) 15:48:45
項目無いなら入ってないんだろうさ
01621602006/11/13(月) 17:30:41
>>161
どもです。
ためしにライセンス違反覚悟で、他のドライブが1つしかないPCで
全部のセットアップをやりなおしたら、SP6の表示がありました。

ダメな方は、どうもおかしな環境になっていて、VisualStudio自体が正常にインストール出来てないようでした。
ドライブ指定しようと何しようと、旧ドライブに何か書いた上に失敗って出てる…気付かなかった orz
0163デフォルトの名無しさん2006/11/13(月) 20:38:56
>>160
なぁなぁ?
オレってば、すごい不思議なんだけどよぉ?


どうして、インストールするだけの作業で失敗すんの?


なぁなぁ?なんで?
0164デフォルトの名無しさん2006/11/13(月) 20:40:36
ヒント: 無能
0165デフォルトの名無しさん2006/11/13(月) 21:32:08
>>163
レジストリとかをを変に弄ってたりすると失敗する事もある。
0166デフォルトの名無しさん2006/11/14(火) 09:20:11
>>164
誰でも出来るインスコ作業を能力で失敗できるなら、それはそれで才能だとおも・・・いたい
01671602006/11/14(火) 11:16:58
仕事用の環境で、HDDまるコピーで環境移植したんで、OSとProgramFilesフォルダがサブHDDにも居る上に、
窓98だったのを2kに上書きしていて、VB4が旧と新の両方に、VB5が新にインストールされている。
セットアップ中のインストール先を見ていると、先のを全部見つけ出して、勝手に分解して失敗してるようだ。

レジストリは触ったことないが、さすがにアホい環境っぽいので、新規購入のほうで使うことにする…>VB6
へんなことですまん。
0168デフォルトの名無しさん2006/11/14(火) 11:37:37
そりゃおかしくなって当たり前だわな
つーか仕事用でプログラム環境構築なら
OSごと全部クリーンインスコすべし
0169デフォルトの名無しさん2006/11/14(火) 12:07:43
>>160,167

まぁ、その、なんだ。
ガンガレ。
01701602006/11/14(火) 15:41:02
ああ、それでもレスが…ありがたや。ガンガル。

>>168
PCから8ビットCPUまで、扱うものがいろいろ有りすぎるのに、PC1台しかもらえず各種環境詰め込み…
上位PCに移行するにも、並べて使えるワケでもなくて、いちからやり直すとすざまじく……
HDD移植で今回の惨状。

もうじき新規にPCを購入してもらえるので、そっちはクリーンインスコでいきまふ。
0171デフォルトの名無しさん2006/11/14(火) 17:58:05
VB2005で、Windowsユーザを管理するソフト、って作れるでしょうか?
色々調べているのですが、それらしい資料に当たれません。
ご存知の方、方法論でもヒントでもいいので、情報下さいませorz
0172デフォルトの名無しさん2006/11/14(火) 18:06:36
>>171
お前は1すら読めないのか
氏ねばいいのに
0173デフォルトの名無しさん2006/11/14(火) 19:29:15
>>171
バッチファイルでさえ作れる。
0174デフォルトの名無しさん2006/11/14(火) 22:07:08
VB初心者友の会ってまだやってんの?投稿全然ないけど。
0175デフォルトの名無しさん2006/11/14(火) 22:53:52
>>174
何か投稿してみりゃいいじゃん。
0176デフォルトの名無しさん2006/11/14(火) 23:47:00
端末側のVB画面からリモート越しにSunのワークステーションに置いているShellコマンドを
起動したいのですが、シンプルに作れそうなそういうAPI系のコード
ないでしょうか?TELNETとかwinsocとか駆使して自前で作らないと
難しいでしょうか?Vb6(SP3),OsはXPです。Sunワークステーションはsol.10です。
0177デフォルトの名無しさん2006/11/14(火) 23:48:39
>>176
俺だったらhttps経由でCGI操作するが。
0178デフォルトの名無しさん2006/11/14(火) 23:52:01
2chで過去ログ倉庫に入ってるスレの最終更新日(最終書込日)を取得する方法を教えてください。
やりたいことは過去ログの勢い(生存時の勢い)の一覧を作ることです。
勢いは時間当たりのレス数で算出する為、どうしてもスレが立ってから最終書込まで
何ヶ月何日何時間掛かったのかを調べる必要があるのです。
スレが立った日時はスレの番号から、レス数は過去ログ倉庫のsubject.txtから
取得できることがわかり、そこまではコードも書いたのですが、最後のレスの日時だけがわからず行き詰まってます。

●は持っているので●を使う方法でも構いませんが、●でログインする方法とかは全然わからないので、
具体的なサンプルコードでの回答をお願いします。Visual Basic6sp6です。
0179デフォルトの名無しさん2006/11/14(火) 23:59:18
>>178
2chサーバの負担になりそうだから教えない
0180デフォルトの名無しさん2006/11/15(水) 00:18:25
>  一.答えられない質問は無駄に罵倒せずスルー。無理するな。
0181デフォルトの名無しさん2006/11/15(水) 00:18:54
蜂の巣状みたいな正六角形をpictureboxの中にいっぱい書くには
どうすればいいでしょうか?
0182デフォルトの名無しさん2006/11/15(水) 00:25:31
>>181
いっぱいとは
一つの六角形を最大の大きさに?
固定の大きさの図形をいっぱい敷き詰め?

三角の組み合わせなんだからパズル的にやってみよう
0183デフォルトの名無しさん2006/11/15(水) 00:58:47
>>182
レスありがとうございます。
固定の大きさの図形をいっぱい敷き詰めです。
0184デフォルトの名無しさん2006/11/15(水) 01:09:23
>>183
じゃあ固定の六角形の大きさわかってるんだから敷き詰めるだけでしょ
0185デフォルトの名無しさん2006/11/15(水) 01:37:43
>>184
正六角形が書けないのですが・・・
どうしたらいいのでしょうか?
0186デフォルトの名無しさん2006/11/15(水) 01:48:32
>>185
三角形くらい書けるだろ
一辺がわかれば高さもわかるだろ
線と点の交点は習っただろ
三角形を組み合わせれば六角形が書けるだろ
正三角形の角度くらいわかるだろ
HEX描画くらいぐぐれば出てくるだろ
一個の六角形が書ければ重ねるだけでしょ
色々やり方あるでしょ
0187デフォルトの名無しさん2006/11/15(水) 02:05:24
>>186
三角形は書けますが・・・
その方法で書くと六角形の中に線が出てくるので、
六角形のそれぞれの頂点の座標を指定して書いてみましたが、うまく書けずに縦長になってしまいます。
適当な大きさの正六角形の座標を教えていただけないでしょうか?
0188デフォルトの名無しさん2006/11/15(水) 02:14:24
>>187
ちゃんと計算した?タイルにするには正六角形+αが無いとめんどくさいよ
重ねる事も考えて作ろうね
0189デフォルトの名無しさん2006/11/15(水) 02:31:42
LOGOは知らないけどさ
top:
left 30
forward 100
right 30
forward 100
right 30
forward 100
left 30
forward 100
if x < width goto top
以下略
0190デフォルトの名無しさん2006/11/15(水) 06:41:31
ComboBoxのテキストを右寄せにする方法を教えてください。
スペースで調整するとかではなく、文字寄せ方向の変更です。
0191デフォルトの名無しさん2006/11/15(水) 08:09:21
>>190
バカだろ。

文字寄せっていうのは、内部で文字位置を調整してる
だけなんだよ。


コンボボックスの場合は、APIで位置を調整するしかない。
0192デフォルトの名無しさん2006/11/15(水) 08:54:15
ハズレ
0193デフォルトの名無しさん2006/11/15(水) 14:28:13
>>191
>>191
>>191
>>191
>>191
>>191
0194デフォルトの名無しさん2006/11/15(水) 15:07:22
だれか教えてやれよ。
0195デフォルトの名無しさん2006/11/15(水) 15:33:21
>>192,193
もしかして、右から左に読むとか双方向テキストの表示と
勘違いしてない?
0196デフォルトの名無しさん2006/11/15(水) 15:46:58
MsgBox "WWWWWWW"&vbTab&"bbb"&vbLf&"1111111"&vbTab&"bbb"
タブで揃えようとしてもずれるんですが、
うまく揃える方法はありませんか?
スペースをいくつ足すとよいか計算する方法とか。
0197デフォルトの名無しさん2006/11/15(水) 15:51:52
>>196
それ、おもしろい宿題じゃん!
再帰なんかで書いたら、結構格好いい関数できると思うよ。

オレも、夜眠たくなったら、ちょっとコーディングしてみるよ。
0198デフォルトの名無しさん2006/11/15(水) 15:52:00
>>196
プロポーショナルフォントだと
スペース使用で揃えるのは難しいと思うよ
0199デフォルトの名無しさん2006/11/15(水) 15:56:39
>>196
最大文字幅を10とした場合ね

maxlen = 10
txt = "(スペース10個)"

len = strlen(in_txt)
mid (txt, maxlen - len, in_txt)

脳内コードだが動くと思う
in_str の長さが10 以上だとエラー起こす

つかこれぐらい考えれ
0200デフォルトの名無しさん2006/11/15(水) 16:07:02
<span>に、MsgBoxで使われてるフォントやサイズを指定して、
テキスト入れて、width取り出して、、、で出来ないかな。
0201デフォルトの名無しさん2006/11/15(水) 16:10:44
>>199
的を外してる。

>>196
たしかに、プロポーショナルフォントだとインデントがそろわない。

う〜ん。 難しいねぇ〜。

多分、ぴったりインデントは無理かもしてないけど
なんとなくインデントを合わせる事はできるのかもしれない。

0202デフォルトの名無しさん2006/11/15(水) 18:20:25
プロポーショナルフォントだと文字ピッチが一定かすら怪しい
0203デフォルトの名無しさん2006/11/15(水) 19:05:21
95 2000 XP Vによっても違うし。
0204デフォルトの名無しさん2006/11/15(水) 19:54:40
MsgBoxに似せたフォームを作ったほうが楽だろ
0205デフォルトの名無しさん2006/11/15(水) 21:28:37
>190
ComboBox内のEditのハンドルを取得してSetWindowLong、かな?
Win32APIスレあたりが適当かと。
0206デフォルトの名無しさん2006/11/15(水) 21:35:28
>>192,193
カスめ。

オレはお前らのような落ちこぼれが死ぬほど
嫌いだ。

お前らはカスなんだよ。
0207デフォルトの名無しさん2006/11/15(水) 22:38:35
>>206
カス

オ
0208デフォルトの名無しさん2006/11/15(水) 22:47:11
固定ピッチフォントを使えばいいだけじゃん。
0209デフォルトの名無しさん2006/11/15(水) 23:26:29
インデントの奴、今年の基本情報の問題だったなw
0210デフォルトの名無しさん2006/11/16(木) 08:57:36
>>209
プロポーショナルフォントでなければ、そうなんだけどなぁ


詰が甘いな
0211デフォルトの名無しさん2006/11/16(木) 09:23:55
Windows2k+VB6です

Form1, Form2, Form3 とあって、Form上のボタンを押すと子Formを
Modalで開いています。

子Formの最小化Btnを押したら、子Formを含む全てのFormを最小化
したいのですが、とりあえず子FormのForm_Resizeイベントに親Form
のWindowStateを設定するように書いてそれっぽく動くようになりま
した。

ただ、親Formを最小化した瞬間に、子Formのアイコンが消えてしまっ
て、最小化状態から元に戻せなくなるという現象が起きています。

Windowsの制約っぽい気もするのですが、これを回避する(親Formを
最小化しても、Modalで開いた子Formを非表示にさせない)方法は
ありますでしょうか?
0212デフォルトの名無しさん2006/11/16(木) 09:36:28
>>211
タスクバーからって子フォームが消えるって事?



ちなみに、そんなレベルの話でWindowsの制約云々と判断するにはまだ早くね?
0213デフォルトの名無しさん2006/11/16(木) 12:19:28
>>211
モーダルで子フォームを開いているのに
なんで、親フォームが触れるんだよ・・・
0214デフォルトの名無しさん2006/11/16(木) 13:05:20
>>213

>211
>子FormのForm_Resizeイベントに親FormのWindowStateを設定するように書いて
0215デフォルトの名無しさん2006/11/16(木) 13:40:32
>>211
モーダルは絶対使わない方がいい。
0216デフォルトの名無しさん2006/11/16(木) 13:53:12
>>214
なるほどねぇ。。。


なんてマヌケなUIなんだ。
Form2がShowされるときにもリサイズイベント通るんじゃないの?

それは現象というより、どうみても仕様通り動いてるだけ。

というか、やめとけ。
どうしても実装したいなら、子画面をActiveXのexeか、通常のexeにして、
プロセスIDをわけて、個別にAPIでシコシコ挙動を制御すれば実現可能だけど・・・

恥ずかしいプログラミングだw
0217デフォルトの名無しさん2006/11/16(木) 16:02:45
VB6.0 SP3 WinNT
long型の変数に浮動少数点(1.1)などの値を入れた場合
値は自動的に四捨五入されるようですが、この動作はプログラムで
保証されているのでしょうか?

dim temp as long = 1.1
deboug.print temp

1
-------------------------
dim temp as long = 1.5
deboug.print temp
2
0218デフォルトの名無しさん2006/11/16(木) 16:17:54
プログラムがどうやって保証するんだ
0219デフォルトの名無しさん2006/11/16(木) 16:38:34
>>218
回答する知識がないのならレスすんな。



俺も知らんが。
0220デフォルトの名無しさん2006/11/16(木) 16:51:25
>>218
あらし、氏ね

>>217
まず根本的に勘違いしてる。四捨五入はされない。
1.5は2になるが、2.5も2になる。

暗黙の型変換では内部でRound()されてる。詳しくはRound()のHelp参照。
Round≠四捨五入なので注意。
0221デフォルトの名無しさん2006/11/16(木) 17:09:20
Longに小数が入る方が怖い。
勝手に四捨五入されるのも怖い。

基本中の基本だからねぇ・・・

カレンシーの保証する小数桁数も3桁くらいじゃなかったっけ?
浮動少数は誤差が発生するし。

難しいよね〜
0222通りすがりの浮動小数点数野郎2006/11/16(木) 18:26:38
整数及び、0.5(=1/2)、0.25(=1/4)、0.125(=1/8)、0.0625(=1/16)、・・・とか
これらの和は桁数が足りる限り不動小数点数で表現しても誤差が発生しないので
安心して使ってくれ!www
(実装がマトモならリテラル・文字列からの変換でも大丈夫なはず。)

ちなみにリテラルからの変換は文字列からの変換と同じく
10進→2進変換なんで、その逆変換ともども
単純な表現誤差以外に結構厄介な問題がある。
(浮動小数点演算の黎明期、確か1960年代頃にはその話題で
変換の精度についてアメリカ数学会に論文が書かれたくらい厄介な問題だ。)
心配なら整数で初期化してから割り算して値を作れば丸め誤差は入るけど、
より厄介な10進2進変換の誤差は紛れ込まなくなるのでオススメ。
(桁数が足りてる限り整数の10進2進変換には誤差がなく、表現の誤差もからね。)
0223デフォルトの名無しさん2006/11/16(木) 18:41:48
>>222
浮動小数点型に誤差が発生するのは基本中の基本だよ・・・


悲しくなるよ・・・。
0224デフォルトの名無しさん2006/11/16(木) 18:45:31
Dim s As Single
Dim i As Long
  For i = 0 To 9
    s = s + 0.01
  Next i

カナシス・・・。
業務系は浮動小数は極力使わないよ・・・
0225デフォルトの名無しさん2006/11/16(木) 19:59:32

HTMLが表示出来て、軽いコンポーネントを教えてください。
WebBrowserコンポーネントは、重いというか起動が遅すぎて使えません。
ローカルのhtmlファイルを読ませるだけなので、多機能は求めません。

WindowsXP SP1、Visual Basic6 SP6の環境で使えるフリーのものでお願いします。

0226デフォルトの名無しさん2006/11/16(木) 20:09:05
先にメモリにLOADして読み込ませとけばよくね?
02272252006/11/16(木) 20:22:03
>>226
それ自体に時間を食ってしまうため、今回別コンポ探しに来ました。
0228デフォルトの名無しさん2006/11/16(木) 20:23:10
>>225
VBを使うなら、「〜が遅い」ってのはハードの増強で解決するのが基本。
WebBrowser が遅すぎて使えない、ってどんなスペックだよ一体。
0229デフォルトの名無しさん2006/11/16(木) 20:39:12
>>228
Xeon5150x2、メモリは2GBです。
WebBrowserを起動させようとすると結構待たされます。
0230デフォルトの名無しさん2006/11/16(木) 20:40:29
>>229
どのくらいの時間待たされるの?
02312252006/11/16(木) 20:42:46
>>228
スペックはAthlon64 FX57にDDR2-677 2048MBです。
スペックはそんなに低くないと思いますが、これ以上スペックを上げて
WebBrowserの起動が速くなっても、他のも速くなるから
相対的にWebBrowserの遅さが目立つのは変わらないと思います。
人間の感覚は絶対性より相対性の方が濃いですから。

とにかく今回はコンポーネント探しをしております。
代用法や基本を教えていただけるのはありがたいですが
失礼ながら求めているものとは違うので、引き続きコンポーネントの回答をお待ちします。
0232デフォルトの名無しさん2006/11/16(木) 20:55:28
ある程度検索しましたが、それらしい内容を見つけられなかったので質問します。

VB4.0でADOを使用してデータベースへ接続するように記述して、
デバッグしたところうまく動いたので、Exeファイルを作成してみたのですが、
何度やっても「ご迷惑をおかけしております…」というようなメッセージが出て強制終了されてしまい
Exeファイルが作成できません。

いろいろやってみたところ、キーワード"New"がよくないように思いました。
Set cnt = New ADODB.Connection
この行を削除したらコンパイルできたので。

下記のように、宣言時にNewをつけてみてもだめでした。
Dim cnt As New ADODB.Connection

解決法などあればよろしくお願いします。
0233デフォルトの名無しさん2006/11/16(木) 20:55:40
無い。
次の質問どうぞ。
02342332006/11/16(木) 20:56:19
>>231宛
>>232スマソ
0235デフォルトの名無しさん2006/11/16(木) 21:03:27
>>231
どんだけ高性能なマシンだよ・・・。


オレの会社の開発マシンなんか、ドトネトだとコーディングに
文字が追いついてこないようなウンコマシンだけど
それでもWebBrowserでサクサク動く。


処理、間違えてるんじゃない?
0236デフォルトの名無しさん2006/11/16(木) 21:06:39
>>232
開発マシンとexeを実行しているマシンは同一?


しかも、NEWでコンパイルエラーという事は、参照設定
してないんじゃないの?
02372322006/11/16(木) 21:11:09
>>233
ちょっと面白かったです。

>>236
Exeを実行しているマシンというのがどれを指すのかちょっとわかりませんが、
自分のPCでVB起動してコード書いてコンパイルして、ってやってまして
それで今回はExeファイルすら作れないという状況です。

参照設定はできてると思います。
オブジェクトブラウザから見れますし、デバッグ(F5押してやるやつ…)では
たしかに動いていましたから。
0238デフォルトの名無しさん2006/11/16(木) 21:51:55
>>232
CreateObject でやるとか。
0239デフォルトの名無しさん2006/11/17(金) 01:33:20
>>233
無いと答える必要はない。
何故なら悪魔の証明にあるように、無の証明はまず出来ないからだ。
一個人の「無い」という回答は、「俺は知らない」と同義。
0240デフォルトの名無しさん2006/11/17(金) 04:29:08
>>225
> HTMLが表示
→テキストでおk

> ローカルのhtmlファイルを読ませる
→ファイル直読みできるメソッドアリ

つ RichTextBoxコントロール
0241デフォルトの名無しさん2006/11/17(金) 05:00:35
○ 回答者の心得
 一.答えられない質問は無駄に罵倒せずスルー。無理するな。
 二.代用法を強制しない。
0242デフォルトの名無しさん2006/11/17(金) 05:39:24
ルールを守れない質問者より、ルールを守れない回答者の方が多いスレってのも珍しいよねw
0243デフォルトの名無しさん2006/11/17(金) 05:46:29
ここの1はルールというほどの強さは無いさ
あえて心得を外すほどの回答は無いようだが。
0244デフォルトの名無しさん2006/11/17(金) 06:32:25
>>237
せめて、F8。

Option Explicitもつけて。
0245デフォルトの名無しさん2006/11/17(金) 14:31:32
> ここの1はルールというほどの強さは無いさ
その割には質問者には.NETはスレ違いだの、ググれMSDN読めと強制していたような・・・

> あえて心得を外すほどの回答は無いようだが。
いや、そうでもない。
0246デフォルトの名無しさん2006/11/17(金) 15:36:50
常識的に考えても.NETはスレ違いだろう
0247デフォルトの名無しさん2006/11/17(金) 16:35:40
常識的に考えても答えられない質問だからって罵倒するのはダメだろう
0248デフォルトの名無しさん2006/11/17(金) 21:05:52
>>245
ググルのと、MSDN をそれらしい言葉で検索するぐらいのことしてから
質問するのは常識だと思うけど。

質問者自身のためにも。
02492452006/11/17(金) 21:19:06
>>248
あのー、それを俺に言われても・・・。
>>1に書かれていることはルールではないと言ってるのは>>243だよ。
俺はそれを受けて、ルールじゃないと主張する割にはルールのように強制してるな、と返しただけ。

俺自身は.NETはスレ違いだと思うし、先に検索するのを含めて
「○ 質問者の心得」も「○ 回答者の心得」も、それぞれが守るべきルールだと思ってる。
0250デフォルトの名無しさん2006/11/17(金) 21:24:44
>>249
頭の固い人だな、気持ち悪い
02512322006/11/17(金) 21:29:11
>>238
CreateObjectでコンパイルできました!
ありがとうございます。
しかしなぜNewではだめだったのか…わかりかねます。

>>244
Option Explicitもつけてましたし、F8も使っていました。
ですが、コンパイルできませんでした。


もう一つ質問させてください。MSDNで一応調べましたけどわかりませんでした。
またVB4.0でADOなのですが、Recordsetオブジェクトは
ActiveConnectionプロパティ、CursorTypeプロパティなどで
Open前に値の設定ができます、よね。
その設定をしているにもかかわらず、

[RecordSetオブジェクト].Open
だと「引数が足りません」と、エラーになります。
.Open "テーブル名",[Connectionオブジェクト],…
と、引数で値を設定してあげると問題なく開きます。
Connectionオブジェクトでも、同じような状態です。

開くだけならそれでいいのですが、DataGridを使用したいのです。
そのためにはRecordSetオブジェクトを開く前に
[RecordSetオブジェクト].Properties("IRowsetIdentity")=True
を記述しないと表示されないようなので、
RecordSetオブジェクトのOpen前に値の設定をしたいのです。


長くなってすみませんが、よろしくお願いします。
0252デフォルトの名無しさん2006/11/17(金) 21:30:25
Visual basic 6.0を用いた RS-232Cケーブルを用いたシリアル通信についてご質問いたします。

いま、PCとある機器を繋いで1分間隔でデータを要求し、それに対して 返信をもらうようなロガー機能を持たせたシリアル通信プログラムを
作っているのですが、知識が薄いために困っています。使用機能はMScommです。

具体的には、文字列データ約50個を1分おきに送信して (このタスクはタイマールーチンに入れます)機械に要求し、
それに対して応答が来れば受信→ファイルに書込み→ 最終的には時刻と機械から取り込んだ複数の数の関係を
グラフにしたいと思っています。 困っているのは受信のコードの記述ですが、本ケースにおいては、
イベントドリブン形式で(Rthreshold=1,Sthreshold=1等と設定して、) 1文字ずつ受信→イベント発生→1文字データ読取
とさせることが厳しい(と思う)いうことです。
ソース的には �@〜�Cまでのタスクを1分周期で行いたいです。できれば ウォッチドッグ機能もつけたいですね。
�@メインルーチンをタイマーにして、MSComm1.Output="G aa bb cc dd ee ff "
のように、相手機械にaa,bb,cc,dd,eeという変数を要求(ちなみに
Gは相手側機械に要求するというコマンド) �A要求に対する受信を待つ→aa=1.01, bb=2.02, cc=3.03, dd=4.04, ee=5.05
のような値が以下のような感じで相手から返ってくる "1.01 2.02 3.03 4.04 5.05"
�Bここで1文字ずつ受信ごとにイベント発生ではなく送信完了したら、受信待機を始めて受信バッファに
たまったものを一度で書き込む�@〜�Bを4回繰り返す(データが大量にあるため、4回にわけないといけない)
�Cファイルに書込み

VBシリアル通信にお詳しい方、どのようなコードにすれば良いかお教え下さい。相当困っています。
以上、よろしくお願いいたします。
0253デフォルトの名無しさん2006/11/17(金) 21:41:27
>>250
0254デフォルトの名無しさん2006/11/17(金) 22:01:29
>>251
そもそも何故VB4・・・
まさかOSはNT4なの?
0255デフォルトの名無しさん2006/11/17(金) 22:43:53
>>252
人に話すのと人に説明するのが同じ人間って言われないか?
読みづらいんだが…しかも激しく
0256デフォルトの名無しさん2006/11/17(金) 22:51:48
○ 回答者の心得
 一.答えられない質問は無駄に罵倒せずスルー。無理するな。
0257デフォルトの名無しさん2006/11/17(金) 22:53:14
○ 質問者の心得 
 三.質問は第三者にもわかりやすいよう簡潔かつ具体的に。
0258デフォルトの名無しさん2006/11/17(金) 23:02:51
>>257
無駄に罵倒する理由にはならない。
ルールは守るべきだ。
■ このスレッドは過去ログ倉庫に格納されています