1 名前:デフォルトの名無しさん [2009/07/13(月) 21:12:36 ] ここは 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/ ※「まず自分で調べる」クセを身につけよう。
175 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:25:06 ] ヘルプに書いてないから訊いてるんじゃん。 ヘルプにあるのはAPIとしてのDirectXの使い方しかなくって DirectX 7 for Visual Basic Type Library ( dx7vb.dll) DirectX 8 for Visual Basic Type Library ( dx8vb.dll) の使い方は書いてない もしかしてヘルプって付属CDのMSDNライブラリとは別物? だったらヘルプってのが何を指すのか俺には検討つかん・・・
176 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 11:47:10 ] Visual Basic 開発者用ドキュメントだろJK
177 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 01:06:15 ] >>176 ありがdクス 「Visual Basic 開発者用ドキュメント」でググったらトップに出てきた。 ダウンロードして読んでみるわ。感謝っす
178 名前:デフォルトの名無しさん [2010/01/01(金) 19:13:37 ] VBScriptについての質問です ドライブの空き容量を取得するにはGetDriveを使えばできますが ドライブレターを割り当てずにフォルダにマウントしただけのパーティションの 空き容量を取得する方法はないでしょうか?
179 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 01:46:57 ] VBScriptについて必死に話し合うスレ pc12.2ch.net/test/read.cgi/tech/1242136180/
180 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 01:48:48 ] ○ 質問者の心得 一.質問する前にMSDNやGoogle、過去ログにも目を通してみる。 二.VBScript、インストーラーなどはこのスレでOK。 ←←←←←←★ 三.質問は第三者にもわかりやすいよう簡潔かつ具体的に。 四.荒らしは相手しない。
181 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 01:53:48 ] 無理じゃないかな。GetDiskFreeSpaceEx() とかでいけそうだけど。
182 名前:178 [2010/01/04(月) 23:00:01 ] >>181 ありがとうございます。 結論から言うと GetDiskFreeSpaceEx に、ドライブレターを割り当てていない パーティションをマウントしたフォルダ名を渡すことで、 そのパーティションの空き容量を取得できました。 VBScript ではそのままでは Windows API を呼び出せないようなので、 VB で確認しようと VB2008 をインストールしたのですが、 昔使った VB6 と変わっていて、DLLImport を使って宣言すればいいことに 辿り着くまで時間がかかってしまいました。 VBScript で API を呼び出すには、 SFC mini, DynamicWrapper, DynamicWrapperX などをインストールすればできるようですが、 DynamicWrapper を使って下のスクリプトを実行しても 表示されるメッセージはヌル文字列だけでした。 多分64bit整数値の受け渡しがうまくいってないんだと思うのですが どう対処すべきかアドバイスいただけないでしょうか? Set dw = CreateObject("DynamicWrapper") dw.Register "kernel32.dll", "GetDiskFreeSpaceEx", "i=slll", "f=s", "r=l" dw.GetDiskFreeSpaceEx "C:\\", x, y, z WScript.Echo x WScript.Echo y WScript.Echo z
183 名前:デフォルトの名無しさん mailto:sage [2010/01/05(火) 06:19:50 ] ByRef で 8バイト数値でしょ? 無理じゃない? DynamicWrapper のサイト見たけど、VT_REFは使えないとか書いてあるし。
184 名前:デフォルトの名無しさん mailto:sage [2010/01/09(土) 19:03:22 ] 質問です。 パスの通った実行ファイルなどをShellなどで呼び出した場合パスの指定無しで呼び出せますが、 このとき実際に実行されるファイルのフルパスを取得することは可能ですか? できれば実行前に取得したいです。
185 名前:デフォルトの名無しさん mailto:sage [2010/01/09(土) 19:09:31 ] そのEXE名と環境変数PATHがわかってんだから、自分でも探せるでしょう
186 名前:デフォルトの名無しさん mailto:sage [2010/01/09(土) 19:33:21 ] 回答ありがとうございます。 それはそうですが、簡便に取得できないかと思いまして。 例えば、iexpror.exeのフルパスなどを決め打ち以外の方法で探したいのです。
187 名前:デフォルトの名無しさん mailto:sage [2010/01/09(土) 20:18:46 ] 最悪でも1時間もあれば作れるでしょう? 質問をはじめて1時間ほどたったけど、君はなにをしてたの?
188 名前:デフォルトの名無しさん mailto:sage [2010/01/09(土) 20:23:07 ] 関連づけられたファイルから実行ファイル名を取得する API はあるけど、 PATHのどこかを探すようなのはないんじゃないかな。 あんまり意味ないわけだし。
189 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 01:26:36 ] 何がしたいんだろうね
190 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 11:42:17 ] 実行するexe名を引数とした、環境変数PATHからフルパスを生成して確認する関数でも作れば?
191 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 12:19:40 ] しつこいんだよクソ野郎。
192 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 17:07:14 ] VB6.0とVB.NETのプログラム実行速度って違うんですか?
193 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 17:11:57 ] VB6.0のが速い
194 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 17:14:51 ] vb6の方が早いのはformの表示だけだってw そもそもvb6じゃどうがんばっても最適化できない処理とか、 そもそも記述ができない処理がいっぱいあるのに比較になるか
195 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 17:23:34 ] 決め付け良くない
196 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 17:33:20 ] 実にしょぼいソフトなのに起動時間だけは一人前X3ぐらい やたら長〜いんだよなnet ぶん投げたくなるなw
197 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 18:20:09 ] その昔VB4からひとつとばしてVB6に変えたら、 めっっちゃ重くて、こんなの使えるかぁといってたのを思い出した。
198 名前:デフォルトの名無しさん mailto:sage [2010/01/10(日) 19:02:51 ] IDEが重いって話だよね
199 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 11:16:26 ] C#がVB.NETの2倍くらい早いっていうからC#って遅いんだなと思った それとも.NETが遅いのかな
200 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 11:17:21 ] C#がVB.NETの2倍くらい早いっていうからC#って遅いんだなと思った それとも.NETが遅いのかな
201 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 11:32:20 ] なぜ二回いうたし なぜ二回いうたし
202 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 13:20:43 ] 2回言う=大事なこと
203 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 13:55:21 ] 2回言う=ふかわ ∴ ふかわ=大事
204 名前:デフォルトの名無しさん mailto:sage [2010/01/11(月) 15:52:46 ] ただのむしろ痴呆症に近い。 ボケ老人とか見てみろ一日中繰言ばっかり言ってるから。
205 名前:蝶蝶初心者 [2010/01/18(月) 00:57:48 ] 蝶蝶初心者です。 6.0で画面に12個×4段=48個の色文字を規則的な配列にランダムな並びで呈示し体のですが・・・ テキストボックスを使えばいいのか、ラベルなのかさえまったくわかりません。。 ちなみに文字色は赤、青、緑、黄の4色です。これもランダムに色分けしたいのです。 だれかどう書けばいいのか教えてください。おねがいします!!
206 名前:デフォルトの名無しさん [2010/01/18(月) 01:00:00 ] その文字表示して何したいの?どんなアプリなのそれ?
207 名前:蝶蝶初心者 [2010/01/18(月) 01:03:54 ] 認知心理の実験プログラムです。 このあともRT計測とかあるんですが、ひとつずつ理解しようと思って。 おねがいします。。。
208 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 01:05:19 ] 初心者なら、VB6なんてやめて他の言語にしなさい
209 名前:蝶蝶初心者 [2010/01/18(月) 01:09:40 ] 残念ながらVB6で指定されてて。 困ってます
210 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 01:15:38 ] さよか・・・では、条件があまり指定されていないので、色数が平均すると仮定して ・48個の配列を作り、0〜11は赤、12〜23は青・・・と入れていく ・その配列をランダムにシャッフルする ・LABELを配置し色を変えながら文字を書く おわり
211 名前:蝶蝶初心者 [2010/01/18(月) 01:18:30 ] ラベルは48個配置する必要があるんですね。 ありがとうございます!やってみます! また戻るのでお暇ならよろしくです。
212 名前:蝶蝶初心者 [2010/01/18(月) 01:20:05 ] てか・・・・配列って何ですか?
213 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 01:25:51 ] そんな事まで教えてたらきりがないんだよ
214 名前:蝶蝶初心者 [2010/01/18(月) 01:28:26 ] っですよね・・ 不躾ですが書いてもらったりできます?
215 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 01:29:01 ] ことわる
216 名前:蝶蝶初心者 [2010/01/18(月) 01:31:19 ] 何とかしてみます。 ありがとうございました。
217 名前:おねがいちゃん [2010/01/22(金) 01:28:22 ] スリープというかウエイト処理を行いたいのですが、うまくいきません。 Sleep(500)の類はうまくいきません、例を載せてみます。 例) 作業A System.Threading.Thread.Sleep(500) 作業B System.Threading.Thread.Sleep(500) が結果 System.Threading.Thread.Sleep(500) System.Threading.Thread.Sleep(500) 作業A 作業B となってしまいます、具体的な作業は例えばシリアルからのデーター送信などでデーター送信とデーター送信の間などに使ってみたいです。 解りやすいデストとしてはブラウザ読み込み作業などの間に設置して テストしてみたいです(ブラウザ読み込み完了を待つは使用しないで) どうか宜しくお願いします。
218 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 01:30:11 ] まず君は、スレタイや>>1 から読み直してもらおうか
219 名前:おねがいちゃん [2010/01/22(金) 01:43:04 ] そんなこといわずに、わかってる範囲でいいので教えてください。 ほんとにお願いします。
220 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 01:53:44 ] スレタイや>>1 から読み直してもらおうか
221 名前:デフォルトの名無しさん [2010/01/22(金) 02:50:55 ] わたし、VB6しか分からない。それ以外の言語知らない。
222 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 08:15:06 ] >>217 作業Aと作業Bがスレッド起こして実行してるからだよ
223 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 13:27:45 ] >>217 こうですか?わからないです>< ttp://www.age2.tv/rd05/src/up2486.png
224 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 15:49:06 ] マ板でもさっき投稿見たぜ・・・ いまどきマルチとかどんだけ知らないんだよwwwww
225 名前:デフォルトの名無しさん [2010/01/22(金) 16:25:31 ] マジレス乙
226 名前:おねがいちゃん [2010/01/22(金) 16:34:31 ] マルチというのは大体意味はわかるのですが、そもそもウエイトってどうやってるんですか??
227 名前:デフォルトの名無しさん mailto:sage [2010/01/22(金) 19:25:49 ] とりあえず板違いだから別の所でどうぞ
228 名前:デフォルトの名無しさん [2010/01/23(土) 01:21:36 ] >>226 Dim time1 as Single time1=Timer Do If Timer-time1>1000! Then If CSng(&H7FFF)-time1+Timer>=500! Then Exit Do ElseIf Timer-time1>=500! Then Exit Do End If Loop
229 名前:デフォルトの名無しさん mailto:sage [2010/01/23(土) 01:24:46 ] >>226 Sub Sleep(WaitTime As Single) Dim time1 As Single time1=Timer Do If time1>Timer Then If CSng(&H7FFF)-time1+Timer>=WaitTime Then Exit Do End If ElseIf Timer-time1>=WaitTime Then Exit Do End If Loop End Sub
230 名前:デフォルトの名無しさん [2010/01/24(日) 03:47:46 ] これは酷い
231 名前:デフォルトの名無しさん [2010/01/25(月) 03:27:54 ] エラーが発生しました。
232 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 11:11:19 ] エラーは見なかったことにしました。
233 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 11:30:57 ] 魔法の言葉 on error resume next
234 名前:デフォルトの名無しさん [2010/01/25(月) 12:47:29 ] 無視した結果 Windowsが強制終了しました。
235 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 23:07:31 ] それはOSが悪い
236 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 00:46:25 ] VB6で.NETのクラスを使うにはどうすれば
237 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 00:50:30 ] regasmでCOMとして登録するとVB6から使える。
238 名前:デフォルトの名無しさん [2010/01/26(火) 00:56:56 ] VB6のラーニングエディションからWinSockコントロール使ったりする方法ってある?
239 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 01:19:34 ] >>236 CreateObjectでいくつか使える たとえばStringBuilderとか Set sb = CreateObject("System.Text.StringBuilder") sb.Append_3 "hogehoge" sHoge = sb.ToString()
240 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 06:30:08 ] >>237 >>239 d
241 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 10:48:25 ] VB6.0で任意のプログラムがタスクバーに表示されているかを確認できますか? タスクマネージャのプロセスで実行中かはAPIを使えば判断できそうですが、 タスクバーの状態を確認するAPIが見つからず質問に至りました。 よろしくお願いします。
242 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 23:18:47 ] ITaskbarList を使えばできる。
243 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 00:41:23 ] Win32API質問箱 Build85 pc12.2ch.net/test/read.cgi/tech/1262430441/
244 名前:デフォルトの名無しさん [2010/02/02(火) 22:35:52 ] マイクロソフトのHPにあるVB6.0SP6ランタイムでcomdlg.ocxを使用するツールは動作しますか? www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=7b9ba261-7a9c-43e7-9117-f673077ffb3c
245 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 22:38:46 ] 無理。
246 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 22:43:13 ] 早速の回答有難うございます。 では、Vectorでダウンロードできるランタイムセットでは comdlg32.ocxは動きますでしょうか?
247 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 22:52:05 ] うん。"全部入り" みたいのがあるから、そっち使ってね。
248 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 22:59:28 ] 素早い有難うございます! 調べてみてもマイクロソフトじゃなくVectorからしか書いていないわけがわかりました。 早速ダウンロードしてみます。
249 名前:デフォルトの名無しさん [2010/02/03(水) 00:02:55 ] VB6.0でpng画像をimageに表示したいんですが、どうすればいいのでしょうか?
250 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 00:04:50 ] VBプログラマをバカにするスレはここでしょうか? 君たちメシ食えてるの???
251 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 13:13:31 ] まぁネタにマジレスもあれだが ほんとVB6使ってるだけで馬鹿にするやつまだいるんだな ほんとに無知でVBたたいてるやつもいるんだろうな
252 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 13:15:56 ] 所詮は全角厨だしな
253 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 18:51:13 ] ドロップされたテキストファイルの内容からThunderbirdでメールを作成するスクリプトを作っているのですが いくつか詰まっている点があるので質問させてください。 Thunderbirdスレとマルチになって申し訳ありません。 ==VBSファイル記述開始== Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") Set objArgs = WScript.Arguments strDroppedFileFullPath = objArgs(0) On Error Resume Next Set objFile = objFSO.OpenTextFile(strDroppedFileFullPath) ====略===== '本文 strBody = objFile.ReadAll Dim objWShell Set objWShell = CreateObject("WScript.Shell") 'Thunderbirdのメール作成画面の起動 objWShell.Run """C:\Program Files\Mozilla Thunderbird\thunderbird.exe""-compose to='" & strTo & "',cc='" & strCc &"',bcc='" & strBcc &"',subject=" & strSubject & ",body='" & strBody & "'" ,vbNormalFocus, False Set objWShell = Nothing ==VBSファイル記述ここまで== Thunderbirdが起動している状態で、このスクリプトを実行するとテキストの改行が反映されず困っています。 解決策があれば教えてください。 また、コマンドラインからの起動で送信アカウントを指定する方法があればこれもあわせて教えてください。
254 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 21:54:40 ] ちょっとスレ違いな気がするけど、 本文を一回トレースして、改行コードを %0d%0aにしないとダメなんじゃない? 送信アカウントの件はわからない
255 名前:デフォルトの名無しさん [2010/02/09(火) 22:47:41 ] VB6って、ソースを難読化するツールってあるのでしょうか?
256 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 22:56:13 ] 何のためにソースを難読化なんてするんだよw ドトネトの難読化ツールが何のために存在してるのか分かってる?
257 名前:デフォルトの名無しさん [2010/02/09(火) 23:02:30 ] えーと、デコンパイルが容易だからだと思います VB6は、デコンパイルが難しいため、難読化ツールが WEB上に見当たらないのですが、存在するか、しないのか、 ちょっと理由があって、知りたいのです。 知ってます?
258 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 23:09:37 ] その理由を言ったほうが答えやすいだろ
259 名前:デフォルトの名無しさん [2010/02/09(火) 23:13:05 ] いえ、ちょっと理由あって。。。 2chも誰が見てるかわかんないし。 すみません。 教えてくれませんか?
260 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 23:15:07 ] 胡散臭い奴だな
261 名前:デフォルトの名無しさん [2010/02/09(火) 23:19:22 ] しゅみません・・・ 胡散臭いですよね・・・ 最近、用心深くなってしまって。 失礼しました
262 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 23:26:10 ] VB6のバイナリには、COM関連以外はメソッド名もプロパティ名も変数名も入ってないんじゃないの? 一体全体何を難読化するんだ? しかもソースを難読化とか言ってるし。 訳がわからん。
263 名前:デフォルトの名無しさん [2010/02/09(火) 23:28:23 ] 訳わかんないでよね。。 もう忘れてください。。
264 名前:デフォルトの名無しさん mailto:sage [2010/02/09(火) 23:35:10 ] VB6用の逆汗ツールはあるけどね。
265 名前:デフォルトの名無しさん [2010/02/10(水) 00:27:36 ] パスワード付ZIPで保存すればおk
266 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 00:31:11 ] publicな変数は入ってるな。
267 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 08:19:46 ] VB6でもPコードだとソースに戻せるの?
268 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 12:51:52 ] DataGridViewを使っています。 フォームロード時にセルの高さをColumnHeaderの高さと同じにしたいと考えています。 ColumnHeader.Heightの値は'16'に設定しているのですが、 ShownイベントハンドラからColumnHeader.Heightを見ると'23'になっています。 さらにShownイベントハンドラ内で Me.DataGridView.ColumnHeadersHeight = 18 としても値が変わりません。 これはなぜなんでしょうか。
269 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 18:03:15 ] すみません、スレ違いでした それでは
270 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 16:46:08 ] ドライブリストボックスからドライブを指定したときに フロッピーのAドライブとかCD−ROMドライブとかを指定するとエラーはきます フロッピーやCDが入ってない状態で指定したときにフリーズしないようにしたいです 何でもよいのでコメください。 ヘルプではこんなのでた↓ >例外のトラブルシューティング : System.IO.IOException >IOException は、ファイルの読み取りまたは書き込みに失敗した場合など、 >I/O エラーが発生するとスローされます。
271 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 16:52:56 ] > 何でもよいのでコメください。 スレ違い。
272 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 18:41:02 ] ほんまやゴメン(´・ω・`)
273 名前:デフォルトの名無しさん mailto:sage [2010/02/11(木) 20:43:37 ] しかも他のスレで答えを貰ってるのに
274 名前:デフォルトの名無しさん [2010/02/11(木) 23:52:17 ] 応用力が低い人がプログラミングすべきじゃないね
275 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 12:56:13 ] 応用していくのが楽しいのにね