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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2007/08/21(火) 12:40:16 ]
ここは Visual Basic 〜6.0 の質問スレです。
質問者は使用しているOS、VBのバージョン、サービスパックのバージョン、
「何がしたくて、どうしたけど、どう困っているのか」を明確に書きましょう。

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

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

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

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

※「まず自分で調べる」クセを身につけよう。


173 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 11:33:16 ]
>>172
ありがとうございます〜

えーと、やっているのはAPIによるPCIボードのアクセスとシリアルの入出力。
シリアルは閉じるとして、APIのほうはClose命令があるのでソレを発行しておけばよいかな…

あと万全を期すため?
EndをQueryUnloadからUnload最後に移動かしら。


174 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 13:12:48 ]
「これからこのプログラムは強制終了するお」っていうのをフラグ立てて、
遠い世界へ旅立つループ処理に教えてあげてループ処理を抜けさせるようにすれば?

175 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 13:36:56 ]
>>174
その時は遠い世界へ旅立つループ処理が終わるのを待ってあげないとダメなので本末転倒なんだぜ?

176 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 14:25:03 ]
>>173
自分の場合メッセージボックスを出してループだけ抜けさせて、Unloadイベントをキャンセル。
改めてユーザー側にもう一度終了させるようにした。
下手に一括でやろうとしてプロセスが残るより安心。

177 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 15:51:33 ]
>>174-176
あー。ループのほうでトラップ(?)するというのはスッポリ抜けてたす。

ループでフラグ立て→[×]→フラグでUnloadキャンセル→ループ内で「フラグ消し→Unload Me→Exit sub」
とやってみた。

それっぽくなった。
こっちのほうが幸せっぽいかな。

178 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 19:00:13 ]
遠い世界に旅だつ、とかなんの意味だかさっぱり分からん。
ダメな奴は本当なにやらしてもダメだな。人に通じる文章すらちゃんと書けないのか。

ループでDoEventsなんて、VBプログラマが嘲笑されるときのネタの定型だぞw
しかもなんでSleepかますの?
Sleepの意味分かってるのかねw

179 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 19:03:55 ]
は?DoEventsはループの中でしかつかわねーしアホか

180 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 00:35:49 ]
しかし>>178さんは昔からずーっとこのスレでがんばってるなあ。
久しぶりにのぞいてみたけど健在で驚いたよ。

181 名前:デフォルトの名無しさん [2007/09/21(金) 09:34:37 ]
>>169
ありがとう。

画像を定比で縮小することはできた。
だけど、スクロールバーで足踏み。

スクロールバーを動かすと確かに図形も動くけど、元の画像がそのまま移動するだけ。
つまり画像を左にスクロールすると、右側には、今まで見えていなかった画像が現れるのではなく、ただのブランクになる

もうわけわからん〜



182 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 11:13:42 ]
デバイスの安定待ちとかの十数msもタイマーか何かに逃げないといけないものなのか?

183 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 11:41:31 ]
MsgWaitForMultipleObjectsは使うがSleepは使わないな

184 名前:169 mailto:sage [2007/09/21(金) 12:11:18 ]
>>181
手抜き説明。書き殴りだからあっているかどうか不明

[Form1]
'元画像をPicture1に表示、表示用画像にPicture2を用意
'簡単のためScaleModeはPixelで統一
'スクロールバーの値を利用する
Private Sub HScroll1_Change()
'HScroll1の値の範囲は0からPicture1.Width-Picture2.Width
Bitblt Picture2.hdc,0,0,Picture2.Width,Picture2.Height, _
    Picture1.hdc,HScroll1.Value,VScroll1.Value, _
    vbSrcCopy
End Sub

Private Sub VScroll1_Change()
'VScroll1の値の範囲は0からPicture1.Height-Picture2.Height
Bitblt Picture2.hdc,0,0,Picture2.Width,Picture2.Height, _
    Picture1.hdc,HScroll1.Value,VScroll1.Value, _
    vbSrcCopy
End Sub
元画像と表示画像、スクロールバーの値について適当な絵と値を書いて考えてみれ
これでカネ稼ぐんだろうから、少しは苦労しなよ。こんなのは基礎だぞ〜

185 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 13:29:26 ]
VB6.0でFarPoint SPREAD 3.0を使ってプログラムしています

SpreadPreviewを貼り付けたフォームでKeyPreviewをTrueにして
フォームのKeyDownイベントをトラップしていると
SpreadPreviewにフォーカスが有る時に
一度しか押していないキーのイベントが2度発生してしまいます

この症状の解決方法などご存知の方はいらっしゃいませんでしょうか

186 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 13:59:43 ]
>>185
そういう質問はメーカーに問い合わせるのが先だ

187 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 14:12:24 ]
KeyDownとKeyUpが走っちゃうって話?

188 名前:185 mailto:sage [2007/09/21(金) 15:01:14 ]
>>186
確かに・・・orz

>>187
KeyDownしかプロシージャ追加して無いんで、KeyUpは関係ないと思いたいんですが・・・

189 名前:デフォルトの名無しさん [2007/09/22(土) 01:20:02 ]
>>184

丁寧にすまん。 じっくり勉強させてもらうわ。

だけど、

> これでカネ稼ぐんだろうから、少しは苦労しなよ。こんなのは基礎だぞ〜

いや、だから、俺はdel使いであってVBなんて知らないの。
ただ前任者の尻ぬぐいをしてるだけだって。


190 名前:184 mailto:sage [2007/09/22(土) 17:31:37 ]
>>189
Bitbltの変数足りないかも分からんのでヘルプ見直しておくれ。すまん
>前任者の尻ぬぐいをしてるだけだって
よーく分かるwだが、調べれば結構載っているからな。がんばり〜

191 名前:デフォルトの名無しさん [2007/09/22(土) 23:47:04 ]

>いや、だから、俺はdel使いであってVBなんて知らないの。
>ただ前任者の尻ぬぐいをしてるだけだって。

回答になってねぇよwwwww
DEL使いとかじゃなくって社会人かどうか疑いたくなるなwwww



192 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 01:08:33 ]
>>191
だよなwwwww
俺もお前のこと疑うぜwwwwwwwwwうぇwww

193 名前:デフォルトの名無しさん [2007/09/23(日) 15:23:34 ]
>>192
だよなwwwww
俺もお前のこと疑うぜwwwwwwwwwうぇwww

194 名前:189 [2007/09/23(日) 21:59:28 ]
>>191
> 回答になってねぇよwwwww
> DEL使いとかじゃなくって社会人かどうか疑いたくなるなwwww

すれちになるからあまり深入りしたくないが、ニートのおまえには言われたくねーよ。
うちは別にソフトベンダーでも何でもなくて、業務用アプリを担当部署ごとに作ってるだけ。

仕様書も何もなく放置されていたバグだらけのソフトを、君もプログラミングできるなら何とかしてくれ
っていわれてメンテする羽目になっただけだ。


195 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 22:07:22 ]
>>194
「del使い」じゃなくて「DEL使い」って逝っちゃってるんだから,見逃してやろうぜ・・・

196 名前:デフォルトの名無しさん [2007/09/23(日) 22:17:24 ]
const int * a;
const * int a;
* const int a;
int * const a;
* int const a;
違いを教えて下さい

197 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 22:24:28 ]
その前にVBとcの違いを知るべきではないだろうか

198 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 22:25:27 ]
>196
書き方が違うだけで全て同じものです

199 名前:デフォルトの名無しさん [2007/09/23(日) 23:10:46 ]
>>198

ありがとうございました。
なぞが解けました

200 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 23:38:48 ]
cdeclプログラム(BSD用バイナリ配布)をみれ

201 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 00:34:50 ]
>>196
もしCのことならここ読め。
ttp://kmaebashi.com/programmer/pointer.html



202 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 01:26:56 ]
つうか
んっとにカスばっかりだな
お前らのうちどんだけが本当のPGとかSEなんだよw


203 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 01:28:12 ]
だってVBスレだよ

204 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 09:37:17 ]
ネタ質問には全力ボケで返す、基本だろ?空気嫁よw

205 名前:デフォルトの名無しさん [2007/09/24(月) 17:42:14 ]
VB5.0でフォルダ名の変更ってどうやってやるのでしょうか??
フォルダ名をリネームするプログラムを作りたいんです
ファイル名の変更は出来たんだけど・・・
どなたか教えてください

206 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 18:03:42 ]
FilesystemObjectつかえばいいんじゃね?

207 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 19:41:58 ]
>>205
nameステートメント使えばいいんでね?

208 名前:デフォルトの名無しさん [2007/09/24(月) 21:20:42 ]
イントラネット内に接続されているコンピュータのIPアドレスを
取得したいのですが可能でしょうか?
iphlpapi.dllを使用すれば可能とのことだったのですがコードが
分かりません。



209 名前:デフォルトの名無しさん [2007/09/24(月) 23:50:22 ]
使用環境はExcel VBAなんですが、Excelのスレだとスレ違いになるっぽいのでこちらに質問します。
フォルダパスの文字列の"開始"という文字を"完了"に置き換えたいのですが

現在はパス名をセルに一度書き込んでから
エクセルのReplace関数でセルの文字を置き換え、それをコピー先のパス名として変数に代入する
みたいな感じでやってます。
コードはこんな感じです。

Cells(1, 1).Value = myStDir
Cells(1, 1).Replace What:="完了", Replacement:="開始"
myEnDir = Cells(1, 1).Value
myFso.CopyFolder myEnDir, myStDir, True

これでも動く事は動くんですが、VB上で変数の文字列の一部を置換する事はできるんでしょうか。

210 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 00:02:42 ]
ヘルプ見ろよ。
VBの文字列関数なんて数が知れてるじゃないか

211 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 00:20:43 ]
できました・・・・
myEnDir = Replace(myStDir, "完了", "開始")
何かReplaceはVBで使えないって思い込んでました・・申し訳ない・・



212 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 01:33:11 ]
>>208
どんな感じのネットワークかわからんから,正直何も言えない

まあpingが通るなら単純にネットワーク内に存在する可能性のあるのIPアドレスにpingを送ってみればいいかもな

213 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 13:20:33 ]
VB6.0の本が売ってません。

214 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 13:38:34 ]
つブックオフオンライン

215 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 15:16:45 ]
>>214
いいのがあるか探してみるよ。

216 名前:デフォルトの名無しさん [2007/09/25(火) 17:07:49 ]
PCサロン板でこちらを紹介していただいてやってきました。

InputMan7.0を購入して、今まで使用していたVer6.5から7.0に移そうと移
行ツールを試してみたのですが、できるコントロールとできないコントロ
ールにわかれてしまいました。
BOC社のサイトで調べてみるとTab上にあるコントロールは認識しないよう
なFAQを見つける事ができ、最新版をDLすれば解決するとありました。
早速DLして再度移行ツールを実行してみたのですが、やはりエラーになり
思うような結果が得られませんでした。
この他に、上手く移行できたものでも勝手にフォントサイズが変わってし
まう(小さくなる)という現象がおきてしまいました。

何か原因をご存知の方がいましたら是非教えてください。
OSはVISTAでVBは6.0です。

217 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 17:15:16 ]
BOC社に問い合わせるのが先

218 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 18:53:46 ]
> OSはVISTAでVBは6.0です。

219 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 19:03:53 ]
>>218
言いたい事はわかるけど気になったからBCC社のHP見てきた

>[必要システム]
>Visual Basic 6.0日本語版(Windows 95/98/Me/NT 4.0/2000/XP/Server 2003/Vista)

一応Vista対応謳ってるから>>217でFAだな。

220 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 16:32:19 ]
VB6/ADODBのしっかりしたリファレンスのサイトか本ありませんか?

221 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 16:37:46 ]
ソース中にUnicode文字列リテラルを入れるにはどう書けばいいんでしょうか?
IDEのテキストエディタにU+9B73などをコピペすると化けてしまったんですが…



222 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 19:00:44 ]
>>221
VBってコンパイラもエディタもS-JISしか対応してないんじゃないの?
むしろそんなことができたら怖いと思うがw

223 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 20:11:35 ]
>>220
MSDN
msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpado260/htm/mdmscstreamspersistence.asp

224 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 00:24:15 ]
>>223
MSDNって読みづらくないですか?
でも、なんとか頑張って読んでみようと思います。
ありがとうございました。

225 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 01:41:48 ]
>>224
辞書引くのって難しくないですか?

まで読んだ

226 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 10:00:11 ]
リファレンスとして使いにくいと思うのは少数派?

227 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 10:56:28 ]
>220
技術評論社の本
www.gihyo.co.jp/books/syoseki.php/4-7741-0859-6
VBの言語仕様をしっかり解説してるのがいいと思う。
ADODBについては微妙だけど。

買っちゃいけないのは、いわゆるHowTo本。
サンプルコードがいっぱい載ってるような奴ばかり読んでると、
コピペしかできないなんちゃってプログラマになりやすい。


228 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 12:40:56 ]
>>224
なんだ入門書みたいなものが欲しかったのか。
www.microsoft.com/japan/technet/prodtechnol/sql/2000/evaluate/exercises.mspx
これの「開発編 No.3 ADO 2.6 入門 」どうぞ。

229 名前:デフォルトの名無しさん [2007/09/27(木) 15:41:03 ]
すみません。
ちょっとお聞きします。
任意の期間を設定して、その期間内はForm1へ
期間外はForm2へ
としたいのですが、どうすればいいのでしょうか?

230 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 15:50:54 ]
何を言ってるんだお前は

231 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 16:56:03 ]
ifかSelectでダメなのか?


???



232 名前:229 [2007/09/27(木) 16:57:07 ]
本当にすみません。
もうちょっと勉強して出直します><

233 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 18:15:59 ]
VB6には連想配列はないですか?

234 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 18:19:27 ]
Collection使えばいいんじゃね?

235 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 18:24:00 ]
Dictionaryでもいいんじゃね?

236 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 10:47:18 ]
Dictionary は Microsoft Scripting Runtime を参照設定すると
使えますぜ?

237 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 11:06:15 ]
mscorlib.dllを参照設定するとHashtableが使えますぜ?

238 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 11:20:04 ]
いやいや専用クラスをイチから自作が最強っしょ?

239 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 11:41:17 ]
そこでVB8のとうじょうです

240 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 14:19:07 ]
Dim test As New Collection
test.Add "テスト","test"
For Each test2 In test
Debug.Print test2
Next

この時に、"テスト"は取れますが"test"を取得する方法がわかりません。

241 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 14:48:00 ]
CollectionからKeyを取得する方法はありません



242 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 19:20:59 ]
それではRecordsetを使いましょうか?

243 名前:デフォルトの名無しさん [2007/09/28(金) 23:24:36 ]
外部に依存してもいいならScripting.Dictionaryとかでおk
イヤならCollection2つ使って自作

244 名前:デフォルトの名無しさん [2007/09/29(土) 18:00:06 ]
[VB6 WindowsXP]

VB6&CAPICOMについて質問させてください。

VB6からCAPICOMを利用して、
ファイルの復号化を行おうとしています。

アルゴリズムはAESで、
暗号化は別の言語で施されており、
暗号化時に使用した
鍵とベクトルの情報はわかっている状態です。

MSDNや
ttps://www.netacademia.net/tudastar/default.aspx?upid=2781
こちらのサイトのサンプルを見ながら
復号化ロジックをVB6で実装しようとしているのですが、
なかなかうまくいきません。

サンプルを見た限りでは
鍵の設定は SetSecretメソッドで行っているようなのですが、
ベクトルの設定はどこで行えばよいのでしょうか。

何卒ご教授のほどよろしくお願いいたします。



245 名前:baka ◆Jgn6bakat. [2007/09/29(土) 19:02:56 ]
1







[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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