(*´д`*)アハァ… VB初心者質問スレ Part20
1 :
デフォルトの名無しさん :
03/01/07 03:57
建てたはいいんだけど、心得の4だけ数字ってのはどうなのよ?
>>1 は、乙、と。
いつも荒れるので、しばらくsageで逝こう。
∋oノハヽo∈ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ( ^▽^) < 新スレおめでとうございま−す♪ = ⊂ ) \_______ = (__/"(__) トテテテ...
6 :
デフォルトの名無しさん :03/01/07 09:56
前が埋まってるので上げるべ
前スレでかなりDQNをかました957です。 あの後、 Set abc = cnn.Execute("select * from 必須項目 where 学生ID = " & rec1![学生ID]) abc.Delete の2行に減らすところまで進めました。 ご親切に教えていただいてありがとうございました。 「現在のRecordsetは更新をサポートしていません。プロバイダか、選択したロックタイプの限界の可能性があります。」 とエラーが出てしまうのですが、 前スレにてロックタイプによるとありましたが、多分それのことなのでしょう。 これ以上ご迷惑は掛けられないので、自分で地道にやることにします。 最後に。 963にてDoloopを使用したソースを載せたのは、とりあえずはじめの状況を載せた方が良いのではと 考えたからです。 別に怒らせようとか思って載せたわけではありません。 ただ、そのことでレスをいただいた方々、本当にすみませんでした。
>7 質問するときにこそ長文を書こうね
>>7 ロックを指定しないとdeleteできない
読み取り専用で開いちゃうんだアフォー。
>>7 > 前スレでかなりDQNをかました957です。
リンクぐらいつけろ。
前の展開を知っている人ばかりじゃないんだから。
http://pc3.2ch.net/test/read.cgi/tech/1039859691/957 > Set abc = cnn.Execute("select * from 必須項目 where 学生ID = " & rec1![学生ID])
rec1がどんなレコードセットなのか、読み手が理解するに必要な情報が明示すべし。
読み手はエスパーばかりじゃないんだから。
> ただ、そのことでレスをいただいた方々、本当にすみませんでした。
という割には、アドバイスが全然活かされてないね。
ほんとに読んでる?
>自分で地道にやることにします ってあるんだし、別に煽らんでもええんちゃう? ほっといてやりな。
今動いてるシステムの改修で、環境は NT4+VB4+MDB(DAOでアクセス) で、ある一台のマシンでだけ動作しない。 DB検索しに逝って、項目参照する個所で 「このコレクションには項目がありません」 と来る。 NGなのは日本語の英字大文字の項目 EX) "ABC−NO" こんな経験ある人(・∀・)イナイ!?
項目って何よ。
>>15 なによ?って・・・
>DB検索しに逝って、項目参照する個所で
カラムといえば分かるのか?
カラム? テーブルにフィールドが無いと来る訳か? んで、そのNGワードはフィールド名?テーブル名? Access97しか使っていないが、テーブル名にハイフン使うとコーディングでエラー 出るぞ。フィールドが無いとかいうエラーでは無いが。 テーブル名、フィールド名にハイフンは使わない方が良い。
>>17 とても
>>12 をちゃんと読んでるとは思えないんだけど
お前、おちょくってんの?
>>13 あとお前も氏ねよ。
ちゃんと嫁っての。馬鹿か?
>>18 それならフィールドの数を数えるプログラムを実行してみろ。
0個だったら項目がないってことだろ?
21 :
デフォルトの名無しさん :03/01/07 20:56
全くの初心者なのですが、よかったらご教授いただけたらと思います。 VBSを使って以下のような処理は可能でしょうか? ・あるディレクトリ(固定)にあるテキストファイルに1文を加えて保存する。 という処理です。 具体的にはVBSファイルをダブルクリックするだけで、 とある場所のaaa.txtというファイルの最後に、スクリプト上に記述したテキストを 追加したいという感じです。追加したい分は改行を含む数行です。 テキストの編集の自動化は可能でしょうか・・・? ご存知の方がいらっしゃいましたらご教授いただけたら幸いです。 宜しくお願いいたします。
申し訳有りません。aspの環境について質問があります。 メールシステムで、別サイトにあるサーバにアカウントを作成するツールを作成しました。作成したaspツールはIIS5.0で正常に動作する ことを確認しましたが、お客に開放する際諸般の事情によりWin98SEの環境で動作する必要が出てきました。 その為、Win98の環境でPersonalWebServerをインストールし、オブジェクトを利用する際XMLを利用しているので (”set xmlhttp = server.CreateObject("msxml2.ServerXMLHTTP")”) ・XMLParser3.0 ・IE6.0 をインストールしてツールをWEBブラウザから実行しても、何度も「424:オブジェクトが有りません」と表示されてしまいます。 NT4Serverでは動作したんですが・・・"msxml2.ServerXMLHTTP"は、PWSでは動作しないのでしょうか?ご教授下さい。
>>20 てゆーか、
心当たり無いならもういいから。
ハイハイ、どうもありがと。
VBSって何?
>>21 WSHというのをマイクロソフトからダウンロードしてくる。
>>25 msgbox "氏ね!"
↑この一行をテキスト文書に貼って、拡張子をvbsにして実行してみ。
>>24 悪いからなんとかしてくれ
という一文となんらかわらん、キミの質問文は。
>>23 オレはASPではXMLまで利用してないからわからん。知ってる人が現れるまでまつか、Webプログラム板のIIS、ASPスレを見る。
>>23 脳症くんに一言。MSのASPやASP.NETのニュースグループで質問せず
何故、2chなんかで質問するのかと小一時間......
軽く雰囲気悪いぞ。 藻前ら、モティツケ /\⌒ヽペタン / /⌒)ノ ペタン ∧_∧ \ (( ∧_∧ (; ´Д`))' ))(・∀・ ;) / ⌒ノ ( ⌒ヽ⊂⌒ヽ .(O ノ ) ̄ ̄ ̄()__ ) )_)_) (;;;;;;;;;;;;;;;;;;;)(_(
>>31 もうかんべんしてくれ。オレが無知だった。解答わからん。
>>30 >>32 プログラム系のカキコは初心者でスマヌ。即時性を求めるので、2chを利用したのです。
別の板に逝ってきます。レスどうもです。
36 :
デフォルトの名無しさん :03/01/07 22:43
FlexGridを行選択するようにして複数列のリストボックスみたいに使ってます。 選択行の左端の項目を取得するのに、 msFlexGrid1.TextMatrix(msFlexGrid1.Row, 0) で取得しているのですが、 Shiftキー押して複数選択した時の処理の仕方が分かりません。 Rowで取得できるのは一番上の行だけの様なのですが、その他、 複数選択分の取得しかたを教えてください。
良スレの予感
糞スレの悪寒
>21 Const sPath = "とある場所\aaa.txt" sAppendText = "こんなの" & vbNewLine & "追加するんだろ" & vbNewLine& "YO" WScript.CreateObject("Scripting.FileSystemObject").OpenTextFile(sPath,8).Write sAppendText
40 :
デフォルトの名無しさん :03/01/08 01:13
VBでランチャーを作ろうかと思っているのですが、 exeファイルをコマンドボタンにドロップした時に、 そのexeファイルに含まれているアイコンの抽出方法がわかりません。 コマンドボタンに登録したもののアイコンを表示したいのですが・・・ 絶対パスの取得と起動までは出来ました。(簡単なものですが) 本などを見るとピクチャーに表示させているのは見かけるのですが コマンドボタンへの表示がどうしても見つかりません。 VBじゃ無理なのでしょうか? どなたか教えていただけないでしょうか。
ピクチャをコマンドボタンの上に貼ってはいけない家訓とかあるんですか?
>>40 >そのexeファイルに含まれているアイコンの抽出方法がわかりません。
なら、ExtractIconとかDrawIconとかでできるんじゃないの?
43 :
デフォルトの名無しさん :03/01/08 07:10
VBAのコントロール追加で、ADOとかデータグリッド等があったので すが、これって普通ですか?もしかしてVB6もインストしてるから なんでしょうか?VBAでADOをつかったデータベースは作成可能 ですか?
>>18-19 >>22 >>24 どんな教育を受けて来たのか(特に幼児期〜学童期のしつけ)小一時間(略
お前、岩手県人だろ?
まったく東北人(≠日本人)は人格欠陥者集団だな・・・。
>12 項目名をカギカッコで囲んだりしてみるとか・・・ あと、Fieldsをループでまわして、各FieldのNameプロパティを デバッグ窓なんかに吐かせてみてちゃんと項目名が出るか確認。 そのエラーが出るあたりの実コードも晒すと吉かも。
>>39 おおお!!有難うございます!問題なくできました!
凄いッス!(って、皆様からみたら当たり前なのでしょうか、、)
そのスクリプトから独学して応用してみます!本当に有難うございました!
独学するといいつつ、追加質問で申し訳ありません。。。
>>39 さんのスクリプトの発展で、2回以上実行して追加テキストの重複を避けるために
たとえば、1行目の「こんなの」って文字が既にあったら、実行せずに終了する〜、
というような分岐は可能でしょうか・・。テキストの全文をサーチする処理が面倒でしたら、
1行目の分で判断ではなく、最後の行が「YO」だったら、、とかの条件でもかまいません。
何度も質問して申し訳ありません、ウザかったら無視してください。
ご存知でしたらご教授願えたらと思います。
>>40 コマンドボタンって hDC あったよね
hDC があれば ピクチャーBoxだろうがコマンドボタンだろうが
DrawIconで描画できると思うけど...
50 :
マギーシンジ :03/01/08 12:55
始めまして、マギーと申します。 ピクチャボックス上にラベルを貼りつけ、そのピクチャボックスをRefreshするとラベルがちらついてしまい困ってます。 無限ループ中で、ピクチャボックスに画像をBitbltで貼り付け、Refreshするという処理を繰り返しています。もちろんピクチャボックスのAutoRedrawはTrueです。 どなたかいい方法を知っている方、教えてくださーい。
>>50 直接ピクチャボックスにTextOutAPIなりPrintメソッドなりで文字を描画すりゃいい。
>>51 Print メソッドならいいけど、TextOut だと結局ちらつくだろ。
53 :
デフォルトの名無しさん :03/01/08 17:21
50さんと同じことで困ってます。私の場合、ラベルのキャプションを逐次 書き換える必要があり、Printメソッドでは文字が前に書いた文字と重なってしまい 使えません。 なんか良い方法ないのでしょうか。
>>50 ループの前でラベルのVisibleをFalseにして、ループの後でラベルのVisibleをTrueではダメ?
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/ 1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27 鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
56 :
デフォルトの名無しさん :03/01/08 22:37
Access2000でのVBAの質問です。 ここでよかったのかな。 他にいいスレが見当たらなかったので 書き込ませてもらいます。 話すと長くなるので完結に言うと、 サブフォームへフォーカスをうつそうとしてできませんでした。 仮にTESTFMという名前とします。 Form_TESTFM.SetFocus × Me.TESTFM.SetFocus ○ TESTFM.SetFocus ○ 一番上のが動かない理由がさっぱりわかりません。 これはなぜなのでしょうか。 そもそも Form_TESTFM.SetFocus と TESTFM.SetFocus はどう違うのでしょうか? くだらないことかもしれませんがどうしても納得いかないので 教えてもらえませんか? よろしくお願いします。
IPとられるとお尻ぺんぺんされるのかなぁ
>12 >>ある一台のマシンでだけ動作しない。 正常に動作しているマシンとの違いは全くないの?
>>272 一秒おきにログを消してたら恐ろしく負荷が上がります、、
何気にみんなひろゆきに優しいな。。。 たらこで学習能力の無い莫大なかずの社会人に迷惑をかけている引き篭もり管理人がそんない好きなのか・・・
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/ 1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27 鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
ファイルに、 NAME=デフォルトの名無しさん ADDRESS=sage と書いてあり、これを1行ずつ読み込み"="以降の文字列をあらかじめ宣言してある グローバルな変数NAME, ADDRESSにそれぞれ格納しようとしています。 変数も2個程度なら、"="以前の文字列が"NAME"と一致したら、"ADDRESS"と一致したら、 と比較するのが簡単ですが、数十個になると条件判断も長くなり、非効率的です。 そこで動的にStringから変数を作成したいのですが、そのような関数やメソッドはVBにありますか?
VB で使える連想コンテナなんてあったかなあ・・・。 C++ なら std::map でいけるけど・・・。 しかし、「変数を作成」 なんて不可能だと思わないか? どうやってそれにアクセスするんだ?
キターの棒線の長さが皆同じなのが不自然だ。 やりなおせ。
うーん、ではそのファイルに記述する順番を決めておき、 取得した順に、こちらも決めておいた順に変数に値を格納していく、というのが現実的ですかね? java.util.Properties#load()みたいなメソッドがあればよかったのですが… 要は前回終了時の状態などを保持しておくConfigファイルの読み込みがしたかったのです。
そういう話なら INI ファイルを作って、GetPrivateProfileString() 系の API でも 使いなさいよ、素直に。
>>68 ありがとうございます
そのような関数の存在を知らなかったので助かりました。
記録されてみるテスト。
>>56 >Form_TESTFM.SetFocus と
>TESTFM.SetFocus
>はどう違うのでしょうか?
名前が違う。Form_は名前の一部になる。
だからForm_TESTFMという名前のフォームが無ければエラーになる。
>64 文字列をインデクスとした配列みたいな使い方をしたいって事だよね? 素直にCollectionオブジェクト使うほうが吉でないかい? Dim cl as Collection Set cl = New Collection With cl .Add("名無し", "NAME") .Add("sage", "ADDRESS") End With MsgBox cl.Item("NAME") みたいな。
Form1をSetWindowLongで親ウィンドウを変更したのですが 変更後のForm1をモーダルにするにはど〜すりゃいいの? 下がってきてるんでageておきます
75 :
マギーシンジ :03/01/09 12:34
>>51 >>52 なるほど! printでやってみます。どーもでした。
>>54 >ループの前でラベルのVisibleをFalseにして、ループの後でラベルのVisibleをTrueではダメ?
これでやってもちらついてしまいました。
76 :
デフォルトの名無しさん :03/01/09 17:49
age
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 138720人 発行日:2003/1/9
年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。
そんなわけで、年末に予告したIP記録ですが実験を開始しています。
「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
79 :
デフォルトの名無しさん :03/01/09 20:13
Form1にコントロール配列を用意して子ウィンドウを表示させているのですが Form1の最小化ボタンが押されたときに表示している子ウィンドウも全て 最小化してまた逆にForm1が復元されたときもまた全て復元ということが やりたいのですがどうすればいいでしゅか おながいします
80 :
デフォルトの名無しさん :03/01/09 20:44
VBでユーザーが使用できるエラー番号帯って何番だっけ? (予約されていない番号帯)
WindowsXPのパソコンではVB6.0アプリがランタイムを別途インストールしなくても動くといううわさがありますが本当なのでしょうか?
>>79 Resizeイベントをひっつかまえたら?
83 :
デフォルトの名無しさん :03/01/09 21:03
ListViewをIvwReportで使用してるんですが、 ListItemやSubItemsをColumuHeadersの横幅も含め、表示されているとおりに、印刷したい場合はどうしたらいいのでしょうか?
>>81 ランタイム入れなくても動くだけなら動くよ。
文字化けして使い物にはならんだろうけどw
素直にランタイム入れろ。
85 :
デフォルトの名無しさん :03/01/09 21:59
.Chart.SeriesCollection().NewSeries.Values = Y で元データを指定したいのですが、最大16個の数値しか指定できないので 困っています。つまり、もう少し大きな配列を元データとして渡したいのです。 これって拡張できないのでしょうか?拡張できないなら一度セルに吐 き出して、といったかんじでグラフを作成することになってしまいま す。これは避けたいのです。 このようにしてX軸Y軸のデータを指定しています。Xは16個以上でも指定 できるのですが・・・・・名案がありましたらお願いします。 Set co = ActiveSheet.ChartObjects.Add(10, 10, 300, 200) With co .Chart.PlotBy = xlRows .Chart.SeriesCollection().NewSeries.XValues = X .Chart.SeriesCollection().NewSeries.Values = Y .Chart.ChartType = xlLineMarkers .Chart.SeriesCollection(1).Delete End With
>>79 Form1+Command1、Form2を用意して、Form1に書くべし。
Private Sub Command1_Click()
Form2.Show
End Sub
Private Sub Form_Resize()
Select Case Me.WindowState
Case vbNormal
Form2.WindowState = vbNormal
Case vbMinimized
Form2.WindowState = vbMinimized
End Select
End Sub
>>84 なるほど でもランタイム入れずにちょっと動くだけでもVB作者にはありがたいな
qbだけじゃなかったのか
>>86 モレノカミキターーーーーーーーー
ありがdできますた
>通知書,本件訴状,請求の趣旨訂正申立書等により, >本件1ないし3のスレッドにおいて原告らの名誉を毀損する >本件各名誉毀損発言が書き込まれたことを知っていたのであり, >これにより原告らの名誉権が侵害されていることを認識し, >又は,認識し得たのであるから この最初の通知書っていうのが内容証明かと思ったんですが、、、
>通知書,本件訴状,請求の趣旨訂正申立書等により, >本件1ないし3のスレッドにおいて原告らの名誉を毀損する >本件各名誉毀損発言が書き込まれたことを知っていたのであり, >これにより原告らの名誉権が侵害されていることを認識し, >又は,認識し得たのであるから この最初の通知書っていうのが内容証明かと思ったんですが、、、
某○○ =東京kitty
まぁ。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 誰が書き込んだ内容だろうと、その内容の全責任はひろよきにあるんだ。 ただ裁判官も弁護士もネット観念が全く無いのをいいことに 、もっともらしく 「私は場所だけを提供しています」って押し通そうとしている痛いひろゆき。 訴える側も、掲示板の管理責任を追求することまでしか知識が追いつかず ひろゆきを名誉毀損などで訴えることをする奴が皆無なのが拍車をかける。 一度、裁判で、書き込みに対して、 削除を求める等では無くひろゆきを名誉毀損で訴え SFCの村井さんあたりが原告証人で出廷するといい。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
女 100万円以下 263万9000人 15.7% 100万円超 200万円以下 363万8000人 21.2% 200万円超 300万円以下 412万2000人 25.7% 300万円超 400万円以下 322万3000人 19.4% 400万円超 500万円以下 147万4000人 8.5% 500万円超 600万円以下 72万1000人 4.1% 600万円超 700万円以下 33万2000人 2.2% 700万円超 800万円以下 19万5000人 1.2% 800万円超 900万円以下 11万6000人 0.7% 900万円超1, 000万円以下 7万1000人 0.4% 1,000万円超 1,500万円以下 10万6000人 0.6% 1,500万円超 2,000万円以下 1万8000人 0.1% 2,000万円超 9000人 0.1%
意味もわからず、オヅラとかが勝利宣言しそう・・・。 今回はIPだけだが、だんだん制限が増えていきそうだから、 密告ねたとかが無くなっていきそう・・・
>>87 WinXPには英語版のVB6ランタイムが標準で導入されています
たまにメーカーによって日本語版が導入されている時もありますが
コモンコントロールまでは導入されていません
素直にVBランタイムをインストールしましょう
98 :
デフォルトの名無しさん :03/01/10 13:23
あれ?ここ何のスレ?おらのパソコンおかしくなっちまっただか? 一応ageとくべ
ランタイム&コモンコントロールぐらい標準で入れといて欲しいよね。
>>99 はげどー。それかせめて、WindowsUpdateに乗っけて欲しい。
なんでボランティアでもないコテハンがこのスレ占有しているんだ?
たかゆきってあんなにレスする香具師だっけ? キャップ漏れだったりして
104 :
デフォルトの名無しさん :03/01/10 17:05
使用環境はVB6.0SP5、EXCEL2000、Oracle+ADOです 現在、OracleからADOでテーブル上の明細データを引っ張ってきて、 EXCELに出力するというプログラムを作成しています。 EXCELに明細を出力する際に、シートの先頭行の書式設定を レコード分コピーするというロジックを知りたいのですが、 どなたかご存知無いでしょうか。
おい、お前ら、下らない書き込みしてんじゃねー。 .NET 死滅により、VB.NET の次期バージョンは、 VB 200X だ。VB6 の真の後継バージョンだ。
>104 マクロの記録で調べなはれ。 >105 略してVBXだね(ぉ
>>104 > EXCELに明細を出力する際に、シートの先頭行の書式設定を
> レコード分コピーする
本気で言ってるのなら、かなり非常識。
まともな神経の持ち主なら、列単位で書式設定する。
Accessの質問です。 テキストボックスに半角文字(アイウエオ等)の 入力規制をかけたいのですが、やり方がさっぱりわかりません。 全角文字なら、 テキストボックス→プロパティ→定型入力に CCCCC;; ←全角5文字分のみ入力可 のように設定すれば判別してくれます。 プログラム側は、 テキスト = TRim$(文字) で、ああ___ のような問題も解決できます。
>>104 >>107 そんな非常識かなあ。
速度もそんな変わんないだろうからそれも楽チンでいいんじゃない?
列数間違えてバグる事も無いし。
つーかなんで先頭行だけ設定されてるの???
最初からレコード分設定すりゃいいじゃん。
110 :
デフォルトの名無しさん :03/01/10 22:02
MSCommについて質問です。 RS232Cをつかって外部からデータを取り込むように VBで制御したいんです。 そこで、外部から文字列+CRを受け取った時に受信文字列を表示するように したいのですがMSCommのイベントをどう使ったらよいのかわかりません。 一文字づつCRと比較する??? わかる方がいましたらよろしくお願いします。
>>312 キタ━━━━━(゚∀゚)━━━━━!!!!
マソコ
最初にテンプレートファイルが用意されていて、それを一度コピーして そのなかに書き込むという仕様なんです。 最初の行だけ書かれているというのも仕様で、 数種類あるテンプレートファイルを共通関数で処理することになっているのです。 なので、個々で書式を書き込むことも、 また件数が不明なので最初から行数分用意することも出来ないのです。
それ以前に「窃盗罪」だな
あーーーーーーくだらねえ
じゃあ何で名前の欄の星色が違うの?
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
うんこ
121 :
デフォルトの名無しさん :03/01/11 11:02
河西朝雄という人のVB解説本(何種類かある)は良いのですか? 知人から強烈に薦められたんですけど。
>>121 著作は多くベテランだが良いとはおもわん。初心者にはオススメできない。
2
>>122 サンクス。ネットで買おうかと思っていたところなので助かります。
ちゃんと本屋さんに行って見てこようっと。
125 :
デフォルトの名無しさん :03/01/11 11:43
VB6.0を使っています。 最近ProgramingWindowsのVB版が出たみたいですが読んだほうがいいでしょうか?
126 :
デフォルトの名無しさん :03/01/11 11:54
ListViewの詳細表示設定で 特定のSubItemsの文字色を変えることってできますか?
1000と千尋のIP隠し
>>97 英語版かぁ。日本語が化けるとはそのことだったのか。
コントロールも別配布の必要があるとなると、HelloWord表示させる程度のソフトしかうまく動かないか。
結局、実行ファイルのほかにラインタイムを配るのは必要なのかぁ。
実行ファイルだけならzipで配布して、ユーザはそれを解凍して実行するだけだけど、
ランタイムはsetup.exeとか作ってランタイムもシステムにインストールされるようにしなくちゃだから面倒で、
XPではこの手間がいらないのかと思ってたけどざんねん。
| ∧∧ | | 〔(゚∀゚)〕| (⌒⌒⌒⌒⌒⌒⌒) |⌒⌒⌒ <⌒ヽ o 。 だから、クソスレ立てんな。って言ったのに・・・ | <_ ヽ。 | o とノ ノつ | 。 | 〜つ
ちょっと質問があります VB6.0で使っているプログラムははVBAでもそのまま使えるのでしょうか それともかなり変えなければいけないのですか?
放っといたほうが面白いんじゃないかな。
>131 言語的には同じものだから、基本的にはそのままでOK。 VB6とVBAに共通しない機能を使っているならNG。 質問が漠然としすぎてこれくらいしか言えないよ。
>>135 すいません 漠然としすぎてました
やってきたものがそのまま適用できるか知りたかったんです
レスサンクスです
137 :
デフォルトの名無しさん :03/01/11 18:37
FormにImageコントロールを貼り付けて画像を表示しています HScrollBar,VScrollBarを使ってスクロールさせたいのですが、 Private Sub Form_Load() VScroll1.Max = Image1.Top VScroll1.Min = Image1.Height VScroll1.SmallChange = 5 VScroll1.LargeChange = 10 HScroll1.Max = Image1.Width HScroll1.Min = Image1.Left HScroll1.SmallChange = 5 HScroll1.LargeChange = 10 End Sub Private Sub HScroll1_Change() Image1.Left = Image1.Left - 1 End Sub Private Sub VScroll1_Change() Image1.Move 0, VScroll1.Value End Sub これだと、左に移動させたいのですが画像が右に動いてしまいます。 だったら逆に・・・という理屈はわかるのですが。 どうにも、やり方がわかりません。教えてください。
解決しますた
>>121 C言語の書籍なら多数の出版実績がある。
しかし、以前に2ちゃんねるで叩かれているのを見たような気がする。(w
また、藤原博文氏のサイトでも、辛い評価が付いていた記憶がある。
俺はCはわからんので、残念ながら良いとも悪いとも評価できないが。
VB本に関しては、Option Explicit 宣言がないコード例や、型定義が
ない(暗黙のVariant)変数が多数見られ、昔のBASICと勘違いしている
のではないかと思われるフシがある。(w
結論としては、あまりお薦めできない。(w
>>109 > そんな非常識かなあ。
> 速度もそんな変わんないだろうからそれも楽チンでいいんじゃない?
あのさあ、1回で済む処理と最大65536回繰り返すかもしれない処理と
「そんな変わんない」訳?
幼稚園からやり直した方がいいよ。
煽りなさんなって。
142 :
デフォルトの名無しさん :03/01/11 22:40
先日VBはじめたのですが、自分でコード書いていて、 自分でよく分からなくなってしまう為、ほぼ毎行にコメント書いて少しずつ覚えてます。 で、近頃はいろんなWEBサイトを見て、どうやったらループが早く処理されるかとか学んで、 ちょこちょこ修正しているのですが、やっぱし、こんなにコメント書いていては 処理も遅くなってしまっているのでしょうか。 実行するパソコンの性能が低いと、やっぱりマズーですかね?
>142 コメント文は exeにする際、スキップされるので問題ない。
>>142 コメントが10万行あるコードとコメントのまったくないコードを用意して
実行速度を確かめてみりゃいいじゃん。
>>142 コメントが性能に影響するのは、インタープリタ実行系の場合だけ。
常識的に言って、どんなにコメントが多くても、コード:コメント比は1:1程度に
しかならないだろうから、無視できないほどの影響が出るとはとても思えない。
コンパイラの場合、実行速度には影響は出ないが、コンパイルの速度には影響が
出る可能性がある。しかし、それも無視できる範囲内のことだと思われ。
コメントの行数がコードの行数の10倍もあるような場合は話は別。(w
>>144 OfficeのVBAなら10万行のコメントは致命的な影響が出るね(w
VBでもソースが巨大化し過ぎて、コンパイルできるかどうか・・・?
>>146 OfficeのVBAでコンパイルをしても一緒なのかちょっと気になる。
普通ってのがわからないんだよ!
つまり実行形式にしてさえしまえば問題ないってことすね。 どうもありがとうございました。
ていうか、ここでどーこー言ってる連中は、他を見たり書き込んだりせんのかw
>>151 見ないけど何が起こってんの?
IP記録の話ならおなかいっぱ…
>>115 (
>>104 )
やっぱりテンプレートファイルか・・・
俺的には管理しなきゃならないファイルが増えるのが気持ち悪いから
コードで書式設定する(遅いけど)んだけれども仕様なら仕方ないね。
でもさ、それなら最初から全行書式設定しときゃいいじゃん?
先頭行セルをクリックするか列ヘッダをクリックするかの違いだけなわけだし。
それくらい提案してみてはいかが?
>>140 >あのさあ、1回で済む処理と最大65536回繰り返すかもしれない処理と
>「そんな変わんない」訳?
>>104 は行数分ループするなんて一言も言ってないよ。
なんで最大65536回繰り返す必要があるのさ。
列単位でコピーしようが行数指定してコピーしようが一回で済むじゃん。
>幼稚園からやり直した方がいいよ。
きみは生まれてこなかった方が良かったかもね。
154 :
デフォルトの名無しさん :03/01/12 02:01
喧嘩すんなヴォケ
new clieに逝きそうなんですが・・・ でも、大きいのと、高そうなのが・・・ちょっと・・・ でも・・・ カミサンだまし作戦開始・・・
2003/1/10 なにやら、連日メルマガだしてるひろゆきです。 そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが 面倒なので、全部のサーバに入れてみました。 重くなって落ちたりしてもご愛嬌ってことで。。。 実にさらっとひろゆきらしいでつ。。。
初めて立てた・・・・(;´Д`)
もうどうでもいいだろ、クチビルゲは
159 :
デフォルトの名無しさん :03/01/12 15:56
>>126 できますよ。ListSubItemにも、フォントのColorを設定するプロパティがあります。
imageboxにとりこんだ画像の色のデータを取得する方法が、VBに あるのであれば、教えてください。 たとえば、取り込んだ画像の、上から20ポイント左から20ポイント の位置にある、ドットの色が黒であれば、1を返してくるような プロパティーがあれば、教えてほしいのですが・・・ VBAでできるのであれば、なおいいのですが・・・
161 :
デフォルトの名無しさん :03/01/12 16:44
C言語の spawnlp関数をVBで行う方法を教えてください お願いします
shell
164 :
デフォルトの名無しさん :03/01/12 19:31
>>150 最近こういう人から聞いたことを鵜呑みにするだけで
自分で確かめようとしないぼくちゃんたち増えたね。
きねん
、実際に名誉毀損を照明するのは係争になってからの話で 係争前の通告として現行法では 内容証明つき郵便が認知されている。 お前らに丁寧に教えてやるけど どーせならば 現行法で裁けない理由を羅列して潰した方が得だぞ。 (それでも現行法で裁かれるんだけどな)
そゆこと。FFDQ板でよくやられた
>160 VBの機能でやるならならPointメソッド、 APIならGetPixelでし。
169 :
デフォルトの名無しさん :03/01/12 22:40
DAO/JetのSQLで使える関数ってどんなのあるんですか? どっかに一覧ない?
>>169 VBA関数は(副作用があるものを除いて)大半が使える。
それ以外(集計関数など、ANSI SQLで規定されているもの)のどれが使えるかは、
解説書等で確認した方がよいかもしれない。
>>170 ありげとごじゃます。
副作用とは、例えばどんなの?
>>170 はSQL内に記述して実行できる関数の話。
>>172 のURLはDAOのライブラリに定義されたメソッドの説明。
174 :
デフォルトの名無しさん :03/01/12 23:39
VB6で質問です。 コモンダイアログコントロールで表示させるウィンドウって、 ウィンドウ表示位置の制御は出来ないのでしょうか?
>>174 フック(サブクラス化)を使えば可能。
技術評論社から出ている『Visual Basic 300の技』(第1集)にコード例が掲載されている。
職業プログラマなら、あまりに凝った作りは生産性の面でお薦めしない。
サブクラス化処理全体をコンポーネント(ActiveX)化すれば、再利用可能ではあるが・・・。
>>173 うん、そう。
MAXとかSUMとかSUBSTRとかGROUP BYとか、
そんなのが尻たい
>>175 ぉぉメッセージの横取りって奴をついにやらねばならなくなったか。
・・・・
単に見栄えの問題なんですがね。色の設定をやるのですが、その色の
変更を行う位置でウィンドウが表示されないと、やっぱりなんか変という気
がしまして。
>>176 %windir%\help\JETSQL35.HLP
こんなん?
>56 >71さん すみません、正直さっぱりわかりません。 >Form_TESTFMという名前のフォームが無ければエラーになる それはわかるのですが、 存在する場合、コード上で Form_TESTFM と TESTFM はどう違うのでしょうか?
181 :
デフォルトの名無しさん :03/01/13 12:03
>>179 Form_TESTFMとTESTFMは別のものである。
田中さんと中さんは別人である。
182 :
デフォルトの名無しさん :03/01/13 12:37
ソケットコントロールでJPEG画像データを受信して イメージコントロールで表示させたいのですが受け取る 変数は何にすればいいですか?
TMemoryStream
どうやら me.image.picture = JpegImage me.image.picture = LoadPicture(JpegImage) どれも実行時エラーが出るようです
やったこと無いから的外れかもだけど、俺なら Variant から byte 配列に落として ファイルに保存した上で表示とかしてみるかも。
>>185 なるほど〜。ファイルに保存してみます。
今は文字コマンドの関係からString型で受信しているのですが
画像の際はVariantで受信すればよさそうですね
byte配列に落とす方法とファイルに保存する方法がわかりません><
バイト配列はbyte[file_size]でしょうか?
あーバイナリデータの受信をvariantに指定できないー>< ソケット受信の型はvbStringしかできないみたいですね
>>182 ソケットコントロールって Winsock でしょうか?
もしそうなら、厚かましいお願いなんですが、Inet はやった事あるんですが、
Winsock でやった事無いもんで…。
あう、ぬけてた…。 もしそうなら、厚かましいお願いなんですが、ソース見せて貰えないでしょうか…。 です。
>>153 提案はしたんですが、受け入れられなかったのです。。。
色々探し回っているのですが、中々見つからなくて。
どなたかほんと、お願いします。
>181 別のものですか。。 すみません、まだ納得できません。 別のものというのはわかりました。 >56の 1)Form_TESTFM.SetFocus × 2)Me.TESTFM.SetFocus ○ 3)TESTFM.SetFocus ○ という結果から振る舞いが違うので別のものというのはわかります。 ではなぜ 1 がだめで2〜3が可能なのでしょうか? 1が駄目なのはなぜですか?
>>190 (
>>104 )
まだ終わってなかったのか・・・
>>106 の言う通りマクロの記録で調べなよ。
答えそのものより調べ方を覚えた方が後々のためになる。
>>191 >1が駄目なのはなぜですか?
Form_TESTFMがプロジェクトに存在しないからじゃないの。
>>191 Form_TESTFMって名前のフォームをプロジェクトに追加してからやってみ。
意味が分かるから。
>>191 Form_TESTFMはあるわけね。よく読んでなかった。ごめん。
じゃあForm_TESTFMをロードしてないからじゃない?
てかさ、何ていうエラーが出るのかぐらい書こうよ。
「動かない」「駄目」って、小学生じゃないんだから。。。
195 :
デフォルトの名無しさん :03/01/13 17:45
VB.NETを勉強しようと思っているのですが、クラスやクラスの継承、 多重定義等の概念をサンプルプログラムをつかって、わかりやすく説明し ている入門書ってありますか? どの入門書もユーザーフォームの説明がおおくて、VB.NETの基礎知識 を詳しく述べているものが見つかりません。 フォームの操作やイベント発生時の処理等、基本的なことはエクセルVBAで 知っていますが、VB6は扱ったことがありません。 その程度の場合にふさわしい本があればいいなと思っています。
(^^)
>194 エラーは 「フォーカスを移す事はできません」 だそうです。 この際フォーカスをうつすのは TESTFM.SetFocus でいけたので自己解決なのですが、 それはさておき、知りたいのが TESTFM と Form_TESTFM の違いなんです。
んじゃファーストとセカンドの立場がない
>>198 TESTFMというのが君の作ったサブフォームの名前だということはわかるが、
Form_TESTFMっていうのは何の名前なんだ?
説明もなしに「どう違うんですか」って聞かれても分かるわけがない。
数Mある巨大なcsv形式のファイルの中から 一行を抜き出してやりたいのですが、上手いやり方ありますか? 普通に抜き出したい行数目までLine Inputしてやる方法を試したのですが 激しく遅いんです。実用的じゃない遅さです。 もっと軽やかに一行を抜き出す方法はありませんか?
ageときます。 ついでに書き忘れたので 環境はVB6SP5Proです
>200 説明不足でした。 アクセスのデータベースビュー(だったかな?) から作成したのがTESTFMです。 まずこれはご理解いただけてると思います。 そのTESTFMを選択状態にして、 Ctrl+Gを押したらVBEditorが開きますよね? その右上の(環境によって違うのかな) プロジェクトビューのなかの Microsoft Access クラスオブジェクトの中に 勝手にいつのまにかできてるのが Form_TESTFMです。 説明不足の点あればご指摘お願いします。 どう説明したらいいのかよくわからないので。 よろしくお願いします。
204 :
デフォルトの名無しさん :03/01/13 23:06
自作VBアプリにインターネット上からファイルを取ってきて windowsが自動updateで更新するようなかんじで、 1クリックでバージョンアップする機能を追加したいのですが、 どなたか方法をご存知でしたらご教授ください。
>>204 まずは最新版の入ったファイルをお前がUPする。
それをInetコントロールか何かでローカルにダウンロード。
さらにバックグラウンドで解凍。
出てきたExeを直ぐ上書きしたい所だが、そのExeは今実行中で
上書き出来ない状態なので、VerUPする時専用の別Exeに後の処理を任せて
今起動しているExeは終了。でVerUP専用のExeがメインアプリExeを最新版に上書き。
上書きの終了を確認したら最新版になったExeを実行。
解凍した後のゴミとか要らないものを消して
VerUP専用Exeは役目を終えたので終了。
>>205 ヒントありがとうございます。
早速やってみます。
207 :
デフォルトの名無しさん :03/01/13 23:55
>>207 ひとつ処理するあたり0.5秒ほどですかね・・・。
いくつも処理するのでかなりきついです。
>>192 とりあえず、EXCELのマクロの使いかたから調べました。
(恥ずかしながら、使い方知りませんでした。。。。)
なんとかたどり着けました。
お騒がせしました。
>>208 つまり、任意の指定行を指定してぱっとその行だけ読み込む、
みたいなことがしたいわけだ。
そんな方法があったら私も教えて欲しい。
各行がきっちり一定のバイトサイズになってるんだったらSeekで出来るけど。
裏技的なのはあるかもしれないが、お奨めできない。
>>208 何がしたいのかわからないですが素直にDB使うのは駄目なの?
>>208 最初に配列に全行読み込んでおいて、その配列から行抜き出しすれば?
毎回先頭行から読み込んでくよりはかなり速いでしょ。
データベース化は出来ないの?
> 最初に配列に全行読み込んでおいて 途方もなく遅いと思うが。
すまん、話の流れを読んでいなかった。 更新が複数回あるわけね。
CSV なら MDB にブチ込むのが一番だと思うけどね。 つか、Access インストールする時にオプション扱いで csv 用のODBCドライバがあったような無かったような。 あと、ファイル読むときって get でズガンと読むか、 line で読むなら読んでる端から文字列捨てて行った方が早かった記憶。
リロード忘れ…
C/C++/Delphi あたりで書きなさい
>201 バイナリで開いて改行コード数えた後抜き出せば一発だと思われ
>>219 ん、彼は毎回条件を変えてSelect * From ?.csv Where なんちゃらとやりたいのでは?
そうなの? 文面からは、抜き出したい行は確定していると思ってた。 誤解sage
>DBとしてアクセス DB関連の知識が無くて・・・。 やっぱりこの方法なら高速に処理できるのかぁ。 >配列に全行を読み込み メモリ、食いますよね。 確かに今試してみたら 最初の読み込みが終わればメチャ高速でした。 結局、「これが定石」とかいうのは無いってことですね。 しょうがないので、配列に読んでおくやり方で手を打っときます。 どうもありがとうございましたー。
223 :
仕様書無し :03/01/14 19:23
SQLServer7or2000のDBにADOで接続し、DB内のView名の一覧をリストボックスに 追加するプログラムを作っていますが、 ユーザーが独自に作成したViewのみ表示させたいのです。 Viewの場合 システムで最初から存在している物か(sys〜)ユーザーが独自に作成したものか 否かということを判断できるでしょうか? テーブルならSYSTEM TABLEかTABLEなのかをTypeプロパティで判断できますが Typeプロパティで見てもViewの場合は全てVIEWのようです どなたかご存知の方がいましたら、よろしくおねがいします。
>>222 俺はそのとき暇だったんで、必要になった時点で必要なとこまでメモリに読み取るものを作った。
そもそもCSV形式自体速いアクセスは望めない。
速いアクセスを望むなら単純なCSVにするのではなくインデックス情報等をつける必要がある。
VB6なのですが、リージョンを使用せずに、フォームの背景だけ 透過させる方法はないでしょうか? デスクトップマスコットみたいなのを作りたいと思っております。 分かる方がいらっしゃいましたら、ご教授願います。
>>225 Win2k/XPのみになるけど、SetLayeredWindowAttributesとか。
227 :
デフォルトの名無しさん :03/01/14 22:07
不正アクセスになるのだろうか。ドキドキ
230 :
デフォルトの名無しさん :03/01/14 22:12
231 :
デフォルトの名無しさん :03/01/14 22:13
>>227 教官に
「何回何回やっても演習の問題の21・22ができません。 」
って言えよ
なんで普通に2chで学校のサイトのPASSとか教えてしまうんだろう。 脳に障害があるとしか思えない。
>>226 そのAPIは「フォームだけ」透過させることっていうのはできるんでしょうか・・・?
もし、上にピクチャーを載せたりすると、それまで半透明になりませんか?
スイマセン、自己解決できそうです。 ぐぐったら出てきました。 指定色を透過させればいいんですよね。
逆デバッグ? つまりあれか、わざわざバグを入れるということか?
>>235 > その中身の演算の内容を見たいのですが
書いてあるだろ。
>>236 本来の文書は逆コンパイルですね。
>236 すいません。 よく意味も知らず、そこのページにあることばを 使ってしまいました。 プログラムの内容自体をよく見てみたかったので。 すいません。
>>235 普通そういう場合は、
感謝と尊敬の言葉から始まり、
自分のやろうとしていることが世界平和、または誰かの人命を助けるためであり、
貴殿のソースを見せていただければそれの実現が早くなり、世界中の人が幸せになれる、
ということを普通使わんような丁寧な言葉で作者にメールを出します。
或いは、
いかにも定型文書での挨拶で始まり、貴殿の公開されているソフトウェアが
当社保有の特許を侵害している可能性があり、現在は訴訟を起こす考えは無いが
社内からの漏洩調査のため全ソースファイルを提供して頂きたい、
ということを出来るだけ難しいビジネス単語で書き、
最後に「協力を得られる限りは訴訟を起こす考えはない」ことを繰り返し
「返答が無い場合内容証明文書を送付する」などと書いたメールを作者に出します。
240 :
デフォルトの名無しさん :03/01/14 23:33
ここで聞くのは場違いかもしれませんが、 VBでユーザー登録したら、IEのツールバーとかに使ってる画像をダウンロードできると聞いたんだけど。 それはどこでするのでしょうか??
良くわからんが MSDN とかの会員になるという事かな。 ユーザー登録とは違うんでないのかな。
242 :
デフォルトの名無しさん :03/01/14 23:57
>>227 >何回何回やっても演習の問題の21・22ができません。
つまり、あれだ転部、転科、中退のチャンスだよという
神様のお告げってわけだな。
>>242 「困ったときのお役立ちサイト」
何の役に立つんだ?
変なもん貼るな!うじ虫めが!
>>222 (
>>201 )
念のため。。。
Line Inputのループは使わないよーに。
一発で読み込んでSplitした方が断然速い(と思う)よ。
>>247 201ではないがちょっと教えていただけませんか?
つまり、文字列変数に一発で読み込んで(代入)、
Splitで切るってことですよね。
ということは、例えば数十メガのファイルだとすると
一発で読み込むっていっても、おそらくある程度時間がかかる筈で
その間は一切の操作(プログラム内ね)は不能になる?ってこと?
>>248 シングルスレッドであるVB6.0ではそう。
VB.NETだとだいじょうぶ。
だいじょぶといってもマルチスレッドプログラミングをしたらばの話だが。
>>249 サンクス。何か方法があるのかなと思ったもので。
.netは只今まさに勉強始めたばっかし。
数十メガのCSVとかキモイけど・・
>>248 ってことだと思います
253 :
デフォルトの名無しさん :03/01/15 09:42
指定ディレクトリ以下(サブフォルダ有)の指定拡張子(複数指定可)のファイルのフルパスを配列に格納する関数を作りました。 ファイルリストボックスを再帰呼び出しを使ってやっていますが、 50万ものファイルのリストを作るとなるとやはり速度が非常にかかりました。(30分ぐらい) これを高速化したいのですがどのような方法がいいのでしょうか。 MSDNの「最適化」項目を見てコードの書き直しなどをしましたが、あとは ファイルリストボックスを使わない方法で高速になりそうだなとおもいました。 いま想定しているのは以下の4つです WindowsAPI FSO 他の言語で書かれたライブラリ(コンポーネントOrDLL) あるいは他者が書かれたVBの標準モジュール 一般的にどれがいいのでしょうか。
254 :
デフォルトの名無しさん :03/01/15 09:43
>253 追記です。要するにしたいのはファイルの検索ですね
255 :
デフォルトの名無しさん :03/01/15 10:06
Win32APIより、 SendMessage でボタンクリックイベントを発生させたいんですが、どうすればいいでしょう。 状況:他アプリのテキストに値設定するところまでは問題ない。そこで「OK]ボタンを押したいんだが、 APIビュワア+MSDN見てもメッセージ番号が解らない(かなり以前成功した気がするのに) for i = 0 to 255 sendmessage hwnd,i,0,0 next i なんぞという怖いこともやってPC落したりしてますがダメ。 止むを得ずSendKeysを利用していますがレスポンスと安定性が最悪です。
>>255 単に、「ボタンを押したときに実行される処理を呼び出す」じゃダメなの?
>>256 別アプリなんだよ。自作でないもの。
たとえば、外部からエクスプローラの「ファイル」>「新規作成」>「フォルダ」を選ぶようなもの。
対象のコマンドボタンのハンドル取得はできてるけど、なんのメッセージ送ってもクリックが発生しない。
つまりは↓のものを有効にするXYZの値が知りたいのですだ。
Private sub CommandButton1_Click()
sendmessage CommandButton2.hWnd, X,Y,Z
end sub
Private sub CommandButton2_Click()
msgbox "キタ-(゚∀゚)-!"
end sub
>>253 俺も前に、指定ドライブ以下(サブフォルダ有)の指定拡張子(複数指定可)のファイルを含むのフォルダのフルパスを
コンボボックスに格納するって処理をファイルリストボックス使ってやってました。
で、やっぱり速度で悩んでここで質問しました。
回答はDir関数使え。って拡張子複数指定できないじゃん!まあ拡張子の種類分ループさせればいいわけだけど。。。
結局そのままファイルリスト使ってました。今は検索内容を変える事で解決しましたが。
てなわけで俺も興味があります。俺は試さなかった(スマン・・・)んだけど、どの方法が一番速いんだろう???
>258 そうかdir関数もありましたね。 FSOは所詮WindowsAPIのラッパーだし、その他のVB関数(Dir)もラッパーなので、 やっぱり直接API使ってみようかなと考えています。FindFirstFile、FindNextFile でもDir関数と大して速度かわらなさそうですね。Dir関数自体単純なコードで書けると思うので。 それでもファイルリストボックスよりは結構高速になると思いますが。 高速なファイル検索に関係するHPってどこかにありそうに感じるんですが、 VBって速度にこだわらないユーザー多いからかな。
SPIとはなんじゃら。ググるググる・・
ボタン押下時に発生するメッセージIDを盗聴せよということですか。
ツールは持ってない。その点はもう少し調べてみる。
>>259 >>253 >>260 エクスプローラと同じものなら FSO+TreeView.Nodes を漬かってますが、
単純にファイル名称検索ということだと自分ならC言語でバッチを作ってShellでキックすると思います。
高速処理を考えるとVBはやはり・・
262 :
デフォルトの名無しさん :03/01/15 11:55
やりたければ FATかNTFS直接読めば早いよ。 ただし、装置に依存するけどね。
アクセス制御機能を有する特定電子計算機に電気通信回線を通じて
当該アクセス制御機能に係る他人の識別符号を入力して当該特定電子計算機を作動させ、
当該アクセス制御機能により制限されている特定利用をし得る状態にさせる行為
(当該アクセス制御機能を付加したアクセス管理者がするもの
及び当該アクセス管理者又は当該識別符号に係る利用権者の承諾を得てするものを除く。)
>>227 のを見るのは「利用権者の承諾を得てするもの」に該当しないのかな。
言葉難しくてようわからん。
>>255 Call SendMessage(Hwnd, WM_LBUTTONDOWN, 0, 0)
Call SendMessage(Hwnd, WM_LBUTTONUP, 0, 0)
265 :
DJチャンキー :03/01/15 12:30
>>261 >C言語でバッチを作ってShellでキックする
??CできるんならAPI自作すればい〜じゃん
FSO+TreeView.Nodes よりも API+TreeView.Nodes の方が高速ですYO
API+TreeView+再描画制御でエクスプローラー同じくらいの展開スピードになますた
Windowsフォルダ(フォルダがたくさんある)の展開速度には自分でもビックリした
VBも技術と知識があれば かなり高速なものが作れます
VBが速くなるか否かは技術者のウデです(でもCの方が速いです...)
>>259 サンクスです。
SPI++ありました(スタヂオ6.0に入っとるやん・・)、親ウィンドウにメッセージ仕掛けるのに成功しました。
SendMessage(hwndOwn, WM_COMMAND, IDOK, hwnd)
BN_CLICKED=0の意味を間違えていたのが敗因です、またなんかあったら来ます。
>>265 ふふふ、Cは出来てもC++はできんというていたらくなんですわw
267 :
デフォルトの名無しさん :03/01/15 13:54
For i = 1 To Len(Text1.Text) If CInt(Mid(Text1.Text, i, 1)) < 0 Or _ CInt(Mid(Text1.Text, i, 1)) > 9 Then Text1.SetFocus Exit Sub End If Next i DQNな質問ですみません。 何故、これで型の不一致のエラーが出るんでしょうか?
>>267 Text1.Textは全て数字?
じゃないなら型不一致になって当然だが
>>267 1 Text1.Textに "ABC" と入っている
2 Text1.Textに "123" と入っている
3 Text1.Textに "123 " と入っている
4 Text1.Textに "-12.34" と入っている
text1.text=trim(text1.text)
if text1.text like "*[!0123456789]*" then exit sub
上二行を頭にいれてください。
>>267 Text1.Textには何が入っているのれすか?
272 :
デフォルトの名無しさん :03/01/15 14:37
>>270 要するに、数字以外が入ったときに処理が抜けるような事をしたいわけです。
(Asc関数を使わない方法で)
IME-Mode オフなので、半角の英数字が入りますね。
>>269 ありがとうございます。まだ初心者なのでそういうやり方は初めて知りました。
しかし以前は、Midで取得した文字列をCIntで変換しても型の不一致が起きなかったのに、
何故、今回はエラーが出たのかがわかりません。。
Cint("ABC") でもちゃんと0が返ってくるからだいじょうぶ。 つまり <0,>9 となっていて 0<=n<=9 の処理を書いていないのがエラーの原因。
>>274 すいません。そのやり方でもうまくいかないのですが。。
If Not (0 <= CInt(Mid(Text1.Text, i, 1)) And _
9 >= CInt(Mid(Text1.Text, i, 1))) Then
>>275 おい、Cint("A")は通るとでも思ってるのか?
そもそもうちでは10人中8人はこれを使うのであとでチェックは要らない Private Sub Text1_KeyPress(KeyAscii As Integer) Select Case KeyAscii Case vbKey0 To vbKey9, vbKeyReturn, vbKeyDelete, vbKeyBack: Case Else: KeyAscii = 0 End Select End Sub
278 :
デフォルトの名無しさん :03/01/15 16:33
>276 275の脳内は常に On Error Resume Next でし。
WinAPIで関数つくった ファイルリストボックスのときより数十倍ぐらいリスト作成がはやくなったよ さらに最適化しようかとおもったけど、検索ファイル数やサブディレクトリ数の状況によっては逆効果になるかもしれないから これでやめとこう。 単純にAPI使うだけでここまで早くなれば満足
281 :
デフォルトの名無しさん :03/01/15 17:36
EXEにコマンドライン引数を与える方法を 教えていただけないでしょうか? Ver6です。
282 :
デフォルトの名無しさん :03/01/15 17:38
ActiveMovieControlが動作しません Formに貼り付けて、実行しただけでエラーとなります ”システムエラーです:&H80004005 特定できないエラー” どうすればいいのでしょうか 教えてください 環境 98SE IE6(SP1) VB6(SP5) MSDXM.ocx 2002/05/24 MediaPleyer7.1です
(^^)
>>281 Shell """" & 実行ファイルのパス & """ ここにコマンドライン"
DOSのコマンドライン指定とおな〜じ
実行ファイルのパスを " でくくるのを忘れずに(DOS 分かる人なら理由は分かるでしょう)
285 :
デフォルトの名無しさん :03/01/15 18:18
>281 Command$にコマンドライン引数が入っている ランタイムの話か? だったらプロパティの実行可能ファイルの作成タブにコマンドライン引数って項目があるから、そこに入れとく
286 :
デフォルトの名無しさん :03/01/15 19:31
VB6.0で動的な二次元配列を使いたいのですが、上手く宣言できません。 使えないのかな?
287 :
デフォルトの名無しさん :03/01/15 19:37
>286 Dim intHoge() As Integer ReDim intHoge(10, 10)
288 :
デフォルトの名無しさん :03/01/15 19:39
>>287 素早い返答ありがとうございます。
ハズカシながらredimの書き方が間違っていたようです。。
さっそく試して見ます。
289 :
デフォルトの名無しさん :03/01/15 20:29
動的配列は最後の次元しか redim 出来ない罠。。。 とか言ってみたりする。 確か出来なかったような・・・
290 :
デフォルトの名無しさん :03/01/15 21:53
Winsock1コントロールについて質問です。同じコントロールを使って Winsock1.Listen (サーバ側)と Winsock1.Connect (クライアント側) を使い分けたいのですが、一度サーバ側からクライアント側になる時 Winsock1.Closeをして、次にコネクト先をしていしてWinsock1.Connectを実行 するにしたのですが、Winsock1.Connectでエラーになります。一度Listenを 使ったら、そのコントロールではConnectを使用できないってことはないん ですか?
VisualBasicはじめようと思ってVisualBasic評価版が添付している本を買って、いろいろつくっています。ところが、評価版なので.exeがつくれないのです。。。どーしても、.exeファイル作りたいのですが、どうすればよいでしょうか?
>>291 限りなく素人。
でも・・・おしえてください!
VB先輩方!
通報しま
>>289 おっしゃる通り、1次元目はredimできないようでした。
仕方がないので、1次元目は多めに数を設定しておきました。
redimは遅いので、予め多めに取っておいてそれ使った方が良い。 ウンコredom。
>>290 単に接続が切れてないだけじゃないの?
Closeしたからといって切れるものじゃないってのは知ってる?
っていうか、なんで2個使っちゃだめなのよ?食わず嫌い?
>>291 ソースファイルをくれりゃぁやって漏れがやっても良いが。
>>300 その前にOption Explicitの指定とCtrl+F5は実行させておいた方がいい罠。
302 :
デフォルトの名無しさん :03/01/16 02:33
助けてください。 テキストファイルに 255 253 253 90 3 23 23 231 23 のように0から255の値の整数が 64×64こ入っています。 その一つの値を一つの画素の値として 64×64の画像を表示したいのですが、 下記のソースを、コマンドボタンを一つだけつけただけで 後はいじってないフォームのコードとして動かしたんですけど 上手くいきません。 どなたか添削していただけませんか? よろしくお願いします。
303 :
デフォルトの名無しさん :03/01/16 02:33
Private Const BoxSizeX = 200 'ドットの幅 Private Const BoxSizeY = 200 'ドットの高さ Private Sub Command1_Click() DrawIMG 1 '<-イメージ番号1〜 End Sub Private Sub DrawBOX(X As Long, Y As Long, FColor As Long) Dim Cl As Long Cl = FColor& + FColor& * &H100 + FColor& * &H10000 Me.Line (X * BoxSizeX, Y * BoxSizeY)-((X + 1) * BoxSizeX, (Y + 1) * BoxSizeY), Cl, BF End Sub Private Sub DrawIMG(TXNo As Long) 'TXNo As Long Dim i As Long, j As Long Dim Buff As String Open "data.dat" For Input As #1 For i = 1 To (TXNo - 1) * 64 'Seek #1, (TXNo - 1) * 34 * 16 + 1と言う手もある Line Input #1, Buff Next i For i = 0 To 63 Line Input #1, Buff For j = 0 To 63 DrawBOX j, i, Val("&H" & Mid$(Buff, j * 2 + 1, 2)) Next j Next i Close #1 End Sub
>>303 Buffが255 253 253〜の時
j=0ならMid$(Buff, j * 2 + 1, 2)は"25"
j=1ならMid$(Buff, j * 2 + 1, 2)は"5 "
となる。わかるかな。
わかったらSplit関数を調べてみそ。
305 :
デフォルトの名無しさん :03/01/16 07:41
>>303 &H付けてValしてるってことは、実際は16進表記なんだろ?
データは連続表記なのかなあ?
そのへんが大事。
306 :
デフォルトの名無しさん :03/01/16 08:18
&H はいらないのではと今思っています。 データは_をスペースとすると 12_123_25_250 _22_ 255_123_25_250 _222_ 121_123_25_250 _22_ と言う感じにスペースで区切られています。 304さんがおっしゃってくれたsplit関数調べてみたんですが どうもうまく切り出しができないのですが アドバイスをいただけませんか?よろしくお願いします。
>>290 ふつーに書いて試してみたけど、何事も無く使えたなぁ
ちゃんと初期化すべきとこは初期化してます?
'つーか、どんなエラーよ。
308 :
デフォルトの名無しさん :03/01/16 10:18
VBで A+1=Bってどうやるんでつか? 先生に聞いてもわからないんです。 ぐぐってもわからないんです。
>>306 どういうふうにうまくいかないか、書かないと、アドバイスも出せませんが。
Dim a
Dim txt As String
Dim i As Long
txt = Text1.Text 'ここでファイル読み込み
a = Split(txt)
Text2.Text = ""
For i = LBound(a) To UBound(a) Step 1
Text2.Text = Text2.Text & a(i) & vbCrLf
Next i
あとはa()の内容がちゃんとしてるかどうか調べるトコつくればいいかな
311 :
デフォルトの名無しさん :03/01/16 11:10
>>309 さんごめんなさい、
書き方が悪かったです。
C言語みたいに Aに +1をすると Bという文字になる・・・・
ということはできないんでしょうか?
と聞きたかったんです。
なにか方法ないでしょうか・・・・
>>311 Text1.Text = Chr(Asc("A") + 1)
313 :
デフォルトの名無しさん :03/01/16 11:18
y=1/2x^2 y=-x^3+x^2+3 を x>0領域 交点のx座標の値αを二分法により求めるプログラムおしえてもらえないでしょうか??
>>311 まあ、その。C言語と、さほどかわりはしない。
Dim b_str() As Byte
b_str = "ABCDEFG"
b_str(0) = b_str(0) + 1
Text1.Text = b_str
315 :
デフォルトの名無しさん :03/01/16 11:35
311 です。 312さん、おかげ悩んでいた部分がうまく動きました。 ほんとうに、ありがとうございました。 309さんも下手な書き込みに答えていただきありがとうざいます。
316 :
デフォルトの名無しさん :03/01/16 11:37
あ・・ 315さんもサンクスです。
自分で自分にありがとう
みんな解決していいですね 出来れば、これにも答えてやってください ActiveMovieControlが動作しません Formに貼り付けて、実行しただけでエラーとなります ”システムエラーです:&H80004005 特定できないエラー” どうすればいいのでしょうか 教えてください 環境 98SE IE6(SP1) VB6(SP5) MSDXM.ocx 2002/05/24 MediaPleyer7.1です 僕も、違う質問に答えるようにします
>>318 うちのPCでも出ますね(NT4.0 MP6.4)。業務系なんでメディア機能対応できないのは当然なんですが。
なんでしょうね MSDNのCLock.aviを見るのは可能だがVBでは不可。
貼りつけたままVB終了してもエラーが出る(二回)
コントロールの造りからしてなんかおざなりなんで、環境の制限がシビアなんでしょう
コントロール内部の初期化(及びプロパティ保存)処理でエラーが出てるようだが
内容を表示しないのは怠慢っぽい。ヘルプその他も日本語になってないようですのでパス。
メディア機能をJavaとかでなくVBで造ってる人居るのかな?
>>318 コンポーネントの追加で、WindowsMediaPlayer(下の方にある)にすればOK!
# 解決になっとらんか
そもそも、Microsoftなんか信用しちゃいかんよ(w
>318 俺もおなじ。 メディアプレイヤーコントロール使ってるよ。
323 :
デフォルトの名無しさん :03/01/16 14:55
Windows全体において、ものすごい高速なダブルクリックは シングルクリックとして認識させるような常駐プログラムを 作りたいんですが、 まず何からやったらいいかわかりません。 VBの知識としては、普通に作りたいものはなんでも作れる程度にはあるのですが、 今回のケースは特殊すぎて私も困っております。 なにかよい助言がありましたらお願いします。 そんなフリーソフトがあるならそれでもいいのですが。
>323 さてはマウスがいかれたな 素直に安いの買え
325 :
デフォルトの名無しさん :03/01/16 15:03
>>324 やっぱそう思いますよね?私もそう思いますが、
お客さんは絶対買いたくないから私に頼んだんだと思うんですよね。
VBでは無理っていうならそう回答してもいいんですが
「そんなこともできないのか?」と思われるのも悔しいので
なんとかやってのけたいんですよね。
> 「そんなこともできないのか?」と思われるのも悔しいので > なんとかやってのけたいんですよね。 それなら、無酸素月面着陸をやってのけてくれ(w
>>323 2000/XPなら
Shell ("cmd /c main.cpl")
9xなら
Shell ("command /c main.cpl")
#嘘
>323 Win2kだったら スタート-設定-コントロールパネル-マウス-マウスのダブルクリックの速度 これを調整。以上。 っつーかスレ違い。
>>319 ,320,322
どうもありがとうございます
他社が作成したアプリの改造をする仕事でして、
既存がActivMovie利用していてソース開いたとたんにエラー
上記アドバイスにより動けばいいので、MediaPlayerコントロールにしちゃう
コンポーネント選択では同じOCX、プロパティもみんな同じ。。。
普通に動いちゃった・・・ まぁいいや
どうも
よし 質問答えちゃうぞ!!! なにか質問して(あんまりVBしらないけどがんばる)
>>327-328 うーん、違う。コントロールパネルで設定できるのは
ダブルクリック判定の最低速度でしょ。
超高速でダブルクリックしたときに、シングルクリックとして
認識させたいわけで、コントロールパネルの話を出すことの方が
スレ違いですよ。
GetMessageとSendMessageつかってやれそうですが
そもそもWindows全体のhwndってどうやって取得するんですか?
screen.hwndってやったら怒られた・・・。
あと、受信してしまった2回目のクリック情報を消すにはどうしたら
いいんでしょう?
>>330 そのソフトを作る時給だけで、マウスを買える金額を
軽く超える事になってしまうに一票
>>331 そこまで金のこと考えるならもう一歩考えろや
マウスが1個しか壊れてなくて
今後は二度と壊れない保証があるなら
お前の意見も通るかもしれんが、
>>323 の客はすでに何度もマウスがこういう風に壊れて、
もう買うのがいやなのかもしれないだろ
または買ってもまた壊れると考えたのかもしれないだろ
普通誰だってマウス壊れたら新しいの買うよ
そこをあえてプログラマに依頼したのはなにかワケがあると考える方が
普通じゃないか?に一票
>>332 では、
323の答え、または、331の別解がありましたら、教えてください。
そちらのほうが、親切かとおもいますよ
334 :
デフォルトの名無しさん :03/01/16 16:14
>323 ま、簡単なことだ。 上位互換の独自マウスドライバを作成汁
マウスのドライバ、デバイスの問題だしな。VBは関係無いだろ VBの自作アプリでのクリ・ダブクリイベントの問題ならマウスのアプダウンイベントに代えることで解決。
>>334 (´-`).。oO(VBでドライバが簡単につくれたらいいなあ)
337 :
デフォルトの名無しさん :03/01/16 16:19
>336 334はVBでは無理だってことも含めてだろ
338 :
デフォルトの名無しさん :03/01/16 16:20
>335 OSレベルでの話だよ
339 :
デフォルトの名無しさん :03/01/16 16:23
VBを学習したいんだけど。 お勧めホームページ教えてください。
なんかいっぱい書いてくれてありがとうございます。 Windowsメッセージの取得がむずかしいです。 Do〜Loopでまわすと重すぎるし(DoEvents入れても)、Timerコントロールでは とてもじゃないけど検知できません。 やはりVBでは無理なんでしょうか。 だからといってVCでもできる自信はないですが。 簡単そうに見えて難しいんですかねぇ。
>>340 サブクラス化だのシステムフックだのを、やんなきゃいかんのでは。やったことないけど。
VBだと苦しすぎるだろうし。
343 :
デフォルトの名無しさん :03/01/16 16:33
>340 もし、OSレベル全メッセージを取得できたらできる。 ダブルクリックにはシングルクリックが必ず発生するから、 シングルクリックのメッセージ時にTimer関数で時間を取得し、 ダブルクリックのメッセージ時に時間を比較し、短ければメッセージを殺す。 ただ、どうやってOSレベルのメッセージを取得するかだ。 VBでできるんかな?
344 :
デフォルトの名無しさん :03/01/16 16:36
ファイルの保存の方法教えてください dim buff as string Open "image.jpg" For Output As #1 Write #1, buff Close #1 これ以外のファイル保存の方法がありましたら アドバイスお願いします
>>344 それ以外の方法でファイルの保存をする意図を教えてください。
>>343 まさにその方法でやっていますが、
メッセージ取得が非常に重いんですよ。
VBでやるからだ ASMで書け
>>345 いやーほかにもあるのかと思いました
ありがとうございます
349 :
デフォルトの名無しさん :03/01/16 16:51
sub function() 処理の途中で抜けるコマンドは何ですか? end sub
>349 exit sub
353 :
デフォルトの名無しさん :03/01/16 16:55
>346 ん、Windowsフックでも駄目か? 上で言ってた Do〜LoopやTimerコントロールはジョークだよな。
>>323 グローバルフックが必須。
確かVB単体では無理だったから
そこらで配布しているOCXでも拾ってこい。
あとは
>>343
355 :
デフォルトの名無しさん :03/01/16 16:58
ハッキングって結局なにする? どこで聞けばいい?
>355 少しコンピュータ関連の多い本屋にでも行って、立ち読みでもしてください。
357 :
デフォルトの名無しさん :03/01/16 17:07
>>356 友達の家の本を読みましたが理解できませんでした。
救いようがないでしょうか
358 :
デフォルトの名無しさん :03/01/16 17:09
>357 ファッキングが訛ってるだけだ。 あまり気にするな。
#ハッカーとクラッカーの違いは、おいといて、 あなたがシステムの管理者とか、開発者とか、その手の人じゃなければ、 ウイルススキャンのプログラム等を入れておけば、望んで関わり合いに行くこともないですよ
360 :
デフォルトの名無しさん :03/01/16 17:21
361 :
デフォルトの名無しさん :03/01/16 17:26
ソケットコントロールでエラーがでました どうしたらいいですか? クライアントから接続すると失敗します Me.sock.LocalPort = 4545 Me.sock.Listen Private Sub sock_ConnectionRequest(ByVal requestID As Long) Me.sock.Accept (requestID) ここで現在の状態ではむりぽと出ます End Sub
最近VBを始めたものですが、コーディングウィンドウに "Vscroll1." と打つと次に打つワードを予測してリストボックス の形で出してくれますよね?この場合だと "LargeChange" や"Max"などをリストとして出してくれるんですが、これを キーボードの↓キーで選択したあとエンターキーを押すと その選択したワードが入力されるんですが改行されてしまいます。 改行せずに選択したワ−ドを入力するにはどうすればよいでしょうか?
>>361 MSDNを見てみましょう。
Acceptの前の行に、おまじないがあると思います。
364 :
デフォルトの名無しさん :03/01/16 17:31
漏れはスペースキーを打つ。
>362 エンターのかわりに、スペースキーでも押すとか。
366 :
デフォルトの名無しさん :03/01/16 17:39
>>363 If Winsock1.State <> sckClosed Then Winsock1.Close
で動きました。
状態が完了していなかったのですね
すいませんこのようなプログラムを書いたのですがうまくいきません。 Private Sub VScroll1_Change() VScroll1.LargeChange = 2 pos_y = 240 Image1.Top = pos_y + (VScroll1.Value * 10) End Sub >Vscroll1.LargeChange = 2 のところはこれであってますでしょうか?
>366 状態が完了していないわけじゃないんですよ。そのコントロールをListening 状態にしていたから、Listeningになってただけです。 AcceptするにはClose状態じゃないと(たぶん)ダメだろうから、クローズして Acceptをしたわけです。 たとえばWinsock1のコネクションリクエストにクローズされてるWinsock2に Acceptしてもいいわけです。 #ちょっとややこしいかな?
すいません VScroll1.LargeChange = 20 VScroll1.Max = 100 VScroll1.SmallChange = 10 を書くところが間違ってました 解決しました。どうもお騒がせ様です・・
初心者というより未経験者ですが 特定のゲームのセーブデータからパラメータの数値を抜き出して 好きなように書き換えちゃうツールを作りたいと思ったんですが どんなもんでしょうか ・セーブファイルの特定の個所の数値を拾って表示する ・それに対して任意に入力した数字を、元のファイルがその部分のみ変わるように上書きする という事かと思うのですが こんな感じ、というのを教えて貰えると激しく助かります。
>370 セーブデータ程度のファイルサイズであれば、一括でByteの配列にでも 読み取って、表示/編集のインターフェイスでつくってやって、 (前のデータのバックアップがほしいならここでとって) 上書き。
>>362 あれ?皆さんご存じないの? CTRL+リターンだよね?
>>368 難しいです^^;;;
Listenのタイミングが間違っていることはないのですね〜
Acceptの前の特別?な記述はVBのコントロールに依存しますか?
VB特有のものでしょうか?
>373 Winsockコントロールを使えば、どの言語だろうと一緒でしょう。 コネクションリクエスト中でCloseしたのは、そのコントロールを再利用 しただけにすぎず、Acceptの相手はCloseされたWinsockコントロール であれば、なんでもかまわないだけです。
>372 Ctrl+Enterは知ってるがスペースの方が楽で早いのでそっちを使ってる。
>>374 納得いたしました
TCPでは複数のコネクションがあればアクセプト専用とか
リッスン専用とか使い分ければ便利そうですね
ありがとうございました
>>375 慣れの問題ですからねー。漏れはスペースは違和感があるなぁ。
>377 その通り、慣れの問題だな。
俺はTabが正しいと教わったんで そのままTabで決定するのに慣れてるんだが・・・ 左手小指でささっと操作出来る点でスペースより(・∀・)イイ! と個人的に思っている。
380 :
デフォルトの名無しさん :03/01/16 19:03
みな、それぞれだな。 漏れはスペース。 親指が常に構えてるから、自然と押せるよ。
チェックボックスによりテキストボックスのフォントサイズを コントロールするコードを書いてるんですが Private Sub Form_Load() f_size = Text2.FontSize End Sub ----------------------------------------------------------- Private Sub Check3_Click() If Check3.Value = 0 Then Text2.FontSize = f_size Else Text2.FontSize = 18 End If End Sub このようにやってみたんですが、文字を18にするのはできたんですが チェックを外すとエラーがでてしまいます。 チェックを外すと元の大きさに戻したいんですがなにかいい方法はないでしょうか?
382 :
デフォルトの名無しさん :03/01/16 20:58
>>381 Option Explicitつけてませんよね?
f_sizeをモジュール変数として宣言しないと、
Form_Loadでのf_sizeと、Check3_Clickでのf_sizeが
別個のローカル変数として解釈されてるみたいです。
なので、
Text2.FontSize = f_size
を通ったときに、f_sizeにはEmpty値が入ってるからエラーになる。
383 :
デフォルトの名無しさん :03/01/16 21:00
なんか遠回りしてるね、皆さん
>>381 宣言セクションに
Private f_size
と記述すべし。変数スコープに気をつけましょう。
あの、サブクラス化ということにチャレンジしてみたいんすが、 WM_*のメッセージってどうやったら何のメッセージか分かるんでせう? SPY++で調べるの?
>385 >SPY++で調べるの? ためしてみてから書き込めばいいのでは。
>>382 ,384さんどうもです。できました。
ちなみに宣言セクションってGeneralって書いてあるところですか?
漏れもスペース派〜
389 :
デフォルトの名無しさん :03/01/16 21:54
テキストボックスで、IMEの入力を1文字ずつ自動的に確定させるにはどうしたらいいでしょうか。 普通は、IMEでのテキストボックスへの入力は、「あいう(りたーん)」で、 「あいう」が Text1.Text に入りますが、 これを「あ」が入力された時点で Text1.Text に反映させたいのです。 教えてください。
390 :
デフォルトの名無しさん :03/01/16 21:57
押されたキーを取得してテキストボックスにappendするだけ だ
>389 IMEをつかわなきゃいいわけで。 "a"が押されたら"あ"を表示して、、、と。
すみません。じゃあ「か」の場合はどうしたらいいのでしょうか。 全角文字を1文字ずつ取得したいのですけど、 ローマ字変換を自前でやるのは面倒だなあ。と。
393 :
デフォルトの名無しさん :03/01/16 22:07
>392 面倒でも、やらなきゃ完成はしませんよ。 地道に作りましょう。
395 :
デフォルトの名無しさん :03/01/16 22:09
text1に入力している文字を text2にリアルタイムで反映させる方法ってありますか?
>395 Private Sub Text1_Change() Text2.Text = Text1.Text End Sub
397 :
デフォルトの名無しさん :03/01/16 22:17
>>396 確定前の文字もリアルタイムで反映させることってできますか?
やり方気付きました。変換モードを無変換にすればいいのでした。
>397 2000/XPで、かつ、MS-IMEで、かつ、少々めんどくさい処理すれば、 不可能とは言いません。 ImmGetConversionList() のAPIで、自力で変換部分を作るとかね。
話の流れからすると、タイピングソフトでも作りたいのでしょうかねぇ 他のタイピングソフトがどんな作り方してるか、見てみては?
402 :
デフォルトの名無しさん :03/01/16 23:56
VB6(SP5)。 水平スクロールバー(垂直でも良いけど)を用い、Changeイベントで ピクチャボックスなんかの書き換えを行うようにしているのですが、 例えば、スクロールバーの両端を押し続けたりすると連続的にイベントが が発生するわけですが、書き換え等の重い処理がイベント発生に追い つかないので、そのままではスクロールバーが変な動きをしてしいます。 そこで書き換えを行っている間はスクロールバーのEnableプロパティを Falseにしてイベントが起こらないようにしたのですが、するとスクロール ボックスが消えてしまいこれまた変な感じになってしまいます。 ちょっとわかりにくいかもしれませんが、なんか良い方法ないでしょうか?
今までの話しの経緯。 >56>71>179>181>191>198>200>203 あの、長いので経緯載せてみました。 あの、、 結局、Form_TESTFMとTESTFM はどう違うのでしょうか。 現段階で別物というのは教わったのですが、 TESTFMがなにで Form_TESTFMがどうなのか さっぱりわかりません。 ご存知の方教えていただけないでしょうか?
404 :
デフォルトの名無しさん :03/01/16 23:57
MultiLine = True、ScrollBars = 1 - 水平 に設定したテキストボックスで、 改行を抑制するにはどうしたら良いでしょうか?
>371 レスは嬉しいが理解できませんですた。 「Byteの配列に読み取」って「表示/編集」して「上書き」させるやり方は どこ調べるとわかるのだろう
406 :
デフォルトの名無しさん :03/01/17 00:13
>>370 バイナリファイル、ランダムアクセス、プット、ゲット、リード、ライトなどなど
>>402 君の言う「変な動き」がどんなんだかわからないので予想だけど、
重い処理を行ってる時に変な動きになるのはある程度仕方の無いこと。
ほとんどのソフトはそうなるでしょ。速いマシンを使うほか無い。
こちらに出来るのは重い処理の実行時間を出来るだけ短かくしてやること。
「重い処理」処理中はイベントが発生しても「重い処理」を呼ばないようにする。
「重い処理」の処理終了時にスクロールバーのValueが変更されてたら、再度
「重い処理」を呼ぶ。
これで「重い処理」の実行回数が最小限?に抑えられる。
あとは「重い処理」がなるべく軽くなるようにする。
>>403 正直わからんのだが、わかったところで無駄な知識な気がする。
Form_TESTFMはAccessがTESTFMから勝手に作ってるものなんでしょ?
てことは、Form_TESTFMはTESTFMを動かす(管理する)ためにAccessが必要とするもので、
ユーザーが意識する必要は無いもの、と予想してみる。
もしかしたらそれをいじることで何か出来るのかも知れないが
いじったら壊れるかもしれないし、そもそもいじる必要が無い。なので無視。
まあ何でも疑問に思うことは良い事だ。
あとこの板にはAccessスレがあるということを心に留めといてくれ。
>>402 スクロールバーが止まるのを待ってからピクチャボックスを書き換えたら
どうでしょうか。
>>404 とりあえず思いついたのは、Changeイベント時に改行を検索し、あれば消去する。
てな感じ。他にも色々手がありそうだな。
411 :
デフォルトの名無しさん :03/01/17 01:26
>>402 どういう処理をしたら、そんなに重くなるのかな?
最小単位をドット以上に細かくしてムダに書き換えを多くしてるとか。
>>407 > 君の言う「変な動き」がどんなんだかわからないので予想だけど、
これが、説明しにくいのですが、両端の三角のところが押し込んだ状態の
ままになったり、スクロールボックス上でマウスボタンの押し下げをしていな
いのにマウスポインタにスクロールボックスがついてきたり・・・・
と、とにかく妙な動きをしてしまうことがあるのです。
> こちらに出来るのは重い処理の実行時間を出来るだけ短かくしてやること。
おそらく、これ以上速くしようがないくらいチューニングされています。ネックになっているのは
分かってますので。
> 「重い処理」処理中はイベントが発生しても「重い処理」を呼ばないようにする。
> 「重い処理」の処理終了時にスクロールバーのValueが変更されてたら、再度
> 「重い処理」を呼ぶ。
うーん、私が誤解しているのかもしれませんが、そうなっているというか、それはないというか、
です。・・・・・
実はこういう現象は初めてでして、私はイベント処理の中の「重い処理」が終わるまでは
次のイベントは起こらないと思っていたのです。っていうか遅れてイベントが生ずるはず。
ところが動きがそうではない、ていうか明らかに変。
別のところがおかしいのかなぁ・・・・しばし悪戦苦闘してみます。
>>409 スクロールバーが止まった事感知するのってどうやるんですか?
>>413 とゆうか、スクロールバーが操作されなくなって、ですね。
原因判明(たぶん)。 描画経過(表示し終わるまで1秒以内だが)を表示しなくてはならないので 昔からの癖で、DoEventsを間に挟んでいたため。Refreshになおしたら 変な動きはなくなりました。 お騒がせいたしました。
>>413 止まる事を検知する必要は無いと思われ。
>>402 ワードパッドがやってるようにタイマを動かした方がいいんじゃない?
スクロールバーメッセージが届いたらタイマをキックしてタイムアップで描画更新。
これが最適でしょう。
>406 オス。調べてみるっス。
>>403 Form_TESTFMってのは、部品としてのサブフォームを表す名前だ。
CommandButtonとかCheckBoxってのと同じ。
一つのフォームにボタンをいくつも貼り付けられるように、
サブフォームも同じものをいくつも貼り付けることができる。
その場合は、"TESTFM1" とか "TESTFM2" のように
それぞれ違う名前を付ける必要があるけれど、
部品としては同じ Form_TESTFM なわけだ。
さて、あるボタンにフォーカスを移そうとした時に、
CommandButton.SetFocus のように部品名で書いたのでは
「どのボタンのことじゃボケェ」と怒られる。
ちゃんと ボタン1.SetFocus のように具体的な名前を指定しなくちゃいけない。
それと同じこと。
EXEからIconファイルの抜き出し方法について教えてもらって有難うございました。 自分でちょっと調べて見たのですが抽出は特に問題無いのですが その抽出したアイコンの貼り付けに戸惑っています・・・ コマンドボタンに表示させたくて、hDCを使えばよいと言われたのですが どうも上手く使えないみたいで・・・ hIcon = ExtractIcon(App.hInstance, "c:\a.exe", 0) DrawIcon Command1.hDC, 0, 0, hIcon こんな感じで書いて見たのですがhDCの部分でエラーが出ます。 DrawIcon Picture1.hDC, 0, 0, hIcon と書けばピクチャーには貼り付けられたのですが・・・ どなたか教えていただきたいです。
420 :
デフォルトの名無しさん :03/01/17 07:19
>>419 コマンドボタンってhDC持ってたっけ?
hasHDCプロパティないんだけど。
>>420 おりも無いと思うぞ(確認せずに書いてるがw)
hWndからGetWindowDCじゃないか?
422 :
デフォルトの名無しさん :03/01/17 10:51
おひさじぶりです
>>49 です
>>419-421 Dim hWnd as Long
Dim hDC as Long
hWnd = Command1.hWnd
hDC = GetDC(hWnd)
で取れます (GetDCはAPI)
hWndさえ取れれば何でもhDCが取れます
423 :
デフォルトの名無しさん :03/01/17 13:38
おいオマイラちょっと質問があります。 ちょいと作ったソフトがあるんだけど終了時に ****が原因でIMM32.DLLにエラーが発生しました。 ****は終了します なメッセージボックスが出て異常終了しちゃうんですよ、マジで。 それも頻繁に!ほんと(´・ω・`)ショボーンですよ。 同じような現象になったことある香具師いる? 原因とか解決策とかなんでもいいので知ってる香具師は ここに晒してください。
>>404 ,410 KeyPressイベントで受け取りたくない文字のとき返却値に0を
入れればその文字はTextオブジェクトに送られないと思った。
>423 サーチエンジンなどで検索くらい、しましょう
>>425 ごめん、サーチエンジンてのはもしかしたらYahoo!やGoogleの事かな?
そっちは試してないから今からぐぐってみる。
428 :
デフォルトの名無しさん :03/01/17 15:13
>>429 KeyPressイベント内にブレークポイント設定してペーストしてみれ
>>430 ブレークする
Ctrl+V
ブレークしない
Shift+F10→貼り付け
右クリック→貼り付け
メニューキー→貼り付け
Shift+Insert
そうか、ペーストされるとだめぽ。ところで何でMultilineをtrueにするの?
つまりKeyPressイベントではペーストには対応できないわけですな。
となると
>>277 の会社は・・・
>>432 横スクロール(だけ)させたいからでしょ。
434 :
デフォルトの名無しさん :03/01/17 19:08
えーと。。。VB6で次のような物を作りたい: フォーム上にはコマンドボタン一つと、テキストボックス一つがあるとする。 コマンドボタンを押した場合には「Print 0」が実行される様にしておくが、 もしもテキストボックスに何も書かれていない場合、メッセージボックスが現われて 「テキストボックスが空白です」と表示され、OKボタンのみがついている。 そのOKボタンを押すとメッセージボックスは消えるが「Print 0」は実行されない ものとする。ただしそれによりアプリケーションは終了しないものとする。 この時に、Private Sub CommandButton1_Click()の中に全てを記述するのではなく、 メッセージボックスを表示させるプロシージャを用意しておいて、それを Private Sub CommandButton1_Click()のなかで呼び出すようにしたい。 可能かね???
楽勝です
>>434 書いてみたがこれでいいのか?
'標準モジュールに書け
Public Sub 何かの関数名(ByVal frmFrom As VB.Form) As Bool
If frmFrom.Text1.Text = vbNullString Then
MsgBox("テキストボックスが空白です")
何かの関数名 = false
Else
Print 0 '「Print 0」って何?
何かの関数名 = true
End IF
End Sub
'Form1
Private Sub CommandButton1_Click()
Call 何かの関数名(Me)
End Sub
...これってなんか意味あるんか?
>434 そこまで書けるのに、なぜ実現可/不可の判断が出来ないのか不思議だ。
Sub > Function
440 :
デフォルトの名無しさん :03/01/17 20:45
>>439 =437
SubをFunctionに変えたところで?
と突っ込んでみるテスト。
441 :
デフォルトの名無しさん :03/01/17 22:26
とどのつまり、プロシージャA内でプロシージャBを呼び出し、 プロシージャBの中にプロシージャAをexitさせる内容のコードを書いて その通りに実行させる事が可能か?
とどのつまり、家から会社へ行って、 会社で仕事をしているときに家が火事となり、 その人は家に帰れなくなってしまったのでしょうか
とどのつまり、Bからのリターン値をAが判断してexitなりすりゃいいだけの話でしょうか
444 :
デフォルトの名無しさん :03/01/17 22:50
>>442 なるほどwww
そういうことですね。ありがとうございます。
>>418 クラス名とインスタンス名(Nameプロパティ)、ということでしょうか?
VB6(SP5) 対象OSはXP or Meでし。 IE(関連付けされたブラウザ)をプログラムからShellExecuteで呼び出して、 インターネット上のウェブページを表示したりする一種のマクロ言語の インタプリタもどき作ってるんですが、どうしてもそのウィンドウの「表示完了」が わからないといけないのですが、どのように表示状態を取得すればいいのか、 見当つきません。表示状態をつかみたいIEは自分で起動したウィンドウ、及びそこから派生するウィンドウです。 よろしくなのら!
>446 Microsoft Internet Controls でも追加して、自力で表示するとか。
>447 派生ポップアップウィンドウが出ることは必然のURLでし。 コントロールを使っての表示では追いつかない。。。
IE固定ではなく、関連されたプラウザという前提なら、どんなソフトがつかわれてるか わからないわけで、難しいと言うしかないんだが。
>>446 NetscapeとDDEで検索汁
すべてのプラウザで同じ動作ではないし、バージョンによっても違うがね。
.NETじゃDDE廃止になりそうだし。
451 :
デフォルトの名無しさん :03/01/18 05:55
Proxyでも作ったら大体把握つけられるかと
453 :
デフォルトの名無しさん :03/01/18 06:48
いろいろなフリーのActiveXコントロールがダウンロードできるサイトがなかなか見つからないので紹介おねがいします。
>>455 vectorは自分も会員なのですが、他に禁断のサイトとかをキボンヌです
>>455 今のところは特に目的がないので、なんでもたくさん集めまくりたいです。
集めたコントロールを眺めていると何か作りたいものが出てくるだろう、という感じです。
459 :
デフォルトの名無しさん :03/01/18 13:30
お絵描きソフトをつくっていて、線の太さや色を変える事などは出来たんですが 書いた線をクリアするにはどのようにすればよいでしょうか?
>459 UnDoを作りたいのですか?全てを消したいのですか? まずは、お絵かきソフトを観察して、どんな処理がされているのか、 じっくり観察しましょう。
462 :
デフォルトの名無しさん :03/01/18 16:18
ハ?意味わかんない。
かまうなかまうな
>464 少々きになったもので。 >462 と >463 、どちらに向けての言葉でしょうか '当方は両方ですが。
↑ 粘着質
熱いひとだね。 あんたに構うなといったさ。
あ、あんた=463(454) >'当方は両方ですが。 一人上手と言う事ですか?
両方に、誰も、かまうな、と書いたつもりでした。 まーかまってしまったんだがな(鬱)
なに下らないことで揉めてるの。 答えられない人は帰った。帰った。
神様っているのよね
なんでも人にしてあげたくなるような
473 :
デフォルトの名無しさん :03/01/18 17:45
タイピングゲームやシューティングゲームを作る場合 VBとDelphiの2つを比べた場合、向き、不向きなどがあるのでしょうか? どちらも同じ場合は無料のDelphiを使おうと思うのですが
かわんね。 del でいいと思うよ別に。
かわんね。 VBでいいと思うよ。.NETならなおよしだね。
※Delphi 6 Personalでは、商用・業務アプリケーションの開発はできません。 とあるので、商用・業務以外の用途で使うなら問題なし。 使ってみるだけつかってみりゃいいだけの話。
477 :
デフォルトの名無しさん :03/01/18 18:29
スレ違いな話になっちゃうんだけど ウィンドウズパワーなどの雑誌は大量のフリーソフトを収録して金取ってるわけですよね? そういう場合Delphiで開発されたソフト(フリーソフト)を掲載しても問題ないんですかね・・
>477 フリーのソフトを作って、ウインドウズパワーに掲載依頼もらって、 その質問をしましょう!がんばって!!
>>477 雑誌側的にはまったく問題なし。
仮に(商用に使えないことによる)問題が発生したとしても、
そのフリーソフトの作者が訴えられるだけだろうし。
480 :
デフォルトの名無しさん :03/01/19 07:28
じゃあTerapadや窓の手などは雑誌にのってるけどまずいってことか
>480 それらのソフトって、Delphi の "Personal” で作成されてるんですか?
Delphi 製フリーソフトを雑誌で紹介したところで、「Delphi を商利用した」 事には ならないわけだが。
商利用の定義ってなんだろな。
ボーランドに聞く(or公式文書等があれば)以外に、正しい答えは無理かと。
>418 レス遅れてすみません。 理解に苦しんでました。 おかげさまでForm_TESTFMについては 理解することができました。 ありがとうございます。 C++でいうところの クラス Form_TESTFM Form_TESTFM::SetFocus は呼び出せない。 みたいな感じに理解しました。 ありがとうございます。 やっと納得できました。
487 :
デフォルトの名無しさん :03/01/19 16:50
>>481 personalで作ったって作者サイトに書いてあるが
パソナで作ってプロフでコンパイルしたらどうなるんだろ? っつーかスレ違いsage
LearningEdition萌え
490 :
デフォルトの名無しさん :03/01/19 22:06
mp3ファイルからタグ情報(曲名、アーティスト名etc)を取得したいんですけど どうすればいいのでしょうか?
WINSOCKを使用して、FTPサーバーを作成したいのですが、仕様書orサンプルなどありませぬか?
494 :
40(419) :03/01/20 03:38
>>420-422 返事が遅くなってスイマセン。色々とありがとうございました。
なんとかコマンドボタン表示までは出来ました。
そこで、また新たな問題が発生したのですが・・・
表示できたのは良いのですが、表示できたアイコンが他のウィンドウに隠れたりすると
その隠れた部分だけ消えてしまうのですが・・・
アクティブ・非アクティブは特に関係無いようで、
他のウィンドウに隠れた部分だけ消えてしまいます。
これは仕様なのでしょうか?
作るものがランチャーと言う特性上、
他のウィンドウに隠れたくらいで消えるのはどうかと思って・・・
すみませんが、また教えていただきたいです。
検索とかで探そうにも、何で探せば良いのかわからなくて・・・
496 :
デフォルトの名無しさん :03/01/20 03:46
497 :
デフォルトの名無しさん :03/01/20 07:22
VB6.0をVB.NETにアップデートするパチをどなたか知ってましたらダウンロード場所を教えていただけないでしょうか?
500 :
デフォルトの名無しさん :03/01/20 10:10
ちとVB環境が無い為、Access97でコーディングしています。 とあるPATHに続くフォルダ名を「最終更新日付」の古い順に取得したいのですが、 手法として、 1)Dirでフォルダ名をずらっと取得。 2)FileSystemObjectのDateLastModifiedで一つずつ更新日付を確認。 3)自力SORT。 しか無いでしょうか。 力技っぽくてアレなんですが。。
501 :
bloom :03/01/20 10:20
502 :
デフォルトの名無しさん :03/01/20 10:29
フロッピーディスクのファイルキャッシュを抹殺するには?
>>502 洗面器に水張ってフロッピーディスクを泳がせる
>503 質問の意味もわからないVB厨が面白くもないレスをつけてます
505 :
デフォルトの名無しさん :03/01/20 13:24
VBとACCESS持ちいりましてACCESSのデータを検索をし検索結果の選んだ件だけ を印刷したいのですがコードの書き方がわかりません。どなたか教えてください。 よろしくお願いします。
>505 VBの本なんでもいいので買って勉強してください。
507 :
デフォルトの名無しさん :03/01/20 14:08
フォーム上にあるオブジェクトをまとめて消すという事はできますか? またできるのであればどのようにすればよろしいかご教授お願いします。
消すってなんだよ。 フォームデザイン画面で消すのか? 実行時に非表示にするのか?
★あなたのお悩み解決致します!!
◎浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
◎盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
◎行方調査
行方不明になっている家族の消息を調査致します!!
◎電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
◎ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
24時間受付 090−8505−3086
URL
http://www.h5.dion.ne.jp/~grobal/ メール
[email protected] グローバル探偵事務局
こんな感じかのぅ? Private Sub Command1_Click() Dim ctl As Control For Each ctl In Me.Controls ctl.Visible = False Next End Sub
>>511 さん
ラベル以外は非表示になりましたが、ラベルのところまで行くとエラーが出てしまいます(涙
でもラベルぐらいなら何とかなりそうなので後は自分でがんばってみます。ありがとうございました。
>>512 Frameにフォーム上にあるオブジェクトを貼り付けて
Frame.Visible = False
>512 511でうまくいくはずだが・・ 513みたいでもいいなら シェイプコントロールで隠しちゃうのもありだな
>>513 さん
ありがとうございます、うまくいきました。Frame使うとは思いつかなかったです。
>>514 さん
>>511 でやると、ラベルを非表示にかかったときに
『実行エラー'438'
オブジェクトはこのプロパティまたはメソッドをサポートしていません。』
って出てしまいました。
>515 まじっすか?! >516 labelコントロールにはvisibleがあるけど、なんでだろう
>>516-517 ラベルは問題ないって
Visible プロパティがない他のコントロールでひっかかってると思われ
Timer とかな
Access97の環境が無いのでわからんです。
>>520 や、
>>500 見てもらったら分かると思いますが、Access固有のなんて
一つも使ってやしません。VBでも一緒です。
522 :
デフォルトの名無しさん :03/01/20 16:50
>500 漏れはソートしなきゃいかん時はよくADOを使うよ。 ADOのレコードセット作って、 DirとかでFile情報放り込んで、 Sortメソッドかます。 ただ、Access97だからあえてADOも参照するのが良いか悪いかは別だが。
523 :
デフォルトの名無しさん :03/01/20 17:01
Printerオブジェクトを使って印刷するソフトを作っています。 プリンターの設定はコモンダイアログコントロールを張り付け、 ShowPrinterでプリンタの設定ダイアログを表示し設定するようにしてあります。 PrinterDefaultプロパティはちゃんとTrueになってます。 でも、なぜか、プリンタの設定ダイアログで設定したように印刷されない事があります。 プリンタ設定ダイアログで用紙サイズをB5と設定しても、 A4のまま印刷されたりします。 もちろんPrinterオブジェクトのPaperSizeプロパティで決め打ちしちゃってるとか、 そういう事はしてません。 これはなぜですか。 そして解決方法があれば教えて下さい。
>>522 ありがとう。
ADOかー。コードを後でVBに貼り付ける予定なので、DBは使わないんすよー。
しかし、リストボックスかなんかに放り込んでSortってのもいけそうですね。
勉強になりました、どうもです。
ソートぐらい自分で作ればいい。 作るといっても他からパクるだけ。
526 :
デフォルトの名無しさん :03/01/20 17:53
>525 いや、>500は自力でソートしたくないって言ってるんでしょ
>>526 や、別にどっちでも良いっすよ。
データ量も少ないし、自力Sortしようかと思ってます。
>>500 に書いたのはあの流れが一番なのかなぁ、と。
もっと簡単に早く更新日付順にフォルダ名を取得できないかな、と言うことです。
適当でスマソ。
528 :
デフォルトの名無しさん :03/01/20 18:11
>500 FileSystemObject使わんでも、FileDateTimeメソッドが最終更新日時じゃなかったっけ?
>>528 うわ、そんなのあったんすか。
wshから入ったのバレバレですね。
ありがとう。勉強になります。
>>522 ほぼ問題はないでしょうが、VBAのバージョンが古い関係で、言語仕様上
の制限(Enumが定義できない、等)が問題になることがあるかも・・・。
(状況によりますが)
>>529 うわ、それっぽいですな。
解決しそうです。
ありがとうございました。
533 :
デフォルトの名無しさん :03/01/20 20:59
多次元配列(数値)の初期値を0じゃなくて、-1とかの値に 一気に初期化したいのですが、ループさせるしかないっすか? 全部で数百万個もあるので時間がかかっちゃって。
535 :
デフォルトの名無しさん :03/01/20 21:58
>>535 それ何の処理なの?
数百万個も多次元配列組むなんて考えられないが。
DBかなんか使うとか考えてみたら。
>>533 Eraseステートメントは0か""にしちゃうからな、ループしかないだろ
>>536 定義型にでも出来れば、とは思うんですが・・・あまりにも複雑で
なかなか直しにくいので。(俗にスパゲッティとも言う)
出来ないんなら仕方ありません・・・とほほ。
539 :
デフォルトの名無しさん :03/01/20 23:59
クラスモジュールについて質問です。 クラスのメソッドからフォームのプライベートsubやプライベートconstの値を 参照したいのですが、なにか良い方法はないものでしょうか? frendというのを使うとできると聞いたのですが、使い方がよくわかりません。 教えてください。 Private owner As Form Public Sub setOwner(owner_ As Form) Set owner = owner_ End Sub などとして、 owner.kansu() とやればパブリックなsubなどは参照できたんですが・・・
540 :
デフォルトの名無しさん :03/01/21 00:18
リストビューの自動スクロールって可能ですか? どこかにサンプル転がってないでしょうか?
>>539 そのクラスにFrendつかってあいてのメンバを友達だって定義するんじゃない?
しかし相手は参照できないよ
542 :
デフォルトの名無しさん :03/01/21 00:26
>>541 レスありがとうございます。
やはり無理ですか・・
C++のフレンドクラスみたいにしたかったんですが、残念。
>>539 プライベートは他から参照できない。
Friend(frendじゃなくてな)を使いたいなら、
ActiveX DLLとかにしてFriendで関数や定数を定義すれば
それはActiveX DLL内ではPublicと同じで他のプロジェクトからは
Privateであるようなスコープになる。
>>496 Paintイベントですか。良く分からないのでとりあえず調べて見ます。
コレ関係について詳しく乗ってるページとかって無いですかねぇ・・・
>>497 ワンクッションと言いますと??
>>544 隠れるってことはアイコン画像へリンクしてるだけだから、
アイコン画像データをいったん自分の変数に格納してしまう。
546 :
デフォルトの名無しさん :03/01/21 02:39
>>543 なるほど!そういう時に使うんですね。勉強になりました。
VB難しい・・素直に標準モジュールで逝っときます。
547 :
デフォルトの名無しさん :03/01/21 02:40
みなさんVBでビットフィールドってどうやってますか? 2 ^ index でいいんですかね?それともベタに1,2,4,8,16,32ですか? 例: Enum NICYAN MONA = 2 ^ 0 SI = 2 ^ 1 GIKONEKO = 2 ^ 2 FUSAGIKO = 2 ^ 3 MATA_RI = 2 ^ 4 End Enum Public Function Check(ByVal what As NICYAN) As Boolean If (what And FUSAGIKO) = FUSAGIKO Then MsgBox "フサギコ" End If If (what And MONA) = MONA Then MsgBox "モナー" End If End Function
>>547 特にビット演算の必要が無い限り、Boolean の配列のがいいと思う。
>>544 (494)
またまた登場
>>49 です
ピクチャーBoxにアイコンを描画しAutoRedrawをTrueにす
んでSetParentでピクチャーBoxの親をFormから
Command1に変更する
Command1の上にアイコンが描画されたピクチャーBoxがのっかている感じです
AutoRedraw=Trueなのでアイコンが消えません
というのが どこかのページに乗ってた
(自分は未確認です...)
>>550 DeleteFileCash()を使いなされ。
>>551 無論
二度目以降のリードでフラッシュしてんのを都度全開に読みたいのよ
>>552 それっぽい関数名 (?) だがググッても M$DN でも引っかからん...
スマソがもちょっと詳細をキボンヌ
Cash って時点で気付け。 ネタだ。
>>553 APIビュー---アー--- だめなら Cのヘッダファイル(Windows.hとか)
それでもなかったら
>>552 はネタ
ディスクを抜いて挿せば消えると思うけど・・・ 何でキャッシュをクリアしたいんだ? > 二度目以降のリードでフラッシュしてんのを都度全開に読みたいのよ これの意味がわからん。
559 :
デフォルトの名無しさん :03/01/21 12:23
チェックボックスの印刷をしたいのですがDataReportには そのような部品はありません。印刷することは出来るのでしょうか?
イミディエイトウィンドウについて、いくつか質問させてください。 VB6.0proです。 ・キーボードで、このウィンドウをcloseする方法。 ・実行時に、このウィンドウの内容をクリアする方法 文字削除でctrl+Gをする癖があるため、よく開いてしまうので閉じたいのです。
>>560 開発者向けの機能ですので、IDEでしか開かないはずですが?
M$DNなんて厨くさいことをかくな
>>557 そういうことだが FD は設定できんようだ
>>558 FD 内のファイルを GetPrivateProfileInt で読もうとすると
ごく一部の機種 (PC-98) で FD 変えても取得値が変わらんのだ
じゃ他の手法で読めとか VB の問題じゃなかろうとかチミなら云うだろうが
── とにかくあたしゃやりたいのよ!
>>563 厨だから
態度からしてもう教えてもらえんな
>>564 そのような場合、不具合が起こった機種の製造会社に聞くべきだろう。
PC-98のWindows用のデバイスドライバがPC-AT用とはかなり違っていた
のは経験したぞ。折れは。
>>533 配列はゼロクリアして使用時にバイアスをかける。
ラッパーをかますなどすればそれっぽく使えるかもしれないけど危険。
>>539 別名でFriendプロシージャを用意しる。
でも543が言うようにActiveX DLL/OCXでないと(同一プロジェクトでは)あまり意味がない。
Publicにできない型をやりとりするとき位かな?
↓こんな感じ
'Form1
Private AFO As Object
Friend Property Get VAKA() As Object
Set VAKA = AFO
End Property
'Other Module
Dim ITTEYOSI As Form1
Set ITTEYOSI = New Form1
ITTEYOSI.VAKA.OMAEMONA 'Form1のプライベートメンバAFOのOMAEMONAプロシージャ呼出
>>560 >・キーボードで、このウィンドウをcloseする方法。
CTRL+G アプリケーションキー(またはSHIFT+F10) H
>・実行時に、このウィンドウの内容をクリアする方法
Debug.Print String(1000, vbCrLf)
イミディエイトウィンドウってなんですか? Form領域の左にはツール郡、右にはプロパティウィンドウがありますよね。 イミディエイトはどれですか?
571 :
デフォルトの名無しさん :03/01/21 14:33
>569 オマイこそCtrl+G汁
詳細については、各言語のドキュメントのデバッグに関連する箇所を参照してください。 ///デバッグに必要なウィンドウなのか
↑はヘルプの文だけど つまり イミディエイトウィンドウ=デバッグウィンドウか。 同じもので呼び方がちがうだけと、なっとく。
イミディエイトウィンドウかぁ Debug.Print でイミディエイトウィンドウになんか出ます そういや Debug.Print を書いたまま EXE 二すると EXEの中で Debug.Print が無駄に仕事をするんで EXEにする前に消しとくと良いらしいYO
>>575 ふううん ソウナンダ。オレDebug.Printの一行は書いたことないな。
オレが自分で考えた特許的方法は
Open − For Output As #〇
Print #〇, 変数
Close #〇
End
ってかんじでテキストに変数の値を出力して
そののちエンドで動作を終了させてる。
イミディエイト覚えたほうがよさげだな。
>>575 半分正しい。半分間違い。
Debug.Printの引数が定数や変数とそれらの式ならEXEにすると消える。
引数に、関数、メソッド、プロパティが含まれていると式が評価される。
もちろんDebug.Print自体は動作しないが。
デバッグ用のコードは条件付コンパイルするが吉。
debug.print "[" & format(now(),"HHNNSS") & "] val1=" & value1 & " val2=" & cstr(val2) の場合、EXEではformatとcstr、文字の連結処理は行われるということ。無駄無駄無駄無駄無駄・・・ パフォ気にしないんならいいじゃん。
イミディエイトウィンドウで ?val1 とか val2 = "ほげ" とか Call MsgBox("ほげ") とか
581 :
デフォルトの名無しさん :03/01/21 18:42
SWFファイルのムービーの幅と高さを取得するサンプルみたいなのってないでしょうか? ファイルフォーマットの文書を読んでもイマイチ、ピンと来ないので・・・。 知ってる方がいらっしゃいましたら、お願いいたします。
>>502 , 564
問題の有る機種について汎用的な手法は存在しないと思われ。
ちなみにWin9x系のGetxxxProfilexxx関数は機種に関わらずキャッシュされるのをご存知なんだろうな?
583 :
デフォルトの名無しさん :03/01/22 00:31
ディストリビューションウィザードを用いてセットアップパッケージを 作ろうと思ったのですが、よく分からないまま「次へ」とか「完了」 で作成したら、結構サイズが大きくなってしまいます。 依存ファイルを減らせばいいのでしょうが、依存ファイルって、 どこで決まるんでしょう?付け加えたOCXとかVB6JP.DLLくらいなら 判断できますが、それ以外のものをはずして良いのか悪いのか分か りません。
>>583 出来たcabファイルは圧縮率スカスカだから、
一旦解凍して圧縮しなおすと結構小さくなったりするよ。
>>577 仮にパフォーマンスの問題は無視できたとしても、副作用のある処理が
含まれていたとしたら、致命的にマズイね。
587 :
デフォルトの名無しさん :03/01/22 10:21
>586 変数表示ならともかく、 関数の結果表示は危険をはらみ過ぎだろうね。
>>586 副作用ならDebug.Printは大丈夫だろう。どちらにしろ関数は実行されるんだから。
副作用の問題が出るのはDebug.Assertの方。EXEにすると関数が含まれようが消えるから。
Debug.Printで問題があるのは副作用じゃなくて式の結果が実行時エラーになる場合。
それを利用してEXEかIDEかチェックするテクニックもあるが。
>>588 > それを利用してEXEかIDEかチェックするテクニックもあるが。
代表的なのは、1 / 0 のようにゼロ除算でエラーにする方法だと思うが、
VB.NETではエラーにならない罠・・・。(w
590 :
NANASI :03/01/22 13:56
VBからACCESSを読み条件検索をしグリッドに表示されたデータの中から データを選び次の画面で詳細を表示するようにしています。そして、 表示された詳細を印刷するようにしているのですが印刷プレビューの時 点でデータべースの1件目を表示してしまいます。詳細に表示したデータ のみを印刷したいのですが、どうしてもうまくいきません。どなたかご教 授お願いいたします。
591 :
デフォルトの名無しさん :03/01/22 14:02
>590 条件がよくわからんが…。 Filterで、選択レコードのみのレコードセットを作り出すとかは?
592 :
デフォルトの名無しさん :03/01/22 14:37
VBで変数に値を代入するときに、エラーが発生することはありますか?
a as double b as double 間に適当な処理 a = b こんな感じなんですが。。。
596 :
デフォルトの名無しさん :03/01/22 16:24
>595 何のエラー? エラーメッセージとエラー番号プリーズ できれば間にある適当な処理も。 そいで、最後代入するときのBの値もね。
597 :
デフォルトの名無しさん :03/01/22 16:56
出てくるエラーメッセージが「0割」か「オーバーフロー」です。 bの中身は23562です。 間の処理のほうはbにc*d*f/eといった感じです。 aは実は構造体の配列のメンバだったりします。配列のサイズは2*3*5ぐらいなんですが構造体のサイズは100ぐらいだったりします。 でもエラーは出てくるんですけども値自体の代入はきちんと行われているようです。
598 :
デフォルトの名無しさん :03/01/22 16:58
VBからエクセルのマクロを実行したいのですが どうすればいいのか解りません。 ・エクセルのファイルはオープン済み ・単純にエクセルに登録されているマクロを起動するのみで、実行結果にはVB側は感知しない どうか、よろしくお願い致します。
>>597 取りあえずeに0が入らないように監視。
>>597 式に用いられている変数の型に注意。
例えば、以下のようにすると、a*bでエラーが生ずる。
Dim a As Integer
Dim b As Integer
Dim c As Long
a = 1000
b = 1000
c = a * b
こういう場合は、例えば以下のようにする。
c = Clng(a) * Clong(b)
ぉぉ600ジャストだった。。。と思ったら間違ってやんの。 Clngね。
602 :
デフォルトの名無しさん :03/01/22 17:53
営業時間中ずっと起動しているようなプログラムで DBへの接続は起動時にしてつなぎっぱなしにしていますか? それとも必要に応じて接続・切断を繰り返していますか? 環境:VB6(SP5)+MSDE+ADO2.7
>>602 エラーが累積していくと悲惨なことになる予感。
>つなぎっぱなし いままで予想だにしなかったことだな。こういうのもありなのか? タイムアウトの予感。
606 :
デフォルトの名無しさん :03/01/22 19:05
VBではなくVBScriptなのですが、IISでVBScriptでASPです。 スクリプトから実行ファイルを起動して(もしくはバッチファイル)、 その戻り値を得たいのですが、どうすればいいのでしょうか。
608 :
デフォルトの名無しさん :03/01/22 21:10
FormのMouseDownイベントを、 Formに載ってる各コントロールのMouseDownイベントより先に発生させる事はできませんか? KeyPreviewプロパティのマウス版みたいな感じで。
誰か。。
612 :
自由な奴隷 :03/01/23 00:34
厨な質問ですまそ。 text1.text と text!text ってどう違うの?? っていうか「!」ってなんですか?
613 :
自由な奴隷 :03/01/23 00:39
↑ text1.text text1!text でした。 (text1は、テキストボックスね。)
>>612 ---------------------------
Microsoft Visual Basic
---------------------------
コンパイル エラー:
値の取得のみ可能なプロパティに値を設定することはできません。
---------------------------
OK ヘルプ
---------------------------
>606 >607 宣伝書き込みじゃないよね?
>>615 どうでもいいことですが、2chに宣伝するなんて、
熱心な外人さんですね。
>>611 ありがとうございました。 できました!
618 :
デフォルトの名無しさん :03/01/23 10:55
Access2000で作成されたデータベースがあり、その中のあるテーブルのフィールドに OLEオブジェクトとしてPhotoshop形式のファイルが埋め込まれています。 Accessで見ると「Adobe.Photoshop.Image.4」と書かれており、クリックすると Photoshopが立ち上がる状態です。 さて、このようなレコードが多数あり、Photoshopの画像を別ファイルとして 保存する必要に迫られたのですが、やり方が調べても分かりません。 (OLEオブジェクト ファイル 保存 などでググってみたのですが・・・) どなたか、このようなOLEオブジェクトのファイルを抜き出して保存する方法を ご存知じゃないでしょうか。 ちなみに、データベースへアクセスする方法はADOでもDAOでも構いません。 環境はWin2K(SP3) + VB6(SP5) + Access2000(SP3) + Photoshop6 です。
619 :
NANASI :03/01/23 11:53
DATAPORTでチェックボックスを印刷することは出来ますか?
>>618 バイト型の配列にオブジェクトをぶち込み
Put ステートメントで書き込む
>>608 KeyPreviewプロパティのマウス版は無い
Private Sub Command1_MouseDown(引数省略)
Call Form_MouseDown(引数省略)
'この下に Command1_MouseDown の処理を書く
End Sub
この方法で出来なくもないが
Formに載ってる各コントロールに Call Form_MouseDown(引数省略)を
書かなくてゃならんので ヤダ
>>620 なるほど・・・。ありがとうございます。ちょっと試してみます。
624 :
デフォルトの名無しさん :03/01/23 13:23
マウスの動作を記録し、再生するアプリを作っています。 マウスの座標と状態をログファイルに書き出すことはできたのですが それを再生するとき、SetCursorPosで座標は再現できるのですが クリックやドラッグを再現する方法がわかりません。 どなたかご教授いただけないでしょうか。
下記のようにソースを組み、ファイルに出力するところまではできたんですが、 実行してできたファイルをPhotoshopで開こうとすると、 「有効なPhotoshop書類ではありません」と言われてしまい、エラーになってしまいます。 どこが悪いのか分かる方いらっしゃいましたら、アドバイスお願いします。 # なお、 b = rec.Fields("画像") の行を b = rec.Fields("画像1").GetChunk(0, lngLen) に変えてみても同様の結果でした。 ------------------ Dim b() As Byte lngLen = rec.Fields("画像").FieldSize ReDim b(lngLen - 1&) b = rec.Fields("画像") Open "c:\tmp.psd" For Binary As #1 Put #1, , b Close #1
627 :
デフォルトの名無しさん :03/01/23 15:08
GrapeCityの製品を使って画面にグラフを表示しようと思っているのですが この二つの製品の違いが良くわかりません。 Chart Builder5.0J Olectra Chart6.0J Olectra Chart6.0J は Chart Builder5.0Jの後継製品と考えれば良いのでしょうか? あと開発環境が次の場合は Olectra Chart6.0J の方が妥当なのでしょうか? 解る人いましたらお願いします。 #ここまで書いたらメーカーに聞いた方が早いような気がしてきた・・・
開発環境が抜けてました。 WindowsXP + VB6SP5 です。
625さん、ありがとうございます! うまくいきそうです。
>>627 俺はその辺りはあまり知らないけど、
そこまで書くならメーカーに聞いた方が早いような気がするよ。うん。
なんとか完成しました。
>>495 様。ありがとうございました。
もう一つ教えてください VBからエクセルのマクロは起動できましたが、 エクセル側のマクロが終了するまで、 VBの Application.Run で待機してしまいます。 エクセルのマクロ計算時間が1分以上かかるので、 VB側は待機をせずに次の処理をさせたいのですが、 何か方法はありませんか?
(^^)
634 :
デフォルトの名無しさん :03/01/23 20:57
すいません、質問です。 OUTLOOK2000の受信トレイを、ACCESS2000のDBにエクスポートするまでを VBAスクリプトで行いたいのですが、やり方がまったく見当つきません。 もし不可能なら、WSHもつかえる環境なのですが。 VBAの知識がなく、マクロの記録機能もないので困っています。 仕事で急に必要になってしまいました。お願いします。
>>634 知識のあるヤシにやってもらう。
できもしないこと思いついたからって、全部2chに丸投げは無いだろ。
MAPI使ってしこしこデータを取り出すか、 ADO使って一発でデータを取り出すのでわ?
638 :
デフォルトの名無しさん :03/01/23 21:35
スマソだれかパトラ○トって所のビジュアルサインてのVB6で制御やったことあるひといねぇ?
639 :
デフォルトの名無しさん :03/01/23 21:38
>>635-637 ありがとうございます。
MAPI ADO ってのがあるんですね、調べます。
>>640 ありがとうございます(これから読みます)
わからなくなったら、また書き込ませてください。
642 :
デフォルトの名無しさん :03/01/23 22:16
VB側からVCで作ったDLL呼び出そうとしたら”スタック領域が不足です”とエラーが出たんですが 何が原因と考えられますか? 情報少なくてすみません
>642 でかい配列を値渡しとか
645 :
デフォルトの名無しさん :03/01/24 00:24
Media Playerコントロール(msdxm.ocx)を使って再生 ↓ 他のファイルを再生 ↓ ボリュームが元に戻る ↓ マズー なんですけど、実行中にボリュームバーで変更したときって ボリュームって取って来れんのですか? Dim i As Integer i = MediaPlayer1.Volume ってやっても最初にプロパティページで設定した 値しかとって来れません。
>>642 たぶん、スタックが不足したんじゃないかなあ
>>642 >DLL呼び出そうとしたら
DLL呼び出したら、じゃないの?細かい事のようだけど予想される原因は全く違ってくるのでは。
DLL呼び出したらエラーになったんならVCで作ったDLLに問題があるんじゃない?
俺はそのエラー、再帰処理で出した事あるよ。
>>643 >>644 >>646 >>648 れすどうも
DLLがわですかね、やっぱり。うーん、でも何度見てもわからない〜
渡してるものは二つのデバイスコンテキストと整数型の変数三つを値渡しなんですけど
別に渡してる要素数が多すぎるって訳じゃないですよね、全部で5つしかないし、、、
もっかい精査してみるっす
652 :
デフォルトの名無しさん :03/01/24 10:08
>>650 FFTです
VB側で読み込んだ画像のフーリエ変換を処理速度上げるために変換処理部分だけVCで作って
DLLとしてリンクさせようと思ったんです
だからVB側でやってる事はファイルから画像読み込んでピクチャーボックスに表示
↓
そのピクチャーボックスのデバイスコンテキストと読み込んだ画像の縦横サイズを引数として
DLL側の関数へ渡す
↓
DLLでFFT処理実行してスペクトル表示にし、その画像に対して加工してやって
加工後の画像を逆FFTしてフィルター処理された画像を得る
↓
あとはその画像をVB側から受け取ったデバイスコンテキストに対して描画してやる
ってな事をやりたいわけです。
>>618 と
>>626 の質問をした者です。
解決しなかったので、今度はAccess総合相談所スレで質問してみます。
もし解決したらこちらにも解決方法を書こうと思います。
>>645 >ボリュームが元に戻る
どの辺にもどる?
最初にプロパティページで設定した値ってこと?
>実行中にボリュームバーで変更したときって
>ボリュームって取って来れんのですか?
だったらボリュームバーを非表示にしてボリュームを
変更できなくする(たしかボリュームバーを非表示にするプロパティが
あったはず よく覚えていない)
スクロールバーでMediaPlayer1.Volumeを制御する
出来なかったら あぼーん
>>653 たのむぜ
657 :
デフォルトの名無しさん :03/01/24 12:16
はじめまして。 現在、VB6proとACCESS2000を使用しデータベースの 検索システムを製作しています。 検索一覧をグリッドに表示し、情報を選ぶと次の画面へ移り 詳細情報が表示されるというものです。 問題は詳細情報の印刷をさせているのですが、データベース にあるデータを1から印刷してしまいます。 すべてを印刷するわけではなく選択した(表示している)デ ータのみを印刷するようにしたいのです。 なんども手直しをしましたが直りません。 どのようなコーディングをすればよいか皆様に教えていただ けたら幸いです。 Set DataReport1.DataSource = frm検索.rs ' レポートを表示(プレビュー)する DataReport1.Show という風にコーディングしています。 よろしくお願いします。
>652 少しずつデバッグして、状況判断しては? C側の最初に return; を入れて、問題なければ呼び出しはうまくいってるんだし、 どこでエラーが出てるかわからなければ、誰も答えられないとおもうんだが
659 :
デフォルトの名無しさん :03/01/24 14:33
ゲーム等のフルスクリーン上で、VBで作ったソフトの画面を 表示するにはどうすればいいですか? 環境 VB6.0 WINDOWSAPI DIRECTX
>>657 テーブルから1件のレコードを抽出するRecordsetオブジェクトを作成して
DataReport1.DataSourceにセットする。
661 :
デフォルトの名無しさん :03/01/24 14:54
解決しました
テキストフォームにあるデータをDataReportで表示させるには どうすればいいですか?
Accessスレで回答が得られました。(解決策ではないです) Accessのオブジェクト埋め込みは、ファイルにOLEに関する情報と おぼしきものが付加されるそうです。 なので、その部分を取り除かずにそのままバイナリで吐き出しても、 Photoshopでは認識できないみたいです。 これを解決するには、吐き出されたバイナリを解析して、OLE付加情報を 自力で取り除くしかなさそうです(かなり厳しい・・・) とりあえず原因が分かっただけでも一歩前進、といったところでしょうか。
>662 いやだね
666 :
デフォルトの名無しさん :03/01/24 17:09
>>663 DataReport1.Sections("Section1").Controls("Label1").Caption = Form1.Text1.Text
668 :
デフォルトの名無しさん :03/01/24 17:34
>>669 おお! ありがとうございます。
まだチラッと見ただけですが、確かに参考になりそうですね。
がんがってみます。成功したらご報告します。
もう一つお願いします。 印刷ページ数を指定してDataReportを表示するにはどうすればいいですか?
納豆食えよ
>>632 Private Sub Command1_Click()
Dim WShell As Object
Set WShell = CreateObject("WScript.Shell")
WShell.Run "D:\ExcelMacroRun.vbs"
MsgBox "VBSを実行しました。"
End Sub
ExcelMacroRun.vbs
--------------------------------------------
Set objExlApp = CreateObject("Excel.Application")
objExlApp.Visible = True
objExlApp.DisplayAlerts = False
objExlApp.Workbooks.Open("C:\test.xls")
objExlApp.Run ("Macro1")
objExlApp.Quit
shell memo.exe,〜txt という感じでファイルは通常開きますが、 ただたんにVB側では〜.txtや〜.jpgを開く命令だけを発行し、Windowsで関連付けられたアプリが自動的に開いてそれらのファイルを開くにはどうすればいいのでしょうか?
関連づけられたアプリを探しShellって事も出来るが、 お手軽にやるならShellExecuteとか。
あるPATH以下のフォルダとファイルを全てコピーしようと考えているのですが、 一つのファイルが完全にコピーされるのを待ってから、次のファイルに取りかかりたい のに、どんどん次のファイルに取りかかってしまうからか、エラーっぽいのが出ます。 (多分、同じファイルがあるから) これを一つのファイルをコピーし終えるまで待つように出来ませんでしょうか。 よろしければやりかたをご教授願います。 おながいします。
>>677 サン
ShellExecuteしらべてみまつ
関連付けアプリ探し出すのも面白そうでつ
「サウンドとオーディオ デバイスのプロパティ」で設定する、 「音の再生」の「規定のデバイス」をVBから変更したいのですが、 どなたか方法を教えてください。 音声再生の出力先を、場合によって通常のサウンドカードか USBサウンドのどちらかに変更したいのですが、いちいち プロパティを開くのも面倒だし、フリーソフト等を探したものの 見つからなかったので自分で作ろうかと思っています。 OSは2000又はXP です。
>>675 ありがとうございました。参考になりました
VB単独では無理そうなんですね
684 :
デフォルトの名無しさん :03/01/25 14:52
>>680 FindExecutable() だったかな。ただし、抜けがあるので、レジストリを読むのが確実
>>681 わかんね。変更前後のレジストリの変化を調べてみたらどうだろう。
>>683 そんなこたーない。VBSをVBのコードに置き換えればいいだけ。
685 :
デフォルトの名無しさん :03/01/25 15:07
IEのようにwebbrowserの進行状況をプログレスバーで表示するにはどうすればいいですか?
>>684 サン
レジストリが確実れすか〜。ガンガリマス
688 :
デフォルトの名無しさん :03/01/25 15:47
VB上で動かすと問題なにのにEXEにしたらフォームロードで オラクルに接続するところで落ちるようになってしまいました・・・ 原因わからず、1週間近くも悩んでいます。 助けてください・・・ せめて原因を特定する方法だけでも・・ VCを使うとVBのEXEのデバッグができるというのは本当ですか? もしできるなら方法を教えてください・・・
>>688 原因を特定するための情報を一切出さないとはどういう了見で?
690 :
デフォルトの名無しさん :03/01/25 16:09
自分でしらべろよ 敬語つかってんじゃねえよ 教えてばっかりいってんじゃねえよ 1週間も悩む暇あったら仕事しろよ ¥¥¥¥¥¥¥¥¥\\\ \\\\\\\\\\
691 :
デフォルトの名無しさん :03/01/25 16:17
692 :
デフォルトの名無しさん :03/01/25 16:50
>>685 ProgressChange イベントってのがあったけど、これは駄目かい?
>>688 とりあえず、エラーメッセージぐらいだそうよ。
あと、開発環境 = 実行環境なのか、とか、いろいろ情報が不足してるね。
VCでデバッグもできるけど、相当大変なことは覚悟しておいたほうがいいよ。
VBとACCESSの環境です。 ACCESSでチェックボックスがオン になっている場合VBのフォームに テキストで表示させたいのですが 以下のように記述しますと 無しとしか表示されません。 どの部分が間違っているの でしょうか? If frm検索.rs!寮 = 1 Then txt寮.Text = "有り" Else txt寮.Text = "無し" End If If frm検索.rs!残業 = 1 Then txt残業.Text = "有り" Else txt残業.Text = "無し" End If
VisualStudio.net買うんじゃなくて VisualBasic.netだけ単体で買うことって可能? 値段とかどんくらいするものなのかね 詳細キボンヌ
frm検索.rs!寮 frm検索.rs!残業 この2つの値を確認せよ チェックしたとき1が入ってくるのか
winsockで110に接続する。(メルサ んで認証する RETRでメールヘッダもらう。 まではできんだけど 送信者の取得がワカンナイーヨ 複数のメールヘッダが変数に格納されてて、 その順番どおり例えばa(1)に一件目の送信者a(2)に2件目の送信者 手ナ感じで代入したいんだけど。 どんな感じでやりゃあいいのかな スマートな「才支」求む。
>>697 ジブンシラベロバカチュウボウというレスを予想していただけに
激しく感謝!!
699 :
デフォルトの名無しさん :03/01/25 21:30
店いってきけよボケ 全部ネットかよ お前の人生ネットかよ おびえてばっかりでなにもできねえアフォが開発なんてすんなよ どうせろくでもないようなものしか作れないだろうからやめとけ。マジで。
>>699 ま、こんなレスでいちいちageるやつもどうかと思うが
期待してたレスありがと。
Microsoft Visual Studio .NET Academic 通常パッケージ 24,800円 てのは旧VBのぷろふぇ?
703 :
デフォルトの名無しさん :03/01/25 22:26
てかvc.netもは言ってこの価格は買いか?
>>696 POP3プロトコルでそ?
なら、RETRで取り出したメールに
・From:ヘッダが付いてればそれを使い、
・ついてなければあきらめる
って事でいーんじゃないだろーか?
あと、From:ヘッダは、正規表現か、文字列パースで、名前とアドレスを切り分けるって感じ
705 :
デフォルトの名無しさん :03/01/25 22:51
>>704 そなんだけど
そのFromの取り出し方がワカンネーダヨ
その「使い方」を教えてホシイダーヨ
どうやって取得し配列変数にカクノウシテイクンダーヨ
イ列 くれたら ネ申
706 :
デフォルトの名無しさん :03/01/26 00:57
クラスについて、ワカリヤスーク解説してる本を探してます。 お薦めの本ありますか?
>>705 文字列から文字列を検索するだけだろ?
取り出し方なんてあまりのも初歩過ぎ&状況によって全然ちがうので
例を書きたくてもかけねーぞ?
>>706 ヘルプ
708 :
デフォルトの名無しさん :03/01/26 06:39
以下の内容をコピペ REM ------------------------------ここから MSGBOX " / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄" _ &VBCRLF&"< しいたけですが、何か?" _ &VBCRLF&" \___________" _ ,16,"しいたけ" REM ------------------------------ここまで ↓ ファイル名をsi-take.vbsとかにして保存 ↓ 保存したsi-take.vbsをダブルクリック ↓ (゚д゚)シイタケー
709 :
デフォルトの名無しさん :03/01/26 06:44
>>688 ソースが入ってるPathとexeの入っているPathが違っているとか?
それで、OracleのDBのPathが違って認識されていないとか
そんなに簡単な問題じゃないか・・・・
712 :
デフォルトの名無しさん :03/01/26 11:16
ものすごく初心者的な質問かもしれませんが、 a=(1024*1024*1391) MOD 13 これでオーバーフローしてしまいます。 これはどうにもならないんですか?
>>712 VBのintegerってまだ16ビットだったりするの?
>>712 Integer型になっているためだと思われ
Currency型かDouble型で計算しる
a=(1024!*1024!*1391!) MOD 13 !
↑たとえばこれはSingle型として計算
a=(1024&*1024&*1391&) MOD 13 &はどれか一つだけでも良いけど
>>713 まだってCPUによってビット数が変わる言語はC/C++ぐらいだろ。
VB3以前は16ビット、VB4は16ビットと32ビットの両方ある
(同じ境遇のDelphiは32bitになってるのに)
>>713
integerは整数という意味であって16ビットという決まりは無い。
駄目ぽ
722 :
デフォルトの名無しさん :03/01/26 11:44
教えていただいてどうもすいません。 しかし、 a=(1024*1024*1391) MOD 13 これはうまくいったのですが、 a=(10240*10240*1391) mod 13 これを a=(10240!*10240!*1391!) ここまではうまく計算されるのですが、 mod 13 をつけるとまたオーバーフローしてしまいます。 教えて君でもうしわけありませんが、教えてください。
Javaも.NETもデータ型が同じならビット数も同じになったね。
725 :
デフォルトの名無しさん :03/01/26 12:53
うう・・ いろいろがんばったけどやっぱりできない 145856921600 mod 13 でエラーが出るのはこれは仕方が無いのですか?
>>725 頭使って、目的とする解を得られるように計算方法変えてみ。
>>725 そもそもどのバージョンのVBでやっているの?
VB.NETでは何も問題ないが。
常駐しているアプリのアイコンの上にカーソルもっていくと ツールチップが出て文字列が表示されますよね。 外部アプリケーションのそのツールチップの文字列を取得したいのです。 Tips系サイトとか回ってみたのですが、近い情報はありませんでした・・・ どなたか知識が有る方、ご教授願えませんか。 よろしくお願いします。
729 :
デフォルトの名無しさん :03/01/26 16:19
本買えよバカ
730 :
デフォルトの名無しさん :03/01/26 16:22
バカは本買うよ
731 :
デフォルトの名無しさん :03/01/26 16:24
GrapeCityのSpread6.0 使っています。修正版も入れています。 ADOと連結させている時に キーボードから入力したものは自動的に保存してくれるのですが SetTextメソッドからセットした値は自動的に保存してくれません。 何か知っていたら教えてください。
Winampみたいなスキン替えられるアプリ作りたいのですが、 ああいうのをVBで実現しようと思ったら、何から調べれば良いですか。
>>734 設定ファイル(iniなんか)の読み書き
画像の読み込み
リージョン
スキンなんてそう難しい機能じゃないよ。
作ってって分からなくなったら聞きに来い。
>>735 「リージョン」自体初耳なので調べる所からはじめまっす。
分からなかったら、その時おながいします。
737 :
デフォルトの名無しさん :03/01/26 20:02
>>726 さん、
それは13未満になるまでぐるぐるまわるようなプログラムにするってことですか?
145856921601-int(145856921601/13)*13
(1024 mod 13)*(1024 mod 13)*(1391 mod 13) =10*10*0 =0
>>735 ビットマップからリージョン切れるようになれば好き勝手に形作れておもしろいな。
>>740 どーやってやんのそれ?
恥ずかしながら多分俺出来ないわ。
>>739 (1024 mod 13)*(1024 mod 13)*(1392 mod 13)
=10*10*1
=100
ですが何か?
>>741 俺は一ラインずつ見ていってリージョンORしていった。
745 :
デフォルトの名無しさん :03/01/26 22:32
On Error Resume Nextって、あんまり使ってはいけないのでしょうか。 エラー無視するのが悪い気がするのですが。。。
>>745 例外処理についての理解を深めれば割と納得がいく。
>>745 On Error Resume Nextはインラインエラー処理のための命令。
すなわち、ある命令の次の行でErr.Numberをチェックしエラー処理をする。
APIのように戻り値でエラーを判定する方法と同じような感じになる。
もちろんErr.Numberをチェックしないのも戻り値のエラーをチェックしないのもご法度。
748 :
デフォルトの名無しさん :03/01/26 22:42
Outlookから、とあるURLのページを開きたいのですが。。。
IEで開くには、以下のようにすればいいことはわかります。
Set objIEApp = CreateObject("InternetExplorer.Application")
toaruURL = "
http://www.yahoo.co.jp "
objIEApp.Visible = True
objIEApp.Navigate toaruURL
ただ、希望としては、「htmlファイルと関連づけられているブラウザ」で
開くようなコードを書きたいのです。(SleipnirなりDonutPなり)
どのようにすればいいのでしょうか?
なお、Outlook2002、IE6、WinXPPro-SP2です。
>>749 期待する答えになってないだろうがボケ。
751 :
デフォルトの名無しさん :03/01/26 22:58
>modでオーバーフロー こんな事もあるんですね。初めて知りました。 ちなみに"\"でもオーバーフローになるようです。 .netだと問題無いってことなので、これってVB6.0のバグですかね。
>>これってVB6.0のバグですかね。 仕様とバグの区別もつかないのか? 整数型の最大値はちゃんと覚えているか?
>>755 単にmodで使用できる整数の範囲を超えてるだけだろ。
なんかこー、データ型とか分かってない奴が大きな数字にしたらエラーになった。 これはバグに違いない2ちゃんねるで晒してやろうとかいって 実は自分が馬鹿晒しているように見えるのは気のせいだろうか。 で最後に泣きながらネタだよーとか言って逃げていきそうな予感。
>>755 >.netだと問題無いってことなので、これってVB6.0のバグですかね。
仕様だろ。あさはかにバグとか言わない。
Modも\も整数(Integer、Long)を対象とする。
整数でないものは整数(Integer、Long)に丸められる。
整数に丸められることはヘルプに書かれてある。
>145856921600 mod 13
これの前者はDoubleだ。IntegerやLongには丸められない。
Longで21億ちょいまでだから。
.netはDecimalまでサポートしているし、Long型だって8バイトだしね。
761 :
デフォルトの名無しさん :03/01/27 00:49
VBからExcelファイルにページ番号を出力するツールを作ってます。 Sheet単位の総ページ数を取得したいのですが、できません。 どなたか、よろしくお願いします。
>>761 どこまでやったか書かんような奴に教えるつもりは無い
>>761 GetPageNumber()を使いなされ。
>>762 申し訳ありません。
1Sheet1ページでの出力は可能です。
複数ページの場合、2Sheet目を1ページ目の総ページ数 + 1から出力したいです。
で、Sheet単位の総ページ数を取得したいのです。
765 :
デフォルトの名無しさん :03/01/27 02:04
質問です。 自作ソフトの印刷プレビュー機能を作成してたら、PaintPictureが画面の解像度を越える位置に 描画できないらしいことがわかってしまいまして。 たとえば縦に2000ピクセルのPicuteBoxを縦1280のマシンで作成して、1000から1500にかけて PaintPictueすると1000から1280までしか絵が出ないのです。 コリャどうすりゃええんですかね。
PictureBoxっつーか、Windowのサイズじゃないか? 必要なサイズぶんの大きさにpictureboxを広げて描画し、 それを別のpictureboxに重ねてスクロールバーでスクロールできるようにするとか。 たとえばの話ね。
別に泣いて逃げるつもりは無いけどー
単にヘルプ確認するのめんどいから「ですかね」と言っただけだしー
俺的には
>>738 の手を使うだけだしー
それを鬼の首を取ったみたいに言われてもねー
恥ずかしいですね
VBAのコマンドオブジェクトって何のことですか?
>>767 不確定形の文章ながらも 「バグ」 と書いてあるからにはそう思い至ったわけだろう。
何らかの不具合をすぐ処理系のバグと思うのは阿呆のすることだと言ってるの。
第一、767 はどこからどう読んでも逃げの文章なのに、「逃げるつもりは無い」 なんて
恥ずかしいと思わないのか?
ハンドルまでが 「傍観者」 なんて、それ名無しよりもみっともないぞ。
発言に責任持たないぞと明言しているようなもんだからな。
叩かれるのがイヤなら、もっと考えて発言しろ。
もしくは、しゃしゃり出てくるな。
叩かれて当然の発言をしておいて、何が 「鬼の首を取ったみたいに」 だ。
鬼の首の鬼にすらなれていない事に気付け。
>>ALL
773 :
デフォルトの名無しさん :03/01/27 03:27
774 :
デフォルトの名無しさん :03/01/27 08:35
Visual Basic6.0で外部DLLなしで Outlook に依存せずにメールって送れないんですかね? Winsockがどうとかってことらしいんですけど、 使いこなせないもので。 どなたかご教授お願いします。
>>774 Socketは使えるっしょ。
厳密に言えば外部DLLが無ければVBプログラムは起動すら出来んが。
厳密に言えば外部DLLが無ければすべてのWindowsプログラムは起動すら出来んが。
俺的には
>>757 みたいなレス期待してただけで
>>758 みたいに妄想たっぷりのレスされても、って感じ。
バグですかねじゃなくて仕様ですかねと書かなきゃいけないのか。あほらし。
そもそも断定なんてしてないっつーの。
>>769 さ、鬼の首を取ったみたいにって意味わかってないでしょ。実生活で恥かく前に調べときな。
こんな小さい事でわざわざ叩き入れられてもねえ。さらっと答えるのが大人でしょ。
ハンドルまで突っ込まれるとは思いもよらなかったよ。君、人間が小さいって言われた事無い?
>>618 の質問をしたものです。
皆さんのご協力のおかげで、かなりの力技ですが、ついにファイルを
取り出すことができました!本当にありがとうございました。
つきましては、汚いソースですが、一応他の方の参考になるかもしれないので
以下に記述します。
Option Explicit
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(lpvDest As Any, lpvSource As Any, ByVal cbCopy As Long)
Private Sub Command1_Click()
Dim b() As Byte
Dim buf As String
Dim db As DAO.Database
Dim rec As DAO.Recordset
buf = App.Path & "\tmp.mdb"
Set db = DAO.OpenDatabase(buf)
Set rec = db.OpenRecordset("テーブル")
If rec.EOF = False Then
If GetPSD(rec.Fields("画像"), b) = True Then
Open "c:\tmp.psd" For Binary Access Write As #1
Put #1, , b
Close #1
End If
End If
Call rec.Close
Set rec = Nothing
Call db.Close
Set db = Nothing
End Sub
<<ソース続き>> Private Function GetPSD(ByVal OleField As DAO.Field, ByRef b() As Byte) As Boolean Dim Arr() As Byte Dim Buffer As String Dim HeaderOffset As Integer Dim ArrBmp() As Byte Dim i As Long GetPSD = False ReDim Arr(OleField.FieldSize) Arr() = OleField.GetChunk(0, OleField.FieldSize) ' この辺がかなり強引 Buffer = "" For i = 0 To 15000 Buffer = Buffer & Chr(Arr(i)) Next i HeaderOffset = InStr(Buffer, "8BPS") If HeaderOffset > 0 Then ReDim ArrBmp(UBound(Arr) - HeaderOffset + 1) CopyMemory ArrBmp(0), Arr(HeaderOffset - 1), UBound(Arr) - HeaderOffset + 2 b = ArrBmp GetPSD = True End If End Function
>>777 > 俺的には
>>757 みたいなレス期待してただけで
何でこんなに荒れてるかわからないか?
状況判断もできないのか?
そういうレス期待していたのなら単に 「どうしてでしょうか」 のように書いて
おけば良かった。
それを事もあろうにあんたは 「バグですかね」 などと言い放った。
しかも回答があっても礼も言わない、指摘されても悪びれもしないばかりか、
なお煽りとしか思えないレスをつけている。
さらに、VB を普通に覚えていった人なら誰でもわかるような内容だった事も
加味している。
これでは荒れるなという方に無理がある。
>>780 まあまあ、傍観者氏が相当のDQNなのはよくわかってるから抑えて抑えて。
以降、謝罪以外のレスをしても恥なだけなのは明らかなんだから、生温かく見守ってあげようよ。
↑の方でリージョンの話が出てきたんで思いだした
FormにBMPはっつけて hDC取って
RGB(0,0,0)の部分をリージョンから消し去るDLL(API)があったなぁ〜
>>740 が言ってた様なことが出来るヤツ
自分で書いた絵の形がそのままFormの形になるのはビク〜リ ビク〜リ
783 :
デフォルトの名無しさん :03/01/27 10:47
今、Outlookの受信トレイのメールをアクセス2000のMDBに 取り込もうと、下のようなテストプログラムを作ってるんですけど、 送信日時がわかりません。送信日時の名前を教えてください。 お願いします。 m(_ _)m Option Explicit Sub ReadMail() Dim OLOOK As Outlook.Application Dim NameSpc As Object Dim fmail Set OLOOK = New Outlook.Application With OLOOK Set NameSpc = .Application.GetNamespace("MAPI") Set fmail = NameSpc.GetDefaultFolder(olFolderInbox) Debug.Print fmail.Items(1).CreationTime Debug.Print fmail.Items(1).ReceivedTime Debug.Print fmail.Items(1).To Debug.Print fmail.Items(1).CC Debug.Print fmail.Items(1).Subject Debug.Print fmail.Items(1).Body End With Set NameSpc = Nothing Set fmail = Nothing End Sub
>>777 >
>>769 さ、鬼の首を取ったみたいにって意味わかってないでしょ。実生活で恥かく前に調べときな。
えーと、普段つけいるスキが無くてくやしい思いをしていた相手を、たまたまやりこめれてはしゃいでる
様子、だったと思うんだけど、そうすると
>>769 は別におかしくも何ともないけど、
お前の脳内定義はどーなってんの?
別に誰もお前にくやしい思いは持ってないだろよ。
> こんな小さい事でわざわざ叩き入れられてもねえ。さらっと答えるのが大人でしょ。
言葉尻を取ってるのお前の方だってば。
いろんなレスの重要な部分をことごとく無視してんじゃん。
そんなんでもしかして自分は大人だとか言ったりするのか、おめでてーな。
そんなに大人が好きならハンドルも「大人」がお似合いだねw
またそうやって煽る・・・(;´Д`)
>>784 喧嘩やめれ。
教えてください。 お願いします。 m(_ _)m
>767=>770=>777
788 :
デフォルトの名無しさん :03/01/27 12:34
>>788 できました♪
ありがとうございました m(_ _)m
また、わからないことがあったら、お願いします。
790 :
デフォルトの名無しさん :03/01/27 12:39
拡張子regのファイルをダブルクリックしてレジストリに登録する処理を VBでやりたいのですが、例えば「c:\aaa.reg」を実行するにはどうやれば良いのでしょうか。
>790 Shell でも ShellExecute でもExでも。
793 :
デフォルトの名無しさん :03/01/27 12:58
Google ツールバーみたいな IE アドインを作りたいのですが、VB6またはVBNETで可能でしょうか? サンプルを探していたんですが、C++のものしかみつかりませんでした・・・
不用意にAGEてしまってすみません
VB2〜7まで色々あるからne
796 :
デフォルトの名無しさん :03/01/27 16:29
VB6で、Pictureオブジェクト(StdPicture)のデバイスコンテキストの ハンドルを取得するにはどうすれば良いのでしょうか? ピクチャーボックスコントロールに一回転送してからじゃないと無理?
>>796 IPictureインターフェースを使ってみるとか・・・?
VBでDirectDrawSurface7を使った半透明処理を3Dテクスチャーやデバイスコンテキストに転送->BitBlt And演算に頼らずにやる方法ってありませんか?
>>783 で、質問した者です。まだ、テストプログラムです。。。。
下のようになったんですが、わからないことだらけなんです。
それは、「送信者」、「送信者アドレス」、「受信者アドレス」、「ccアドレス」の名前です。
あと、参考になるサイトか、本かあれば紹介してほしいのですが。
よろしくお願いします。 m(_ _)m
Option Explicit
Sub GetMail()
Dim OLOOK As Outlook.Application
Dim NameSpc As Object
Dim finbox
Dim mail
Set OLOOK = New Outlook.Application
With OLOOK
Set NameSpc = .Application.GetNamespace("MAPI")
Set finbox = NameSpc.GetDefaultFolder(olFolderInbox)
For Each mail In finbox.Items
Debug.Print mail.SentOn
Debug.Print mail.CreationTime
Debug.Print mail.ReceivedTime
Debug.Print mail.To
Debug.Print mail.CC
Debug.Print mail.Subject
Debug.Print mail.Body
Exit For
Next
.Quit
End With
Set NameSpc = Nothing
Set finbox = Nothing
Set mail = Nothing
End Sub
>>798 Win2kとWin9xとではアプローチが違うだろうね。
Win9X(98以降)、Win2k(XP)両方で利用する予定です 何か方法ありますか?
>>799 送信者アドレス、ccアドレスは知らん。
他はオブジェクトブラウザでMailItemを調べたり、OutlookのVBAのヘルプでわかるだろ
>>802 なるほど!そうやるんですかあ。
ありがとうございました。 m(_ _)m
メールをテキストファイルに保存して取り出すのも試してみよう
何か荒れてるところに飛び込んだようで・・・ >766 にかかれているように、スクロールバーをつけてスクロールさせていくと、 でっかいPictureBoxの下のほうではPaintPictureが動いていないことが わかったんですよ。 ところが、これを違うマシンで今日試すと、どうもちゃんと描ける場合もあるかも。 グラフィックボードの関係なんてことありますかねぇ?
806 :
デフォルトの名無しさん :03/01/27 21:22
>774 俺作ったことあるよ。 結局、TCP/IPで自分で接続して、SMTPをしゃべればいいわけですからな。 VB TCP/IP ぐらいで検索してTCP/IPを使えるようにして、 SMTPをしゃべればよい。
>>804 ありがとうございます。
ちょっとやってみました。
確実にテキストファイルに落ちてきますね。
自分の参加してる組織のMLの投稿数が1万件近くあるんですよ。
それの整理にMDBを利用しようとしてるんです。
必要なのは、投稿日と投稿者と件名、内容くらいかなあって
思ってるんですけど、ちょっと検討してみます。
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
24時間受付 090−8505−3086
URL
http://www.h5.dion.ne.jp/~grobal/ メール
[email protected] グローバル探偵事務局
809 :
デフォルトの名無しさん :03/01/28 01:35
質問です。 VBからoo4oでオラクルに接続して ストアドを起動したときの処理時間って取得できますか? VBのタイマーを使うのではなく SQLPLUSコマンドのset timi onで計った時間を 受け取ることは可能でしょうか?
810 :
あのう・・ :03/01/28 10:52
アカデミック版って標準版と機能的になにが違うんでしょうか?
>>810 機能的には何も違わなかったような・・・
812 :
デフォルトの名無しさん :03/01/28 13:54
ウィンドウのサイズを変更中に網掛けの境界線が表示されるが これとまったく同じブラシで描画する方法を教えてくれ 無論 [ドラッグ中にウィンドウの内容を表示する] はオフでの話だ
>810 アカデミパックはライセンスが安く購入できるってだけ。 モノはいっしょです。
スマソ!自己レスになってしまったが
>>812 とりあえず背景を透過、前景を R2_NOTXORPEN にして
ブラシに 2x2 の白黒ビットマップを指定したらいい感じになった
R2_NOTXORPEN (vbNotXorPen と同じ?) の意味がよくわかっとらんが
見た目に問題ないので大丈夫なのだろう
815 :
◆IGEMrmvKLI :03/01/28 15:28
shell関数を使用して、win32コンソールアプリケーションをコールしているのですが、 コンソールアプリケーションの復帰値を受け取ることって、可能なんでしょうか? もし、不可能であれば、それに代替する関数など存在するのでしょうか? ご教授お願いします。
816 :
◆x2BppO9N.g :03/01/28 15:39
質問でつ。 PaintPictureで 幅500ある空間に幅100の画像を描きます。 で、残り幅400の空間が余りますよね。 その幅400の空間には、幅100の画像の一番右の1列を伸ばして描画したいです。 どういうコードになるのでしょうか。 画像処理苦手なんでチンプンカンプンだったり・・・。 お願いします。
>>816 その言葉の通りにコードを組めばできますよ。
818 :
◆x2BppO9N.g :03/01/28 15:49
>>817 それが出来ないから困ってるんですが・・・。
PaintPictureの引数の指定がよくわからん。
そこまで見えてるなら、もう 「ヘルプ嫁、そして試せ、出来るまで。」 以上の答えが帰ってくることは無い事も予想できんか?
>>818 何故PaintPictureかはわかりませんが・・・
pointで一番右のドットを読み取って、その色で一番右までLineを
引けばいいのでは?
821 :
デフォルトの名無しさん :03/01/28 16:01
vb.net でのツールボックスを使わないで印刷 する方法教えて。テキストオンリーで作りたいの。
822 :
デフォルトの名無しさん :03/01/28 16:04
823 :
VBの逆コンパイラ :03/01/28 16:06
あるって聞いたんですけど 本当ですか?
825 :
デフォルトの名無しさん :03/01/28 16:10
誤字だと思われ
826 :
VBの逆コンパイラ :03/01/28 16:31
ヒントは西城秀樹と言われましたが 意味がわかりません
828 :
815 ◆IGEMrmvKLI :03/01/28 16:42
>>824 さん、どうもありがとう出ス。
なんか出来そうなので、試してみまっす。
spy++起動しようとするとエラーがでて使えない(つД`)
830 :
デフォルトの名無しさん :03/01/28 20:30
>>829 俺も俺も。正確にはプロセスの情報を表示したらこんなんでて落ちる。
"0x00425a78" の命令が "0x0016c30a" のメモリを参照しました。
メモリが "read" になることはできませんでした。
ちなみに、最初に落ちたときは、プロセスの情報を更新していて、
そんでレジストリに起動して始めに表示する情報がプロセスになってて
起動した瞬間落ちてた。他ユーザからレジストリ情報もらって
始めに表示する情報をウィンドウにしたから、プロセスを見るまでは動く。
なお、Process Viewerも動かない。プロセスが一個も表示されない。
タスクマネージャ、tlistは動く。
なんでだろう?
831 :
デフォルトの名無しさん :03/01/28 21:13
age
832 :
デフォルトの名無しさん :03/01/28 21:28
VisualStudioInstaller を使っているのですが インストール時のODBCの設定の仕方がわかりません。 わかりやすくまとめてあるサイトとかあるでしょうか?
test
834 :
デフォルトの名無しさん :03/01/28 22:32
つまんねー
福笑いって知ってる顔使ってみんなでわいわいやらないと楽しくないよね。
837 :
デフォルトの名無しさん :03/01/28 23:26
VB6のヘルプには、Mac版に関する記述が時々あるけど、 結局β版も完成しなかったのかなあ?
838 :
デフォルトの名無しさん :03/01/28 23:45
>>837 今日、お客さんのところOffice2001 For Macってのを見た。
OfficeのVBAとかでは使われんのかな?
>>837 投資効果が到底期待できないと思われ。
(現在は言うまでもなく、たとえ6〜7年前の情勢でも)
840 :
デフォルトの名無しさん :03/01/29 12:21
よく分からないながら、Webなど見ながらテキストファイルを読んで、 リストに書き出す実験を行っています。 Open strFilePath For Input As #fNo Len = 32000 Do Until EOF(fNo) Line Input #fNo, s 'リストへの書き出し処理、その他 Loop Close #1 これは、なんだかうまく逝っている感じですが、 テキストファイルの指定行〜指定行の間だけ読む方法が分かりません。 一緒にカウンター変数廻して取得するので正解ですか?
>>841 間違っていないが、他にやりようがある、って感じの言い方ですが、
その辺詳しく教えて下さい。
843 :
デフォルトの名無しさん :03/01/29 18:47
SQLServer7との組み合わせで トランザクションをきる所(BeginTrans)で 「容量をこえていたため 新規トランザクションを 開始できませんでした。」 のエラーで落ちてしまいました。 毎回起こるわけではなく、 同じタイミングで同じ事をしても エラーになる場合とならない場合が あります。 何か分かる方居ましたら教えて下さい。 ちなみに「データ領域」や 「トランザクション ログ領域」には 十分な空きがありました。
844 :
デフォルトの名無しさん :03/01/29 18:56
昔DB2やってた時にそんなことがあったような ヘルプにコミットしてくださいだのなんだかいてた記憶が
>>842 全部まとめて読んでvbCrLfをデリミタにしてSplitとか。
>>830 あ〜、アドレスがちょっと違うけどまったく同じだよ。
ProcessViewerも、、ホントだ。表示されない。
前やったときは表示されたはず。
なんだろ。なんかのバグかな?
あ。 ためしにデバッグモード。 アセンブラなんかさっぱりわからんが、リスタート>ステップアウト ってやるとなんとか起動するぞ
848 :
デフォルトの名無しさん :03/01/30 00:49
Publicの2次元配列変数ってReDim出来ないんですかね? Privateだと問題なく出来るんだけど。 Excel VBAッス。
>>847 デバッグモードって、エラーってでてからキャンセルで行く奴?
俺は「プログラムをデバッグするためにはキャンセルをクリックしてください」って
でてからキャンセルを押したら同じようなエラーで落ちる。
VC上でやったら動く。でもプロセスのリストは表示されない。表示されなくない?
そうそう。キャンセルするやつ。 プロセス・・・ホントだ、これも表示されない。 あとスレッドも。 なんだこれは。EnumProcessesとEnumThreadWndPrcあたりの関数が使用不可になってるのか? もう一つ、SONY OpenMG JukeBoxも起動できない。 これもなんか関係あるのか? いずれも以前は問題なく使用できたんだが。
851 :
デフォルトの名無しさん :03/01/30 09:14
リソースファイルって、同じリソースIDで複数の言語を含むことができますよね。 これはシステムの言語と同じ言語のリソースが読み込まれるのだと思うのですが、 自分で意図的に読み込む言語を変更したいのです。 どのようにすればよいのでしょうか?
852 :
デフォルトの名無しさん :03/01/30 10:32
VBのTimer機能についてなんですが,以下のプログラムでは タイマーが間隔を刻んでいくごとにデータを再度読み込んでいるんでしょうか? タイマー間隔が50msにもかかわらず,かなり重くて実際50msで動いてるように見えません. 現在,ある物体の変位データを読み込んでその変位をピクチャーを使ってある時間ごとに 座標で表すことで,動画的に見させようとしているものです. さらに,これに加えて,もう2つ違う物体の変位を表し, そのときの物体の動きを波形としてグラフ化もしたいと思っています. これら全てをしてしまうとやはり重くなってうまく動画的に見ることができないんでしょうか? もし,間違いもしくは早く走らせる方法等の指摘があれば教えてください!お願いします. Private Sub Timer1_Timer() Dim Date(1, 10000) As Double Dim s1 i = 0 Open "c:\WINDOWS\デスクトップ\file1.txt" For Input As #1 Do Until EOF(1) (ファイルには,50ms刻みの変位データが入っています) i = i + 1 Input #1, date(0, i) Loop Close #1 Static t As Integer t = t + 1 Picture2.Move Mystr(0, t) - 9, -8.5 s1 = Picture2.Picture End Sub
>>852 50ms毎に再読込*10000行?してるそのデータはなんだぁよ
>>852 VBのTimer(=WM_TIMER)は
"最低[Interval]ミリ秒経過後にイベントを起こす"
動作をします、
"きっちり[Interval]ミリ秒ごとにイベントを起こす"
のは別の手段を使いましょう。
後者の処理を行うためには当然イベント内で[Interval]ミリ秒以内に処理を済ませる必要があるわけだが
855 :
デフォルトの名無しさん :03/01/30 12:07
<再送> SQLServer7との組み合わせで トランザクションをきる所(BeginTrans)で 「容量をこえていたため 新規トランザクションを 開始できませんでした。」 のエラーで落ちてしまいました。 毎回起こるわけではなく、 同じタイミングで同じ事をしても エラーになる場合とならない場合が あります。 何か分かる方居ましたら教えて下さい。 ちなみに「データ領域」や 「トランザクション ログ領域」には 十分な空きがありました。
856 :
デフォルトの名無しさん :03/01/30 12:07
>>852 あきらかに Timer1_Timer 内の処理時間が Timerのイベント発生間隔を超えていると思われ
あきらかに 50ms毎にファイルを開くのもどうかと思われ
あきらかに Picture2.Move より BitBld のほうが良いと思われ
あきらかに s1 = Picture2.Picture が何をしようとしているのか 分からないと思われ
>>852 先に全部ロードして・・
Dim dat(1 To 10000) As IPictureDisp
おい!!おまいら VB Timer を信用しすぎ APIで Timer の様にイベント(コールバック)を発生させるヤツがあったけど VB と API どっちが正確なんだろう... VB Timer の中で動いているのが API なのか? もしそうなら API 使っても結果は同じになってしまうが...
>>860 Timerの中で動いているのは当然APIだが・・・。
問題はTimerで使われているAPIの精度。
APIだから正確ってのはおかしいよ。
>>852 速い、というか正確なというか、そうしたプログラムを書くには、それなりの知識と技術
と、アイデアが必要なのだなぁ。VBというのはその辺を省略してぱっとプログラムが
書けるようになっているように思えるかもしれんが、ちょっと高度なことをしようと思うと
他の言語と大して差はないのだ。ていうか、それ以上に面倒なこともしばしば。
Timerイベントについては、以下のページに詳しい調査が載っているので参照すれ。
http://homepage3.nifty.com/salv/v_sickhack/02/v_s02-01.htm 例えば、テキストよりはバイナリーの方がデータを速く読める。もちろんメモリ上なら
もっと速いが。グラフィックスの転送操作はBitBiltが断然速い。Timerイベントより、
timeGetTimeの方が正確だ。
あとは、ググるべし。
そもそもWindows自体がリアルタイムOSではない。 とある事象に対して決められた時間以内に応答する という保障はない。
852はMediaPlayerに代わる独自のムービイアプリを創りたいのさ
イベントどんぶり型だしな
ちょっと気になってHDDの転送速度を調べてみたけど 俺のは17MB/secでた。たぶん遅い方だと思うが。 つーことは転送速度だけを考えると17KB/msecぐらいはいくんだね。
根本的解決 変異データをいったん保存してからあとでムービーファイルを作ってそして再生したら? 変異データ取得後すぐに動画表示する必要ないならばだが。 というか保存してたのか・・・
>866 微妙に誤爆?
>>868 誤爆じゃないよ50msあったらどれくらい読めるか疑問になっただけ。
時間が必要なのはHDD読み込みだけじゃないのは分かってるからつっこまなくてOK
>869 事前にメモリに読んでから再生はじめりゃいいしな 読み込んでる間は動画止める!NowLoading・・とか書く!
871 :
デフォルトの名無しさん :03/01/30 22:08
すいません、 ?val(&HEFDBD075) これを負数じゃなく正数で出したいんですが だれかやり方を教えていただけませんか?
あの、誰か答えてもらえませんでしょうか
874 :
デフォルトの名無しさん :03/01/30 22:45
WebBrowserコントロールに表示してあるページのTEXTAREAに値を入れること って可能でしょうか。 可能でしたらどんな方法でやれば良いか教えてください。お願いします。
875 :
デフォルトの名無しさん :03/01/30 23:39
>>851 Google「VB リソース ストリングテーブル」
877 :
デフォルトの名無しさん :03/01/31 06:26
VBで「ネットワークドライブの割り当て」って出来ますでしょうか。 Pathとドライブレターを渡して、それをマウント、みたいな。 あれば、手法をご教授願いたいです。 よろしくお願いします。
>877 素直にNET USEじゃダメかい? Windowsコマンドリファレンス参照。
>>877 WNetAddConnection2()
880 :
デフォルトの名無しさん :03/01/31 10:22
便乗みたくなりますが、 ローカルPCからサーバ機のハードディスクの 「残り容量/全容量」みたいなのを出したいのですが、 どのAPIを調べたら良いでしょうか。
なんでスレたいのモナーは色っぽいのでしょうか?
過去に作ったVBプログラムのソースをあさっていたら こんなの出てきた。。。なつかしぃ。。。 ヒヒヒヒヒ【ひひひひひ】[感] 西鉄バスジャック事件を起こしたネオむぎ茶の最後のメッセージ。 この書き込みがされた約1時間後、バスジャック事件がおきた。 ネオむぎ茶が立てたスレは現在は見られないが、次のようなものだった。 ----------------------------------------------------------------- >佐賀県佐賀市17歳・・・。 >1 名前: ネオむぎ茶 投稿日: 2000/05/03(水) 12:18 > >ヒヒヒヒヒ ----------------------------------------------------------------- メール欄には本人のプロバアドレスが書かれており、事実上の犯行予告だったと言える。 スレが立った直後には放置されていたが、 事件がニュースで取り上げられると関連が取りざたされ、 犯人が佐賀市の17歳の少年だと報じられると蜂の巣のような大騒ぎとなった。 蛇足だが、この日の2ちゃんねるは本当に重かった。 参照:ネオむぎ茶、西鉄バスジャック事件
>>882 お前はソースコードにそんな訳のわからんことを記述していたのか?
あらら、ネタでログ流されちゃった。。
>>882 コピペしたいだけだろ。
ゴッツ迷惑!
>>885 サーバー機に容量返すサーバーアプリを常駐させる。
便乗みたくなりますが、 ローカルPCからサーバ機のハードディスクの 「残り容量/全容量」みたいなのを出したいのですが、 どのAPIを調べたら良いでしょうか。
>887さんは2ちゃんねるあらしさんですか? 書き込む前にSG(セキュリティー・ガード)に登録しないと危険ですよ。 SGに登録せずに書き込んだ場合、 あなたのパソコン内の情報が他人に見られる恐れがあります。 初期の頃から2ちゃんねるにいる方達は かなりのスキルとこのBBSのコマンドを知っています ですから簡単にあなたのIPアドレス等抜かれ、住所まで公開された人も数多 くおり 社会的に抹殺されてしまう。それが2ちゃんねるの隠れた素顔でもあります SGしておけばまず抜かれるコマンド自体が無効になってしまうので どんなにスキルがある人でもIPアドレスを抜くことが不可能になります SGに登録する方法は、名前欄に「 fusianasan 」と入れる。 これでSGの登録は完了します。 一度登録すれば、電話番号を変えない限り継続されます。 fusianasanは、正式にはフュージャネイザン、 又はフュジャネイザンと読みます。 元々はアメリカの学生達の間で、チャットの時に セキュリティを強化する為に開発されたシステムです。 fusianasanを掲示板に組み込むのは結構面倒なのですが、 2ちゃんにカキコしてたらウィルスに感染したとか、 個人情報が漏れた等の抗議がうざったくなったひろゆきが、 仕方なく導入しました。 悪意のある人間にクラックされる前にSGを施す事をお勧めします。
./ 〜 〜 ./ 〜 〜 " / 〜 ┃ 〜 〜 ┃" / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 〜 ∧∧ < 思った以上の大物が! ( ) .\  ̄ ̄ ̄ ̄(__) ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | ̄ ミカン  ̄| U
便乗みたくなりますが、 ローカルPCからサーバ機のハードディスクの 「残り容量/全容量」みたいなのを出したいのですが、 どのAPIを調べたら良いでしょうか。
>>875 調べてみましたが・・やはりわかりません。
ストリングテーブルに
1xxxx =日本語
2xxxx =英語
っていう風にしてたのですが、そんなことをしなくても
日本語も英語も同一のIDでもシステム言語によって読み込まれるリソースが
異なるようなので、
それを自分で意図的に変えたい、というわけなのですが・
./ 〜 〜 ./ 〜 〜 " / 〜 ┃ 〜 〜 ┃" / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 〜 ∧∧ < 思った以上の大物が! ( ) .\  ̄ ̄ ̄ ̄(__) ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | ̄ ミカン  ̄| U f
893 :
デフォルトの名無しさん :03/01/31 14:23
VBSで質問で書き込みしました。 ご存じの方がいらっしゃいましたら教えて下さい。 HTMLファイル内でASPファイルを読み込んで、 ASPファイル内でResponse.writeで文字を表示させたり、 ファイルの読み書きやループ処理などは出来るのですか? HTMLからCGIの場合は<!-- exec cmd=xxx.cgi -->って感じに出来るようですが・・・。
>>893 >HTMLからCGIの場合は<!-- exec cmd=xxx.cgi -->って感じに出来るようですが・・・。
これ、SSI
895 :
デフォルトの名無しさん :03/01/31 14:26
>>894 CGIではなくSSIでしたね。
けど、同じような感じにASPでは出来ないのでしょうか?
>>895 少なくともブラウザでASPが解釈出来るなんて事は聞いたことがない。
サーバサイドなら両者を分離せずにASPとして書けばいいわけで。
897 :
デフォルトの名無しさん :03/01/31 14:33
>>896 無理そうですか・・・。
私のイメージではASPファイル内でサイトのカウンタの処理がしたくて、
今はMETAタグでindex.htmlからindex.aspに自動で飛ばしてやっているのですけど、
i-modeなどの携帯端末ではMETAタグとか使えないので、
それで1ページ通らなくてはならないのが邪魔な感じでしたので、
一発(1ページ)で何とかならないかなぁと思っていたのですよ・・・。
>>897 index.aspをスタートページにしちゃだめなの?
899 :
デフォルトの名無しさん :03/01/31 14:41
>>898 できればしたくないんですよ。
「
http://xxxxxxxxx.com/i/ 」って感じにURLをしたいのです。
最初のページがindex.aspの場合は、
「
http://xxxxxxxxx.com/i/index.asp 」って感じに
URLが長くなっちゃうのが分かりづらいし嫌なのですよ・・・。
相手にURLを教える時に長いと迷惑かけちゃうし、
ASPって何っていう人ですと、なかなか覚えづらい感じもありますから。
なので、何か対策があればいいかなぁと思っていました。
無理そうでしたらカウンタを排除する形にすれば何とかなりますからね。
けど、どれぐらいアクセスされたかは把握できないのが難点ですが・・・。
何度もアドバイスをいただきありがとうございました。
>>899 IISの設定でどうにでもできると思うけど
>>899 ASPさわらせてもらえるならIISの設定もいじれるっしょ。
902 :
デフォルトの名無しさん :03/01/31 14:48
>>900-901 ちなみに私はあるレンタルサーバー会社さんからエリアを提供して頂いて
ホームページの運営を行っているのですが、その場合にも設定は出来るのですか?
自分個人持ちのPCでしたらIISの設定が出来ますが、
他の方と共有して1ユニットを使っている場合でも可能なのでしょうか?
もしご存じでしたら教えていただきたいのですが・・・。
904 :
デフォルトの名無しさん :03/01/31 14:52
>>903 了解しました。
さっそくメールで問い合わせてみます。
いろいろとご迷惑をかけてごめんなさい。
905 :
デフォルトの名無しさん :03/01/31 14:54
906 :
デフォルトの名無しさん :03/01/31 17:20
話が抽象的過ぎて分からないかもしれませんが、、 VBでインターフェース部分のみ構築してメイン処理はVCで作ったDLLで処理させる、という設計にしたのですが その受け渡しの部分で何か問題があるようでうまく行きません エラーとしては”スタック領域が不足してます”と出るんですが そのエラーの出る部分がDLL関数のcall文のところでして やろうとしてる処理はまずVB側で画像をピクチャーボックスに読み込む ↓ その画像の縦横それぞれのサイズを記憶する ↓ DLL関数へ引数としてそのピクチャーボックスのデバイスコンテキストと記憶した縦横サイズを渡す ↓ DLLは受け取った画像の全画素をRGB別に配列に保存し その各配列に対して画像処理をする という事なんですが、どーもDLL側で確保する配列の大きさが問題なような気がするのですが (確保する配列サイズが小さいとエラーにならなかったので) たかだか1024(縦)*1024(横)*3(RGB)の配列作るだけでエラーになったりするものなんですか?
>>906 斜め読みだが、VCのDLL内部でエラーが出てるならスレ違いでは?
VCスレで質問しなおすことをオススメする。
>>906 似たようなソフトはこの間つくりました。
そんなエラーはでませんでしたが、、、
とりあえずnewなどを使って動的に確保してみては?
>>908 >似たようなソフトはこの間つくりました。
だからどうかしたか?
>>906 int a[1024*1024*3];
ってやったらスタックオーバーフローになったよ
>>906 int *a;
a=(int *)malloc(1024*1024*3*sizeof(int));
だと、問題なかったよ
>>906 その配列をスタックに入れればあふれるような気がしないでもないけどなんともいえない変な気分
みなさん、どうも
確保した配列は
int a[1024][1024][3];
というコーディングの仕方です
>>910 >>911 確保してる領域の大きさは同じなのに後者はOKなんですね、不思議
>>907 そうでしたね、VCスレにも聞いてみます
>>914 おぃおぃ
本気でいってるのか?
Cを勉強しなおしてください。
え?なんか基礎の基礎を私は知らなかったようですね、ヤバい、、、、 私の中でその二つの違いの認識は 確保の仕方が静的か動的かってことだけです、無知ですいません
919 :
デフォルトの名無しさん :03/01/31 19:19
Outlook2002上のVBAでメールのヘッダ情報を取得したいのですが、どうすればいいのでしょうか? 一応、ヘルプでMailItem オブジェクトのプロパティをひととおり見たのですが・・・、 その中にはない模様です。。。。 (たとえば「X-mag2ID:012356789」があったら、その10桁の番号を取得する、 といったことをやりたいと思っています)
920 :
デフォルトの名無しさん :03/01/31 20:10
なんでスレタイのモナーは色っぽいの? おもわずこっちまでハァハァしてしまいます。
921 :
デフォルトの名無しさん :03/01/31 21:31
初心者なんですが、質問します。 LAN内で、コンピュータ名(or IPアドレス)のわかっている端末にログオン しているユーザー名をVBで取得したいのですが。 DOS窓から「nbtstat -a」でも一応いけるようですが、これだとどうしても 反応が遅くなるし、あまりスマートでないので・・・。 いい方法ないでしょうか??
922 :
デフォルトの名無しさん :03/01/31 21:36
>>921 マジレスだがWindowsScriptingHost少し勉強してみるとか。
923 :
デフォルトの名無しさん :03/01/31 21:41
アドバイスをお願い。 小生、Accessなどという高級品をもっておらず、しかも VB6.0はスタンダードエディション。Data Environmentがない。 ところがデータベースの勉強をしなくてはなくなり、 Accessのようなソフトが欲しくなりました。 なにかないすか?
924 :
デフォルトの名無しさん :03/01/31 21:44
925 :
デフォルトの名無しさん :03/01/31 21:47
なんでスレタイのモナーは色っぽいの? おもわずこっちまでハァハァしてしまいます。
>922 今しがたWindowsScriptingHostというものを初めて聞きました。 さっそく軽く見てみましたが、VBSとどう違うのでしょうか? WindowsScriptingHostを使うと nbtstat -a みたいなことも 簡単に出来るのでしょうか? 聞いてばっかで何ですが。
927 :
デフォルトの名無しさん :03/01/31 21:48
PostgreSQLでいいじゃん。タダだよ。
>>926 拡張子vbsのもWSHの一つ。
WScript.NetworkとかUserNameとか調べてみ。
>>927 Windowsで動くのか?(cygwinのような技術を使用せずに)
>>929 cygwinに何か問題があるんですか?
931 :
デフォルトの名無しさん :03/01/31 22:42
VB6.0でラベルやテキストボックスに表示されている文字の色を一部だけ変えたり その一部だけクリックされたことを見分けて処理したり(HTMLのリンクみたいに) することはできますか?
>>929 知っての通りcygwinはただのUNIXライクなシェルとコマンド群。中身はWin32だ。
>>931 むりでしょ。
リッチテキスト使えばいいのかな?
場所は座標から求めるしかないと思うが詳しくは
>>933
あ、俺か?
935 :
デフォルトの名無しさん :03/01/31 23:08
>>931 一部というのは文字単位なのかドット単位なのか。
どっちみち一部クリックを判別するなら、PictureBoxで
両方可能。ハイパーリンクもShellExecuteでクソ簡単。
>>933 という一つのレス内で無限ループが起こっている。
>>936 再帰って言うんですよ。この場合そのうちスタックが溢れて落ちます。
939 :
デフォルトの名無しさん :03/01/31 23:27
フルスクリーンモードにして起動したいのですが、どうすればいい?
>>939 DirectXを使って?使わないで?
解像度はそのまま?変更して?
941 :
デフォルトの名無しさん :03/01/31 23:29
>>940 DirectXを使用して、解像度をそのままで、フルスクリーンにしたいです。
ControlBoxをFalseにして最大化じゃだめかい。
943 :
デフォルトの名無しさん :03/01/31 23:35
>>942 最大化じゃなくて、フルスクリーンにしたいのです。
>>923 GUIのないDBを扱うのは初心者には無理です。
素直にACCESSを買って、MSDEを勉強しましょう。
>>943 SetWindowPos でTopMostでもすりゃ、望みの物になる気もするんだがなあ
>>933 ,935
お答えありがとうございます。
一部というのは文字単位のことでした。
お二方のくださったヒントでさっそく検索してみたいと思います。
助かります。
>>919 にレスがないのは、
やはり、メールのヘッダの任意の行をとらえることは、できないってことでしょうか?
それともそもそも、OutlookでVBAやるやつなんて、いないってこと?
950 :
デフォルトの名無しさん :03/02/01 03:19
ウィルスの作成には協力できないってことじゃない?
"2003/02/31"(2月は28日か29日まで) のような存在しない日付文字列を CDateするとどおなってしまうのでしょうか?
955 :
デフォルトの名無しさん :03/02/01 09:54
WINDOWS98でインストールできるVBはありますか?それとその購入方法を教えてください。
本モノダモノ マジで(汗
>>955 ・どれでもインストール出来る。
・電気店逝け。近くにないならヨドバシドットコムとか。
959 :
デフォルトの名無しさん :03/02/01 10:32
VBでなにか作ってみたいのですが何かオススメありますか? もう春休みなんで時間はそれなりにあります。
960 :
デフォルトの名無しさん :03/02/01 10:35
>>958 Visual Basic .NET Standard もWINDOWS98にインストールできますか?
>>959 データベースに繋ぐ練習しる。
>>960 正直、ウザい。
なんでMicrosoftのホームページに逝かない?
どうもです!
963 :
デフォルトの名無しさん :03/02/01 10:44
初心者ですみません。VB.net standardしかオンラインショップでみつからなかったので。
964 :
デフォルトの名無しさん :03/02/01 10:55
いまさら、VB6.0の仕事をする羽目になった。 プログラム設計からやらなきゃいけないんだけど、モジュール分割とか、見当がつかない。 みなさん、VBの設計はどうしてますか? いきなり、フォームにGUIを配置して、コーディングですか?
965 :
デフォルトの名無しさん :03/02/01 11:03
>>964 マジレスすると、とりあえず作れ。
作った後に、沢山のフォームで使われている関数があったら
モジュールに書き直してフォーム上では呼び出すようにしる。
とりあえずやれ
967 :
デフォルトの名無しさん :03/02/01 11:07
>964 漏れも層は分けて作る。 慣れてきたら、何をどこに書くのかはすぐわかる。
漏れもとりあえず作るね。 早く作るのがVBの唯一の利点だから。
>>965 -<<967殿
レスありがとう。
取り組む勇気が出ました。やってみるというのと、慣れるということですね。
まずは、作りながら設計というのが近道みたいですね。
>>968 楽に作れるからこそ設計にこだわる時間もある。
まぁ、使い捨てプログラムしか書かない使い捨てプログラマには理解出来んだろうけれど。
972 :
デフォルトの名無しさん :03/02/01 11:29
>970 超正論なんだが、964はVBを理解して無いレベル。 効果的なプログラム設計自体が現状では無理。 となると、VBに慣れるしかない。 慣れてくればおのずと970の言うとおりの手法に代わってくるであろう。
そしてまた、VBはダメだといい始めるヤシが一人増える訳か・・・
VBはダメだ。
>>972 今までコンソールでCOBOLとLISPやってました!とかならともかく、多少なりともWindowsで
プログラム組んだことあるならイベントドリブンくらいわかるっしょ。言語仕様もCでも知ってれば
後は適当に文法を読み替えれば良し。
あんまりこだわるSE嫌い
>>930 Cygwinを使うくらいなら素直にLinuxを使った方がいい。
>>972 さんの言う通り。
VBを理解していません。VBで、効果的な設計ができるようになるには、
ある程度の下積みが必要と理解しました。
最初はコードが汚くても良いから、やって見る事。
ただ汚いままでは、いけなくて、効果的な設計ができるよう努めることが
大切なのですね。
>>977 ハァ?
俺より優れたSEなんていないが
985 :
デフォルトの名無しさん :03/02/01 13:19
>979 その通り。少しずつでもガンガレ。
986 :
デフォルトの名無しさん :03/02/01 13:20
>>987 残念ながらはずれだ。せっかく勝てると思ってたのにな。
なんでスレタイのモナーは色っぽいの? おもわずこっちまでハァハァしてしまいます。
モナーじゃない! ただの顔!
いつもこのスレを見るたびにオナニーしてしまいます。 ホントに困っています。
(:.;゚;Д;゚;.:)ハァハァ
ところで CDateの答えをぷりーず
995 :
デフォルトの名無しさん :03/02/01 16:11
俺はVB厨だがC++を勉強中だ。 もう暫くしたらVC++厨に進化する予定なのであ〜る。 VBでも出来る事は沢山有るが、C++も楽しいぞ〜〜〜。 いや、マジで。
Schemeの方が楽しいよ。
(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ
(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ
(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ (*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ(*´д`*)アハァ
1000 :
デフォルトの名無しさん :03/02/01 16:21
あ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。