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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 23:03:01 ]
ここは 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 [2008/04/10(木) 20:49:33 ]
>>173-174
それが、
0x12345678 のような 4桁以上の16進数だと型オーバーで変換が出来ません
MSDNのヘルプ見てもDouble型までが限界のようです
Long型のような8桁くらいの文字(16進)を数値に変換するのにはどうすればいいのかヘルプ見ながら悩んでます

176 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 20:59:50 ]
>>175
どうせそんなレベルならVB6みたいな終わってる開発環境使う意味ないだろw
まあLongの型指定文字を調べてみることだね。

177 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 21:00:11 ]
>>175
文字列右から4文字ずつ区切ってvalして、最後にシフトするのはどうですか?

178 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 21:18:11 ]
>>176-177
CLngという型指定で変換出来ました
どうもありがとう

179 名前:デフォルトの名無しさん [2008/04/11(金) 00:18:50 ]
>>172
タスクマネージャーでメモリ使用量を確認していると、
各イベント(フォーム起動→終了→以下繰り返し等)を起動するたびに使用メモリが増加していきます。
循環参照の現象でしょうか?

180 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 00:51:38 ]
>>179
循環参照って何のことだか理解してる?

>>172 に書いてある
>OnLoadでブレイクでも入れておけば分かるんじゃないかね

を実行してなさそうな文章なんだけどやったの?

181 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 03:06:23 ]
プログラム板は当たりがきついな

182 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 03:09:23 ]
>>179

>>172
> タスクマネージャーでメモリ使用量を確認していると、
> 各イベント(フォーム起動→終了→以下繰り返し等)を起動するたびに使用メモリが増加していきます。

解放してないから

183 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 03:09:56 ]
>>181
おしえてぐーなら優しいけどな
あと2ちゃんでも女子中学生にはやさしいよ



184 名前:デフォルトの名無しさん [2008/04/11(金) 06:46:11 ]
つ「Unload Me」

185 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 10:46:53 ]
Using src As New FileStream(srcName, FileMode.Open, FileAccess.Read)
While True
readSize = src.Read(buf, 0, BUFSIZE) ' 読み込み
If readSize = 0 Then
MsgBox("HIT=" & hval)
Exit While ' コピー完了
End If
End While
End Using

このコードでファイル操作の処理をすると
読み込み開始から終了までのあいだフォーム全体が操作不能になります
読み込み処理中でもボタン等の操作を可能にするにはどうすればいいでしょうか?
中断ボタンを作ってあるのですが操作不能になって機能しません

186 名前:デフォルトの名無しさん mailto:age [2008/04/11(金) 14:44:14 ]

Visual Basic Version 5.0 Control Creation Edition
pc11.2ch.net/test/read.cgi/tech/1204552981/18

ふと思ったんだが、↑これと↓これ組み合わせて.EXEファイルを作ることできるのだろうか?

Microsoft Visual C++ Toolkit 2003
pc11.2ch.net/test/read.cgi/tech/1109618655/


187 名前:デフォルトの名無しさん mailto:sage [2008/04/11(金) 17:54:26 ]
上でDLL (OCX)作って、下でそれを使うEXE作るってことは可能だろうね。
そもそもなぜ今更VC++ 2003?
事情がなければ2005でも2008でも使えばいいだろうに。

188 名前:デフォルトの名無しさん [2008/04/11(金) 19:00:08 ]
>>185
つ「DoEvents」

189 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:13:12 ]
ComboBoxでリストから項目が選択してドロップダウン部分が消えた瞬間に任意のコードを実行したいのですが
DropDownClosedやSelectionChangeCommitted
その他のそれらしいイベントを設定しても
選択→ドロップダウンが消える→再度選択
としないとそのコードが実行されません

どのイベントを設定すればいいでしょうか?

190 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 10:23:58 ]
Click

191 名前:デフォルトの名無しさん [2008/04/13(日) 10:45:44 ]
SAVEデータのようにバイナリデータとShift_JISの文字列が混在するファイルの
文字列部分を編集して書き戻したいのですが

Dim FreeNum as Integer
Dim Bin1() as Byte , Bin2() as Byte
Dim strRes as String

FreeNum=FreeFile
Open hoge.bin For Binary As #FreeNum
Get #FreeNum, , Bin1
Close #FreeNum
strRes = StrConv(Bin1,vbUnicode)

'本来ここでstrResを編集する

Bin2=StrConv(strRes,vbFromUnicode)

とした時にBin2はBin1を再現せず、バイナリデータの部分が変わってしまいます。
通常このような操作を行う場合はどのようにすれば良いのでしょうか?
お力を貸して下さい。

192 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 18:48:40 ]
>>191
それはShiftJISにしたときのバイト数えて詰め物したりでかなり面倒くさい。
結局Cランタイムのfopen系の関数をラップしたActiveXを作ってそれで読み書きさせた。

193 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:14:58 ]
リストボックスで選択した場所から下の項目を削除したいのですが
下のプログラムだとindexエラーが出てうまくいきません

For i = ListBox1.SelectedIndex  To ListBox1.Items.Count - 1
ListBox1.Items.RemoveAt(i)
Next

どう対処すればいいでしょうか?



194 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:17:44 ]
後ろから削っていくとか。

195 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:26:36 ]
デバッグして確認したときそれぞれの値が
ListBox1.SelectedIndex=2
ListBox1.Items.Count=8  (項目数=3)
となっていて

その状態で>>193のFOR文を実行すると i の値が2,3,4,5,6,7 とステップして
ListBox1.Items.RemoveAt(i) で最後の項目まで問題なく削除出来ると思うのですが
どういう訳かエラーになります

196 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:28:34 ]
>>195 修正
× (項目数=3)
○ (項目数=7)

197 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:33:24 ]
どういう訳かも何も、たとえばRemoveAt(10)を実行した時点で
いままでItems(11)だった奴がItems(10)に繰り上がるわけだが

198 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:00:32 ]
>>197
当たり前のことすら理解出来てない人に
答えを教えてくれてありがとうございます
無事ちゃんと動作するコードに出来ました

199 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 22:11:10 ]
1年半後に登場するWindows7にはVB6ランタイムはサポートされますか?

200 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 22:59:27 ]
知らんがな(´・ω・`)

201 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 17:37:40 ]
VB6でPublicの構造体・変数の宣言可能な数(容量?)ってどの位か解りませんか?

202 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 12:38:32 ]
VS2008のVBでラベルの背景を透明化するにはどうすればいいですか?
label1.BackColor = Color.Transparent
では出来なかったです

203 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 13:34:38 ]
>>202
スレタイ読めますか?



204 名前:デフォルトの名無しさん [2008/04/15(火) 23:42:02 ]
>>201
そんなのあるんですか?

205 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 10:14:31 ]
ループする処理の中にあるIF文をSelect文にしたら処理が倍以上かかるようになったんですが
これはどうしようもないことですか?

206 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 11:32:45 ]
>>205
条件文がわからんから、「そんなもn」としか答えようが無い。

207 名前:デフォルトの名無しさん [2008/04/17(木) 08:12:15 ]
>>205
Selectを使うな。
Excelとのやりとりは速度が遅くなる。
Withを使うか、まとめて配列に代入してから配列を扱え。

208 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 19:13:52 ]
>>204
よほどの事が無い限り、まず制限を超える事は無いと思いますが有りました。
(コンパイル時にメモリー不足と出る)


209 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 20:06:02 ]
>>208
そりゃ単にメモリ増設すりゃ回避できるんじゃないか?

210 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 20:26:21 ]
>>209
2GB以上アロケートできないとかないのかね?

211 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 22:35:50 ]
ループ処理中に何かボタンおされたらループから抜けるプログラムを作りたいのですが
そのボタンのsubではない 違うSub内で
コントロール上のどのボタンが押されたのかを検出する方法ってありますか?

212 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 22:55:24 ]
>>211
ループ処理の中でDoEventsと終了フラグのチェックを頻繁にやるしかない。
DoEventsを使うときは再入やら予定外の動作をはじくようにする必要がある。

213 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 12:23:30 ]
昔、だれかが作ったソフトのメンテしてたら
フォームに貼り付けたコントロールの数がオーバーしてこれ以上追加できない
という状況になったときに、泣いたことはあるなw



214 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 14:24:41 ]
メンテだと設計方針が間違っていようが、そのまま行かざるを得ないときもあるから辛いな

215 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 22:13:21 ]
FileCopyでファイルコピーするとshift-jisで書き出したファイルがUTF-8になってしまうのですが
対象方はありますか?

216 名前:デフォルトの名無しさん [2008/04/21(月) 21:51:25 ]
VBからExcelに値を貼り付けてプレビュー表示をする処理にて
処理中は見えないようにするためVisibleをFalseにするのですが、
EXEファイルから起動するとVisibleをFalseにした段階で最背面に表示されてしますいます。

Visual Basicから起動するとプレビュー画面が最前面に表示されるのですが何故でしょう?

使っているコンポーネントはQuickPack、Farpoint SpreadSheet、InputMan Proです。

今まで別な環境で作った際はこんな現象になったことはありません。
同じコンポーネントを使っている方で克服した方はおりますか?

ちなみにSetWindowPos等使わないで済ませたいです。

途中ダイアログを表示したりメッセージボックスを表示させたりするので
Visual Basicで起動しているときと同じ用途で実現させたいのです。

ちょっと分かりにくいかも知れませんが宜しくお願い致します。

217 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:11:38 ]
コピペ君って馬鹿だな、まで読んだ。

218 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 10:32:51 ]
vb6の評価版使ってて、exeにできないんですが、
vb6.0安く売ってるところないですか?

219 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 12:38:09 ]
>>218
なんで今時VB6?


220 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 12:56:29 ]
>>219
だよねぇ。

Visual Basic 2008 Express がタダで手に入るこのご時世に。

221 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 15:26:39 ]
ツールバーのアイコンを大きくしてメニュー名をアイコンの下に表示させたいのですが、
どうすればいいのでしょうか?

222 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 01:40:48 ]
>>220
それってVB6のOCXの開発ライセンスキーが付いてる?

223 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 13:32:21 ]
>>222
お前は何を言っているんだ



224 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 14:26:17 ]
>>219
なんでVB(6.0以前)スレに居るの?

225 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 15:13:16 ]
>>223
お前は何を聞いているんだ

226 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 18:07:06 ]
VB6で立方メートルの単位(m3)のように右上に数字を乗せる方法はないでしょうか?
またはキーワードだけでも教えていただけないでしょうか?

227 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 19:43:53 ]
>>226
ラベルで貼っちゃダメなの・・・?

228 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:01:01 ]
>>227
通常はラベルで代用するものなのでしょうか?

229 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 20:22:32 ]
ブラウザとかリッチエディットでそういう書式指定って方法も思いつく。
ほかにもUnicodeに対応していればm³や㎥って文字が使える。

230 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 22:17:56 ]
brwWebBrowserで取得したものを
htmlかテキストにして文字変数に格納する方法ないですか?

231 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 23:18:41 ]
>218
現在VB6を新規に入手する方法はMSDNに入るしかない。

>226
上付きの3はISO 8859-1/15の0xB3にあるが…UnicodeでもU+00B3だな。

232 名前:230 mailto:sage [2008/04/23(水) 23:29:47 ]
Text1.Text = Inet1.OpenURL(brwWebBrowser.LocationURL)
で取得できましたが 文字バケのようになり日本語で表示されません。
フォントは明朝に設定したのですが。

233 名前:230 mailto:sage [2008/04/24(木) 00:41:02 ]
RichTextBox1.Text = brwWebBrowser.Document.body.innertext
これで一応できましたが
普通のTextBoxは日本語ダメでしたっけ?



234 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 01:34:10 ]
Text1.Text = brwWebBrowser.Document.body.innertext


235 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 10:25:48 ]
VBのMAPIでメールを操作したいのですが
IDやPASSの設定はサンプルにのってるのですが
POP3等の設定がのっていません。
Outlookの設定に依存してるのでしょうか?

POP3設定のキーワードを教えてください。

236 名前:230 mailto:sage [2008/04/24(木) 13:46:15 ]
Text = WebBrowser1.Document.body.innertext
これで数百行あるものを読み込むと200行ちょっとまでしかとれてないようですが・・・
行制限があるんでしょうか?

237 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 14:02:43 ]
読み終わってからにしろよ早漏

238 名前:230 mailto:sage [2008/04/24(木) 14:33:54 ]
なるほど。

239 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 10:12:47 ]
指定ファイル(テキストやCSV)の行数を取得する良い方法はありますか?

     Dim i As Integer = 0
     Dim sr As New System.IO.StreamReader("C:\1.csv", System.Text.Encoding.Default)
      Do Until sr.Peek() = -1
        sr.ReadLine()
        i+=1
    Loop
    sr.Close()

今のところこの方法しか思い浮かびません
もっと簡潔な方法があれば教えて下さい

240 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 10:31:59 ]
何を指して良い方法と言っているのだ?
時間?効率?ソースの短さ?exeのバイト数?

241 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 10:38:24 ]
>>240
私が思う良い方法とはコードの短さです
今のところ>>239以外には他に思いつかなくて

242 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 11:04:19 ]
コードの短さか


そんなクソの役にもたたねえ事にこだわるな!

243 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 13:16:01 ]
>>239
とりあえずスレチだと思うのだが。
それ.NETだろ?


まぁ行数取得ならFileSystemObjectだったかTextStreamだったか忘れたが
1行で取得する処理書くこと出来るよ。

ググってみ?



244 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 14:45:05 ]
VB6(SP6)です
OutBufferCountがしっかり送信バッファの値を返す設定って、何かあるでしょか?

MSComm1.Output = txdatbuf$
Text1.Text = Format(MSComm1.OutBufferCount)

このよーなコードを書いて、送信開始時のバッファを確認してみても0のままだったりして困っておりまする。
送信そのものは成功しています。

MSComm1 は

DTREnable=False
EOFEnable=False
Handshaking=0
InputMode=0
OutBufferSize=512
RThreshold=1
SThreshold=0
RTSEnabled=False

になってオリマす

245 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 14:46:39 ]
ログをファイルを出力しているのですが
最新の1000行のみに維持したいのですが
何か良い方法はありますでしょうか?

246 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 15:17:27 ]
良い方法?
1000行固定というクソ仕様をやめてしまえ

247 名前:デフォルトの名無しさん mailto:sage [2008/04/25(金) 15:23:28 ]
全部読んで1行捨てて書き出して、最後に今のログ1行書いたら駄目なのか?

248 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 02:44:34 ]
WebBrowserコントロールを使って
そのWebの書き込みテキストボックスから書き込みする方法ありますかね?

249 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 11:30:44 ]
>247
内部バッファならともかく、ファイルでそれはないだろ。

250 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 11:59:13 ]
>>249
ならどうしたらいいのか書けよカス

251 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 12:03:03 ]
>250
>246

252 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 12:55:00 ]
お前の能力では出来ないって事か

253 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 14:18:36 ]
↑こんな奴がいるから糞ソフトが無くならんのだよな



254 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 15:53:23 ]
↑その糞ソフトすら書く方法を知らないカス

255 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 16:03:32 ]
何が問題なのか理解してないようだ
中国人の外注のほうがマシに思える

256 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 16:06:07 ]
>>249
お前というやつは・・・。
いきなり上書きしたら、
書き込みの途中でエラーが出たら
ログが壊れるだろ・・・。

257 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 16:21:52 ]
>>255
うむ
中国人に「最新の1000行のみに維持したい」って言えば
ちゃんと作ってくれるだろうな

258 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 23:45:53 ]
TextStream使えば?

・ReadAll()で全行読み込み(なかなか高速)
・Sprit()で改行文字をKeyに配列化
・UBound(配列)>=999の場合は、配列にする前の文字列からInStrRevで改行文字探して見つかった位置-1までを取得
・先頭に新しいログ文字列追加
・で、書き出し

みたいな

259 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 23:49:36 ]
>>256
書き込みの途中って?
例えばどんなエラーがある?

260 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 23:57:19 ]
>>256じゃないが
エラーも出ずにファイルごとぶっ壊された経験なら多々あるなあ
ローテートの基準は行数にしないで日付や時間で新規ファイルに割って、
取得や表示時の処理で行数割りにすべきじゃねえの?


261 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 23:59:31 ]
1000行程度でエラーになった経験は無いからなあ

262 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:01:07 ]
壊れる事象が起こる原因が上書きなら、
新規作成→リネームでいい気がするが?
元のFileは消した状態で。

263 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:05:12 ]
>>260
それはプログラマである質問者でなく、設計したアホに言えよって話にならね?
もしくはそう注文してくる客に。

そういう仕様だって言われりゃマはそう作るしかないんだし
だったら最善の策を考えた方が仕事も早く終わるだろ。



264 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:12:02 ]
>>259
1. ディスクフル
2. 書き込みするデータを用意する際のエラー
3. メディアの部分的な破損

こんなところか?

265 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:25:26 ]
ディスクフルは今回の場合関係なさそうじゃね?
メディアの破損については今回のファイル書き出し云々関係無い気がする。

書き込みデータ準備のエラーは具体的には何がある?

266 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:26:09 ]
>>263
だな、激しく同意
反論できる状況でなけりゃ、結局そう作るしかないんだよな

267 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:31:47 ]
>>266
大体さ、設計について話すってのは、ぶっちゃけスレチな気がするんだよ。
ここはVBプログラマ質問スレだろ?

プログラマからの質問に対して設計に文句言うのはおかしいと思うんだが
間違ってるか?

268 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:44:46 ]
>>265
メディアが部分的に破損してて書き込み失敗したら、
上書きしてた場合はログが壊れて、
別ファイル作ってた場合は前のログは残る。

269 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:52:41 ]
[方法その1(昔からある方法)]
サイクリックファイルという概念を使う。
詳しくはググれ。

[方法その2]
ログを全てオンメモリに持って、時々ファイルにflush。
プログラムが異常終了したときは、ログが失われる可能性がある。

270 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 00:59:42 ]
ファイルの書き込みは実際にはセクタ単位で行われるから
サイクリックファイルって万が一破損した場合の影響範囲は
1セクタ分になんのかね。

271 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 06:57:18 ]
>>267
設計に触れなくていいと言うなら間違っている
与えられた事しかできないのは下郎の仕事だよ

272 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 08:51:52 ]
ログファイルの行数制限ってそれ程アホな仕様とは思えないんだが

273 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 09:05:46 ]
馬鹿ですね。



274 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 11:10:24 ]
>>271
そうでなくてスレチって意味だろ

275 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 15:05:31 ]
フォームが非アクティブな時にクリップボードを監視して
文字があればフォーム上のテキストボックスにすぐ貼り付けるというプログラムを作っているのですが
FormのLostFocusで処理させるとクリップボードに文字をコピーしたあと
フォームをアクティブにしないとテキストボックスに内容が反映されません

どのイベントで処理すればいいでしょうか?

276 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 15:19:39 ]
>>275
監視って言いながら1回しか見てないの?
Timer使って一定時間ごとにチェックするとかじゃなく?

277 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 20:49:19 ]
>>272
うむ、組み込み系なら良くあること

278 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 22:19:51 ]
1行500byteで、50メガ程のテキストファイルをADOを使ってmdbに突っ込んでるんですが、
テキストファイルの改行コードがlfなんで、LineInputじゃ取れないんで、
一度バイナリで取り込みcrlfに変換後、保存してLineInputってのもスマートじゃないし、
stringで全部読み込み、midって取るのも後半重くなるし〜って事で、詰まってます。

何かいい方法はありませんでしょうか?

279 名前:デフォルトの名無しさん mailto:sage [2008/04/27(日) 23:12:03 ]
>>278
ADOのStreamオブジェクトを使うといいような気がする

280 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 10:48:11 ]
>>249
1000行ぐらい内部バッファあけといて毎回読み書きしてもいいとおもたんだが
もしかして一般的には不毛な設計なのか?

281 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 14:06:24 ]
無駄にHDDを劣化させることは無いだろ
単純なログにすれば何も問題ないのにCPUの無駄遣いするなよ
Vistaを筆頭に、重かったりメモリ食いまくったりするのが流行なのかもしれないがな

282 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 14:15:14 ]
バカは黙ってろよ

283 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 14:54:46 ]
車や電化製品でも、誰も使わない機能をつけるのがカッコイーんだよ。
自己満足の世界に口を出すなっつーの。



284 名前:デフォルトの名無しさん [2008/04/28(月) 16:06:17 ]
知的探求は必要
ソースをいかに短く書くか燃えなかった?

285 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 17:11:45 ]
行固定のログファイルとか良くやるけどね
これだけ議論になるということは、あまりこういう仕様に直面したこと無いのか?

286 名前:デフォルトの名無しさん mailto:sage [2008/04/28(月) 17:26:55 ]
通信アプリなどのようにリクエストが多かったりするログで1000行固定はクソ仕様かもしれない
だが今回は1000行であり1起動で数回くらいの頻度だろ?騒ぐほどの事ではない

でも俺もクソ仕様だとおもう

287 名前:デフォルトの名無しさん [2008/04/29(火) 11:12:32 ]
VB6なんですが、
製作しているプログラムProgAではOpenでテキストファイル(1行のみ存在)
を開いてInputのRead Sharedで1秒毎に読んでは閉じます。参照しかしません。

別のプログラムProgBからそのテキストファイルは
1秒毎に更新されています。内部の仕様はわかりませんがProgBから
もしロックをかけて更新しているなら
同時にProgA側で開こうとすればエラーが出ると思います。
それは問題ありません。

ProgAでファイルを参照していてもProgBからそのファイルの更新さえ
できていれば、ProgAとしては問題ないのですが、
今の状態では不都合が生じるでしょうか?

ProgAでファイルを開いている状態(ブレークポイントでとめて)で
自分で作った外部アプリでファイルに更新をかけてみたのですが、
ファイルは普通に更新されたのですが、これで良いのかどうか。。。

288 名前:デフォルトの名無しさん mailto:sage [2008/04/29(火) 17:01:25 ]
プログレスバーの上にColor.Transparentを設定したラベルをおいて
ラベルの親コントロールをプログレスバーに再設定しても
どうやらプログレスバーがColor.Transparentをサポートしていないようで
ラベルの背景が半透明化されません

プログレスバーのようなColor.Transparentをサポートしないコントロール上で
背景を半透明にさせるにはどうすればいいですか?

289 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 01:43:37 ]
文字をpadleft等で桁揃えして文字数が同じなのを確認して
コンボボックスのフォントをMSPゴシック、MS UIゴシック等の等角フォントにして
フォントが変更されたのも確認した後
それらの文字数が同じアイテムをコンボボックスに追加してリスト内のアイテムを確認すると
どうやってもズレて表示されてしまいます
解決法ってありますか?

290 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 02:01:53 ]
>>289
> コンボボックスのフォントをMSPゴシック、MS UIゴシック等の等角フォントにして

上記は等角フォントではないよ。
MSゴシックを使ったら?


291 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 04:34:26 ]
>>290
MSゴシックにしたら改善されました、ありがとうござます
フォントについて勘違いしてたみたいです
プログラミング以前の話に答えていただいて助かりました

292 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 09:44:45 ]
Join関数を使わないでMidステートメント(関数ではない)で文字列を連結する場合、MidとMid$ではどちらがいいの?
速度を計っても差がわからない。
どっちも同じなのかな?

関数ならもちろんMid$が少し速いが。

293 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 12:34:02 ]
そんな知識もない奴がいまさらVB使ってどうするのかなw
っていうか、mid$で文字列連結って意味不明な気がするが。

まあここでも散々既出だと思う(折れ自身複数回回答してるから)けど、
(っていうかググッてもすぐ回答が見つかるはずだとも思うが)

 $付き: 返り値の型がString
 $なし: 返り値の型がVariant

Variant返す関数の存在理由は良く知らないが、普通は使う必要ないんじゃないのかな。



294 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 13:21:40 ]
>>293
Mid$で連結が意味不明なら答えるなよ。
わかる人はすぐ分る。
そもそもオマイは関数と勘違いしてるし。
俺より初心者みたいだなw

295 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 13:53:06 ]
>そんな知識もない奴がいまさらVB使ってどうするのかなw

すぐこういう事を言い出す輩が多いな。
あとクソ仕様がどうとか。
学生か趣味でしか使わない奴らには一生理解できないんだろうけどね。

296 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 13:57:09 ]
>>287です
簡潔でなかったので、簡潔に書きます。

テキストファイルAをあるアプリAで
OPENステートメントのRead Sharedで開いていた場合
別アプリBでファイルAを開いたり更新したりしようとすると
問題が生じるでしょうか?

297 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 18:35:54 ]
誰か>>294の言ってる意味がわかる奴いる?w

俺は意味不明なこと言ってるとしか思えないが、
正直VBは年に1度触るか触らないかの状態なので自信もって否定はできない、と一応謙虚に言っておく。

ついでにまあどうでもいいが、「そんな知識もない奴がいまさらVB使ってどうする」
って指摘が不適切とは俺は思えないんだよねやっぱり。

初心者が今更VB使ってどうすんの。
まあそりゃ保守の需要とか学校の講義でたまたま使ってるとかあるのかもしれんが、
今更初心者にVBのコードを保守させる会社とか、今更VB6を使って教える学校ってのは如何なもんなのかねえw

298 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 18:51:23 ]
いやいや。「お前が言うな」

299 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:04:12 ]
>>297
恥ずかしい奴だな。
ttp://support.microsoft.com/kb/170964/

300 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:19:17 ]
mid$で連結って、前スレあたりで話題になったよね

301 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:21:36 ]
>>297はMidステートメントは使ったことないんだよきっと。
&演算子で連結することしか知らなかったりしてw

302 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:23:40 ]
知らなかったのならググればよかったのにw

303 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:25:43 ]
>>299
語るに落ちてるな。
サンプルコードをロクに理解せずにコピペして使ってるVB厨房の君自身をね。

そのサンプルコードの動作原理をちゃんと理解してる?w
理解してたら決して「Mid$で文字列を連結」などとは言わないよ。
そのコードでMid$が担ってる機能は「文字列の連結」じゃなくて「置換」だと思うけどね



304 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:30:40 ]
>>303
では、件のURLの<title>がなぜそのようになっているか、説明してもらおうか。

305 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:32:16 ]
>>303
なぁ、こんな所で戦っても、何も得るものないぞ?
匿名なんだからさ、おとなしく引きさがれよ。

306 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:33:35 ]
人に突っ込む前になぜ"pseudo-concatenation"と書いてあるか考えた?
っていうかコード読め。読んで理解しろって。
人様に突っ込むのなんざその後だろうが。

307 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:36:44 ]
>>303
とことん恥ずかしい奴だな。
お前は>>292の内容が全く理解も想像もできなかったんだろ?
「文字列連結」と「Mid」というキーワードで連想するものを初めから知ってたらな、
最初の発言で「それは置換だろ」と指摘しとけよ。

もっともそんなこと指摘しても、>>292の疑問には何の解決にもならんがな。

ちなみに、>>292の回答は、「自分で計測して速い方を使え」だ。同じだったら、好きな方でかまわん。

308 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:42:50 ]
>>307
その回答もどうかと
そんな浅い事なら質問してないだろう。

309 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:43:03 ]
顔真っ赤で反論考え中w

310 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:45:23 ]
そもそもMid$ステートメントなんてないのかもね。
Join関数をJoin$と書いても動くのと同じじゃねーの?

311 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:45:43 ]
>>308
内部実装を知りたいなら、プロセスにアタッチして逆アセンブルされてるのを
眺めたらわかるかもね。

俺は興味無いけど。

312 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:46:56 ]
>>307
何をいってるんだコイツ。
俺はエスパーじゃない。
>>292の「Midステートメント(関数ではない)で文字列を連結」が>>299
コードのことを指しているとして、そんなことが俺にわかるわけがない。

313 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:48:47 ]
>>312
つ「知らないなら黙っとけ」



314 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:49:26 ]
普通Midステートメントと文字列の連結といったらわかるぞ?
エスパーじゃないのはもともと分かってるw

315 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:53:43 ]
>>312
わからないなら、何でレスしたんだ?
おとなしく黙っとけば恥もかかずに済んだものを。

316 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 19:58:20 ]
VBは年に一度触るかどうかレベルの奴が、何でこのスレ巡回してんだよw
教えたがりもたいがいにしとけよw

317 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 21:23:09 ]
これはひどい・・・

318 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 22:02:02 ]
ここではよくあること
気にするな

319 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 20:16:42 ]
>>292
この間未だにVB5で稼動してるシステムにVB6と互換性あるJoin関数やReplace関数作ったんだけど
そんときMidステートメント使ったのね。

最初はMidでやってたんだけど遅い気がしてMid$に変えたら早くなったよ。
VB5だからなのか、使ってるマシンが古いせいなのかは知らないけど、
Mid$の方が早いみたいだしMid$使ったらどうかな?

320 名前:292 mailto:sage [2008/05/03(土) 20:34:21 ]
>>293以外のみんなありがとね。
こちら何度やっても差が出なくて困ってる。
おれも>319のようにMid$の方が速かったことがたしかあったけど、どうも最近再現しない。
>>310のJoin$みたいに、もしかしてつけなくていいものをつけてるとしたら馬鹿らしいし
>>319にはすまんけど付けないことにするかな?

321 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 22:23:53 ]
>>320
ttp://officetanaka.net/excel/vba/speed/s12.htm

322 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 23:21:14 ]
>>321
500万回でMidが5秒って、1回あたり1usじゃん。
+で文字列連結するのをMidに変えたときの恩恵に比べれば、差なんて無いも同じ。

・・・まぁ、俺は常にMid$つかうけどね。

323 名前:292 mailto:sage [2008/05/03(土) 23:44:10 ]
>>321
あまりラベルの低いサイトにリンク張らないように。
それってMid$関数だろ?
俺が言ってるのは関数じゃなくてステートメント。



324 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 23:49:57 ]
いいかげん、うざくなってきたな

325 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 00:11:16 ]
うむ

326 名前:319 mailto:sage [2008/05/04(日) 11:33:59 ]
>>320
まあそれはお好きにどうぞw

327 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 17:03:11 ]
なんか以前論争になったときは「変なこという奴だな」と思いつつも黙っていたが、
VBのような言語(つまりCのような設計思想の言語とは違う、と言いたいんだが)で
「組み込み関数」と「ステートメント」を峻別することに意味なんてあるんか?w

確かにMSDNライブラリ(俺の手元にあるのは2001年10月のもの)を見ると、
たとえばMid$ならMid$に関して、「Midステートメント」と「Mid関数」の二つのエントリーがあるが、
二つの説明を見比べれば、「Midステートメント」の方は明らかに「Mid関数」の返り値の型の仕様ついて
詳細な説明をスキップするための便宜上のもの(はっきり言えば煙に巻いて誤魔化している)
に過ぎないように思われるが。

328 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 21:36:28 ]
Dim s As String
s = "1234567890"
Mid$(s, 3) = "alpha"
Mid(s, 3) = "beta"

vb6でこーゆーコードをコンパイルして、逆汗したが、
結局両方とも同じように_vbaMidStmtBstr呼んでるだけだたよ。

329 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 05:46:33 ]
ってことはMidで十分ってことだよな。
関数はMid$が常識だろうが。

330 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 09:28:20 ]
フォーム タイトルバーのフォントサイズを変更するにはどうすればいいですか?

フォーム プロパティのフォントサイズを指定すると
置かれている各コントロールのフォントサイズは変わりますが
肝心なタイトルバーのフォントサイズが変更されません

331 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 12:55:21 ]
画面のプロパティのデザインで決まっているので、個別のウィンドウで変更することはできません。

332 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 20:27:53 ]
WebBrowser1でWebを読み込んで縦スクロールバーをコントロールする方法ないですか?
最初に一番下まで持っていきたいのですが。

333 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 12:10:56 ]
Webを書き換えできる立場にいるなら<a name="hoge"></a>でアンカー付けて読み込む時にURL末尾に#hoge
Webは書き換えられないならフォーカスをIEコンポにしてSendKesとか・・・



334 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 15:17:49 ]
>>333
できました ありがとうございます。

335 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 00:06:54 ]
midの話題に便乗して質問
replace関数とmidステートメントの使い分けって
どういう風にしたらよろし?

あとreplace関数で下のようにInStr関数を使って開始位置を設定するのは意味がない?

strHoge = "...hoge"

strFuga = Replace (strHoge, "hoge", "fuga", InStr(strHoge, "fuga", vbBinaryCompare))

336 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 00:36:52 ]
>>335
使い分けって全然別物じゃんw
っていうか、だからVBのような言語で関数とステートメントを「使い分け」ることこそ意味がないつーに。

mid:
 与えられたBSTRのバイナリイメージを直接上書きする。
 当然、置き換えられた部分の文字数も、文字列の長さも変わらない。(変えられない)

replace:
 与えられた文字列の中の特定の部分を別の文字列で置き換えた文字列を新たに作成する。
 「置き換えられる」部分文字列の長さと「置き換える」部分文字列の長さは違っていてもかまわない。

337 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 02:50:02 ]
vb6.0でフォームだけ透明化して、ラベルなどはそのまま表示させることって可能でしょうか?
方法があれば教えてください。

338 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 04:27:56 ]
十字キーの↓でラベルを順に選択できるようにしたいのですが、

If GetAsyncKeyState(vbKeyDown) Then
If Label3.ForeColor = Magenta Then
Label4.ForeColor = Magenta
Label3.ForeColor = Yellow
End If
If Label4.ForeColor = Magenta Then
Label5.ForeColor = Magenta
Label4.ForeColor = Yellow
End If
If Label5.ForeColor = Magenta Then
Label6.ForeColor = Magenta
Label5.ForeColor = Yellow
End If
End If

と記述するよりもっと効率がいいやり方はないのでしょうか?

339 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 08:28:01 ]
>>338
効率以前に「他人に意味が通じる文章」を書く方が先決だろう。
というか、推敲する手間を惜しむような奴にプログラマの才能などないと思う。

340 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 12:30:28 ]
>>338
効率もなにも、ひょっとしてそのコードバグってないか?
13、14、15はYellowになるだろ、一回↓キー押しただけで
順ってなんですか?

341 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 14:12:33 ]
>>338
訳:カーソルキーの↓キーを1回押すごとにラベルを順番に選択(色を変更)したいのですが、
>>338のコードと記述するよりスマートになるやり方はありませんか?

342 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 00:08:54 ]
>>339
分かりにくくてすみません・・・

>>340
バグってます。
通常の状態をマジェンタ、選択されてる状態を黄色にして、
↓キーを押すたびに選択されているラベルを変えるプログラムをつくりたいんですが、うまく行きません・・・

>>341
そういうことです。ありがとうございます

343 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 02:23:29 ]
ラベルをコントロール配列にでもして、
現在黄色い場所をインデックスとして覚えといて
そいつをカーソルキーでうろうろさせるとか



344 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 03:49:52 ]

◆6月にマネージャパン、月刊アスキー、週刊アスキーの3誌が賞金総額2000万円の「シストレFXグランプリ」を開催
system-trading.jp/news/index.php?cID=3

5月22日より登録受付開始、6月2日よりグランプリ開始の予定。賞金総額2000万円。
  デモトレードの優勝者には賞金三百万円がプレゼントされます。


▼トレード部門
初期資産500万円で、デモ取引のトレード収益を競っていただきます。
www.fx-gp.com/about/

▼賞金総額
■社長特別賞(シストレソフト買取価格) 10,000,000円
●シストレソフト部門賞 1位300万円 2位100万円 3位50万円
●トレード部門賞 1位300万円 2位100万円 3位50万円
●前期MVP賞 50万円
●後期MVP賞 50万円

345 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 08:19:34 ]
コピペ君って馬鹿だな、まで読んだ。

346 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 18:24:00 ]
GetAsyncKeyStateを使うとボタンを瞬時に離さないとIf以下のコードが何回も繰り返し行われてしまいます。
途中にWaitなどを入れてみましたが、そうするとキーを押したときに反応しないときがあります。
解決方法を教えてください。

347 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 22:46:12 ]
>>346
釣りに見えるのはなぜなになでしこ

簡単に解決させたいなら ElseIf と KeyUpイベントを覚えるといいと思うよ

348 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 00:04:46 ]
>>374
偉そうに舐めた口利いてる奴がそのレベルじゃアカンだろうw
コントロールのイベントはフォーカスがあるときしか拾えない。
こんなUIの基礎も理解してないの?

>>346
GetAsyncKeyStateのリファレンスにまんまの答えが書いてあるじゃん。
もちろん自前でステートマシン作って解決してもいいんだけど。
ステートマシンっていう考え方は小学生でも理解できるわりに応用が利く(たとえば
>>338のようなコードをわかりやすくするのにも使える)から覚えて損はないよ。

349 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 00:18:53 ]
>>347
ElseIfとKeyUpですか・・・ちょっと調べてきます

>>348
なるほど。もっと詳しく勉強する必要があるんですね。
ふたりとも回答ありがとうございます

350 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 08:21:35 ]
だから詳しく勉強する必要はないの。
そう言ってるでしょ?
MSDNライブラリのGetAsyncKeyStateの項にそのまんま答え書いてある

351 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 17:22:21 ]
>>348
FormにKeyUpイベントあんの知らんの?

352 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 17:36:32 ]
>>348
Labelのイベントだとは書かれていないのにも関わらず
Label_KeyUp()に書けと読み取ったお前もかなりやばいぞ。

キー操作でLabelに何かアクションする場合、
Form_KeyDown()やForm_KeyUp()に処理が書かれることが多い。
>>347はそれを言ってるんだと思うが?

353 名前:デフォルトの名無しさん [2008/05/15(木) 17:56:57 ]
VB6を使ってるんだがFlexgridでAccess2000に接続したものを表示したい。
ADOコントロールを使わずに接続することって可能?



354 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 18:01:23 ]
まず質問者と>>348>>338のバグを認識しないとな。

355 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 18:50:24 ]
>>353
DAOでやるってことかな

356 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 19:40:08 ]
初歩的な質問で恐縮ですが、

vbでsendkeysを使って作成しておりました。
さまざまな問題が出たため、apiを使用しキーボードシュミレートを
行うため、下記のサイトを参考に組み込みました。
hanatyan.sakura.ne.jp/vbhlp/keybdeve.htm

こちらで送信はできたのですが、ポップアップするような
アプリケーションの場合そこで制御が停止してしまいます。

停止せずに送る方法がありましたらお教え下さい。


357 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 00:21:38 ]
>>351-352
あのなあw
それ以上馬鹿を晒さないうちに黙っていた方がいいと思うよ。

358 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 02:04:54 ]
>>352

359 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 02:56:11 ]
VB脳w

360 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 11:35:01 ]
VB6を使用しています。
ADO2.5のRecordsetオブジェクトを使用し
以下のようなDBを参照し

フィールド1 |
----------
A |
B |
C |

データを
Aを取得し変数にセット→MoveNext
Bを取得し変数にセット→MoveNext
Cを取得し変数にセット
という流れで取得しています。

MoveNextなどをせずに
一気にA B Cのデータを取得し変数にセットをしたいです。
もし可能であればご教授ねがえませんか?


361 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 11:49:27 ]
ご教授なんて呼ばれても そんな人いません

362 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:19:34 ]
恥ずかしい馬鹿だな。
「ご教授」でもいいんだよ。嘘だと思うなら辞書引いてみな。

DBはやったことないんで質問には答えられなくて申し訳ない。

363 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:28:39 ]
>>362
ご教授なんて日本語存在しませんがw
嘘だと思うなら「間違った日本語」とかでググってみな?w

あ、ゆとりさんに無理ですか そうですか
存在しないものを作りあげてしまうなんて
もうレベルが低すぎてこちらまで恥ずかしくなってきましたw



364 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:31:39 ]
辞書を見て自分の都合のいい解釈する人に何を言っても。

365 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:33:54 ]
それはいわゆる無知な「誤用厨」(まあ今俺が命名したんだけどw)が
勝手にそう言ってるだけ。

だから辞書引けって馬鹿。

ついでにその「誤用厨」が得意げに指摘する「確信犯という言葉の誤用」も
誤用じゃないんだよ本当は。

366 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:41:38 ]
間違ったものを強引に正しいものにしようと必死な人がいると聞いて
飛んできますた

>>365
間違いを指摘されてるんだから、そろそろ悪あがきは止めて あきらめようぜ?ww
お前が馬鹿なのは十分分かったから、これ以上 墓穴掘るなよ

ご教授はどう考えても 存在しない日本語
日本人なら正しい日本語使え、プログラミングとかやる奴ならなおさら

367 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:44:29 ]
あのなあ。
そもそも「教授」って言葉をポストに使う方が元々は派生的な用法だっての。
字面見ればわかるだろそんなの。

368 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:00:50 ]
プログラムは正しくない命令文ではエラーが出るが、
「ご教授ねがう」は「ご教示いただく」のことだろうなってわかるだろ。
教えてやればいいだけでしょ。

お前らそんな固い頭でプログラミングとか向いてないんじゃね。

>>360
文章から、変数は配列じゃないと想定してレスすると、一気に変数に入れるのは不可能。

数が少ないならフィールド横に配置して1レコードにするとか。
フィールド1 | フィールド2 | フィールド3 |
----------
A | B | C |

変数に配列使ってループさせれば解決すると思うけどネ。

369 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:08:43 ]
 Function Nihongo_OK(ByVal str As String) As Boolean

Select Case Instr(str,"ご教授")
 Case 0
  Return True
 Case Else
  Return False
End Select

End Function

370 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:25:32 ]
Debug.Print Nihongo_OK("あたご教授は素晴しい教授だ")
False

( ゚Д゚)

371 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:26:54 ]
誰?

372 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 16:08:10 ]
ご教授って存在しないの?
教授に対して
ご教授お願いしますってのもだめなの?

373 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 18:47:18 ]

Private Sub CommandButton2_Click()

Dim mambo As Date
If Trim(mambo) = Null Then Exit Sub
mambo = UserForm1.ComboBox1.Value
Call search_light(mambo)

End Sub

上のプログラムで「mambo」という変数には時間が入る(or空白)のですが、
「mambo」が空白の時でも、プロシージャが終了してくれません。

「""」を使うとエラーになるし、エラートラップを使うしかないのでしょうか?



374 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 11:42:08 ]
>>360
Recordset.GetRowsメソッドじゃだめ?

375 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 11:48:17 ]
>>373
とりあえずDate型の初期値はNullじゃないよ

If mambo = #0:00:00# Then Exit Sub

376 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 12:38:58 ]
ListViewのような行と列を持つコントロールに
テキストボックスやコンボボックスを表示されられるコントロール名ってなんでしょうか?

377 名前:373 mailto:sage [2008/05/19(月) 09:13:12 ]
>>375
遅くなってすみません。
ありがとうございます

378 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 10:13:48 ]
コンボボックスで起動直後に任意項目を選択済みにするには
ロードイベントにSelectedIndexで設定する以外に方法はありますか?

コンボボックスのプロパティには初期値を設定出来る項目はないようですし

379 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 12:20:53 ]
初期値を設定すべき実行部分で初期値を設定する以外に方法はないと思う

380 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 18:10:29 ]
msgboxで表示される文字のフォント指定はどうやるのでしょうか?

381 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 03:09:51 ]
そりゃあコントロールパネルからだ

382 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 17:14:46 ]
ttp://jeanne.wankuma.com/library/inifile/source.html
↑のクラスライブラリをVBで使おうとしても
この引数を受け付ける New がないためオーバロードの解決に失敗しました というエラー出て
インスタンス化出来ないです、なぜですか?

参照設定でDLLを読み込んで
 Dim ini As New Jeanne.Ini.IniFile
のコードを書きました

383 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 17:51:30 ]
>>382
どうみてもC#だが誤爆か?
それともそれをDLL化したものが「VB6以前」で使えないといってるのか?
後者ならあたりまえなので、COMのラッパークラス書いてレジストリ登録しなさい。



384 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 19:10:45 ]
>>383
やっぱりVBで他言語のdllはコーディングし直さないと使えないのですか
VCで書いたライブラリをVBで利用するための詳しい解説付きサイトがあったので
C#のもいけるかなと思ったのですが

385 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 19:39:03 ]
つか、inifile読み書きクラスって、車輪の再発明もたいがいにしろって感じ

386 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:28:12 ]
>>384
「VC#で書いたライブラリをVBで利用するための詳しい解説付きサイト」を探して読め


387 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 10:49:51 ]
ファイルAとファイルBのCSVファイルの内容を比較するプログラムを作る時
みなさんならどうしますか?

自分はまだ知識が乏しいので
それぞれのファイルをSystem.IO.StreamReaderを使ってオープンして
一行読み込むたびに,区切りのデータをArray変数にsplitで代入して
GetUpperBound(0)で最大を把握しながらArrayの各値を比較しています

先に全部のデータを変数かデータベースに読み込んでから比較したら
比較速度はかなり増しますか?

388 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:01:04 ]
Dim tmp1(),tmp2() as string

Dim CSV1 As New System.IO.StreamReader(ファイル1, System.Text.Encoding.Default)

Do Until CSV1.Peek() = -1
tmp1 = Split(CSV1.ReadLine(), ",")

Dim CSV2 As New System.IO.StreamReader(ファイル2, System.Text.Encoding.Default)

Do Until CSV2.Peek() = -1
tmp2 = Split(CSV2.ReadLine(), ",")

''''ここに比較処理

Loop
CSV2.Close()

Loop
CSV1.Close()


>>387 実際のコードはこのような感じです
比較処理時間を短縮出来るもっと効率の良い方法があればご教示お願いします

389 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:22:21 ]
>>387
.NETの話題ならスレチだが。

VB6以前なら

Dim FSO As Scripting.FileSystemObject
Dim sFileA As String
Dim sFileB As String

  Set FSO = CreateObject("Scripting.FileSystemObject")

  sFileA = FSO.GetFile(FileAのパス).OpenAsTextStream(ForReading).ReadAll
  sFileB = FSO.GetFile(FileBのパス).OpenAsTextStream(ForReading).ReadAll

  Set FSO = Nothing

  If sFileA = sFileB Then
    MsgBox "同じ"
  Else
    MsgBox "違う"
  End If


ってやるとめっちゃ早いけど。
行単位比較だったら取得したファイル内容を、
SplitでvbNewLineを区切り文字にして配列ゲットしてループ&比較かなぁ?



それにしても携帯でコード書くと疲れるな。

390 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:42:36 ]
比較してどこが違うか具体的に示す必要があるなら、それでいいんじゃない
ただ異なっているかどうかだけでいいならバイナリで読み込んで比較するけど

391 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:49:22 ]
>>390
その手があったか>バイナリ

392 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:56:42 ]
>>389-390
ありがとうござます

>比較してどこが違うか具体的に示す必要があるなら
やろうとしてることがまさにそれなので>>387の方法で比較するしかなさそうですね

みなさん、とても助かりました

393 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:02:59 ]
まずはファイルのサイズを比較して異なっていたら別物、同じなら中身を調べる、って処理を入れるのもアリだ



394 名前:392 mailto:sage [2008/05/27(火) 19:38:04 ]
DoEventをやめて
BackgroundWorkerで完全なマルチスレッドにしたら
処理速度にかかる時間が以前の半分くらいと かなり早くなりました

マルチスレッド化はロジックが結構複雑で
今までやりたいなと思いながらも結局はDoEventで代用してましたが
やってみたら意外と簡単でいい勉強になりました

395 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 19:43:13 ]
ループにDoEvent入れてたってオチじゃないだろうな

396 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:27:52 ]
細かいようだが訂正

× DoEvent
○ DoEvents

397 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:51:27 ]
>>394
スレタイにいいかげん気づこうな

398 名前:デフォルトの名無しさん [2008/05/27(火) 22:30:43 ]
携帯プログラミング
テキストボックス1に文字が出る
ボタン12個
ボタン1(1)
ボタン2(2、A,B,C)
ボタン3(3、D,E,F)
・・・
ボタン9(9、W,X,Y,Z)
ボタン10(*)入力画面を初期化
ボタン11(0)
ボタン12(#)同じ文字・数字をつづけて入力できる

多いですがプログラミングコードを教えてください。
本当によろしくお願いします。

399 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:33:39 ]
>>398
ここは宿題スレではありません

400 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 00:20:58 ]
>>398
そんな簡単過ぎるコードも書けないのか今時の学生って
ホントに勉強してるの?

401 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 01:40:47 ]
グーグルツールバーみたいに入力候補がでるテキストボックス作りたいんだけどどうやるのがいいんだろう
検索対象の件数が増えると使い物にならないようなのしか作れん・・

402 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 01:44:56 ]
候補の用意ができたとして、
表示する部分は、シェルにIAutoCompleteなどというものがあるらしいが、
VBから使えるのかどうかわからない、すまん。



403 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 03:17:40 ]
>>401
ユーザーコントロールでコンボボックスとセットにして、
入力されたらリストだけドロップして見せればいいんじゃね



404 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 12:54:04 ]
環境はWindowsXP PRO SP3 WSH5.7です。
以下のコードを実行すると、"1 2 ... 19 20"という結果になります。

For i = 01 To 20
j = j & " " & i
Next
WScript.Echo j

実行結果が、"01 02 ... 19 20"となるようにするには、
どうすれば良いでしょうか?


405 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 13:54:53 ]
やらんとすることはゼロサプレス無しの2桁化でいいのか?
j=j+" "+format(i,"00")

ところでjの初期化は?


406 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 14:31:56 ]
For i = 101 To 120
j = j & " " & mid(i,2)
Next
WScript.Echo j


407 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 16:04:31 ]
>>405
レスどもです。VBSではformatが無いようで動きません。
FormatNumberとかはあるんですけど欲しい動作はなくて。

>>406
こういうトリッキーなやり方があるんですね。動きました。ありがとうございます。

408 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 20:13:51 ]
ゼロパディングって言え

409 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 21:52:39 ]
失礼な

tricky
───────────────
形 @ずるい,こうかつな
A手のこんだ,扱いにくい,巧妙な

410 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 22:58:24 ]
VBScriptはスレ違いのような

411 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 23:19:34 ]
>>410
くだらんレスをするな。モレモナー

412 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 08:27:54 ]
うんスレチガイだね

413 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 08:55:59 ]
パディングとサプレスの区別が付いていない奴の居るスレはここですか?



414 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 09:03:46 ]
VS2008のC++に移行しようと思って少しさわってみたけど
コマンドの候補を表示してくれるインテリセンス機能ってないのか・・
さらに敷居が高くなった

415 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 10:33:35 ]
>>410-412
>>1

416 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 13:40:32 ]
Right("0" & i, 2)とかやらない?

417 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 14:30:56 ]
Right(100+i, 2)

418 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 18:14:03 ]
>>417
ふいたwwwwwwww
どうしても数値でやりたいのかwwwwwwwwww

419 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 18:42:16 ]
>>417
それだと14桁で限界くるだろ

420 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 18:50:50 ]
でもありだな
>>416だろjkくらいしか思わなかった

421 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 20:35:30 ]
trickyだね

422 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 22:28:35 ]
VBで標準出力に出力ってどうやるんですか?

423 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 22:52:10 ]
ぐぐれ



424 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:53:16 ]
ProgressBarを描画させながらその上でラベルを使って進行状況の%表示をさせると
ラベルの背景が透明にならず不格好なので
PictureBoxの疑似プログレスバーで 背景をDrawStringで透明にして%の文字を描画させたら
通常のプログレスバーよりとてつもなく描画処理が遅くなってしまい困っています

プログレスバーの上に 進み具合を背景透明な文字で%表示させても高速に描画させる
いい方法はないでしょうか?

425 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 01:28:04 ]
オーナードローで文字を置けば?

426 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 01:40:29 ]
プログレスバーの上にラベル表示ってどうやるの?
配置してみたら下になっちゃうんだけど・・

427 名前:424 mailto:sage [2008/05/31(土) 10:25:49 ]
カスタムプログレスバーで ものすごく良いサンプルがありました
ttp://www.codeproject.com/KB/progress/ProgBarPlus.aspx

これバーの部分にオリジナル画像使えたり色々なところが調整出来てスゴイです
でもやはりプログレスバーと処理時間比較してみると
何倍か時間がかかりますね、負荷を減らしつ表示するにタイマー使えばいいのかな

428 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 10:28:55 ]
修正
>でもやはりプログレスバーと     ×
>でもやはり標準のプログレスバーと  ○

429 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 12:05:01 ]
>>427
確かにそのサンプルすごくいいな
ただのプログレスバーがそこまで自由にカスタム出来るとは思わなかった

430 名前:デフォルトの名無しさん [2008/05/31(土) 12:30:27 ]
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
'x2乗値を計算して、書き出すだけの問題

Dim intA, intB, intC, intD, intN1, intN2, intM1, intM2, intT As Integer

intA =
intB =
intC =
intD =
intN1 =
intN2 =
intM1 =
intM2 =
intT =
TextBox9.Text =
'この問題で使う関数は絶対値を求めるMath.Absだけ

End Sub

visual basic 2003 です。=の後に入る答え教えてください。

431 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 13:05:08 ]
断る

432 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 13:11:49 ]
なにその低レベルな宿題

433 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 14:40:57 ]
スレタイが読めないレベルの人になに言っても無駄



434 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 11:29:07 ]
VB6で文字を書くとき、OSのアンチエイリアス無効にすることってできる?

435 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 14:26:05 ]
あと1年半でWindows7が出て、自作のVB6プログラムが動かなくなりそうなので、
VC++に移植作業を始めたけど、案外するすると移植できるもんだね。
VBではClassモジュールとFormしか使わなかったからかな。
C++は配列の代わりにvectorが使えるから楽だね。

436 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 14:27:45 ]
Windows7だとVB6は動かないの?

437 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 14:39:25 ]
MSが、VB6のコンパイラはもうサポート外
つくったEXEはVistaまではサポートに努力するが、それももう終わり
って事だろ

438 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 00:29:10 ]
あと1年半じゃ新しいOSは出ないと思うぞ。まVistaみたいに1年間も有料ベータテストを
やるっていうのなら可能性はなくもないけど。常識的には2012年ごろかな?

439 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 10:46:22 ]
じゃあVB6で作られたシステム使い続けてる多くのユーザーさんから
爆発的な量の案件がやってくるってことになるのかな?

新しいOS出た途端にってことは無いだろうけど。
動作テストして、VB6のシステムが動かなかったら
そもそもOS変えないかもだけどw

440 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 11:24:53 ]
Vistaにしたら動かなくなったソフトなんてよく聞くだろう
VB6でもなんでも、ディレクトリ決め打ちとかせずにきちんと書けば、次のOSでも動くかと

MSがVBランタイムを次のOSで殺せば全滅だが

441 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 11:45:27 ]
VB6.0 SP6 なんですが、A dministrator権限のないユーザから
OCXを使用することはできるでしょうか?
レジストリに登録せずに参照する方法があれば教えてください

442 名前:デフォルトの名無しさん [2008/06/10(火) 12:00:40 ]
コレクションについて質問です。
キー文字列からインデックスを得る事は可能でしょうか?

443 名前:デフォルトの名無しさん [2008/06/10(火) 17:41:20 ]
VBAで素数判定するプログラムを作らなきゃいけないのですが、作り方が分かりません。
フォームは作れるんですが。。
どうやって作ればいいのでしょうか?
誰か教えて下さいませ。



444 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 17:57:57 ]
>>443
素数判定がわからないのか
VBAがわからないのか
VBAで再現する方法がわからないのか…

VBAだし

445 名前:デフォルトの名無しさん [2008/06/10(火) 18:15:03 ]
VBAはある程度分かるんですが、素数判定をVBAで再現する方法がわからないです。
private sumとかはわかります

446 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 19:06:15 ]
宿題は自分でやりなよ

447 名前:デフォルトの名無しさん [2008/06/10(火) 19:45:28 ]
ここは質問スレだから聞いてるんです。。

448 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 20:02:41 ]
Public Function 素数判定(数) As Boolean
  If 数 Like "素数" Then
    素数判定 = True
  Else
    素数判定 = False
  End If
End Function

449 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 21:15:32 ]
>>445
private sumって何?

450 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 21:38:54 ]
>>448
感動した

451 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 21:53:51 ]
>>441
manifest使えばレジストリへの登録をせずにOCXを使える(XPから)。
www.microsoft.com/japan/msdn/thisweek/vbxp/vbxp2.aspx

452 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 01:33:30 ]
>>447
はいって何だよ。出来んのかよ。さっきから何度も。何がはいなんだよ。
出来もしねえ奴が軽々しくはいなんて言うんじゃねえよ。
わかってんのかよ。はいって言う事の責任の重さを。
社会勉強のつもりでやってんだったら辞めろおまえ。

453 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 01:41:32 ]
素数判定wwww
そのくらい自分で書くかググれよwwwww
サンプルソース結構多いのにアホかとwwwwww


…って宿題か。
ここは宿題スレではないからスレチだな。うんうん。



454 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 09:18:44 ]
VistaでVB6の環境立ち上げるとOLEレジストリへのアクセスエラーですってメッセージが
毎回表示されるんだけど回避方法ありませんかね?
その後は普通に動作するんだけど気分悪いよ。

455 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 11:46:00 ]
VB6ってXPにすら対応してないのに

456 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 12:15:15 ]
「OLEレジストリへのアクセスエラー VB6」sw\\でぐぐった1つめ
ttp://blog.heiichi.com/?eid=533108

457 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 13:00:20 ]
>>455
( ゚Д゚)ポカーン

458 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 19:25:39 ]
>>456
ありがとう。
やってみます。

459 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 13:08:35 ]
>>443
で、宿題はできたかい?

添削ぐらいならしてやるよ

460 名前:デフォルトの名無しさん [2008/06/12(木) 16:05:25 ]
メニューバーの「表示」からコマンドとデザイナの項目が消えて、ファイルを
読み込んで続きをデザイナで作成することができなくなってしまいました。
どうしたらデザイナ画面を復活させられるのでしょうか?

461 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 16:42:55 ]
>>460
メニューバーから開いたことがない俺ですこんにちは
俺はいつもプロジェクトエクスプローラから開いてるなぁ

462 名前:デフォルトの名無しさん mailto:sage [2008/06/12(木) 22:05:02 ]
MSflexgridで一番上と下の行を固定させる方法を誰か教えてー(;_;)

463 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 00:48:17 ]
XMLHTTPでリクエストするときって、ポート80じゃないの?



464 名前:デフォルトの名無しさん [2008/06/16(月) 15:22:25 ]
あるデザインから他のデザインへクリック1回で飛べるようにしたいのですが、
リンクラベルのどの項目をいじって配置すればいいのかよくわかりません。
どうすればできるようになるのでしょうか? 教えてください。

465 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 16:01:34 ]
先にシャワー浴びて来いよ

466 名前:デフォルトの名無しさん [2008/06/16(月) 16:59:48 ]
WinXPでVB6.0+クリスタルレポートでの開発をしています。
クリスタルレポートのバージョンは何が正しいのか不明ですorz
とりあえず既存ソースを動かしたいがCRPEAutoでコンパイルエラーを起こします。
クリスタルレポートはバージョン不明ながらクリスタルレポート9をインストールしました。
Crystal Reports 9 ActiveX Designer Runtime Libraryを参照したが解決しません。
コンパイルエラーなので参照を指定すれば良いと思ったのですが根本的に勘違いしてますか?
何か参照する対象を間違えてますか。

467 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 20:22:31 ]
>>466
GrapeCityのActivereportをかいなよ。

468 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 23:47:14 ]
>>466
一度、元々のプロジェクトファイル(*.vbp)をテキストエディタで開いてみると良いかと。

469 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 23:50:51 ]
xx

470 名前:468 mailto:sage [2008/06/16(月) 23:55:09 ]
いちおう説明追加しとくと、
「Reference=〜」となってるのが、参照設定
「Object=〜」となってるのが、コンポーネントね。

471 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 00:00:16 ]
昨晩、車で猫を轢いちまったばっかりなんでな・・・・
頭がタイヤの下に入っちまったようで、ゴリッと鈍い音がした・・・
たぶん即死だったと思われ。気のせいか眠るときに「ニャ」という声が聞こえた。
今日も聞こえるかと思うと恐くて恐くて・・・もうorz

472 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 00:18:36 ]
……ぉ…ま……ぇ………ヵ……

473 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 01:50:46 ]
……ヵッォ……



474 名前:466 mailto:sage [2008/06/17(火) 10:44:45 ]
> 467
たぶん、予算がありませんorz

> 468
ありがとうございます。
参照しているdllに関しては同一名(パスは違った)を参照しているので問題はないはずなのですが
もうちょっと頑張ってみます。

475 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 11:10:20 ]
無駄にしている時間、日数の給料分を考えれば買ったほうがいい場合もある
予算の効果も考えろ

476 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:24:35 ]
>>475
会社の実態を知らないなんで無職の方ですか?

問答無用で稟議が通らないなんてザラですが?

477 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:29:08 ]
クリスタルレポートって重くねーか?
改良試作費で買ったけど使い物にならないんで放置。
どうせ捨てるんでよければあげるよ。
これが使える用途って元々かなり大きくて思いシステムで
帳票系の負荷が表に出て来ないようなシステムだろうな。
軽量化が望まれる俺たちのプロジェクトでは到底使えない。


478 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:33:40 ]
>>476
馬鹿な会社に勤めてるんですね
恥ずかしくないですか?

479 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:38:48 ]
>>478
会社が馬鹿なんじゃなくて、稟議が通るように根回しできない奴が馬鹿なのでは?
俺なんて秘書課の姉ちゃんとデキてるからやりたい放題だぜ。

480 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:30:57 ]
プロジェクトの予算や納期などもわからない物件に対して、ああだこうだと
言うことになんか意味があるのか?

481 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:34:53 ]
今話してるのは概念的なことだろうよ?
何もプロジェクトの詳細を知る必要はないだろう?

482 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:36:50 ]
問答無用ですか
馬鹿ですね

483 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:38:02 ]
何もかも「馬鹿」という言葉で集約するのはよろしくない。
それこそ「何とかの一つ覚え」と言われてしまうよ?



484 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:39:17 ]
>>482
劣勢だなwww

485 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:41:17 ]
>>475-476,478-479
お前らの会話がVB(6.0以前)製煽りプログラムならいいが、
そうでないならスレ違いだ。

486 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:41:55 ]
集約できてしまうんだよな
馬鹿は馬鹿でしかない

487 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:43:38 ]
>クリスタルレポートはバージョン不明ながらクリスタルレポート9をインストールしました。

何気に見落としたが、この行為って超怒級の大馬鹿じゃね?
どう考えてもやることがプロじゃねぇよwww

488 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:44:35 ]
>>481
ああ、レスの流れを読み返したらそうだった。orz
「一考の余地がありますよ」→「実態も〜」?
ってことね。


489 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:46:05 ]
ちょっと冷静になろうぜ。何に対して怒ってるのか明確にしてくれ。

まずはクリレポのA君からどうぞ。

490 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:52:44 ]
まずは俺がCrystal Reports ActiveX のバージョンを明確にしてやろう
プロジェクトファイルをエディタで開いてObject =から始まる文を全部コピーしてここに貼り付けてみなよ。



491 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:54:39 ]
>>490
たぶん、プロジェクトファイルがどれかもわからない素人かと...

492 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:57:17 ]
>>466
よく読み返したら素人だな。よくもまあみんな釣られたもんだなw

493 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 13:59:31 ]
>>490
ActiveXの自動アップデート機能で既に書き換わってると見た。

実行環境の方は互換が保障されていれば上位のコンポーネントでも動くのだが、
開発環境の方はバージョンは絶対変えたらいけない。
実際無闇にパッチや他のソフトも入れられないことがあるのだ。



494 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:02:16 ]
>>493
いや、もちろん>>468が言うようにオリジナルのをという意味だ。
素人だからオリジナルをそのまんま使ってしまったかも知れないがなwwww
俺たちプロは絶対にそんな過ちをしないもんだぜ。

495 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:04:40 ]
>>493
俺はLEADTOOLSで酷い目に遭った事がある。
GUIDは同じでバイナリ互換なのにメソッドの仕様を変えてきやがった。
普通。インタフェース仕様を変えたらGUIDを変えるもんじゃないのか?OCXは
それ以降、恐くてアップデートできなくなった。

496 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:12:21 ]
>>495
バイナリ互換にしなかった場合を考えればわかると思うが?
プロジェクトの変換でもしない限り新しいバージョンに差し替えられなくなる。
実際にはOCXの製品バージョンアップでもない限りGUIDは変更されないものだ。


497 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:15:36 ]
パッチ毎に挙動が変わるBocSpreadSheetと共存してた俺は、もはや菩薩だな。

498 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:19:36 ]
>>497
Spreadは2〜7まで使って来たがバージョン内ではそんなに大きな仕様変更はなかったぞ?
まあ確かに若干の挙動の変化はあったが俺としては許せる範囲だった。
そんなことを言ってたらLEEDTOOLSなんて絶対に使えないぞ。
同一バージョン内でリペイントの仕様を変えられて、全フォームで画像が表示しなくなったんだから!
びびるよまったくwwww

499 名前:466 mailto:sage [2008/06/17(火) 14:21:47 ]
えっとですね、VBPではクリレポ9を参照してるんですが、11を使えと言われるようなプロジェクトです。
だからとりあえずクリレポ9を入れたんですよ。
既存ソースを動かして大枠を理解したいので。
後は基本仕様書はないけど詳細設計書だけがあるとか、
でも詳細設計書もまともに書かれてないです
過去にプロジェクトに関わった人が辞めていないor忙しすぎてどこにいるのかも分からん
という形なので困ってるという所です。

VBに関しては素人なんですが(一応7年この業界にいます、仕事でVBを触ったのは3ヶ月程度)
基本Javaメインでやってて今回火消し要員で途中から入れられた、
このプロジェクトに関わってる人間が1年目〜2年目の人間だけ。
環境設定手順書にも一切記述なし。
俺にどうしろっちゅうねん!!(来月退職届出す予定)

500 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:27:07 ]
>>499
それはデザインとランタイムのバージョン不一致やん。
CRはそれが現実として起こり得るから恐いんだよね。

501 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:29:20 ]
>>499
どおりで素人臭いわけだな・・・
最初からそこまで詳しく書いていれば荒れずに済んだものを・・・
クリレポ使いのおいらにはもう解決の方法は概ねわかったよ。
ちょっと面倒くさいがやってみるか?

502 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:31:17 ]
それこそ、vbpのテキストを貼り付けたらいいじゃないの。
コンパイルエラーが出るような場合、多くは「古いVer」だし。
「とりあえず」って言葉が誤解を招いているのに気付いてる?

503 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:32:27 ]
>>502
まあまあ、相手はJava使いでVB素人さんだ。もっと優しくしてやろうぜ!



504 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:35:35 ]
>>499
それなら9じゃなくて11をインストールするだろ普通は?

505 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:37:36 ]
おそらく11をインストした環境で9で設計したんだろうよ?

506 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:38:57 ]
ランタイム配布する時にどうするつもりなんだろ???

おそろしやおそろしや・・・

507 名前:466 mailto:sage [2008/06/17(火) 14:47:46 ]
言葉不足でした、申し訳ありません。

VBPからReference部分を抜き出しました。
4行目の指定からクリレポ9を使うべきなのか?と思っていました。
Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#..\..\..\..\..\..\..\..\WINDOWS\system32\stdole2.tlb#Standard OLE Types
Reference=*\G{EE008642-64A8-11CE-920F-08002B369A33}#1.0#0#..\..\..\..\..\..\..\..\WINDOWS\system32\MSRDO20.DLL#Microsoft Remote Data Object 1.0
Reference=*\G{00025E01-0000-0000-C000-000000000046}#5.0#0#..\..\..\..\..\..\..\..\WINDOWS\system32\DAO360.DLL#Microsoft DAO 3.6 Object Library
Reference=*\G{AF376990-6120-4E28-96DD-63FD2DC27B7A}#9.0#0#..\..\..\..\WINNT\system32\craxdrt9.dll#Crystal Reports 9 ActiveX Designer Run Time Library
VBP内の記述はどこまでならWeb上に出せる情報かも分かっていません。
すみません。

後は記述しなきゃいけないと思われる内容は
どうもDBから直接データを抽出するのではなくて
一度MDBファイルに落としてそっからレポートとして出してると見ています。
プロジェクト内にデザイナは存在しない。
その為にシステム共通のbasファイルがあってそこにCRPEAutoの記述がある。
ここでコンパイルエラーです。

過去に携わった人とちょっとだけ連絡取れて話が聞けたので
クリレポ11をインストールしました、またDLLも使うべきDLL(貰えた)で上書きしました。
でもエラーが消えていない状況です。
また、孫受けな為環境の変更に口出し出来ません。

508 名前:466 mailto:sage [2008/06/17(火) 14:55:58 ]
> 501
是非是非教えて下さい!お願い致します。

509 名前:466 mailto:sage [2008/06/17(火) 15:01:51 ]
追記:11を入れた後に参照してるのは
Crystal ActiveX Report Viewer Library 11.0
Crystal ActiveX Report Viewer Export Library 11.0
Crystal ActiveX Report Viewer Web Report Source Library 11.0
の3つです。

510 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:04:08 ]
>>508
以前、同じ問題に遭遇した事がある。そのときAGTechからもらった
CRPEAutoコンポーネント整合性修復ツールがあったと思うので探してみるよ。
ちょっと待ってて。

511 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:06:02 ]
環境が無いから、なんともいえないけど、コンパイルエラーが出るオブジェクト
または、メソッドについて、どもようなえらーが出るかで、対応は変わると思います。
エラーの内容(大事だよね)も必要かと。

512 名前:511 mailto:sage [2008/06/17(火) 15:08:31 ]
「どもような」?orz
まあ、そんな感じです。

513 名前:466 mailto:sage [2008/06/17(火) 15:09:09 ]
Object =に関してはクリスタルレポート関連は参照していないと思います。
システム固有のocxも入ってますので晒すとまずそうなんですが・・・
マイクロソフト系が2つ、スプレッドシート用が1つ、後はシステム固有が2つという状況です。



514 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:10:15 ]
セクションとかじゃなくアプリケーション、たとえば
Dim app1 As CRPEAuto.Application 
の段階でエラーが出ると理解してるが?違ったりして・・・

515 名前:466 mailto:sage [2008/06/17(火) 15:13:21 ]
失礼しました。
エラー内容は以下です。

コンパイルエラー:
ユーザ定義型は定義されていません。

516 名前:466 mailto:sage [2008/06/17(火) 15:17:10 ]
514の方の理解で合ってると思います。
ソース内の
Dim XXX As New CRPEAuto.Application
上記部分がエラーメッセージが表示された時に青くマーキングされます。

VBももうちょっと触っとけば良かったorz

517 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:17:20 ]
>>515
エラー発生行の内容(コード)は?

518 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:17:25 ]
参照設定、コンポーネント、または、バージョン不一致だな。
DLLだけ持ってきてホニャホニャしたなら別だが…

519 名前:466 mailto:sage [2008/06/17(火) 15:24:42 ]
> 517
515で記述したメッセージ以外は表示されていません。
エラー発生行のコードは516に記述している通りです。

どの参照をチェックすれば良いのか分からず
クリレポ関係の参照を全部チェックしてみたり、
コンポーネントを全部チェックしてみたりしたのですが駄目でした。
どっか根本的な所で勘違いしているのかもしれません。

520 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:32:21 ]
まさかとは思うが CRPEAuto.dll がレジストされていないんじゃないのか?
regsvr32 CRPEAuto.dll はやってみた?それでエラーにならない?

521 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:39:13 ]
クリーンな環境でCR11をインストして、Dim XXX As New CRPEAuto.Applicationが正常に
実行できる環境を作って、下のツールを使って CRPEAuto.dllとコンポーネントとの依存性を
確認してみたら?
www.programmersheaven.com/download/20851/download.aspx

それを現在の環境とで比較すれば、原因がわかるはず。

522 名前:466 mailto:sage [2008/06/17(火) 15:40:19 ]
> 520
regsvr32 CRPEAuto.dllはやっていません。
CRPEAuto.dllというdllファイルがないのですが、
こちらはCRPEAuto.dllというファイル名のファイルが存在しなくても実行可能ですか?

523 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:45:16 ]
>>522
お前は何を言っているんだ



524 名前:466 mailto:sage [2008/06/17(火) 15:47:12 ]
貰ったdllはクリスタルレポート11の
\Common Files\Business Objects\3.0\crystalreportviewers11内にある
ActiveXControlsをフォルダ事上書きしてくれと言われたので上書きました。
フォルダ内にはcab、dep、dll、oca、ocxが入ってました。

525 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:52:25 ]
>>524
上書きしただけでレジストしてないのか?
レジスト内容は9の当該コンポーネントのままだったり?
JAVAとは違うんだぞヲイ

526 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:53:27 ]
>>522
>CRPEAuto.dllというdllファイルがないのですが、

もしかして壮大な釣りだったの?

527 名前:466 mailto:sage [2008/06/17(火) 15:54:06 ]
> 523
ごめん、俺自身良く分かっていない。

ttp://home.att.ne.jp/banana/akatsuki/doc/other/windows01/
↑を見て
regsvr32 CRPEAuto.dllをコマンドプロンプトで実行してみた。
指定したモジュールが見つかりませんと出てきた。

> 521
いまいち理解出来ていないが頑張ってみる。

俺テンパってるな・・・orz
もしかして、VBの場合のdllのファイル名が
CRPEAuto.Application
↑のここと一致するのか?
Javaのクラス名とファイル名を一緒にするとかとちょっと似たようなもの?

528 名前:466 mailto:sage [2008/06/17(火) 15:58:29 ]
> 526
すまんが釣りのつもりはない!
VB素人でいきなり放り込まれて本当に訳が分かっていない。

Javaで例えてもらえると助かる。
Javaで言うと現在の状況はimport文の対象先が見当たらないから
コンパイルできないと怒られていて
import文の対象さえ見つかればどうにかなるんじゃないかな?
という認識だけど根本的に間違ってる?

529 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:58:52 ]
>>527
Javaのアプレットは登録しなくても良いだろうが
OCXとか DLLはregsvr32で登録しないと参照できないんだよ。
君の環境ではCR9は登録されているのは間違いないが
CRPEAutoの構成こんぽーねんとはコピーされただけで登録されていない。
登録された位置に参照DLLが存在しないとレジスト自体ができないはず。
VB6は簡単だと思ったかも知れないが、一歩踏み込めばOLEオートメーション
という地獄が口をあけて待ってるのさ。君はその口の中にどっぷり入ってしまったわけよ。

おめでとうWWWW

530 名前:529 mailto:sage [2008/06/17(火) 16:00:11 ]
単にDLLと言ったがActiveX DLLな。
もしかしてDLLが二種類あるのも知らないだろ?

531 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 16:11:12 ]
>>466
お前が偉そうな態度で物を言ってたから少しはデキル奴だと思っていた。

今、それが大きな間違いであった事に気付いたw

532 名前:466 mailto:sage [2008/06/17(火) 16:15:21 ]
> 529
えっと・・・やっぱりCR9をインストールしないといけなくて、
その後でCR9にあるCRPEAuto.dllというファイル名のファイルをregsvr32で登録しましょう
という理解であってますか?

CR9をアンインストールしてCR11を入れてWindowsのファイル検索で「CRPEAuto.dll」を検索したけど出てこなかった。
DLLが2種類あるのは遠い昔に勉強した気がするが最近は一切触ってないので覚えていませんでした。

533 名前:466 mailto:sage [2008/06/17(火) 16:21:51 ]
> 531
偉そうだったか・・・すんません!!
とりあえずVB素人なのは確定でお願いします。
プログラムを組んだのもこの業界に飛び込んでからで専門的に教えてもらった事もないorz
2chで技術的な質問をきちんとしたのは今回始めてで、
今まではググったり、自分で調べればどうにかなったのだが
今回は本当に何がなんだか訳分かっていないで準備期間も用意出来なかった。



534 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 16:26:13 ]
>すんません

などとふざけた態度とる奴に、お前はどう接する?

535 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 16:29:20 ]
>>466
お前の技量と目前にしている問題の大きさとがつりあわない。

困ったね。と、他人事だから軽く言うw

でも自分の問題だとしたらかなりやっかいだね。
正常に動いている時の状態があればまだしも
これじゃ複雑なパズルを解くようなもんだよ。

536 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 19:56:13 ]
VB6 において

_DragDrop() について、対象オブジェクト上での発生時
およびそれ以外での発生時ごとの処理が行いたいのですが、
どうやら一括しての「それ以外」処理は行えない様子

それではと言うことで _MouseUp() 時に処理を行えばいいかと
思ったのですが、DragDropを「0 - 手動」にしたうえで
_MouseDown() 内で .Drag を発生させると
その後マウスを放しても _MouseUp() が生じません

なぜかダブルクリックを行うと2回目の放したタイミングで
_MouseUp() が発生します


これはどのようにすれば対応可能でしょうか


537 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 19:57:12 ]
過去「VB初心者質問スレ Part4」において同じ悩みであろう


657 名前: デフォルトの名無しさん 投稿日: 01/12/27 16:22

Drag&Drop後のMouseUpイベントを取得する方法について教えて下さい。

具体的には...
DragModeを手動にし、MouseDows時にDragメソッド(引数 1)で
Drag&Dropを行うのですが、Drag&Drop後のMouseUpイベントが
取得できません。

フォーム外にDragされた場合に、イベントを取得できないので、
MouseUpであれば、フォーム外でもイベント取得できるので、
どうにかMouseUpを取得できれば良いのですが


と言うのがありましたがレスがなかったようでした

538 名前:466 mailto:sage [2008/06/17(火) 21:21:45 ]
失礼しました、少し頭を冷やしてきます。
お騒がして申し訳ございません。

539 名前:デフォルトの名無しさん [2008/06/18(水) 23:24:52 ]
xpとvb5.0を使ってます

バイナリアクセスでファイルを読み書きしたいのですが・・・
レコード位置の指定方法がわかりません。

構造体に値を入れてから
putで入れてるのですが
そのときにレコードの位置をセットする方法がわかりません。

2番目のレコードを取得するにはどうすればいいのですか?

ここのやり方でほぼそのまま作ったのですが
support.microsoft.com/kb/151335/ja


seek(#1)とやるとエラーがでました
あと
if EOF(#1)=true thenも
記述エラーが出ました

Seekでビット位置を取得しようと思ったのですが他にやり方があるのでしょうか?

また
持ってる本には
PRecord.FName = String(StrSize," ")が
String$

StrSize = Len(PRecord.FName)が
LenBだったのですが
それぞれの違いがわかりません


540 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 16:06:38 ]
すみません。ピクチャーボックスを回転させるには
どうしたらいいでしょうか?

541 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 16:29:35 ]
そんなものはないから相応のコード書け

542 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 16:51:48 ]
PlgBltというAPIがありました。

543 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 00:35:54 ]
>>539
なんだかよくわからない質問だけど、
seek(#1) → Seek(1)
EOF(#1) → EOF(1)
関数の「$」有無は、引数がNULL値の場合にNULLを戻すとか、エラーにするとか。
Lenは文字数、LenBはバイト数。

全部ヘルプに書いてある希ガス。



544 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 17:24:49 ]
>466がかわいそうだ
今後こういうパターン増えていくんだろうな


545 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 12:28:59 ]
>>543
>>539は自分で晒したKBの内容すら読めてない
日本語できない子だから英語で教えてあげて

もしくはスルー推奨

546 名前:デフォルトの名無しさん [2008/06/21(土) 16:33:11 ]
VB6ってもう手に入らないんですか?

547 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 16:33:39 ]
日本語出来ない以前にバイナリアクセスで次のレコードって…

548 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 16:51:38 ]
>>547
クマーーー

549 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 17:23:01 ]
>546
MSDN契約しな

550 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 17:25:16 ]
おいくら?

551 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 21:48:21 ]
ttp://direct.ips.co.jp/pc/ihtml/msdn_chart/
ここによれば単体で160,800円、Open Business2年で67,157円x2=134,314円になる。

552 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 02:08:39 ]
VB6の値段としては高いな

553 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 02:18:04 ]
VB6などはMSDNから外されてなかったっけ?
持ってるから興味ないけどさ



554 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 02:22:41 ]
JAVAを外してVB6.0だけ復帰してたはず

555 名前:日立バキバキ高野くん祭り [2008/06/23(月) 19:50:18 ]
1.日立製作所社員の高野くん(高野光弘)が会社を誹謗中傷して機密も漏洩
2.日立のユーザーにも「キチガイ」との障害者差別発言
3.日立製作所の企業イメージをバキバキにする
4.自身のサイトの『32nd diary』に掲載
5.日立製作所に通報される
6.あせって似顔絵削除
7.火に油を注ぐだけで所属する日本UNIXユーザ会にも通報祭り勃発
8.「給料泥棒」と説教される
9.「殺します」と殺人予告をして警察に事情を聞かれる←イマココ

高野光弘の行動
現在は、過去の記事を閲覧できなくして、「本日の日記はツッコミ数の制限を越えています」としています。
まずは、不愉快な思いをされた方々に謝罪するべきなのではないでしょうか。

高野光弘の発言
「まぁ、どこの団体もそんなにヤワじゃないので、平気なんですけども。
日本UNIXユーザ会が一番対応に慣れてる感じ。」

日本UNIXユーザ会が対応に慣れているか、みなさん確認してみてください。

連絡先
www.net.intap.or.jp/oiia/cont2/p0402.html%7B0recid=10168.html

556 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 21:26:58 ]
536です

上記の件についておわかりになる方、いらっしゃいませんでしょうか

557 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 00:23:11 ]
>>556
VBだけだと、無理なような気がします。

APIでドラッグ中オブジェクトのシステムメッセージを取ってみると、きちんと
マウスイベントは通知されているようです。
SetWindowLong、CallWindowProc などを調べてみてください。

上記のAPIを使う上での注意点としては、システムからVBの関数にコールバックさせるので、
後始末をきちんとしないと、動作が不安定になることがあります。

558 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 12:59:05 ]
>557
参考になりました
APIを使わずに回避したかったのですが
仕様ならやむ無しです

ありがとうございました

559 名前:デフォルトの名無しさん [2008/06/29(日) 16:04:13 ]
VBScriptで質問があります。
HTMLのselectタグの中のoptionタグをボタンで押すことで、
消したり追加したりしたいんですが、innerHTML以下のようにしたのですが、
駄目でした。どこが悪いのでしょうか?お力を。
ちなみにサーバサイドはASPです。
Sub changeRadio(strFlg)
Dim strAti
Dim strNvidia
<%
Dim strA
Dim strB
Dim intCounter
For intCounter = 0 to rs.recordcount-1
if left(rsGPU.fields.Item("vchGPUName"),1)="A" then
strA= strA & "<option value=""""" & rs.fields.Item("intA") & """"">" & rs.fields.Item("vchA") & "</option>"
else
strN= strB & "<option value=""""" & rs.fields.Item("intB") & """"">" & rs.fields.Item("vchB") & "</option>"
end if
rs.movenext
Next
%>
strAA="<%=strA%>"
strBB="<%=strN%>"

if strFlg="A" then
document.formA.SelA.innerHTML=strAA 'SelAがselectタグです
else
document.formA.SelA.innerHTML=strBB
end if
End Sub

560 名前:559 mailto:sage [2008/06/29(日) 16:09:26 ]
すいません、2行目訂正ですorz
>HTMLのselectタグの中のoptionタグをボタンで押すことで、
HTMLのselectタグをボタンで押すことでselectタグ内のoptionタグ

でした。

561 名前:559 mailto:sage [2008/06/29(日) 16:12:03 ]
ああ、また訂正です。。。。駄目だorz
NG
>Dim strAti
>Dim strNvidia

OK
Dim strA
Dim strB

...

562 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 17:18:29 ]
クライアントサイドはJavaScriptにした方がいいよ

563 名前:デフォルトの名無しさん [2008/06/29(日) 17:38:53 ]
VB(笑)
おまえらもう用なしだよw



564 名前:559 mailto:sage [2008/06/29(日) 17:51:36 ]
selectタグでは駄目なようなので、もう一段階上の階層に対して
InnerHTMLを使うことにしました。
お騒がせしました。

565 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 19:48:16 ]
treeviewですべてのノードを展開した状態で、上から何番目ってのを取得できるのでしょうか?

親を追加→子を複数追加→孫を複数追加〜みたいにノードを追加していくと、
ノードのindexって追加した順番に付いていき、上からの絶対敵な位置にならないので困ってます。
プロパティとか、色々見てみたんですが、なかなか思うようなものがなく。。。

おたすけくださいー。

566 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 22:50:04 ]
こんな感じの関数を作ればいいんじゃないかと。

Private Function fncGetNodeLine(twCtrl As TreeView, targetNode As Node) As Long
 On Error GoTo err_proc
  Const C_TREEDEPTH_MAX As Long = 10
  Dim lngCnt As Long
  Dim lngDpth As Long
  Dim nd(1 To C_TREEDEPTH_MAX) As Node

  fncGetNodeLine = 0
  lngCnt = 0
  If twCtrl.Nodes.Count > 0 Then

567 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 22:50:29 ]
--- 続き ---
    lngDpth = 1
    Set nd(lngDpth) = twCtrl.Nodes(1).Root.FirstSibling '先頭ノード
    Do
      lngCnt = lngCnt + 1
      If nd(lngDpth) Is targetNode Then
        fncGetNodeLine = lngCnt
        lngDpth = 0 '対象ノード発見時終了
      ElseIf nd(lngDpth).Children Then
        Set nd(lngDpth + 1) = nd(lngDpth).Child '子ノード
        lngDpth = lngDpth + 1
      Else
        Do
          If Not nd(lngDpth) Is nd(lngDpth).LastSibling Then
            Set nd(lngDpth) = nd(lngDpth).Next '次ノード
            Exit Do
          End If
          lngDpth = lngDpth - 1 '一つ上のノードに戻る
        Loop While lngDpth > 0
      End If
    Loop While lngDpth > 0
  End If

568 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 22:50:57 ]
--- 続き ---
exit_proc:
 On Error Resume Next
  For lngDpth = 1 To C_TREEDEPTH_MAX
    Set nd(lngDpth) = Nothing
  Next lngDpth
  Exit Function

err_proc:
  MsgBox Err.Description, vbCritical, "Error"
  fncGetNodeLine = -Err.Number
  Resume exit_proc
End Function

569 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 22:59:52 ]
関数にfncなんてプリフィクス付ける人初めて見たよ。
よく見る'obj'以上に無意味だと思うんだけどね。

いや、コードを読む人間をいらつかせる機能を狙ってるのなら
そういう意味はあるけど。

570 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 23:20:12 ]
>>569 そうか?
VBでのプロジェクトのコーディング規約で、たまに見るけどねw
意味は無さそうだけど、「関数の戻り値に代入している」という事が判別しやすい。
という、VB特有の意味はあるかもしれないかもしれないかも………。

571 名前:デフォルトの名無しさん [2008/06/30(月) 00:23:17 ]
>>569
コーディング規約に噛み付いてどうする。
fncもsubもよく見かけるし、そもそも規約なんてそのプロジェクトにとって意味があるかどうかだろ。
あなたがどんなプロジェクトに関わってきたのか知らないけど、
正常orエラーを返す関数をcallで呼んで戻り値評価しない奴がいたり、
オブジェクトの開放処理をしない奴って結構多いよ。
特に人の入れ替わりが激しいとこや新人率が高いとこなんて、
一人が規約を無視してそのコピーが疑問なしに次々と乱立することも少なくない。
関数にはfncをつける→fncはそこでは不要でも必ず戻り値の評価をする、とか
参照型はobjをつける→Exitする際に必ず開放する
といった決め事にした方が、品質の高いプログラムを作りやすいことも多い。

572 名前:デフォルトの名無しさん mailto:sage [2008/06/30(月) 01:33:06 ]
VB6は誤ったハンガリアン記法の品評会だったからしょうがない
一応正しいハンガリアン記法というのもあって
変数が言語のもつ型以外の意味をもつ場合につけるプレフィックス
例えば整数じゃなくてこれはハンドルだという場合にhをつけるのは正しい

573 名前:デフォルトの名無しさん [2008/06/30(月) 01:39:03 ]
日本語でおk



574 名前:デフォルトの名無しさん mailto:sage [2008/06/30(月) 01:58:48 ]
解放、な。

575 名前:デフォルトの名無しさん mailto:sage [2008/06/30(月) 23:39:56 ]
>>571
こういう場所に質問に答える形でコピペしてるコードに「コーディング規約」って
意味不明だろうw

別にそんな訳のわからない理屈振り回さなくても素直に「俺の趣味だ」でいいじゃん。
まあ個人的には愚かな趣味にしか思えないけどね。

576 名前:デフォルトの名無しさん mailto:sage [2008/07/01(火) 00:28:25 ]
「fncXXX」に噛み付いてみた → 「初めて見た」に噛み付いてみた → 「コーディング規約」に噛み付いてみた
次は何かな?

577 名前:デフォルトの名無しさん [2008/07/01(火) 10:40:07 ]
fncくらいでイラつく理由がわからない。
あーこの人はこういう書き方するのねって思うだけだけど。

578 名前:デフォルトの名無しさん mailto:sage [2008/07/01(火) 11:04:07 ]
intを返すIsなんちゃらの乱立よりはマシww

579 名前:デフォルトの名無しさん mailto:sage [2008/07/01(火) 16:31:36 ]
>>578
Integerを返すIsナンタラで真なら 0 / 偽なら -1 を返す、
Booleanを知らない奴が作った関数なら知ってる。
頭のコメントに「備考」と称して、
「VBにもBOOL型があればいいのに」
って書いてあって、最初見たとき素で笑ってしまったw

580 名前:デフォルトの名無しさん mailto:sage [2008/07/02(水) 22:37:07 ]
>>577
別にイラつく、とまでは書いてないけどね。

しかし、まあVBスレでこんなこと書くのもなんだが、
過去の自分含めて他人の「アホな」作法を見てイラつくような性格じゃないとしたら
その人はプログラマの適正を欠いている、と個人的には思うよ。

581 名前:デフォルトの名無しさん mailto:sage [2008/07/02(水) 23:34:56 ]
お前はそんな性格だから禿げるんだよ

582 名前:デフォルトの名無しさん mailto:sage [2008/07/02(水) 23:45:56 ]
>>580

583 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 14:27:15 ]
WORKGROUP



584 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 11:07:02 ]
>>580
お前は人としての適正を欠いてるわ、と個人的には思うよ。

585 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 15:18:05 ]
>>584
正直あまり笑えない。

586 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 17:02:21 ]
うちはVBとVB.NETでコーディング規約を替えてる
うはややこい

587 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 22:42:06 ]
OS:XP SP2/Vista SP1
VB6 SP6で開発してます。
XPとVistaでインストーラを分ける必要ありますか?
ちなみにVisual Studio Installerを使ってます。

588 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 23:25:26 ]
びす太の夏休み

589 名前:デフォルトの名無しさん [2008/07/16(水) 01:26:17 ]
VB6でDeleteキーを効かなくしたくて、
KeyDownイベントハンドル内に
KeyCode=0
と入力したのですが
キーが効いてしまいます。
.NETではこのように書くように載っていたのですが
6.0では違う書き方なのでしょうか?
それか、Deleteキーをきかなくするのに、
keydownイベントを用いること自体が違うのでしょうか。


590 名前:デフォルトの名無しさん mailto:sage [2008/07/16(水) 16:28:01 ]
>>589
「効かなく」とは、どういう事なのか、もう少し具体的に書かないと…

591 名前:デフォルトの名無しさん [2008/07/16(水) 21:11:17 ]
デバイスの有効、無効を切り替えたいのですが、どのようなコードを書けばよろしいでしょうか
デバイスはUSB接続のゲームコントローラです

592 名前:デフォルトの名無しさん [2008/07/16(水) 23:48:28 ]
>>590
確かに分かりにくいですね…
キー操作を無効にしたいです。
KeyPressイベントハンドル内での
KeyAscii=0
と同じ操作をKeyDownイベントハンドル内で
行わせるにはどのように書けばいいのでしょうか。
よろしくお願いします。

593 名前:デフォルトの名無しさん mailto:sage [2008/07/17(木) 14:30:52 ]
>>592
KeyCode=0で間違ってないと思ますよ。
もし、フォームでイベントを拾おうとしているならば、KeyPreviewプロパティに注意するくらいかな。



594 名前:デフォルトの名無しさん mailto:sage [2008/07/19(土) 14:41:18 ]
VBScriptで、
IEの右クリックから呼び出した場合と、
2chブラウザ(IEコンポーネントブラウザ)の右クリックから呼び出した場合を、
見分ける方法について教えて下さい。

navigator.appnameやnavigator.useragentは、
2chブラウザから呼び出した場合でも、IEそのものに成ってしまって、区別出来ないので、、、

どうぞよろしくお願い致します。


if 2chブラウザなら then
    window.open(TargetURL)
else
    Call external.menuArguments.open(TargetURL, "_blank")
end if

という様に、2chブラウザからならIEを立ち上げて、
IEからなら別タブに表示させたいのです。


595 名前:デフォルトの名無しさん mailto:sage [2008/07/19(土) 20:53:06 ]
>>594
スレタイ100回読み直せ。

596 名前:デフォルトの名無しさん mailto:sage [2008/07/19(土) 21:56:54 ]
スレタイを読み直してどうしろと言うのか

597 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 00:15:45 ]
>>595

>>1
>二.VBScript、インストーラーなどはこのスレでOK。 


598 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 15:14:53 ]
マルチ
ttp://www.happy2-island.com/bbs/bbs.cgi?#1002


599 名前:デフォルトの名無しさん [2008/07/20(日) 23:08:11 ]
>>596=598=粘着乙w

600 名前:デフォルトの名無しさん [2008/07/21(月) 01:28:44 ]
VBだけでコールバック関数を実現したいんですが、無理でしょうか?
ちなみにcallptrというDLLを使って実装はできるのですが、
なるべくVBだけでできる方法はないかなと模索中です。

601 名前:600 [2008/07/21(月) 02:23:04 ]
ちなみにこれで実現は可能ですが、
CallPtrの方はDLLしかもソースが公開されていないのでいまいち。
VBで関数ポインタによる関数の実行はかなりいいのですが、コールバック関数の
中でMsgBoxなどのメソッドは呼べないし、引数使うと落ちたりと不安定です。

CallPtr.DLL
www.softcircuits.com/dl/tools/callptr.zip
VBで関数ポインタによる関数の実行
nienie.com/~masapico/doc_FuncPtr.html

こんな風にVBでコールバックできます。でも引数渡すと落ちます。
Private Sub Command2_Click()
CallFuncPtr AddressOf testproc, "test message"
End Sub

Public Function testproc(srcmsg As String) As Long
Debug.Print "a"
testproc = 0
End Function


602 名前:デフォルトの名無しさん mailto:sage [2008/07/21(月) 09:19:36 ]
callbyname

603 名前:デフォルトの名無しさん [2008/07/22(火) 00:25:51 ]
質問なのですがVB6で両替させるにはどうすればようのでしょうか?
ttp://quote.yahoo.co.jp/m3?u ←このレート計算みたいな感じです。

[ ][combo1]を [Text1]に [Command1] [  ]
数字  ドル     円     換算     結果
    ポンド
    ユーロ

お願いします
 



604 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 00:29:30 ]
>>603
コードを書けつってるの?
どのようにってifかselectで判定させるだけなんだけど

605 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 00:33:50 ]
レートをどこから持ってくるつもりだ

606 名前:デフォルトの名無しさん [2008/07/22(火) 00:33:53 ]
そうなんですコードを知りたいんです


607 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 00:36:51 ]
レートは固定でドル107・ポンド213・ユーロ169です
申し訳ありません

608 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 00:40:22 ]
難しくないからがんばれよ

609 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 00:42:33 ]
自力でがんばってみます
短い間でしたがありがとうございました。


610 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 00:53:38 ]
>>609
あと数分待て

611 名前:デフォルトの名無しさん [2008/07/22(火) 01:05:12 ]
フィードパス使え

612 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 01:06:57 ]
コードだけ貼れないから直接見ろ
www.uploda.org/uporg1558257.zip

613 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 01:13:08 ]
本当にありがとうございました
助かります



614 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 01:55:27 ]
なぜドル・ポンド・ユーロが2つずつあるのでしょうか?
あと「うんこ」の部分を「換算」に変えたいのですがどこをいじればいいのですか?

615 名前:600 mailto:sage [2008/07/22(火) 02:06:09 ]
こんな糞コード弄らないで1から書けよ

616 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 05:02:59 ]
>>612

614にコメントしたことはさきほど変えられました。
ありがとうございました

617 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 09:56:53 ]
すみません。フォームをunload meで閉じたあとに
そのフォームがフォームのkeyupイベントを拾ってしまって
勝手にloadされてしまうのですが
このようなことってあるのでしょうか?
フォームはkeypreviewがonになっています。

618 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 10:53:09 ]
質問します

Option Explicit

Sub zzz()
Dim hoge(3) As Variant
Dim hogehoge As Byte
Dim z As Byte

For z = 1 To 3
For hogehoge = 1 To 3
hoge(z) = Range("A" & hogehoge).Value
Next hogehoge
Next z
End Sub

上のようなコードで、zとhogehogeを同時に
インクリメントすることは可能でしょうか?

619 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 11:31:42 ]
いやそのかんがえかたはおかしい

620 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 12:24:11 ]
自己解決しました

621 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 19:25:55 ]
すんませんが・・・教えてください。

VB6から使えるコントロールで、msinet.dll を使わないで、独立してHTTP通信を
カプセルするものって無いでしょうか?Grapecity さんのは内部でmsinet使っている
らしくて・・・

有償ものでかまいません。出来れば日本語版がいいけど・・


622 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 21:24:18 ]
WinHTTPとかどうよ

「Microsoft WinHttpRequest Component」を参照追加して
Dim WinHttpReq As New WinHttp.WinHttpRequest
WinHttpReq.Open "GET", "www.microsoft.com/", FALSE
WinHttpReq.Send
Dim d() As Byte
d() = WinHttpReq.ResponseBody

だってさ。

623 名前:デフォルトの名無しさん mailto:sage [2008/07/22(火) 21:43:01 ]
読むだけならopenだけでできなかったっけ?



624 名前:621 mailto:sage [2008/07/23(水) 03:41:39 ]
WinHTTP・・・調べてみます。xmlhttp ではなくって?

しばらく考えて・・・結局、NICを直接使うDLLなんかまず無いだろうから、
WinINet.dllを使っているレベルで妥協するしかないのかなと・・・
openURL のバグがたまに起きるのが面倒なのと、アップロード時(POST)に途中でちょん切れる
PCがたま〜にあるんですよね。古いPC相手にするのは面倒っす


625 名前:デフォルトの名無しさん [2008/07/23(水) 09:17:50 ]
スレ違いな気もするのですが、VB6ならなんとか組めるので
ここで質問させていただきます。よろしくお願いします。

現在PCにLANで接続されたプリンタが約50台程登録されています。
プリンタはプロパティ>印刷設定>給紙で、印刷先のトレイを設定しています。
今回このPCを新しくする事になり、旧PCの設定が正しく新PCへ引き継がれているという資料を
提出しなければいけなくなりました。

この50台のプリンタ(物理的には20台)の印刷先トレイの設定情報を
textでも印刷設定画面の画像でも、なんでもいいので一覧で出力したいのですが
良い方法がありますでしょうか?

rundll32 printui.dll,PrintUIEntry /e /n "PrinterName"
で印刷設定画面までは表示できたのですが、給紙のタブへ切り替えたりする方法がわかりません。

rundll32 printui.dll,PrintUIEntry /?
で出てきた内容を見ていくつか試してみたのですが、目的とする物は出力できませんでした。

アドバイスよろしくお願いいたします。

626 名前:625 [2008/07/23(水) 09:21:04 ]
環境を書くのを忘れていました。
OS:Win2000(SP3)
プリンタ:CANON LBPシリーズ
VB:VB6(SP6)


627 名前:デフォルトの名無しさん mailto:sage [2008/07/23(水) 11:42:58 ]
給紙のタブに切り替えるのはSendKeyとかでCtrl+Tab送ってあげればいいんじゃない?
悩んでるぐらいならハードコピーとって切り貼りした方が絶対早く終わると思うけど。


628 名前:デフォルトの名無しさん mailto:sage [2008/07/23(水) 22:42:33 ]
どーせレジストリに格納されてるんだろうから、
regmonあたりで格納場所を決定して、あとは
リモートレジストリ経由で取ってまわったら終わりじゃないの。

629 名前:デフォルトの名無しさん mailto:sage [2008/07/24(木) 22:10:33 ]
>>624
低水準なものが欲しいなら、Winsock使ったら?






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

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

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