(*´д`*)アハァ… VB初心者質問スレ Part14(2ちゃんねる)

FTP、CGI、SSI、telnetが自由に使える超高速レンタルサーバ。
工夫しだいで、楽しさ100倍。 www.binboserver.com
月額千円サーバ | サブドメインコース | BIGなサーバ

サブドメインコース:CGIやFTPが使いたい・お金を掛けたくない人のために。
 *****.syo-ten.com *****.gasuki.com *****.zansu.com
 お好きな名前を無料で使えます。早い者勝ち。

人気サイト 月額千円サーバ:.com .net .org で取得できます。.JPドメイン大歓迎!
 超高速・高機能サーバを1000円で!使ってみれば、分かります。

BIGなサーバ:Big なBig なサーバー。充実したサポートをお求めの方へ。
 インターネットでご活躍の皆様へ、そしてご活躍予定の皆様へ。
2ちゃんねるは、このサーバを使っているです。

■掲示板に戻る■ ■過去ログ倉庫めにゅーに戻る■

(*´д`*)アハァ… VB初心者質問スレ Part14
1 名前: デフォルトの名無しさん 投稿日: 02/09/02 15:12
  Part 1 http://piza.2ch.net/tech/kako/968/968328471.html
  Part 2 http://piza.2ch.net/tech/kako/990/990793224.html
  Part 3 http://piza2.2ch.net/tech/kako/1000/10005/1000523122.html
  Part 4 http://pc.2ch.net/tech/kako/1006/10069/1006922992.html
  Part 5 http://pc.2ch.net/tech/kako/1010/10106/1010624646.html
  Part 6 http://pc.2ch.net/tech/kako/1013/10138/1013844542.html
  Part 7 http://pc.2ch.net/tech/kako/1015/10158/1015836357.html
  Part 8 http://pc.2ch.net/tech/kako/1018/10187/1018794901.html
  Part 9 http://pc.2ch.net/tech/kako/1020/10208/1020830472.html
  Part10 http://pc.2ch.net/tech/kako/1022/10221/1022127528.html
  Part11 http://pc.2ch.net/tech/kako/1024/10243/1024380249.html
  Part12 http://pc3.2ch.net/test/read.cgi/tech/1026642565/
  Part13 http://pc3.2ch.net/test/read.cgi/tech/1029241786/l50
Win32 API関連スレ
  Win32API 質問箱 Build4
  http://pc.2ch.net/test/read.cgi/tech/1023361418/
心得
壱.質問する前に過去ログにも目を通してみる。
弐.質問する前に MSDN などで調べてみる。
参.VBScript もこのスレでOK。
四.インストーラーなどの質問もOK。


2 名前: 961 投稿日: 02/09/02 15:13
今回はスレタイひねらなかったのね。


3 名前: 1 投稿日: 02/09/02 15:14
気の抜けたタイトルが気に入ってたのさ。


4 名前: デフォルトの名無しさん 投稿日: 02/09/02 15:16
乙カレー


5 名前: 前スレ961 投稿日: 02/09/02 15:16
前すれ998および、この>>2は私ではありません。
お気づきとは思いますが・・・


6 名前: 前スレ985 投稿日: 02/09/02 15:16
>>前スレ990
あ〜。昔VBでサービス作ったと思ったがなんか勘違いしていたかもしれん。
つーことで俺の発言は信用しないでくれ。
それはそれとしてTerminateイベントって本当に走るのか?
それとWinsockは参照設定することによりコントロールじゃない状態で使用できたはず。
それでうまくいかなかったらAPIだな。いやさっさとAPIにしてもいいが。


7 名前: 前スレ961 投稿日: 02/09/02 15:18
>>6
どのAPIを使えばいいのでしょうか?

APIビューアでWindowsockを探したのですが見つかりませんでした。


8 名前: 前スレ961 投稿日: 02/09/02 15:23
>>6
そのAPIを使ってみたいのですが、なんというAPIをどのように
使うのかがわかりません。初心者なもので・・・。
APIビューアでもそれらしきものが見当たりませんでした。
なにか少しでも簡単なヒントを頂けたら、お願いします。


9 名前: 前スレ961 投稿日: 02/09/02 15:24
>>7 も私じゃないのですが、質問がドンピシャなので良しとします(w


10 名前: デフォルトの名無しさん 投稿日: 02/09/02 15:28
>>本当の前スレ961
MSDNライブラリでWinSockとかWindows socketsとかWSA〜で調べれ。
ドキュメントが英語であっても読め。
それでもわからなければGoogleでも使え。


11 名前: デフォルトの名無しさん 投稿日: 02/09/02 15:30
VBでサービスを作るの?
やめといたほうがいいよ。CallBackが基本だから、デバッグしづらいし。
少なくとも初心者には無理。Cを覚えたほうが早い。
オートログオンにしてスタートアップにEXE入れとけ。


12 名前: 前スレ961 投稿日: 02/09/02 15:31
>>10
え、英語ですか・・・。
はい、やってみます。いろいろありがとうございました。


13 名前: 前スレ961 投稿日: 02/09/02 15:36
>>11
サービス化はツールを使っています。
他のアプリはそれで問題なく動いています。
たしかに良いとはいえない手法ですが・・・。


14 名前: 前スレ961 投稿日: 02/09/02 15:46
>>9
お前をDQNに見せようとしてああいう質問をしたんだが・・・。
ってことはお前は俺が想定するDQNと〃レベルと言うことか。ダメじゃん。
もっとがんばりな。


15 名前: デフォルトの名無しさん 投稿日: 02/09/02 15:50
>>14
俺はお前が質問しなかったら9もあんな簡単な質問する気はなかったと思うがな。
結果的に961はDQNに見られることなく情報を手に入れることができてしまったわけだ。
オツカレ。


16 名前: デフォルトの名無しさん 投稿日: 02/09/02 15:53
>>15



17 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:07
>>15
"DQNではあるが、情報を手に入れた"だろ。


18 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:10
>>17
検索下手、英語が読めない、結局理解できない(有力)、などの理由で帰ってくるに一票。



19 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:11
下の様に二重起動をチェックするように組んでみたのですが、

Private Sub Form_Load()
  '二重起動チェック
  If App.PrevInstance Then
    Call MsgBox("このシステムはすでに起動しています。", vbCritical, "エラー")
    Unload Me
  End If
  
  ・・・通常時処理・・・
End Sub

EXEを作って二重起動してみると、思惑通りエラーが出て、
勝手に閉じるまでは良いものの、フォームは見えないのにジョブは終了していなくて、
Ctrl+Alt+Delで終了させています。

通常なら「Unload Me」で閉じるのですが、何がダメなんでしょうか。


20 名前: 15 投稿日: 02/09/02 16:19
>>17
そうだね。最初の段階では情報を手に入れられそうもなかったのに。
961を上回るDQNのせいで。


21 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:20
>>20
もしかして>>961さんですか?



22 名前: 15=20 投稿日: 02/09/02 16:22
>>21
違います。


23 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:24
>>19
コントロールとか,クラスとかが残っているんじゃねーの


24 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:24
>>22
そのDQNとやらを目の敵にしてあなたにはメリットがあるの?
上司とか?


25 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:26
>>19
それ、Unload Meのあと通常時処理を行っちゃってるよ。


26 名前: 23 投稿日: 02/09/02 16:26
追記。

Unload me はFunctionの終わりまで実行されるから。
関数終了後、Unload処理を行なう。


27 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:27
VBAはスレ違いですか?


28 名前: 15=20=22 投稿日: 02/09/02 16:29
>>24
は? なに必死になってるの。あなたがDQNですか?
俺は961ともDQNとも関係ないよ。どうでもいいことじゃん。



29 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:30
>>28
>>961と関係は分からないが、DQNとの関係は微妙だな。


30 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:30
>>28
理由がなければそこまでムキになることも無いでしょうて。
関係なくてどうでもいいならなぜわざわざ961をかばいDQNを責めたのかがわからない。
純粋に理由が聞きたいだけですよ。



31 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:30
自分はあんまりパソコンを頻繁にはやらないんですが、
この前新しいCDゲームを買って、ゲームをパソコンにインストロールしました。
そうしたら、ディスクトップにショットカットが出来ていたのですが、
翌日そのショットカットをクリックしてもゲームがスタートアップしなくなりました。
インストロール直後にはスタートアップしたのに、WHO?(←英語でなぜって意味です)



32 名前: 30 投稿日: 02/09/02 16:31
>>31
ワラタ。


33 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:32
>>31
どうせ「WHO?(←英語でなぜって意味です)」につっこんでほしいだけなんだろ?
神聖なVBスレにくだらねぇこと書くんじゃねぇよ。


34 名前: 15=20=22=24 投稿日: 02/09/02 16:34
>>30
面白いやつだなぁ。どこがムキになってるんだ?
俺は一連の話の流とDQNの行動が面白かったからからかってるだけじゃん。


35 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:35
>>34
必死すぎ。ワラタよ。



36 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:36
      / 
                         /   _
         /◎)、_______∠l /   /○ヽ
          |  「....;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;| |,,.   ` -_´/
    .彡⌒ー/|  \___;;;;;;;;;;;;;;;;;;;;;;| |;;;;,   "    i ̄ ̄i
      /´⌒ヽ_____\ ̄ ̄ ̄ .|;;;;;;,      /    ゙、
    ,/´    ! ヲ=℃/ ̄      |;;;;;;;;,     /_,-..‐..-、_゙、
   /_レ‐ー――‐" ̄ ̄)         ヾ;;;;;;;;,,,..  /':::::::::::::::::::::`i
  /    __   r'~ ̄            ヾ;;;;;;;;;;;;,,,.トー――――-!
 /       _)               ヾ;;;;;;;;;;;;;;,,,,....
 |     、  ノ                 ヾ;;;;;;;;;;;;;;;;;;;;;;;;;,,,,....
 ゙、;;;,,..    ̄"                   );;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.......       



37 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:36
987 名前:デフォルトの名無しさん 投稿日:2002/09/02(月) 14:40
>>961 = >>177

が気に障った>>177だったりしてな。



38 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:37

>>31>>33はグルーピング?(←英語で一緒って意味です)

インストロールしたゲームのピロッピーディスクが
デスしてたんだよきっと。YES!


39 名前: 33 投稿日: 02/09/02 16:38
>>38
ちげーよ。ふざけんな。



40 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:39
>>35
気が済んだか。


41 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:40
なぜにいまさらVBなのですか?
あれほどユーザ環境への依存度の高いお遊び言語に
なぜにそこまで熱くなれるの???
神聖なVBスレだって(プッ
いくらVBの知識をひけらかしてふんぞりかえっても、
人間としてのレベルは高まりませんねぇ。


42 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:41
>>40
気が狂いました。


43 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:42
>>41 とりあえずこれは放置ですな。


44 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:42
>>41
2点。スレが詰まんなくなった。


45 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:42
>>41
VC++然りだな。

って言うかあんたの言う「ユーザ環境」って何を指すわけ?


46 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:43
>>41
しかも既に発売終了。


47 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:43
つうか放置放置


48 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:56
Win98se、VB5、アクセス97で開発しています。

この度WinXP、アクセス2002のマシンに作ったプログラムをインストールしました。
そして実行すると「MSJET35.DLLが見つかりません。」というエラーが出ました。
この場合単純に「MSJET35.DLL」をインストール対象のマシンにコピーするだけでいいものでしょうか?
同じような経験をした方などいらっしゃいませんか?



49 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:58
イマドキ・・・と思ったけど、ユニクロ買ったと思ってとやったらマジすごかった。
これはだましじゃないよ。

■参加方法(このゲームのしくみ紹介含む)■
1、まず、下記4人の口座に¥1000ずつお金を振り込んでください。(銀行の自動振込機で振り
込みます。4人の口座部分を印刷して行くと楽です。)
2、次に、このメールをそのまま使って(編集は自由ですが)リストにある4つの口
座の一番上を削除します。そして一番下にあなたの口座番号を書きます。
  あとは、番号を上から順に振りなおします。(こうして順番に上の人が抜けてい
くので違法性はない、という弁護士の方の説明がありました。
3、それを、できるだけたくさんインターネットの掲示板のアドレスに送って下さ
い。受け取った人がどんどん同じように振り込んでくれます。最初の1週間で
  10件以上振込みがない場合はもうヒトフンバリします。
4、後は、現金¥1,000円が振込まれるのを待つだけです。
--- --- --- --- --- --- --- --- --- --- --- --- ---
※一番上の口座を削除するから、法律に触れないで済むのです。それだけは絶対に
守ってください。
※お金を送らないでリストに自分の名前を載せると、上位の人の振込み確認で訴えら
れたりいろいろな攻撃を受けてしまいます。良心を持って参加することで
 みなさんが同条件で収益を期待できるのですから。参加して2週間を過ぎたころか
ら平均して増加してきます。毎日がとても楽しくなる4千円のゲームに
 だまされたと思って今すぐ参加してみてください。すごい額になって返ってきま
す。そしてお金が途切れてきたら上記の行動を繰り返せばいいのです。
-------------------------------------------------------------
 ■リスト■

(1)高崎信用金庫 飯塚支店 普通 2172959
(2)群馬銀行 高崎支店 普通 1018272
(3)三井住友銀行 天満橋 普通 488044
(4)UFJ銀行 浦安パークシティ出張所 5381782


50 名前: デフォルトの名無しさん 投稿日: 02/09/02 16:59
VB6にて、「TIF」を画像表示させるプログラムを組みたいのですが、
ピクチャーボックスを試したら、エラーが出ました・・・。
ピクチャーボックスはTIF非対応なんでしょうか?



51 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:01
VBでトランプゲーム(ブラックジャック)を作ろうとしています。
トランプは全部で3セット分にしようと思っています。
山から引いたときに出てくるカードはランダムなのですが、
全く同じカードは3枚しか存在しないということになります。
(たとえばハートのAは3枚しか出てこない、といった感じです)
軽く、速く、を前提としたときに、どんなコーディングが最適でしょうか?


52 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:03
(*´д`*)アハァ…


53 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:05
>>50
MSDN読もうね

>>51
まずは自分で考えな


54 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:07
>>51
何を速くしたいのかさっぱりわからん。


55 名前: 51 投稿日: 02/09/02 17:09
すんません。質問した自分がドキュソですた


56 名前: 48 投稿日: 02/09/02 17:13
>>48もおながいします。。。。。


57 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:14
>>56
うるせーよ


58 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:15
今日は偽者ばっか。暇そうだな。


59 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:16
質問させてください。
環境 VB6.0SP5+Win2000

Oracle8iにADO(orDAO)+ODBCで接続し、ストアドプロシージャを叩きたいのですが、
どのようにしたらよいのでしょうか。


60 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:17
なんか馬鹿な質問している奴が同一人物に見えてくるなぁ。


61 名前: 48 投稿日: 02/09/02 17:20
マジで困ってます。
アクセス2002には「MSJET35.DLL」は含まれていないのでしょうか?


62 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:28
ギコナビってVB? かちゅーしゃは?


63 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:30
>>61
Jet35はとっくにサポート外


64 名前: 48 投稿日: 02/09/02 17:32
>>63
マジデスカ?(*_*)?
プログラムの作り直しと?


65 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:35
>>64
もしそれが仕事でサポート対象内なら地獄を見る気がする。
DAOからADOに変換。

つかまず、DLLをコピーしてみればいいだろよ。


66 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:35
サポート対象内とは、ソフトの方がね。


67 名前: 48 投稿日: 02/09/02 17:38
仕事でサポート対象内かも?ん?微妙。
とりあえずDLLコピーしてみます。


68 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:41
MSJETって新しいバージョンがなかったっけ?


69 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:42
>>48
>>61
ADO + Jet OLE4.0なら、Jet3.5形式のMDBも処理できるはず。
コードの大幅な変更は避けられないが・・・。
それを避ける意向なら、開発環境をAccess 2000または2002に移行してみては?
(参照DLLをDAO3.6に変更すれば、コードの変更は不要)


70 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:51
DLLコピーしてレジストリ登録すれば済むんじゃないの?


71 名前: デフォルトの名無しさん 投稿日: 02/09/02 17:57
>>70
ライセンスとかMSのサポートとか考えた上での発言?


72 名前: 48 投稿日: 02/09/02 18:02
すんません。
お客さんの都合でDLLコピーは今日は止めてくれと。明日試す事になりました。
なんだか不安を持ち越す感じです。


73 名前: デフォルトの名無しさん 投稿日: 02/09/02 18:19
>>71
コピーする方向で話が進んでるからそれを前提で書いただけ。
MSのサポート?何を言いたいのかよくわからん。もうちょっと具体的に


74 名前: 19 投稿日: 02/09/02 18:46
>>23>>25
ども。>>19です。
Unload Meの後にExit Subを入れたり、Unload MeをEndに変えたりしましたが、
どうも何か残っているようです…。うーん。


75 名前: デフォルトの名無しさん 投稿日: 02/09/02 18:50
>>74
FormのInitializeやTerminateでメッセージでも表示して調べてみれ。


76 名前: 19 投稿日: 02/09/02 18:58
>>75
ういっす、用事できまして、明日会社ででもやってみます。
センキュっす。


77 名前: デフォルトの名無しさん 投稿日: 02/09/02 19:01
>>19
>>74
そもそも、Form_Loadイベントで自フォーム自身をUnloadするのが不自然であり、
無理があります。
スタートアップを標準モジュールとして、そこで、最初に二重起動確認処理を
記述すれば、終了処理はEndだけで済み、何の問題も生じないはず。


78 名前: デフォルトの名無しさん 投稿日: 02/09/02 19:05
>>77
俺はForm_loadでUnload Meするのはそんなに不自然だとは思わんけどなぁ。
Mainを使ったほうがいいとは思うけど。


79 名前: デフォルトの名無しさん 投稿日: 02/09/02 19:10
>>78
オブジェクトの自殺って怖すぎると思うが。
気がついたらそのオブジェクトが無効になってるわけで呼び出し元はたまったもんじゃないかと。


80 名前: 77 投稿日: 02/09/02 19:13
>>77-79
意ずれにせよ、二重起動防止処理を一番最初に実行すれば、「その前に何をやっていたか」を
気にせずに済むのが、利点。
実際、77の方法で問題が生じたことは一度もない。


81 名前: 前スレ957 投稿日: 02/09/02 19:20
遅くなりましたが、
お答えくださった皆様、ありがとうございました(__)


82 名前: デフォルトの名無しさん 投稿日: 02/09/02 19:20
>>79
別にUnloadしてもオブジェクトが無効になるんじゃなくてFormがUnloadされるだけ。
Form_Initialize内で実行時エラーを出したらオブジェクトは無効になるがそれは呼び出し元で検出できる。
Form_Load内のUnloadも呼び出し元で検出できる。(Form_Load内でUnloadしたという実行時エラーになる)
Form_Load以外でのUnloadも参照を保持しておけば呼び出し元で監視することができる。
問題ないと思うが。


83 名前: デフォルトの名無しさん 投稿日: 02/09/02 21:36
激しくガイシュツ気味だと思いますが、
VBAでLINE INPUTを試みた所、テキスト全体を読み取ってしまいます・・・。

もしかしてTXT側の改行時に「\n」等を入れないと行けないのでしょうか・・・。


84 名前: デフォルトの名無しさん 投稿日: 02/09/02 21:40
googleは便利だよな。
あとHelpも便利だなぁ。

(*´д`*)アハァ…


85 名前: デフォルトの名無しさん 投稿日: 02/09/02 21:47
>>83
Line Input の "Line" ってどういう意味なんだろうね♥


86 名前: デフォルトの名無しさん 投稿日: 02/09/02 22:16
MMControlを使用して2つのexeでほぼ同時に再生命令した場合、
片方で再生が終わった後にもう片方で再生し始める、というように
Wavファイルを再生したいのですが
下記のような命令だと2つ目のexeの音声が流れません。
どのようにすればいいでしょうか?

<再生命令>
With MMControl1
.DeviceType = "WaveAudio"
.FileName = "C:\1.wav"
.Command = "Open"
.Command = "Sound"
.Command = "Close"
End With



87 名前: デフォルトの名無しさん 投稿日: 02/09/02 22:20
>>85
線ですよね!


88 名前: デフォルトの名無しさん 投稿日: 02/09/02 22:20
>>86
つぅかメッセージを送るとかもうちょっとまともな通信手段を考えろよ。


89 名前: 83 投稿日: 02/09/02 22:32
キャリッジリターンに当たる"\r"を行全部に入れてみました!!

・・・全行の最後に「"\r」の入ったテキストファイルが読み込まれますた!!

500個位生成してるのでダイアログボックスが鬱・・・。
(*´д`*)アハァ…


90 名前: デフォルトの名無しさん 投稿日: 02/09/02 22:39
・・・。

アフォでつか?


91 名前: デフォルトの名無しさん 投稿日: 02/09/02 22:44
>>89
ラインフィードって知ってるか?


92 名前: 83 投稿日: 02/09/02 22:45
ホンマにアフォに思えてきます。
もちっとヘルプORぐぐるで頑張ります・・・。

ファイルの読込形式が悪いのかと疑った時期も3分前にありました。
あまり迷走しないように頑張りたいです。


93 名前: デフォルトの名無しさん 投稿日: 02/09/02 23:21
つぅかマジで吹いた(w


94 名前: デフォルトの名無しさん 投稿日: 02/09/02 23:27
>>92
思う存分迷走しな。そうして得た知識が初めて身になる。


95 名前: 83 投稿日: 02/09/02 23:37
今日はそろそろ落ちますです。
>>84>>85>>87>>90>>91>>93>>94さん
付きあって頂いてありがとうございます。
ちょっと邪道かも知れませんが、明日、本もみてみます。
ラインフィードとキャリッジリターンについて、もちっと明日も
調べますです。

最後に>>94さんの言葉通り、迷走続けながらでも突破したいと思います。

それでは、スレ汚しすみませぬ。


96 名前: デフォルトの名無しさん 投稿日: 02/09/02 23:48
青春だな(ぷ


97 名前: デフォルトの名無しさん 投稿日: 02/09/03 09:11
>邪道かも知れませんが、明日、本もみてみます
なんで邪道なんだ?むしろ聞く前に読めって感じ


98 名前: デフォルトの名無しさん 投稿日: 02/09/03 09:15



99 名前: 投稿日: 02/09/03 09:52
>>87
プログラミングだけじゃなく、英語のセンスもゼロだな(プ


100 名前: デフォルトの名無しさん 投稿日: 02/09/03 10:03
>>99



101 名前: デフォルトの名無しさん 投稿日: 02/09/03 11:08
なんか路線が外れるのですが・・・
VBを起動させると、「MX見張り番」のインストールがどうのこうのと
毎回メッセージが出てVBの起動の妨げになっています・・・。
どなたか解決方法わかりませんか?


102 名前: デフォルトの名無しさん 投稿日: 02/09/03 11:10
>>101
ハードディスクをすべてフォーマットした上で、OSから再インストールすれば
すべては解決する(w


103 名前: デフォルトの名無しさん 投稿日: 02/09/03 11:33
>>101 そのソフトのアンインストール・再インストールしてみ


104 名前: デフォルトの名無しさん 投稿日: 02/09/03 13:09
すいまそん、ActiveXコントロールを自作したのですが、コンパイルすると
ツールヒントが出ません。
デバッグで実行させると、マウスポインタを置けばツールヒントが出てくる
のに(普通ならそうですが。)、コンパイルしてEXEで実行させると出ないの
です。ActiveXの設計自体にミスがあるのでしょうか。


105 名前: デフォルトの名無しさん 投稿日: 02/09/03 13:55
スクリプティングとプログラミングとオーサリングの開発手法の異同って何ですか


106 名前: 48 投稿日: 02/09/03 14:44
いちおう報告しておきます。

WinXPマシンのSYSTEM32フォルダにMSJET35.DLLをコピーしたらあっさり動きました。

とりあえず対処は完了という事になり、ほっとしました。
助言してくれた方ありがとう。


107 名前: デフォルトの名無しさん 投稿日: 02/09/03 15:00
>106
Office製品を使った開発はこの辺りがやっかいだね。納品した瞬間から
ものすごい勢いで陳腐化が始まる。まあ、裏を返すとMSのバージョンアップ
がものすごい勢いだってことになるけどね。


108 名前: デフォルトの名無しさん 投稿日: 02/09/03 15:13
異同? 宿題?


109 名前: 105 投稿日: 02/09/03 15:24
>>108
正解!!


110 名前: デフォルトの名無しさん 投稿日: 02/09/03 15:48
>>109
そんなのはメーカーが
これはスクリプティングツールだと言って売ればスクリプティングだし、
プログラミングツールだと言って売ればプログラミング。

そんなことより配列とポインタの違いを勉強してくれ。


111 名前: デフォルトの名無しさん 投稿日: 02/09/03 16:07
>>110
ポインタ? ここはVBスレなので参照と読み替えていいか?


112 名前: デフォルトの名無しさん 投稿日: 02/09/03 16:23
お前らオーサリングとはなんですか?


113 名前: デフォルトの名無しさん 投稿日: 02/09/03 16:45
>>104


114 名前: デフォルトの名無しさん 投稿日: 02/09/03 16:50
>>112
伝説の魔獣、オーサの角から作ったとされる指輪。

DF+1200 使用:敵一体にオーティムア 装備:味方に薄いバリアを張る。


115 名前: 110 投稿日: 02/09/03 16:54
じゃあ、Variantの配列とVariant配列の違いという事で。
いや簡単すぎるか。


116 名前: デフォルトの名無しさん 投稿日: 02/09/03 20:43
>>115
>Variant配列
いいたいことはわかるが、それはきみのオリジナル用語。



117 名前:◆ZKkSDatc 投稿日: 02/09/03 21:28
VB6で、ペケピーProな環境です。
最近は外部アプリケーションの遠隔操作とか好んで学んでるんですが
Windowハンドルの取得の部分でいまいちやりかたのわからない部分があるのです。

やりたいことというのは、
とある親Windowの子Windowを列挙して、その中からひとつのテキストボックスのハンドルを調べたいのです。
問題点1 列挙する際に、GW_CHILDでひとつめの子を取ってから、GW_HWNDNEXTで回しているのに
      全ての子Windowが列挙されない。
問題点2 特定のテキストボックスのハンドルを調べたいのだが、テキストボックスは同じクラスネームのものがいくつもあって
      どれが調べたいテキストボックスなのかさっぱりわからない。

解決方法とかあったらよろしくお願いします・・・


118 名前: デフォルトの名無しさん 投稿日: 02/09/03 21:31
>>117
外部アプリケーションっててっきり分散処理とかやってると思ってどきどきしたよ。


119 名前: デフォルトの名無しさん 投稿日: 02/09/04 09:57
英語の得意なプログラマはVBを選択する


120 名前: デフォルトの名無しさん 投稿日: 02/09/04 10:07
>>119
>プログラマは
ここに語弊


121 名前: デフォルトの名無しさん 投稿日: 02/09/04 10:26
VBプログラマはVBが高級言語だと言われてうれしい気分になれる


122 名前: デフォルトの名無しさん 投稿日: 02/09/04 11:40
しかしそういう香具師は高級言語の意味を知らない


123 名前: デフォルトの名無しさん 投稿日: 02/09/04 11:47
こんにちはです。

VBで、Word等のアプリケーションを開いて、
Word等を閉じずに、実行した場合エラーになります。
同一ファイル名なので、エラーになると思うのですが、
そのアプリケーションファイルが開いているかどうかの
判定方法ってどうすればよいのでしょうか。

よろしくお願いします。



124 名前: デフォルトの名無しさん 投稿日: 02/09/04 11:50
On Error GoTo


125 名前: デフォルトの名無しさん 投稿日: 02/09/04 15:36
VBから帳票を出すのにExcelでやってみようと思うのですが、
参照設定に「Microsoft Excel 8.0 Object Library」を入れて、
下のようにやったのですが、

  Dim ExcelPath As String
  ExcelPath = "C:\Program Files\Microsoft Office\Office\excel.exe"
  Call Shell(ExcelPath, vbNormalFocus)

このExcelを特定して操作することができません。
Shellで開くのが駄目な気もするのですが、上手い方法が浮かびません。
どうかひとつ知恵を。


126 名前: デフォルトの名無しさん 投稿日: 02/09/04 15:45
>>125
やりたい事がイマイチ良く分からんが、CreateObjectとかEXCELをキーワードに
googleあたりで調べてみそ。


127 名前: デフォルトの名無しさん 投稿日: 02/09/04 16:13
Dim oExcelApp As Excel.Application
Dim oExcelWorkBook As Excel.Workbook
Dim oExcelWorkSheet As Excel.Worksheet
Dim oExcelRange As Excel.Range

Set oExcelApp = New Excel.Application
Set oExcelWorkBook = oExcelApp.Workbooks.Open("C:\テスト.xls", False, True)
Set oExcelWorkSheet = oExcelWorkBook.Worksheets("Sheet1")
Set oExcelRange = oExcelWorkSheet.UsedRange
Debug.Print oExcelRage.Item(1,1).Value


128 名前: デフォルトの名無しさん 投稿日: 02/09/04 16:19
ねえねえ、メールのURLクリックしたときに立ち上がるメーラーを
リストボックスで選択するソフトってVBでつくれるの?
Outlookならできるんだけど、
他のメーラーも選択したくて。。。



129 名前: デフォルトの名無しさん 投稿日: 02/09/04 16:32
VBからOracle使いたいんだけど。
やり方おしえれ


130 名前: 投稿日: 02/09/04 17:01
オラクルの検索時間を はかろうとタイマー割り込みを使ってみたんですが、
割り込みが 一度ぐらいしか 発生しません。
インターバルを 1とか 10とか 100とか 変えても変わりません。

いい方法ないでしょうか?


131 名前: デフォルトの名無しさん 投稿日: 02/09/04 17:39
時間を計測するために、Timerイベントの発生した数を数えちゃダメ。
忙しい時は、イベントがくっついちゃうぞ。

検索前に現在時刻(Now())を変数に保存しておいて、
検索後の時間とDateDiffすれば時間が測れる。
ミリ秒以下を知りたい時は工夫しれ。


132 名前: デフォルトの名無しさん 投稿日: 02/09/04 17:48
>>128
まじめにWindowsUpdateすると、OSにその機能が付くよ。


133 名前: 投稿日: 02/09/04 17:50
>>131

そのミリ秒以下ってのが 知りたいんですが・・・。
どのように工夫したらいいんでしょうか?


134 名前: !=131 投稿日: 02/09/04 17:55
>>133
マルチメディアタイマーをぐぐれ。


135 名前: デフォルトの名無しさん 投稿日: 02/09/04 17:57
Public Declare Function timeGetTime Lib "winmm.dll" () As Long


136 名前: デフォルトの名無しさん 投稿日: 02/09/04 18:40
こんにちは。
VB6.0使ってるんですが
どなたか「へこんだ線」のデザインの仕方をアホな私に教えてください
メニューの区切り線のようなな3Dにへこんだ線をフォーム上に書きたいのです
いくらいじってもわからないよう
やることは他に山ほどあるのにー!
こんなことにこだわってる私ってー!ウワァァァン!! ヽ(`Д´)ノ


137 名前: デフォルトの名無しさん 投稿日: 02/09/04 18:45
>>136
見た目にこだわるのは良いことだよ。

ラベルを貼り付けて、プロパティのBorderStyleを1:実線にしてあとで、幅を
調整するとそれらしく見えるよ。Captionは前もって消しとくように。


138 名前: デフォルトの名無しさん 投稿日: 02/09/04 19:07
>>137
LINEって言うコンポーネントにした理由がさっぱりわからん線二本重ねるのはどうだろう?


139 名前: デフォルトの名無しさん 投稿日: 02/09/04 19:32
>>138
??
137にはLineじゃなくてLabelってあるよ。

俺はまったく関係ないけど、気になったので実験してみたら>>137の方法で
へこんでいる線に見えたよ。

おもろい方法だ。


140 名前: デフォルトの名無しさん 投稿日: 02/09/04 19:49
MMControlを使用して2つのexeでほぼ同時に再生命令した場合、
片方で再生が終わった後にもう片方で再生し始める、というように
Wavファイルを再生したいのですが
下記のような命令だと2つ目のexeの音声が流れません。
どのようにすればいいでしょうか?

<再生命令>
With MMControl1
.DeviceType = "WaveAudio"
.FileName = "C:\1.wav"
.Command = "Open"
.Command = "Sound"
.Command = "Close"
End With



141 名前: デフォルトの名無しさん 投稿日: 02/09/04 20:10
open で開いたテキストファイル #1 の
任意の位置から任意の文字数だけ取得することはできますか?


142 名前: 136 投稿日: 02/09/04 20:17
>>137さん
ありがとうございますぅぅゥ!
やってみたら大変良い感じでした
けど、Hightは38が限界みたいでチョッとおデブな線にみえてしまいます..
これは、私のマシン環境なのでしょうか

>>138さんの方法も良い感じになりそうだったんですが、
線同士が重なりすぎてしまって無理でした。。。(´Д`)
グリッドの感覚を調整しないとダメなような気がします。

どうも、有難うございました
これで残業に気合が入ります。あはは〜 ヽ(´▽`)ノ


143 名前: デフォルトの名無しさん 投稿日: 02/09/04 20:18
can


144 名前: デフォルトの名無しさん 投稿日: 02/09/04 20:29
>>136
拡大してみてみれば分かるが、へこんだ感じは、
ちょっと暗い線と、明るい線が引いてあるだけ。Topプロパティをいじれ。

>>141
BinaryモードでOpenし、Getで任意のバイト数を読み飛ばせ。
次にお前は、任意の行から読みたいという!!


145 名前: デフォルトの名無しさん 投稿日: 02/09/04 20:42
>>137
う〜ん、確かに見えるけどちょっと太くない?
>>136
Lineを2本、15ポイントずらして配置。上(左)の線の色をvbButtonShadow、下(右)をvbWindowBackgroundにするといいよ。
面倒ならFrameのCaptionを消してHeightまたはWidthを30ポイントにすればOK


146 名前: デフォルトの名無しさん 投稿日: 02/09/04 20:47
俺はLine使ってるけどLabel1個とLine2本って違い出るかね?


147 名前: 136 投稿日: 02/09/04 20:50
>>145さま
ビンゴでした!!
まさにイメージ通りな出来に心も晴れ晴れでつ
皆さまありがとうございました!!

なんていい人たちなんだ ウワァァァン!! ヽ(`Д´)ノ


148 名前: デフォルトの名無しさん 投稿日: 02/09/04 21:24
TabStripコントロールのStyleプロパティをtabFlatButtonsにすると、
なぜかBeforeClickイベントが発生しません。
(普通のタブ表示なら発生します)
これはそういう物なんですか?
それとも対処方法があるんでしょうか。


149 名前: デフォルトの名無しさん 投稿日: 02/09/04 22:12
>>144
Seekって知ってる?


150 名前:◆XnRNuqZ2 投稿日: 02/09/04 22:30
悪 質 問 で し た か ?
おながいします・・・Nuke++とかのツールで見ると
ちゃんと親の下に子が全部表示されてますし、あれVB製だったはずですし
なんかやり方あるというのは分かっているのです。
私の現在使っているTips本とかにも載って無くって困って困って。
と、とりあえずもう一度ぐぐって来ます・・・


151 名前: デフォルトの名無しさん 投稿日: 02/09/04 22:38
>>150
getchilewindow


152 名前: デフォルトの名無しさん 投稿日: 02/09/04 22:42
>>150
なんのAPIでハンドル取得してるの?


153 名前:◆XnRNuqZ2 投稿日: 02/09/04 23:15
>>151
?? APIでつか?

>>152
GetWindowっす・・・GW_CHILDつけて。
他に同じようなAPIがあるのですか。そっちも調べてみます。


154 名前: デフォルトの名無しさん 投稿日: 02/09/05 02:26
Windows2000なのですが、OpenPrinterでのネットワークプリンタのハンドルが取得できません。
同じソースで、他のマシン(WindowsXP、Windows98)では取得できるし、
ローカルプリンタでは成功するので、プリンタの設定なのかもしれないのですが・・・
権限の設定も問題無いし、どこに気をつけるべきなんでしょうか?教えてください。

ちなみに、プリンタは正常に印刷できます。



155 名前: デフォルトの名無しさん 投稿日: 02/09/05 03:15
>>153
GetWindowとGW_CHILD/GW_HWNDNEXTで回す方法は間違ってないと思う。
hWnd=GetWindow(hWnd親,GW_CHILD)
Do While hWnd <> 0
  'ここで何か処理
  hWnd=GetWindow(hWnd,GW_HWNDNEXT)
Loop
これで同じ階層のWindowは列挙できるはずだ。

問題あるとしたら、Windowの親子関係の理解かも。
ちゃんと再帰検索しないと全部出てこないよ。
Windowの階層構造は、
 DesktopWindow/Form/Frameなどのコンテナ/各種コントロール/その上の部品
ってな感じになってるから、各階層で列挙したらその下も検索しないと。

クラス名だけじゃ判別できない、ってのも、Windowの階層構造から比較すれば
絞り込めるはず。そのうえで、Textの中身で判別するなどの方法をつかえば
何とかなるんじゃないか?

#次はGetWindowTextでテキストが取れないとゴネるに1票。
#SendMessageとWM_GETTEXT使ってね。


156 名前: デフォルトの名無しさん 投稿日: 02/09/05 04:31
テキストボックスやラベルに表示する文字を
右詰やセンタリングではなく 均 等 にすることはできますか?


157 名前: デフォルトの名無しさん 投稿日: 02/09/05 09:06
できない


158 名前: デフォルトの名無しさん 投稿日: 02/09/05 11:03
VB6.0SP5、Win2000、DBはAccess2000で
下のプログラムを動かしたところ
Delete部分で
実行時エラー'3251';オブジェクトまたはプロバイダは
要求された操作を実行できません
というエラーが出てしまいました。
DeleteはAccess2000では使えないのでしょうか?

Dim cnn_Test As ADODB.Connection
Dim rs_Sample As ADODB.Recordset
Dim str_SQL As String

Set cnn_Test = New ADODB.Connection
With cnn_Test
.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Test\Test.mdb;"
End With

Set rs_Sample = New ADODB.Recordset
str_SQL = "select * from Sample"
rs_Sample.Open str_SQL, cnn_Test, adOpenStatic,adLockPessimistic

Do Until rs_Sample.EOF
rs_Sample.Delete
rs_Sample.MoveNext
Loop


159 名前: デフォルトの名無しさん 投稿日: 02/09/05 12:41
>>158
Set rs_Sample = New ADODB.Recordset
str_SQL = "select * from Sample"
rs_Sample.Open str_SQL, cnn_Test, adOpenStatic,adLockPessimistic

Do Until rs_Sample.EOF
rs_Sample.Delete
rs_Sample.MoveNext
Loop

cnn_Test.Execute "DELETE FROM Sample"


160 名前: 159 投稿日: 02/09/05 12:50
こっちの方が速いか
cnn_Test.Execute "TRUNCATE TABLE Sample"

試したこと無いけど


161 名前: 158 投稿日: 02/09/05 13:02
>>159-160
ありがとうございます。
やっぱりExecuteするしかないんでしょうか?
recordsetのDeleteはなんで使えないんだろう?


162 名前: 159 投稿日: 02/09/05 13:10
>>161
Deleteは使えるぞ。単にコードが悪いだけ。
rs_Sample.MoveNext

rs_Sample.MoveFirst


163 名前: 219.96.219.219 投稿日: 02/09/05 13:14
            ./'"" : .:.. .::: . :. .::"=,
           /:. :..:..:::::::::::::::;;;:::;;;:::;:..:.:!,
           i:.:::::;;;;;:::::-,:-'"    ;:::::::i,
           ノ:::"   ヽ,..     ;:::::::i,
           ,i::::. ,....,,,_   ,;;;;;;::::,,,,,.;:::;i..,
           ヽ;::,;:- ;:;;::,ー:;"/ /  i"`:;":l,
           ;"!,:!, "''''"ノ: .ヽ---'" :l,,,/
            !, ;!,"""~::.,....::,:    .:l'          人生ってせつねーな
             'l;  ,//l,l,l,l,ll::  .;l 
              ヽ, "~---'"  ,;/!ヽ, 
               ヽ,,    /;;;" ヽ,,,,,,,
       ,,,,,,::---''''''''''''"!,i,"''''''''''"/   /::" "'--::;;,
     /";,    :::ヽ,   l,!,/=l;"~,/   /:   :;--''"'ヽ,
     (;;;;,,ヾ,   ;::: .   l/,,,.l,/  ,/;' ' :',,..:'      :ヽ
     ,ノ ::;;,,,::i,   :, ::,   i,./   /  .: ,:''   _,,.,-'l;:..   ,i
     ,):::::.... "";,  :,,:;   /   ,/.;;;;;, _,,;:-''''".,,;,:-"::...  l



164 名前: 158 投稿日: 02/09/05 13:33
>>162
できました!ありがとうございます


165 名前: TTT ◆aXGRPkmk 投稿日: 02/09/05 14:38
vb6でUDPでデータを送ったり受信したりするプログラム書いてます。
むちゃくちゃ単純なやつです。
remoteport設定して
bindして
remotehostに送るだけ。
受信はイベントまちしてるだけ。
作ったときはうまくいったんですが
ディストリビューションウィザードで
他のPCにインストールして送信しようとすると
実行時エラー126がでてきます。
なぜでしょう。


166 名前: デフォルトの名無しさん 投稿日: 02/09/05 15:08
Oracleのレコード件数を取得したいのですがうまくいきません。
過去ログを読むとSQL文でCOUNTをした方が良いと書いてあったので
次のようにしたのですが、肝心の結果が取得できません。
どこが悪いのでしょうか。助けてください。。。

Dim objtest As ADODB.Recordset
Dim strtest As String
Dim strSQL As String

Set objtest = New ADODB.Recordset
strSQL = "select COUNT(*) from spos.tst_meisai"

objtest.Open strSQL, cnn, adOpenKeyset, adLockOptimistic

strtest = objtest(0).Value



167 名前: デフォルトの名無しさん 投稿日: 02/09/05 15:37
普通のVBとwordとかで付いてるVBの違いを教えて頂けないでしょうか?



168 名前: ntkngw020205.isdn.ppp.infoweb.ne.jp 投稿日: 02/09/05 15:39
>>167
WordのはVBA


169 名前: デフォルトの名無しさん 投稿日: 02/09/05 15:49
VBAでソフトとかゲームって開発できるんですかね?



170 名前: デフォルトの名無しさん 投稿日: 02/09/05 16:12
>>169
出来ますよ。
エクセルで作ったテトリスを見たことあります。


171 名前: デフォルトの名無しさん 投稿日: 02/09/05 16:13
できる


172 名前: デフォルトの名無しさん 投稿日: 02/09/05 17:08
"制御文字入れたい\"\n\rとか"
VBではどうやって記述したらいい?



173 名前: デフォルトの名無しさん 投稿日: 02/09/05 17:23
>>172
VBならとかって気取ってかいてんじゃねーYO。
他の言語使えないくせに。


174 名前: デフォルトの名無しさん 投稿日: 02/09/05 17:24
>>172
chr$とか


175 名前: デフォルトの名無しさん 投稿日: 02/09/05 17:32
>>172
こんな感じ?
"ABC"+Chr(13)+Chr(10)
Chr(13) = キャリッジリターン
Chr(10) = ラインフィード


176 名前: デフォルトの名無しさん 投稿日: 02/09/05 17:55
リストヴュー内に値を表示することはできるのですが
逆にリストビュー内の文字列を取得する方法を教えてください。

インターネットで探してもヘルプ見ても書店に行ってもやり方が
書いてないんです・・・。単純に表示されている文字列を取得したい
だけなのですが。

私の探し方がいけないのでしょうか?



177 名前: 172 投稿日: 02/09/05 17:59
>>174
>>175
レスども、参考になりますた。
Chr(22) & "こんな感じになりますた" & Chr(22)



178 名前: デフォルトの名無しさん 投稿日: 02/09/05 18:09
>>177
22ってなんだろう?

・キャリッジ リターンとライン フィードの組み合わせ。
vbCrLf = Chr(13) & Chr(10)

vbには定数が定義されているよ。


179 名前: デフォルトの名無しさん 投稿日: 02/09/05 19:09
>>176
lvw.ListItems(index).Text
lvw.ListItems(index).ListSubItems(index).Text



180 名前: デフォルトの名無しさん 投稿日: 02/09/05 19:30
はじめまして。
VBからエクセルをShell関数にて起動しているのですが、
起動するまでの約1〜2秒間の間、
普通にエクセルを起動(エクセルアイコンダブルクリック、スタートメニューから起動等)
できないようにしたいのですが、可能でしょうか?
というのは、Shellから起動する前後にエクセルのレジストリを触っているからです。

どなたかご教授願います。
よろしくお願いします。


181 名前: デフォルトの名無しさん 投稿日: 02/09/05 20:07


                 ̄ ̄ ̄ ̄-----________ \ | / __-- ̄
      ---------------------------------  。>>173 ------------
       _______----------------- ̄ ̄ ̄ ̄ ̄     ̄ ̄----_______
                     ∧ ∧    / / | \ \
                    (   )  /  /  |  \  \
                 _ /    )/  /   |   \    \
                 ぅ/ /   //    /   |    \    
                ノ  ,/   /'    /    |     \
 _____      ,./ //    |     /    |      \
(_____二二二二)  ノ ( (.  |    /     |
              ^^^'  ヽ, |  |   /     |
                    |  |         |
                   ,,/  ,ノ  ∧、∧、∧、∧、∧、∧、∧、∧、∧
                  /  /| <
                  /  / | < 宇宙のかなたまでとんでけや
                 ,/  / | <、
                 \__つ )  ∨^∨^∨^∨^∨^∨^∨^∨^∨^∨



182 名前: デフォルトの名無しさん 投稿日: 02/09/05 20:21
はじめまして。
VBからノーマル表示されているDOS窓を最小化したいのですが、どのようにしたらいいのか分かりません。
どなたか教えていただけませんか??よろしくお願い致します。


183 名前: デフォルトの名無しさん 投稿日: 02/09/05 21:26
>VBからノーマル表示されているDOS窓
というのが意味不明なんですが

shellでbatファイル動かしてるという意味ならshellの第二引数でウィンドウの大きさ指定してくれ
違ったらスマソ



184 名前: デフォルトの名無しさん 投稿日: 02/09/05 21:54
>>183
VBから、ノーマル表示されているDOS窓
であろう


185 名前:◆ZKkSDatc 投稿日: 02/09/05 22:19
>>155
うぅ、どうもです。
>問題あるとしたら、Windowの親子関係の理解かも
これが大的中でございますです。
ComboBoxの内側のTextがComboBoxの子Windowになるとは知りませんでした。
なんとなく全部同じ階層なのかと勘違いしてたわけです。
お陰でComboBoxハッケソ→その子を検索→目的のTextBoxハッケソ
と、トントン拍子です。

ありがとうございました。(実は「テキストが取れない」ってのも調べようとしてましたw)


186 名前: デフォルトの名無しさん 投稿日: 02/09/05 22:32
>>182 DeclareがめんどくさいのでCですまん。
int main(int argc, char* argv[])
{
  HWND hwnd;
  WINDOWPLACEMENT windowplacement;
  BOOL b;

  hwnd = FindWindow(NULL, "c:\\winnt\\system32\\cmd.exe");
  //hwnd = FindWindow("ConsoleWindowClass", NULL);
  printf("hwnd=%d\n", hwnd);
  GetWindowPlacement(hwnd, &windowplacement);
  windowplacement.showCmd = SW_MINIMIZE;
  b = SetWindowPlacement(hwnd, &windowplacement);
  return 0;
}


187 名前: デフォルトの名無しさん 投稿日: 02/09/05 22:56
>>166
SQL2000だけど、そのコードで動いたよ。
数値で帰ってくるのに、文字列に入れているからかな。
でもちゃんと自動的に変換されたよ。

あとはcount(*) as cntとか名前を付けて、
Debug.Print objtest("cnt").Value してみるとか。


188 名前:◆ZKkSDatc 投稿日: 02/09/05 23:25
こんどはSetWindowTextがComboBoxに対して上手く動かないや。
他のツールではちゃんと変更できるんだけどなぁ。
もういいやヽ(`Д´)ノネル!!


189 名前: デフォルトの名無しさん 投稿日: 02/09/05 23:43
>>188
だからWM_SETTEXT使えってば(w


190 名前:◆ZKkSDatc 投稿日: 02/09/06 00:04



191 名前:◆ZKkSDatc 投稿日: 02/09/06 00:26
デキタ
モレガヴァカデシタ
イッテキマ


192 名前: 初心質問 投稿日: 02/09/06 02:18
VB6.0&Access97でデータベースのトランザクション処理の質問です。
モジュール初期起動時に、PublicのDAO3.5_ObjectでCreateworkspace,OpenDataBaseを作成して
プログラム内でRecordsetを作成して参照・更新・追加などをしています。
複数のテーブルにレコード追加するときに、 Begintrans〜commitTransを使おうとしたら
追加時、Recordset.addnewのときにオブジェクトが無効とエラーになってしまいます。
直前のset Recordset = DataBase.OpenRecordset("select * from tbl where id=id ",dbsopendynaset)
は実行できます。
なぜなんでしょうか?
ちなみにBegintrans実行直前にCreateworkspace,OpenDataBaseを再作成(set〜)を行うとエラーになりません。
またBegintrans〜commitTransを使用しなければ、エラーは起きません。
誰か助けていただきたく。





193 名前: デフォルトの名無しさん 投稿日: 02/09/06 02:25
まだクールバーにメニューを載せようとあがいている馬鹿ですが、
ツールバーのボタンにTBSTYLE_AUTOSIZEをセットしようとしてるんですけど、
全然上手く行きません。いい方法ありませんかね?ハァ・・・
そもそもツールバーコントロールのボタンのIDは101から始まってんだろーか。

Private Const WM_USER As Long = &H400
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Const TBSTYLE_BUTTON = &H0
Private Const TB_GETBUTTONINFOA As Long = (WM_USER + 65)
Private Const TB_SETBUTTONINFOA As Long = (WM_USER + 66)
Private Const TB_GETBUTTONINFO As Long = TB_GETBUTTONINFOA
Private Const TB_SETBUTTONINFO As Long = TB_SETBUTTONINFOA
Private Type TBBUTTONINFO
cbSize As Long : dwMask As Long : idCommand As Long : iImage As Long
fsState As Byte : fsStyle As Byte : cx As Long : lParam As Long : pszText As String : cchText As Integer
End Type
Private Const TBSTYLE_AUTOSIZE As Long = &H10
Private Const TBIF_STYLE As Long = &H8
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Sub Form_Load()
Dim tbInfo As TBBUTTONINFO
Dim lnghWnd As Long,lngRet As Long
lnghWnd = FindWindowEx(Toolbar1.hwnd, 0&, "ToolbarWindow32", vbNullString)
tbInfo.cbSize = Len(tbInfo) : tbInfo.dwMask = TBIF_STYLE
lngRet = SendMessage(lnghWnd, TB_GETBUTTONINFO, 101&, tbInfo)
tbInfo.fsStyle = TBSTYLE_BUTTON Or TBSTYLE_AUTOSIZE
lngRet = SendMessage(lnghWnd, TB_SETBUTTONINFO, 101&, tbInfo)
Toolbar1.Refresh
End Sub


194 名前: デフォルトの名無しさん 投稿日: 02/09/06 02:27
>>192
エラーが出るプロシージャのコード出してみ


195 名前: デフォルトの名無しさん 投稿日: 02/09/06 10:05
>>187
動きましたか。。。
教えていただいた方法を試してみます。



196 名前: デフォルトの名無しさん 投稿日: 02/09/06 12:09
>>195

Dim oraDynaset As Object
Dim strSQL As String
Dim oraCnt As Long

Const ORADYN_READONLY = &H4&

strSQL = "SELECT * FROM TABLE"

Set oraDynaset = gOraDataBase.CreateDynaset(strSQL, ORADYN_READONLY)
oraCnt = oraDynaset.RecordCount

※gOraDataBaseは、オープンしたDBね


197 名前: デフォルトの名無しさん 投稿日: 02/09/06 13:19
タブ区切りの文字列を分割したいんですが、良い関数はありますか?
Cで言うところのstrstrみたいな。


198 名前: デフォルトの名無しさん 投稿日: 02/09/06 13:23
>>197
まずはstrstrがどういう関数か調べてこい。


199 名前: 197 投稿日: 02/09/06 13:25
あ、了解す。
strstrは全然違う関数すね。


200 名前: 197 投稿日: 02/09/06 13:30
splitですね?
やってみます


201 名前: 投稿日: 02/09/06 13:43
>>195
Oracleの場合はFieldsコレクションを使わないとだめだよ。
objtest.Fields(0).Value でうまくいくと思う。
>>196
ADOとOO4Oの区別をつけましょう。
それと行数取得のために全表問い合わせなんて事はやめましょう。


202 名前: 197 投稿日: 02/09/06 14:12
タブ区切りのテキストを↓で分割しようとしたんですが駄目でした。
タブ記号を"'"なりに変換するほうがいいですかね?


Dim strValue() As String

Dim aaa As String

aaa = "aa bbb cc"

strValue = Split(aaa, Chr$(9))


203 名前: 196 投稿日: 02/09/06 14:15
>>
>それと行数取得のために全表問い合わせなんて事はやめましょう。

ここにSQLを代入するという、例のつもりだったんだけどね。


204 名前: 196 投稿日: 02/09/06 14:17
>>203>>201に対してです


205 名前: 投稿日: 02/09/06 14:17
>>203
クク・・詭弁はよせヨ


206 名前: 投稿日: 02/09/06 14:19
>>202
それはテキストがタブ区切りになっていないから。
aaa = "aa" & vbTab & "bbb" & vbTab & "cc" でやってみ。


207 名前: 197 投稿日: 02/09/06 14:22
>>206
素晴らしい!
ありがとうございます


208 名前: 投稿日: 02/09/06 14:24
>>203
そこにカウントをとるSQLを入れるとレコード行数は1になるよ。
会社の先輩に教わってるんだろうけど、ちゃんと自分で勉強したほうがいいよ。
>>205
クク・・騙りはよせヨ


209 名前: 203 投稿日: 02/09/06 14:33
>>208
俺は会社の先輩なんかに教わってねえよ!!!


210 名前: デフォルトの名無しさん 投稿日: 02/09/06 14:36
すみません。今VBからACCESSにデータを書き込むというプログラムを
作成していたんですが、実行すると「1つ以上の必要なパラメータの
値が設定されていません」と表示されます。
デバックをクリックすると
(変数名).Open strSQL, (変数名), adOpenDynamic, adLockOptimistic
ここが黄色で指摘されます。どういうことなのでしょうか?
神様おながいします。MSDNのCD持ってないのもで・・・


211 名前: 投稿日: 02/09/06 14:42
>>209
せっかく気を使って会社の先輩のせいにしたのに・・・
>>210
SQL文に間違いがあります。


212 名前: デフォルトの名無しさん 投稿日: 02/09/06 14:48
>>192
AccessでTransactionがうまくいかんのは俺もあった。
結局こまめにCommitする事にしました。


213 名前: デフォルトの名無しさん 投稿日: 02/09/06 14:49
>>211
ありがとうございます。
SQL文ですか・・・。具体的にどう間違っているかわからないので
調べてみたいと思います


214 名前: デフォルトの名無しさん 投稿日: 02/09/06 15:22
(*´д`*)アハァ…


215 名前: 投稿日: 02/09/06 15:24
>>213
SQL文見てないからわからないけど。
表結合していて、それぞれの表に同じ名前の項目があるけれど
どちらの表の項目を見るのか指定してない。
のだと予想してみる。



216 名前: デフォルトの名無しさん 投稿日: 02/09/06 15:28
>>215
ACCESSの方でデータを格納したいレコードの部分の名前にテキスト型なら
うまくいくんですが、整数型にすると「型が一致しないと」
表示されてエラーになってしまいます・・・


217 名前: デフォルトの名無しさん 投稿日: 02/09/06 15:41
>>216
              /⌒彡
     /⌒\    /冫、 )  
     /  ∧ `./⌒ i `  /ゝ
     /  ノ  > ( <     ( \\
  ̄~⌒ ̄ ̄~  \`つ    ⌒ _)
 ̄ ̄ フーン


218 名前: 投稿日: 02/09/06 15:56
>>216
えー、正直言ってることがわからないですが。
Where句に指定した値が文字列型なら・・・という事でしょうか?
型が一致しないと出てるのならそれが原因でしょう。
具体的に言うと、整数型なら"'"をはずしてやらなければなりません。
Oracleならはずさなくても平気なんだけどね。


219 名前: デフォルトの名無しさん 投稿日: 02/09/06 16:10
>>218
アンタバリバリにできるナ


220 名前: 216 投稿日: 02/09/06 16:11
>>218
ありがとうございます。
確かにその通りでした。"'"だと文字扱いになるんですね・・・。
おかげで解決することができました


221 名前: デフォルトの名無しさん 投稿日: 02/09/06 16:27
型チェックにうるさいんだな。つーかAccessのbrokenぶりを見させていただいた


222 名前: デフォルトの名無しさん 投稿日: 02/09/06 16:28
( ´_ゝ`)


223 名前: 投稿日: 02/09/06 16:33
>>219
そんなことないですよ。まだまだ未熟者です・・・でもありがとう!
>>220
「1つ以上の必要なパラメータの値が設定されていません」
は解決したんですよね?原因がなんだったのか知りたい。


224 名前: Prime 投稿日: 02/09/06 16:43
厨房三年目です。
技術教師が私に授業で作る例題のプログラムを作れといってきました。
自分で作れないのに技術の教師…時代は変わったのか


225 名前: 投稿日: 02/09/06 16:56
>>224 中学でプログラミングを教えてるってとこに時代を感じる・・・


226 名前: デフォルトの名無しさん 投稿日: 02/09/06 17:00
普通に教わるよ
家庭科(技術?)で。
高校でBASIC習うんだし。数Aね。


227 名前: 216 投稿日: 02/09/06 17:09
>>223
strSQL = "Select * From (名前) " & _
"Where (名前) = '" & (TextBoxの名前).text & "'" & _
"AND (名前) = '" & (TextBoxの名前)..text & "'" & _
"AND (名前) = '" & (TextBoxの名前)..text & "'"

これでやって悩んでいました・・・。"'"をはずして解決しました


228 名前: デフォルトの名無しさん 投稿日: 02/09/06 18:02
>>227 プロの方ではないですよね。課題とかですよね。
TextBoxに 「'」とか「"」とか打つとウマーだし。


229 名前: デフォルトの名無しさん 投稿日: 02/09/06 18:34
ReDim Preserve MyRec(6) As TRec

というように確保した領域って

MyRec() = Nothing

で領域開放できるんでしたっけ?


230 名前: デフォルトの名無しさん 投稿日: 02/09/06 18:34
>>227
好みだけど、↓こー書いた方が見やすいんでない。

strSQL=""
strSQL = strSQL & "SELECT 〜 "
strSQL = strSQL & "WHERE 〜 "
strSQL = strSQL & "AND 〜 "


231 名前: 229 投稿日: 02/09/06 18:41
自己レスです。Setが必要でしたね

Set MyRec() = Nothing


232 名前: デフォルトの名無しさん 投稿日: 02/09/06 18:46
>>229
それ動いたか?


233 名前: 229 投稿日: 02/09/06 18:51
>>232
実際動かしてみました。
Nothing代入じゃないんですね。




234 名前: 229 投稿日: 02/09/06 18:54
freeに相当する関数があるのかという話ですね。
VB側で勝手に開放してくれるのかな?
調べてみます


235 名前: 216 投稿日: 02/09/06 18:59
>>230
ありがとうございます。参考にさせていただきます


236 名前: デフォルトの名無しさん 投稿日: 02/09/06 19:06
>>229
明示的に開放したいなら Erase ステートメントで出来ますよ。



237 名前: 229 投稿日: 02/09/06 19:29
>>236
watch式でも開放されてるの確認しました。
こんな初歩的な質問にわざわざありがとうございます


238 名前: デフォルトの名無しさん 投稿日: 02/09/06 21:09
どなたか教えてください。
httpプロトコルでファイルをダウンロードしようとしていますが
うまくいきません。
(ステートは12の完了までいくけど、ファイルがどこにも保存されない)

・プログラムのどこか間違っているのでしょうか?
・「GET」コマンドで取得したファイルはどこに格納されるのでしょうか?
 (全フォルダ検索しましたが指定したファイル名はありませんでした)

With Inet1
.URL = "https://aa/aa/bb.lzh"
.UserName = "12345"
.Password = "12345"
.Execute , "GET"
Do While .StillExecuting = True
DoEvents
Loop
End With



239 名前: デフォルトの名無しさん 投稿日: 02/09/06 21:12
>>238
それって自動的にファイルになるのか?
じゃないと保存先のパスとファイル名が設定できないとおかしいと思われ。


240 名前: デフォルトの名無しさん 投稿日: 02/09/06 21:27
>>238
それだけぢゃダメ
Inet1のStateChangedイベントでStateが12になったらGetChunkする。
で、GetChunkしたバイナリ文字列をファイルに書き出していく。
コード書きたいけど面倒+ちょっとうろ覚えw
ぐぐればいくらでもサンプル出てくるけど?


241 名前: 238 投稿日: 02/09/06 23:27
>>240

ありがとうございます。

GetChunk の方法なんですが、
ヘルプにあったサンプルで、
ファイルをオープンしていましたが、
どこのファイルをオープンすればいいんでしょうか?
(ソースの txOperation の部分)

よろしくお願いします

Private Sub Inet1_StateChanged(ByVal State As Integer)
Dim vtData As Variant ' Data 変数
Select Case State
' ... ほかの条件のコードは省略されています。
Case icResponseCompleted ' 12
' 出力先のファイルを開きます。
Open txtOperation For Binary Access _    ←???
Write As #intFile

' 最初のデータを読み取ります。注意: バイナリ ファイルを読み取る
' 場合はバイト (Byte) 配列 (icByteArray) を指定します。
vtData = Inet1.GetChunk(1024, icString)

以下 略


242 名前: デフォルトの名無しさん 投稿日: 02/09/06 23:33
みなさん、VB.NETへは以降してるんですか?
どうするんですか?


243 名前: デフォルトの名無しさん 投稿日: 02/09/06 23:51
いんや、まだ6sp5のまま web関連の開発がなくてな


244 名前: デフォルトの名無しさん 投稿日: 02/09/06 23:52
>>241
どこのファイルって、
お前が保存したいそのファイルだよ!
>httpプロトコルでファイルをダウンロードしようとしていますが
そのダウンロード先だよ!


245 名前: デフォルトの名無しさん 投稿日: 02/09/06 23:56
>>243
やっぱ.NETとか言ってるだけあってWeb型のアプリの開発は得意なのか?
ん〜全部データはもってるんだがインスコが面倒でなぁ。


246 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:00
>>242
VBの仕事そのものがあんまりないので、
旧VBもVB.NETも趣味でやってるよ。



247 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:00
>>242
.net の環境が入ったWindowsが出る頃を勉強のメドにしてる人も多そう。
現状、VB6 アプリを.net に移行するって話は、まだ殆ど聞かないね。
Webは全く知らんけど。


248 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:00
Public Kekka(1 to 10) as log
Public Sub Draw()
i=i+1
k=k+1
kekka(i)=k
Text1.text=Text1.text & Kekka(i)
End Sub

とやって、

Private Sub Command1_Click()
Draw
End Sub
とやったのですが、テキストボックスには11111年かなりません。12345となるはずですが・・


249 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:01
>>245
>やっぱ.NETとか言ってるだけあってWeb型のアプリの開発は得意なのか?
ぼちぼち。

>ん〜全部データはもってるんだがインスコが面倒でなぁ。
犯罪者の方でしか?


250 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:01
>>246
そういうのって、場所にもよるべさ。>量


251 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:06
>>248
君、日本語やばいぞ。

Procedure内で宣言した変数ってのは基本的に、Procedure を抜けると、内容は消えるのよ。
嫌なら、Dim の代わりにStatic って書きな。
値が型の上限を越えないように注意ね。


252 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:09
>>249
へぇVB6よりはそっち系の機能充実ってとこ?
ちなみに犯罪者じゃねぇっ。学校側で買ったのを拝借しただけで。


253 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:10
はいわかった。


254 名前: 238 投稿日: 02/09/07 00:11
>>244

”GET” コマンドだけで保存先を指定していないので、
どこに保存されているのかわからないので、質問しています。
ディスクの全検索しても同名のファイルは見つかりませんでした。
別の名前でバッファに入っているのでしょうか?
それとも、単純にダウンロードに失敗しているのでしょうか?

244以外の人で、知っている方がいましたら教えてください。



255 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:13
>>252
>学校側で買ったのを拝借しただけで。
業務上横領。コピーの場合ライセンス違反によるごにょごにょ。


256 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:14
>>254
だから根本的にHTTPとプログラミングについて理解していないと思われ。



257 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:15
>>254
悪いこと言わないから、テキストファイルの保存からやり直せ。
自分がいかに電波な事言ってるか解るから。


258 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:15
>>251
ども。iとkをpublicで宣言したら直りました!
なにも宣言しないとdimなのですね。!
おみそれいたしmたした


259 名前: デフォルトの名無しさん 投稿日: 02/09/07 00:18
>>255
むむ・・255ゲトオメってことで許してぇ。

>>254
ん〜
そうやってInetとか使って何かやろうとする以前の問題のような。
なにをするのがExecuteでGetChunkは何をするためのもので
何の為にファイルをOpenしたのかわかるかい?
とりあえず、そういう基本的概念から押さえていってはいかが?


260 名前: 238 投稿日: 02/09/07 00:47
どうもお騒がせしました。

Get_Chunk の使用例にあった、

>出力先のファイルを開きます。
>Open txtOperation For Binary Access _ 
>Write As #intFile

の、「出力先」というのを、「GET」コマンドが吐き出した出力先と勘違いしていました。
GET したバッファファイルを取り出して、実際に格納したい出力先 という事ですね。




261 名前: デフォルトの名無しさん 投稿日: 02/09/07 01:23
IEのお気に入りのように動的にメニュー項目を増やしたいのです。

1階層なら、メニューエディタでメニュー配列つくっておいて、
コードで
Load mnuBookmark(1)
mnuBookmark(1).caption = "yahoo"
こんな感じにしたらyahooが動的に作られたりしました。

ここまでは出来たんですが、多階層のメニューを動的に作成する方法が分かりません。
root\検索エンジン\yahooみたいな。


262 名前: デフォルトの名無しさん 投稿日: 02/09/07 01:35
>>261
試してないけど、set 新規アイテム(n).Parent = 親にしたいアイテム
見たいのはダメ?


263 名前: 262 投稿日: 02/09/07 01:37
ごめん、死ぬほどダメだ.



264 名前: デフォルトの名無しさん 投稿日: 02/09/07 02:10
今、VBでグラフィックエディタ作ってるんだけどけっこう難しすぃ
どこかグラフィクエディタの作り方の基本的な解説が載ってる
優良サイトってどこか知りませんか?
自分でも探してみたけどいまいちいいのがなかた


265 名前: デフォルトの名無しさん 投稿日: 02/09/07 02:12
お絵かきソフトぐらい作れるだろ?


266 名前: デフォルトの名無しさん 投稿日: 02/09/07 02:13
>>261
多階層メニューを動的にやるには、
APIばーりばーりー、ぼーりぼーりー。
しかもイベントがごにょごにょ・・・。



267 名前: デフォルトの名無しさん 投稿日: 02/09/07 02:17
>>264
グラフィックエディタって言っても、ピンからキリまである。
漠然としすぎ。まずアクセサリのペイントブラシくらいは作れるようになればー。
大まかな作りとしてはあのぐらいなら優しいぞ。


268 名前: デフォルトの名無しさん 投稿日: 02/09/07 21:15
VBで左クリックと右クリックを判定するにはどうしたらいいの?


269 名前: Pっ 投稿日: 02/09/07 21:16
質問です。VB6,Win2k
ツールバーのあるボタンを押した、という命令を送りたいのですが
普通のコマンドボタンとかならば独自にハンドルをもっているので、それにSendmessageでいけますが
ツールバーだと、ツールバー全体で一つのハンドルのために、
「左から2つめのボタンが押された」っていう命令を送れないんです・・・
これは何か別の方法を使ったりして実装できるのでしょうか?


270 名前: デフォルトの名無しさん 投稿日: 02/09/07 21:20
>>268
MouseDown/MouseUp


271 名前: エンジェルフィッシュ 投稿日: 02/09/07 21:20
>>269
API関数のSendMessageで直接送って栗。


272 名前: デフォルトの名無しさん 投稿日: 02/09/07 21:23
右と左をクリックを判定したいんだけど、LeftMouseDownとかないですかね


273 名前: デフォルトの名無しさん 投稿日: 02/09/07 21:27
>>272
Form_MouseDown(Button As Integer
            ~~~~~~~~~コレは一体何でしょうね?


274 名前: デフォルトの名無しさん 投稿日: 02/09/07 21:28
sorry ><


275 名前: デフォルトの名無しさん 投稿日: 02/09/07 22:47
VBでコンソールアプリを作れますか?
VBでCGIプログラムを作りたいんです。
VBScriptでASPは嫌です。


276 名前: デフォルトの名無しさん 投稿日: 02/09/07 23:02
>>275
できます。
だけどAPI多用してめんどくさいです。
http://tokyo.cool.ne.jp/taquino/vbcgi/index.shtml
CGIに使うだけならこのページ参照すればいいかと。


277 名前: デフォルトの名無しさん 投稿日: 02/09/08 00:10
>>275
Perl、C、PHP、Java Servlet、JSP、ASP.NETと
選択肢いろいろあるのに・・・。M?


278 名前: Pっ 投稿日: 02/09/08 01:37
>>71
いや、APIのSendMessageでやってますけど、
ツールバー全体にしかメッセージを送れないんです。
ツールバー全体に対して「左クリックされました」ってメッセージ送ってもだめだろうなぁと。
「ツールバーの3番目のボタンが左クリックされました」じゃないと。
SendMessageで出来るのならもうちょっと調べてみます。


279 名前: デフォルトの名無しさん 投稿日: 02/09/08 01:59
>>278
ButtonのLeft位置とかが特定できるなら、その値を含めて
WM_LBUTTONDOWN を送ればいいんでわ。
3番目のボタンをクリック、ではなく、3番目のボタンがある座標を
クリック、ってことね。


280 名前: Pっ 投稿日: 02/09/08 02:02
>>279
なるほど・・・
Hwnd取ったあとでその座標情報を取得して
その位置に合うXとYを指定してメッセージ送信っと。
どうやらわかった気がします。どうもありがとう。


281 名前: デフォルトの名無しさん 投稿日: 02/09/08 11:05
MSHFlexGrid1である範囲の背景色を変えたいんですが
今は .Row  .Colでフォーカスを移動して.CellBackColor で色をつけてるんですが表示が遅いです。
なんとか早くしたいんですが。



282 名前: 名無し~3.EXE 投稿日: 02/09/08 11:39
>表示が遅いです。
ビデオカードを容量の大きいのに変えろ。


283 名前: Inetコントロールで 投稿日: 02/09/08 12:08
HTMLデータをExecuteで取得しているのですが、質問があります。
・Proxyを使う場合は、Proxyプロパティに「Host:Port」って形に入れさせて、IcNamedProxyにすればOK?
・先にそのHTMLデータの全体の容量を調べてからInetでExecuteして、
 「現在35%読み込み済」ってやることは可能?

図々しいですがよろしくおねがいしますー。


284 名前: デフォルトの名無しさん 投稿日: 02/09/08 12:18
>>283
さぁ、実験だ!というのは無しですか?


285 名前: デフォルトの名無しさん 投稿日: 02/09/08 12:28
>>281
アレは何やっても遅いよ。


286 名前: Inetコントロールで 投稿日: 02/09/08 12:33
>>284
これでもイロイロ試したんですけどね
Proxyがちゃんと効いているのかどうやって調べれば良いのか分かりませんし。
Google検索でも出ないしヽ(`Д´)ノ


287 名前: 281 投稿日: 02/09/08 13:13
>>285
そうなんですか。
あきらめますた。



288 名前: 281 投稿日: 02/09/08 13:16
最大化ボタンを押したときのフォームの大きさを指定したいんですがどうしたらいいですか?



289 名前: Inetコントロールで 投稿日: 02/09/08 13:37
すみませんProxy使えました。
でも疑問点残りまくり・・・
一回目にProxyでアクセス
 ↓
二回目にダイレクトにアクセス

ってやっても、二回目の結果もProxyを使ったものになってしまう?
まるでひとつのInetには接続方法を一度しか設定できないかのように。
しょうがないのでInetを動的生成してやると上手く行ったのですが、なんか不満が残ります。


290 名前: デフォルトの名無しさん 投稿日: 02/09/08 15:07
初めて標準モジュールを使ってプログラム組んでいるのですが(VB6)
モジュールで取得した値をForm1で宣言した
Texe1.Textに出力し尚且つHairetu(100),Hairetucntで
Form1.Text1.Text = モジュールで取得した値
Hairetu(Hairetucnt) = Form1.Text1.Text
Hairetucnt = Hairetucnt + 1
みたいな感じでやりたいのですが
F5実行させると強制終了になってしまいます
初歩的なことで恐縮なのですがアドバイスお願いできますでしょうか?


291 名前: デフォルトの名無しさん 投稿日: 02/09/08 15:28
>290
CopyMemory使ってないか?


292 名前: デフォルトの名無しさん 投稿日: 02/09/08 15:52
使ってません。
ttp://vbvbvb.com/jp/gtips/0051/gSetClipboardViewer.html
を使用しています。
AAエディタを作りたいと思っています。
(あくまで既存のものに対抗するのではなくあくまでステップアップ的な意味で、です)


293 名前: 291 投稿日: 02/09/08 16:00
んじゃどっかにバグがあるんでしょ。

一行ずつ実行してハングする所をチェック、だな。
めんどくせーけど。


294 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:01
すみませんが、位置から基本だけを教えているサイトありませんか?どうも付いてきた本を見ても分からないし、本は高いし・・・どうか教えて下さい。探したけど見つからなかったんです。


295 名前: 291 投稿日: 02/09/08 16:05
>294
http://www.google.com/search?hl=ja&inlang=ja&ie=Shift_JIS&q=%8F%89%90S%8E%D2+VB&lr=


296 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:08
ありがとうございました。何とかこの中で詳しいサイト見つけます。
めざせVBマスター(今更恥ずかしいですね)


297 名前: 290 投稿日: 02/09/08 16:11
回答ありがとうございます
早速やってみるとします
あと
Hairetu(Hairetucnt) = Form1.Text1.Text
Hairetucnt = Hairetucnt + 1
のHairetuやHairetuxntはForm1で宣言しているのですがそのままモジュール内で使用しても問題なかったのでしょうか?
度々の質問で非常に恐縮ですがお願いします


298 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:15
後もう一つ疑問ですが、Standardでソフトを作ったら有料ソフトにして良いのですか?


299 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:17
>>297
Formで宣言して Bas で使えてるって事は、Public で宣言してるんでしょ?
ならば平気。


300 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:27
フォームにコマンドボタンを貼り付ける作業を
プログラム中で実現することは可能ですか?
もし可能ならばやり方を教えて( ゚д゚)ホスィ


301 名前: 何すんのか知らんが 投稿日: 02/09/08 16:34
見えないコントロール配列でも一つ持っときなさいよ。
んで load して Visible = True 。



302 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:37
Private Sub Form_Activate()
  '最初に作っておくのはCommand1(0)のみ。
  Load Command1(1)
  Command1(1).Visible = True
  Command1(1).Top = 0
  Command1(1).Caption = "piyo"
  
  Command1(0).Top = Form1.ScaleHeight - Command1(0).Height
End Sub


303 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:40
>>288
サブクラス化してWM_GETMINMAXINFOを処理せよ。


304 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:40
>>300
VB6ならControls.Add


305 名前: デフォルトの名無しさん 投稿日: 02/09/08 16:49
>>299
どうもありがとうございました。


306 名前: 動画無料サンプル 投稿日: 02/09/08 18:28
盗撮モノ!!女子高生・OL・芸能人を隠し撮り!!
http://www.traffimagic.com/WIPE7MMLZCA/comein/FSJPN


307 名前: デフォルトの名無しさん 投稿日: 02/09/08 18:38
>>306
マジで?


308 名前: デフォルトの名無しさん 投稿日: 02/09/08 19:10
>307
ネット初心者ハケーン


309 名前: デフォルトの名無しさん 投稿日: 02/09/08 19:12
>>306
>>307
>>308

    /∵∴∵∴\
   /∵∴∵∴∵∴\
  /∵∴∴,(・)(・)∴|
  |∵∵/   ○ \|
  |∵ /  三 | 三 |  / ̄ ̄ ̄ ̄
  |∵ |   __|__  | < うるせー馬鹿!
   \|   \_/ /  \____
     \____/



310 名前: 288 投稿日: 02/09/08 19:51
>>303
ありがとう。
がんばってみます。



311 名前: VB初心者 投稿日: 02/09/08 21:11
質問させていただきます。

Dim s As Single

For s = 0 To 5 Step 0.1
List1.AddItem s
Next s

これを実行すると、リストボックスに 0.1 きざみで 0 から 5 まで
表示される……と思うのですが、
0.8000001
0.9000001
2.799999
などになってしまいます。これはなぜでしょうか?
よろしくお願いします。


312 名前: デフォルトの名無しさん 投稿日: 02/09/08 21:17
漏れは祖父にはもう2,3年は逝ってない。3回ほど万引きに間違えられ
とてもムカついたからだ。他にも買取でモメたり云々・・・
店員の傲慢な態度、”顧客第一”というのはいったいどこへやら・・・
と、いうのを覚えてます。今は違うのかなぁ。
まあ、祖父にはもう二度と逝かないだろう。逝ってよかったことなどひとつも
なかったし。ジャンクは念願のじゃん☆☆神戸店ができたのでそっち行くし。
祖父の会員カードはハサミで2つに切って捨てたし。神戸じゃないけど
祖父っぽい店でしか手に入らないもんは姫路のアプラ井戸に買いに行くし。
それでも手に入らんものは日本橋まででるか通販で買うし。
祖父もバカよのう、漏れなら少なく見積もっても月5万はパーツ買う客だったのに。



313 名前: 回避策は自己流で 投稿日: 02/09/08 22:10
>>311
そりゃパソコンの中身が二進数のコンピューターだから。

例えば、小数点以下 4 桁までしか扱えない二進数だと

二進数 十進数
0    0
0.0001  0.0625

こんな感じで 0 から 0.0625 までの十進数を表現できないと。

当然、もっと桁が増えれば差は縮める事が出来て、それが Single と Double で言う、精度の違いって事。んでもやっぱ誤差はあるのね。

まぁ、試しに上の条件で 0.1 を二進数で表現してみな。

# ていうか間違ってないよな…。;;


314 名前: デフォルトの名無しさん 投稿日: 02/09/08 22:12
>>300 Thank You
>>301 Thank You
>>304 Thank You


315 名前: デフォルトの名無しさん 投稿日: 02/09/08 23:47
質問いいでしょうか。
本でみたコードなんですがよくわかりません。

r = color And &HFF
g = (color \ &H100) And &HFF
b = (color \ &H10000) And &HFF

color はあるピクセルの色を取得したものです。
これはなにをやっているのでしょうか。


316 名前: デフォルトの名無しさん 投稿日: 02/09/08 23:52
>>315
r,g,bそれぞれに
R=色のR値
G=色のG値
B=色のB値
を代入している。


317 名前: デフォルトの名無しさん 投稿日: 02/09/09 00:04
>>316
シンプルですばらしい回答ですな。


>>317
論理演算はプログラムの基本なので興味があれば勉強してみるのが吉。
そんなの知らなくてもプログラム組めるじゃん。とか言ってると簡単に行き詰まるよ。


318 名前: デフォルトの名無しさん 投稿日: 02/09/09 00:16
VB6を使っているんですが、
KeyPreview で、tab と、Shift + tab がつかめないんですが、

tab が押されたのを判断するにはどうすればいいんでしょうか?


319 名前: 315 投稿日: 02/09/09 00:18
>>316 , 317
ありがとーっす。勉強してみます。


320 名前: デフォルトの名無しさん 投稿日: 02/09/09 10:41
>>318
↓API使えば、できるよ。

Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer


321 名前: 投稿日: 02/09/09 10:45
>>318
普通にできるはず。KeyCode = 9 Shift = 1
KeyPressイベントでやってない?KeyDown or KeyUpイベントでやりましょう。


322 名前: デフォルトの名無しさん 投稿日: 02/09/09 11:27
大佐の人生♪
あっぱれあっぱれあっぱれあっぱれ大変だ♪



323 名前: デフォルトの名無しさん 投稿日: 02/09/09 12:45
大学のVB6.0で作ったプログラムのファイル一式を自宅のVB6.0(アカデミック)で編集する事はできたのに、
大学図書館のVB6.0SP3だと読み込んだらVBが勝手に終了してしまいます。なぜでしょう?


324 名前: デフォルトの名無しさん 投稿日: 02/09/09 13:07
>>323
SP6にしてみたらよ?


325 名前: 324 投稿日: 02/09/09 13:07
SP5の間違いですた


326 名前: 323 投稿日: 02/09/09 13:34
>324
図書館のバージョンを勝手に換えるわけにはいかないです。
しかたないので研究室のパソコンの順番待ちをします。


327 名前: デフォルトの名無しさん 投稿日: 02/09/09 13:35
どうでもいいが貧乏な大学だな・・・。
うちマシン普通に余ってるけど・・・。


328 名前: デフォルトの名無しさん 投稿日: 02/09/09 13:54
指定した時間がきたら、処理を行うプログラムを作りたいのですが、
timeステートメントで時刻を常時監視するしかないのでしょうか?
時間がきたら、OSから通知させる方法ってありますか?


329 名前: デフォルトの名無しさん 投稿日: 02/09/09 14:11
>>328
settimerは一定時間後にOSから連絡があるね。
じゃあタイマーコントロールでいいじゃんというお話。


330 名前: デフォルトの名無しさん 投稿日: 02/09/09 14:34
>327
うちは分析屋だから分析機やその端末がメインなんだよ。
普段は必要な人がワードとエクセルを使うだけ。


331 名前: デフォルトの名無しさん 投稿日: 02/09/09 15:19
VB6.0 ADO+Oracleでストアドプロシージャから
件数が複数ある戻り値を取得したいのですが、上手く行きません。
どこが間違っているかご指導お願いできますでしょうか。

Set objADOcmd = New ADODB.Command
Set objADOcmd.ActiveConnection = cnn
 objADOcmd.CommandText = "tst_Get_Cursor_pkg.tst_Get_Cursor"
objADOcmd.CommandType = 4
 Set p0 = objADOcmd.CreateParameter
p0.Direction = adParamOutput
p0.Type = adChar
p0.Size = 19

Set p1 = objADOcmd.CreateParameter
p1.Direction = adParamOutput
p1.Type = adInteger

objADOcmd.Parameters.Append p0
objADOcmd.Parameters.Append p1
objADOcmd.Execute
MsgBox p1.Value



332 名前: ◆AeRNbA9k 投稿日: 02/09/09 15:35
VB5 SP3でやってます。
コモンダイアログボックスを表示(.ShowSave)すると画面の左上に表示されます。
画面中央に表示させたいのですが、何かいい方法はないでしょうか?



333 名前: デフォルトの名無しさん 投稿日: 02/09/09 16:02
VBでAccessDBからデータ引っ張ってきて、それをExcelに出力し、
最後にそのExcelを表示しようとして
exlApp.Visible = True
としたのですが、なぜかExcelの枠だけが表示され、
セルの部分が透明になって表示されません(一つ下のウインドウが見えています)。

メニューバーとツールバー及び、数式バーは普通に表示されており、
セル部分も透明なのを除けば、通常通りクリックすると数式バーに値が表示されます。

何が悪いのでしょうか。


334 名前: デフォルトの名無しさん 投稿日: 02/09/09 16:16
>>333
VBからEXCELファイルを新規作成した時、俺も同じ現象に陥った。
試行錯誤した結果あきらめた。
あらかじめ、ファイルを用意しておけば問題ない。


335 名前: デフォルトの名無しさん 投稿日: 02/09/09 16:28
>>333
WorkBookをAddしてないからじゃない?


336 名前: デフォルトの名無しさん 投稿日: 02/09/09 16:29
>>335
俺もそう思う。そんなに難しい問題じゃなかったはず。


337 名前: デフォルトの名無しさん 投稿日: 02/09/09 16:35
>>333
CreateObjectやNewを省略して暗黙のインスタンスを使ってるから。


338 名前: 投稿日: 02/09/09 16:51
>>331
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Set rs = objADOcmd.Execute
で後はrsを参照


339 名前: デフォルトの名無しさん 投稿日: 02/09/09 16:57
教えてください。
フォームのテキストボックスは、indexによって1次元の配列はできると思いますが、
2次元の配列は作成可能ですか?

それが無理でしたら、
プログラム側の2次元データを、
フォーム側の2次元の表(1個1個独立したテキストボックス)に表示する
簡単な方法はありませんか?


340 名前: 331 投稿日: 02/09/09 17:13
>>338さん

レスありがとうです。
ごめんなさい、全然解らないです。。。

 objADOcmd.Parameters.Append p0
 objADOcmd.Parameters.Append p1
 objADOcmd.Execute
 を

objADOcmd.Parameters.Append p0
 objADOcmd.Parameters.Append p1
Set rs = New ADODB.Recordset
Set rs = objADOcmd.Execute
MsgBox rs.Fields(0).Value

に変えてみましたが、こう言う事であってるでしょうか。
でも動かなかったので間違ってますよね・・・
すいません、詳しく教えていただけますでしょうか。



341 名前: 333 投稿日: 02/09/09 17:26
>>335-336
Addしてます。
>>337
Set exlApp = New Excel.Application
ですよね?これもやってます。


一度Excelアプリケーションごと閉じて、再度開くと
普通に開くことが出来るので、仕方なしにそれでやってます。。。


342 名前: デフォルトの名無しさん 投稿日: 02/09/09 17:35
>>341
dim xl as object
set xl = createobject("excel.application")
xl.workbooks.add
xlapp.visible=true

でとりあえず表示できたけど、だめ?


343 名前: 334 投稿日: 02/09/09 17:35
>>333
↓これで出来たよ。

Dim objExcel As Object
Dim objBook As Object
Dim objSheet As Object

Set objExcel = New Excel.Application
Set objBook = objExcel.Workbooks.Add
Set objSheet = objBook.Worksheets(1)

objExcel.Visible = True


344 名前: 333 投稿日: 02/09/09 17:41
>>342-343
ありがとうです。
お2人の書かれている事とほぼ同じことをしています。
そして、内部の処理をすっ飛ばすと、問題なく表示されるようです。
何が悪いのか自分で調べます。
ありがとう。


345 名前: 337 投稿日: 02/09/09 17:58
>>341
> Set exlApp = New Excel.Application
> ですよね?これもやってます。
これもだけど、
exlAppのメンバとして書かないといけないところを
うっかりミスで省略してしまった時も、
暗黙のインスタンスを使っていることになるよ。

具体例としては
  exlApp.Range(exlApp.Cells(1,1), exlApp.Cells(1,2))
と書くべきところを
  exlApp.Range(Cells(1,1), Cells(1,2))
と書いてしまっていたり。


346 名前: 投稿日: 02/09/09 19:00
>>340 どこでどんなエラーが出るの?


347 名前: _ 投稿日: 02/09/09 19:20
とあるアプリを作っていて
マウスジェスチャーを実装しようと思うんですが・・・作り方にちょっと迷っています。
出来る限り誤審がなくて、上下左右を複数回数いくらでも調べれれば最高なんですが。

どういう方法でやるのがスマートだと思われますか?
とりあえず、出来れば何でもいいってのもありますが。


348 名前: デフォルトの名無しさん 投稿日: 02/09/09 19:47
GetCursorPosとタイマー使って仮想ラインを考えて判断


349 名前: デフォルトの名無しさん 投稿日: 02/09/09 20:13
どなたか、お願いします。
フォームのテキストボックスは、indexによって1次元の配列はできると思いますが、
2次元の配列は作成可能ですか?

それが無理でしたら、
プログラム側の2次元データを、
フォーム側の2次元の表(1個1個独立したテキストボックス)に表示する
簡単な方法はありませんか?



350 名前: デフォルトの名無しさん 投稿日: 02/09/09 20:24
>>317
細かいツッコミで申し訳ないけど、「論理演算」ではなく、「ビット演算」でしょ?

ついでに、(>>317さんは当然ご存知かと思いますが)VBの論理演算子は短絡評価できない
点にも注意。(論理演算子とビット演算子が兼用だから)
(VB.NETでは、短絡評価用の演算子が追加されました)


351 名前: デフォルトの名無しさん 投稿日: 02/09/09 20:54
>>349
テキストボックスで表を作るなんて仕様では
みんな相手する気にならないんだろうな、きっと。


352 名前: 349 投稿日: 02/09/09 20:58
>>351

一般的には、どういう方法をとるんですか?
初心者なもんで、教えてください。



353 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:01
http://www.39001.com/cgi-bin/cpc/gateway.cgi?id=kntkntknt
これよくない?


354 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:02
>>352

どんな趣旨、目的で、どんなカタチのモノを作ろうとしているのか、意図する
ところがサパーリわからんので、コメントのしようがありません。

> 初心者なもんで、教えてください。
初心者なら、大いに勉強するよろし。


355 名前: 349 投稿日: 02/09/09 21:09
>>354

10*6の2次元配列のデータを、フォームに表示したいです。
フォームからの入力は無く、表示だけです。

どういった方法が、良いのでしょうか?


356 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:12
>>355
Print


357 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:19
>>355

> 10*6の2次元配列のデータを、フォームに表示したいです。

それは「手段」であって、「目的」ではない。

こちらは、「どこに、何しに行くのか?」と聞いている(当然、
「東京に彼女に会いに行く」、といった答えを期待している)
のに、君は、「10:06の発の「のぞみ」に乗りたい」と答えている
ようなものだ。

日本語が読めるなら、
>>354
を16回ほど読み直しなさい。



358 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:29
>>357
きみもちょっとおかしいよ。
東京に行く手段を聞いてるのに、彼女に会いに行くって答えられても困る


359 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:35
>>349 が舌足らずなのは、良いとして >>357 も結構脳足らずだな。
「東京に彼女に会いに行く」のが手段ではなくて目的だとか言ってるが、
実は最終目的である「彼女と一発やる」と言う目的のための手段とも言え
るぞ。
まあ本人が、「10*6の2次元配列のデータを、フォームに表示したい
です。」って言ってんだから、素直に 60個 テキストボックス (入力無い
なら、ラベルでもいいかな) のコントロール配列作って、
TextBox1(10 * 行 + 列) みたいにしてアクセスりゃ良いんじゃない ?
(行/列は、反対かも知れんが...。) まあ、俺なら面倒だから FlexGrid
コントロールあたりを使うと思うけど...。


360 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:47
>>359
>>351の時点でその書き込みをしていたら、いい人になれたのにね。


361 名前: デフォルトの名無しさん 投稿日: 02/09/09 21:49
>>349
まさか何十個もテキストボックスをフォームにペタペタすんの?
リソースの無駄使いだよ。フレキシブルグリッドとか使った方が良いと思われ。
又は自前で格子を描画するとか。
間違いなくそのプログラムは構造上問題がありますよ。


362 名前: デフォルトの名無しさん 投稿日: 02/09/09 22:04
だが実際、そういうVBアプリをよく見かけるという罠。
そんなことするからVB厨とか言われるんだよな(藁


363 名前: 349 投稿日: 02/09/09 22:06
どうもありがとうございました。
flexgrid というのでやってみます。

舌足らずで失礼しました


364 名前: デフォルトの名無しさん 投稿日: 02/09/09 22:07
てか表示だけならわざわざテキストボックス並べる事もないだろ。


365 名前: デフォルトの名無しさん 投稿日: 02/09/09 22:25
>>321
TABキーはWindowsが拾うから、
TabStop=Trueなコントロールを複数置いている場合は
KeyPreview=Trueにしてる状態でKeyDownでも拾えない。

>>332
ttp://www.kit.co.jp/vbit/QAndA.htm

>>350
>細かいツッコミで申し訳ないけど、「論理演算」ではなく、「ビット演算」でしょ?
ビット演算自体が論理演算だぞ。




366 名前: デフォルトの名無しさん 投稿日: 02/09/09 22:31
>>358 >>359
355の
>10*6の2次元配列のデータを、フォームに表示したいです。
が実装レベルの得られる結果を言ってるのに対して、
354の求めるものは、それの利用目的を聞いているだけだろって357の
ツッコミは妥当だと思うぞ。

>「東京に彼女に会いに行く」のが手段ではなくて目的だとか言ってるが、
>実は最終目的である「彼女と一発やる」と言う目的のための手段とも言えるぞ。

本論から離れてるだろ。君の言うところは、3番だな。
1.実装 10*6の2次元配列のデータを、フォームに表示
2.機能 マスタメンテ用の項目A〜Zを表形式で入力するUI作成
3.目的 システムを作ることで利益を上げる



367 名前: デフォルトの名無しさん 投稿日: 02/09/09 23:19
テキストボックスで表を作成した例ね。
ttp://www.woodland.co.jp/erp/V3.htm


368 名前: デフォルトの名無しさん 投稿日: 02/09/09 23:27
>>366
> 3.目的 システムを作ることで利益を上げる
システムを作ることで利益をあげて、来年は上場だ !!
利益をあげることだって、単なる手段とも言えるんだよ。
同じ事柄でも、見方によって違うって言うのが理解できないの ?


369 名前: デフォルトの名無しさん 投稿日: 02/09/10 00:10
>>365
> ビット演算自体が論理演算だぞ。
「ビット演算」とは、「ビット毎の論理演算」の通称で、通常言う論理演算とは
別物。>>350 も、短絡評価とか書いてるんだから、それぐらい理解してやれや。


370 名前: デフォルトの名無しさん 投稿日: 02/09/10 00:25
>>368
354の意図がそんなところにあったと君は思うわけ?


371 名前: 369 投稿日: 02/09/10 00:27
>>369
読み直すと、ちょっと意味の取り間違えそうな文章だ。
× >>350 も、短絡評価とか書いてるんだから、それぐらい理解してやれや。
>>350 には、短絡評価とかも書いてるんだから、>>365 もそれぐらい理解し
てやれや。



372 名前: 365 投稿日: 02/09/10 00:37
>>369
>「ビット演算」とは、「ビット毎の論理演算」の通称で、
もちろん、おれもそれは知った上で突っ込んでる。

>通常言う論理演算とは別物。
350がそう言いたいのだろうということも理解した上で突っ込んでる。

350>「論理演算」ではなく、「ビット演算」
ビット演算も論理演算(の一種)だから、
「正確に言うなら論理演算というよりもビット演算」
という方が妥当だし、誤解もない。

350>(論理演算子とビット演算子が兼用だから)
兼用なのではなく、ビット演算子しかない。そして、それは論理演算子とヘルプでは呼ばれている。
#前橋本のJavaにはポインタしかないって主張と似たこと言ってるな・・・
#漏れもDQNだ・・・逝ってきます

ま、半分ネタみたいなもんだから、気にするな。


373 名前: デフォルトの名無しさん 投稿日: 02/09/10 02:45
>>317はあえてネタフリで論理演算って書いたんだろ。
良かったな。たくさん釣れて。


374 名前: 投稿日: 02/09/10 09:06
>>365 あら。Sorry


375 名前: 332 ◆AeRNbA9k 投稿日: 02/09/10 10:01
>>365
ありがとー。


376 名前: デフォルトの名無しさん 投稿日: 02/09/10 11:00
>>373
八つ当たり(・へ・)イクナイ


377 名前: 331 投稿日: 02/09/10 11:14
>>346
レスが遅くなって申し訳ありません。

Set rs = objADOcmd.Executeの部分で、引数が正しくないと言うエラーが出るのですが、
間違いなく引数の数は合っているのです。
なので、SQLの検索結果の値が複数あることが要因なのかと思ったのですが、
値が複数ある場合、戻り値の取得の仕方は変えなければならないのでしょうか。





378 名前: 357 投稿日: 02/09/10 11:18
>>359
俺は脳足らずじゃねえよ!!糞野郎!!


379 名前: デフォルトの名無しさん 投稿日: 02/09/10 11:28
コマンドボタンを見えない状態(Visible=true)すると不可視状態って言うじゃないですか?

コマンドボタンとか押せない状態(Enable=False)にした状態を日本語で言うと
なんて言いますかね?



380 名前: デフォルトの名無しさん 投稿日: 02/09/10 11:29
>>377
>Set rs = objADOcmd.Executeの部分で
テーブル名とか伏字でもいいから書いてほしかったりする


381 名前: デフォルトの名無しさん 投稿日: 02/09/10 11:30
>>379
無効


382 名前: デフォルトの名無しさん 投稿日: 02/09/10 12:04
>>378

なりすましはヤメレ。

・・・コテハン使うべきか?



383 名前: デフォルトの名無しさん 投稿日: 02/09/10 12:42
例えば
If 増やしたい時 Then
Count = Count + 1
list1.additem Count
EndIf
のようにしてリストボックスの項目を増やしていく時
上記の場合だと
┏━┓
┃..1.┃
┃..2.┃
┃..3.┃
┃..4.┃
┗━┛
と言う感じになりますが
これを
┏━┓
┃..4.┃
┃..3.┃
┃..2.┃
┃..1.┃
┗━┛
と言った感じに上から追加ってなことって出来ないんでしょうか?


384 名前: デフォルトの名無しさん 投稿日: 02/09/10 12:45
カウントダウンすりゃいいじゃん。
Count = Count - 1
って。


385 名前: デフォルトの名無しさん 投稿日: 02/09/10 12:45
ごめん間違い。


386 名前: デフォルトの名無しさん 投稿日: 02/09/10 12:47
List1.AddItem Count, 0
コッチがあたり。


387 名前: デフォルトの名無しさん 投稿日: 02/09/10 12:47
>>383はヘルプでAddItemを調べたことがあるのだろうか?


388 名前: 383 投稿日: 02/09/10 12:52
当方の怠慢故に皆様のお手を煩わせたことを先ず謝罪いたします。申し訳ございませんでした。
ソレにもかかわらず回答、アドバイスしてくださった>>385-387さんには深くお礼申し上げます
ありがとうございました


389 名前: デフォルトの名無しさん 投稿日: 02/09/10 13:01
>>387
IDEの使い方で最初に憶えなければいけないのが、[F1](ヘルプ)、
[F2](オブジェクトブラウザ)、[Ctrl] + [G](デバッグウィンドウ)、
[Shift] + [F2](定義元へのジャンプ)あたり。
新人教育担当の方、よろしく。


390 名前: デフォルトの名無しさん 投稿日: 02/09/10 13:32
ピクチャーボックス内で画像をスクロールさせたかったので
MSDNの<スクロール バー コントロールの使用例
: スクロール可能なグラフィックス ビューポートの作成>
のコードをそのままコピーして実行したんですけど、
スクロールバーが出現してくれないんです。画像はでるんだけど。
もちろんウィンドウよりでかい画像を表示させようとしてるんですが。
考えられる理由ありますか?


391 名前: デフォルトの名無しさん 投稿日: 02/09/10 14:30
>>390
「子ピクチャの全体が画面に表示できるかどうかを判別します。
表示できる場合、スクロール バーは不要です。」って書いてる。
フォームサイズを小さくするか、以下のコードをコメントすれば出るよ。
VScroll1.Visible = (Picture1.Height < Picture2.Height)
HScroll1.Visible = (Picture1.Width < Picture2.Width)


392 名前: デフォルトの名無しさん 投稿日: 02/09/10 15:12
>>391
その2行コメントにしたり、フォームサイズ小さくしたんですけど
どうにもスクロールバーはでてくれません。
なんででしょうか?




393 名前: デフォルトの名無しさん 投稿日: 02/09/10 15:13
標準もじゅるってSingletonだったんすね。

もじゅる名.ぷろぱち名 = 値
上のコード動いた。


394 名前: デフォルトの名無しさん 投稿日: 02/09/10 15:22
プロパチ名 = 値
だけでも動いてしまう罠。


395 名前: 発破 投稿日: 02/09/10 16:00
HTMLやXMLを記述することをプログラミングと言わないのは
何故ですか??


396 名前: デフォルトの名無しさん 投稿日: 02/09/10 16:03
メールボムってどうやって入手したらいいですか?


397 名前: デフォルトの名無しさん 投稿日: 02/09/10 16:08
>>396
ネタやるなら住人のノリの良い板に行った方がいいと思われ。


398 名前: デフォルトの名無しさん 投稿日: 02/09/10 17:24
>>396
自分のメアド晒せば簡単に手に入る。やってみろ。


399 名前: デフォルトの名無しさん 投稿日: 02/09/10 17:35
>>395
ネタかと思ったがマジらしいな。
HTMLもXMLもマークアップ言語でプログラミング言語ではない。
それからマルチすんな氏ね。


400 名前: 347 投稿日: 02/09/10 18:24
>>348
反応遅くなってすみません。
なるほど。やっぱりカーソル位置取得する関係上GetCursorPosは必須ですか。
にしても「仮想ラインを考えて判断」って、俺の蟹味噌にはチンプンカンプンです・・・
どうやって判定するといいんだろ。適当に作ってみたんですがぐちゃぐちゃになっちゃったw
とりあえずもう一度組み直してみるです。


401 名前: デフォルトの名無しさん 投稿日: 02/09/10 21:06
16776960をRGB(■,■,■)にしたいんだけど■の部分が知りたいんだけど
どうしたええの( ゚д゚)


402 名前: デフォルトの名無しさん 投稿日: 02/09/10 21:07
>>401
共用体


403 名前: デフォルトの名無しさん 投稿日: 02/09/10 21:19
>>401
256*256*256


404 名前: デフォルトの名無しさん 投稿日: 02/09/10 21:48
シーケンシャルモードで任意の行数を読み込ませるにはどうすればいい
のでしょうか?
ランダムモードだとgetでレコードを指定すれば出来ますが、シーケンシャルモード
で8行目を読ませたい等と言うときは・・・


405 名前: デフォルトの名無しさん 投稿日: 02/09/10 21:53
全部読み込んで改行数えるなりsplitで取り出すなりどうぞ。


406 名前: デフォルトの名無しさん 投稿日: 02/09/10 22:08
VBScriptのコーディング規約みたいなのって
どっかにないでしょうか?


407 名前: デフォルトの名無しさん 投稿日: 02/09/10 22:55
>>406
VBに準ずる(殉ずる、ではない)でよいと思う。
具体的には、VB用のコーディング規約を基に言語仕様上の相違点(例 : VBScriptでは
アーリーバインドができない)を考慮しつつ変更を加えればよい。


408 名前: デフォルトの名無しさん 投稿日: 02/09/10 22:56
アイコンの変え方なんですけど、
各ダイアログや、メインで使用するフレームは変える事ができたんですけど、
「ALT」+「TAB」で出る大きいアイコンの変え方が分らないんですよ。
お願いします。



409 名前: デフォルトの名無しさん 投稿日: 02/09/10 22:58
>>404
ループで読んで、8回目。



410 名前: デフォルトの名無しさん 投稿日: 02/09/10 23:04
>>405
>>409
サンクスです。もう一度試行錯誤してみます


411 名前: デフォルトの名無しさん 投稿日: 02/09/10 23:28
>>392
バーを貼る位置が間違ってると思われ。




412 名前: 投稿日: 02/09/11 01:15
>>408
メニュー プロジェクト>***のプロパティ をクリック
ダイアログ「実行可能ファイルの作成」タブにアイコンを設定する所がある。
それとフレームじゃなくてフォームね。


413 名前: 331 投稿日: 02/09/11 09:19
>>380さん

あ、そうですね。すいません。。
テーブル名は tst_meisai

項目は
tst_meisaiID,tst_itemnun,tst_part,tst,amount,tst,tst_comm,tst_cost,tst_date

ストアドの内容は、戻り値が二つで、全件検索でtst_dateと成否を01で返してます。



414 名前: デフォルトの名無しさん 投稿日: 02/09/11 09:37
金がないのでVB買えません。
IE+VBScriptでもVBの勉強はできますか?


415 名前: 投稿日: 02/09/11 09:41
>>413
tst_dateってことは引数はDate型じゃないの?
検索条件は渡さなくていいの?

そのストアド、動作確認はされてる?
他のストアドはちゃんと動いてる?


416 名前: 投稿日: 02/09/11 09:44
>>415 引数じゃなくて戻り値だ。ごめん。


417 名前: 投稿日: 02/09/11 09:46
>>414 VBAのほうがいいんじゃない?


418 名前: デフォルトの名無しさん 投稿日: 02/09/11 11:24
最近のRDBほどの機能は必要ないけど、テキストファイルじゃ役不足。
そんな時に使えそうな、動作・サイズが軽いDB(?)って無いでしょうか?


419 名前: デフォルトの名無しさん 投稿日: 02/09/11 12:06
>>418
> 最近のRDBほどの機能は必要ないけど、テキストファイルじゃ役不足。
どーゆー機能が必要かによる。
一意のキーで項目を取得したいならiniファイルでいいようなきもするけど。


420 名前: デフォルトの名無しさん 投稿日: 02/09/11 12:21
ControlとObjectの差を教えて下さい。
 Dim t1 As TextBox
 Dim t2 As Control
 Dim t3 As Object
であれば、上から順に処理が早い気がします(正確には分かりません…)が、
下2つの意味がカブっているように思えて仕方ないっす。


421 名前: デフォルトの名無しさん 投稿日: 02/09/11 12:29
>>420
>  Dim t1 As TextBox
>  Dim t2 As Control
>  Dim t3 As Object
> であれば、上から順に処理が早い気がします(正確には分かりません…)が、
> 下2つの意味がカブっているように思えて仕方ないっす。
どちらかっていうと上2つの意味がカブってる。
Objectはデータ型で、その他二つはオブジェクトのアーリーバインディング。



422 名前: 初心者 投稿日: 02/09/11 12:35
一個のWinsockで1対nのチャットを作りたいんですけど、
どうすれば1対nでできるかわかりません。
おすえてくださいお願いしまふ


423 名前: デフォルトの名無しさん 投稿日: 02/09/11 13:00
>>422
>どうすれば1対nでできるかわかりません。
友達を作る


424 名前: デフォルトの名無しさん 投稿日: 02/09/11 13:06
>>421はネタ。


425 名前: 投稿日: 02/09/11 13:10
>>420
上は事前バインディング、中・下は実行時バインディング。なので上が速い。
中・下は確かにカブってるが、下はコントロール以外のオブジェクトも使えるという違いがある。


426 名前: デフォルトの名無しさん 投稿日: 02/09/11 13:46
すみません。とあるプログラムで登録、更新、削除、検索、終了の機能を持った
ものを作っているんですが、Case文でF1で登録・F3で終了・F6で更新・F9で削除
というふうにしたつもりなのですが

Private Sub ○○_KeyDown(KeyCode As Integer, Shift As Integer)
Dim KeyAscii As Integer
KeyCode = (Case文のある関数名)(KeyAscii, KeyCode)
End Sub

Private Function (Case文のある関数名)(KeyAscii As Integer, KeyCode As Integer) As Integer
Select Case KeyAscii
Case KeyCode = vbKeyF1
(登録の関数名)
Case KeyCode = vbKeyF3
Unload Form1(終了)
Case KeyCode = vbKeyF4
(初期化の関数名)
Case KeyCode = vbKeyF6
(更新の関数名)
Case KeyCode = vbKeyF9
(削除処理の関数名)
Case KeyCode = vbKeyReturn
(検索の関数名)
End Select
End Function

でコーディングしたのですが、うまくいきません・・・。
どの部分が間違っているのでしょうか?


427 名前: デフォルトの名無しさん 投稿日: 02/09/11 13:47
ちなみにIf文で

Private Sub ○○_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF1 Then
(登録の関数名)
ElseIf KeyCode = vbKeyF3 Then
Unload Form1(終了)
ElseIf KeyCode = vbKeyF4 Then
(初期化の関数名)
ElseIf KeyCode = vbKeyF6 Then
(更新の関数名)
ElseIf KeyCode = vbKeyF9 Then
(削除処理の関数名)
ElseIf KeyCode = vbKeyReturn Then
(検索の関数名)
End If
End Sub

とコーディングした際にはちゃんとどの機能も動作しました


428 名前: 投稿日: 02/09/11 14:04
>>426 >>427
KeyAsciiの値が常にゼロだから。
宣言しただけで値入れてないでしょ。


429 名前: 投稿日: 02/09/11 14:10
いやそれだけじゃないな。なんじゃこのSelect文は。
これだとF1時に終了、それ以外は登録になる!?


430 名前: 投稿日: 02/09/11 14:16
はい。
Private Sub ○○_KeyDown(KeyCode As Integer, Shift As Integer)
(Case文のある関数名) KeyCode
End Sub

Private Function (Case文のある関数名)(KeyCode As Integer) As Integer
Select Case KeyCode
Case vbKeyF1
(登録の関数名)
Case vbKeyF3
Unload Form1(終了)
Case vbKeyF4
(初期化の関数名)
Case vbKeyF6
(更新の関数名)
Case vbKeyF9
(削除処理の関数名)
Case vbKeyReturn
(検索の関数名)
End Select
End Function




431 名前: 426 投稿日: 02/09/11 14:16
>>428&>>429
レスありがとうございます。
>>429さんの言うとおりF1を押すと終了でそれ以外は登録処理を行うような動作をします。
なぜなのか理屈がわからない・・・


432 名前: 投稿日: 02/09/11 14:27
>>431
さっきも書いたけどKeyAsciiの値が常に0。
そしてVBでTrueは-1、Falseは0。
F1の時
  KeyCode = vbKeyF1はTrue、=-1、<>KeyAscii。
  KeyCode = vbKeyF3はFalse、=0、=KeyAscii。
なのでCase KeyCode = vbKeyF3の処理をする。
F1以外の時
  KeyCode = vbKeyF1はFalse、=0、=KeyAscii。
なのでCase KeyCode = vbKeyF1の処理をする。


433 名前: 426 投稿日: 02/09/11 14:33
>>432(神!)
ありがとうございました。>>430の通りコーディングした結果ちゃんと動作しました。
理屈を覚えないとまた同じ繰り返しになるのでこれからじっくりと解析してみます


434 名前: デフォルトの名無しさん 投稿日: 02/09/11 14:34
DBから帳票出力する際に、処理に時間がかかるので、
「出力中なのでしばらく待ってね」
みたいなこと書いた小さいフォームを前に出して、バックで
処理を行いたいのですが、この時、小ウインドウをモーダルで開き、
その他の部分に触られたくないと思うものの、モーダルだと
処理も止まってしまうので困ってます。
こういう場合、一般的にはどういう処理を行うのでしょうか。


435 名前: デフォルトの名無しさん 投稿日: 02/09/11 15:04

SPREADで、特定のセルにフォーカスを当てたいときはどうすればいいですか?

よろしくです。



436 名前: 投稿日: 02/09/11 15:13
>>434 一般的かどうか知らないけど思いついたものを。
Form1.Enabled = False
Form2.Show
Form2.Refresh
時間のかかる処理
Unload Form2
Form1.Enabled = True


437 名前: 投稿日: 02/09/11 15:23
>>435
fpSpread1.Row = ???
fpSpread1.Col = ???
fpSpread1.Action = ActionActiveCell



438 名前: FIGHT 投稿日: 02/09/11 15:38
現在VB6.0とアクセスを使用しております。
  Set cn = New ADODB.Connection
Set sRs = New ADODB.Recordset
With cn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & path
.Open
.CursorLocation = adUseClient
End With
strSQL = "SELECT Table.*FROM Table
sRs.Open strSQL, cn, adOpenStatic, adLockOptimistic
上記のように記述して[sRs]にレコードをセットしているのですが、
sRs.Delete
をした場合に下記のようなエラーがでます。この現象は一回Updateで
DBに登録して、その登録したものに対して削除かけようとしたら発生します。
でまた、プロジェクトを閉じて、再度実行してデリートすれば下記のエラーは発生しません。
このような経験のある方のアドバイスよろしくおねがいします。
実行時エラー21247217864
行がみつからなかったため、更新できません。列の値は最後に読み込まれた後で変更された可能性があります。




439 名前: デフォルトの名無しさん 投稿日: 02/09/11 15:40
>437

即レスサンクス!!


440 名前: デフォルトの名無しさん 投稿日: 02/09/11 15:40
>>438
sRsが指し示すレコードがなかったんでしょ。
.BOF/.EOFのチェックしてる?


441 名前: 418 投稿日: 02/09/11 15:45
>419
なるほどiniファイルも小さなデータベースとして使えますね!メモメモ。

機能としては、レコードの追加・削除・更新、あとは項目を指定してのソートと検索が出来れば文句無しだと思っています。
アプリ中のログ管理とか、ちょっとしたデータ管理とか、汎用的に使いまわせるようなものを探しています。
自分でクラスモジュールでも書いちゃったほうが早いですかね?


442 名前: 投稿日: 02/09/11 15:45
>>438 adOpenStaticをadOpenKeysetかadOpenDynamicに変えたら動いたりしないかな?


443 名前: FIGHT 投稿日: 02/09/11 16:00
>440
EOF,BOFともにFALSEであり、しかも削除するレコードも存在してます。
>442
わたしもこれをはじめにためしたのですが、結果は一緒でした。



444 名前: デフォルトの名無しさん 投稿日: 02/09/11 16:02
http://yahooo.s2.x-beat.com/


445 名前: デフォルトの名無しさん 投稿日: 02/09/11 16:04
XP+Access VBAについてです
テキストファイルへ文字列を出力するとき、ダブルコーテーションを(”)
つけないようにする方法はありますでしょうか?

どなたか、ご親切な方、ご教授くださいませ





446 名前: デフォルトの名無しさん 投稿日: 02/09/11 16:14
今はどうやってんのよ


447 名前: 投稿日: 02/09/11 16:20
>>443 RequeryかResyncメソッド使ってみたら?


448 名前: 445 投稿日: 02/09/11 16:32
>>446

今は OPEN WRITE でやってます


449 名前: FIGHT 投稿日: 02/09/11 16:42
>447
ありがとうございます。
一回登録するときに「Update」したあとに「Requery」かけたら
削除するときにエラーがでなくなり通常通り削除できました。
しかし前やったときはRequeryはしなかったのに削除できたんですけどね・・・。
こういう現象というのはあるんですね。



450 名前: デフォルトの名無しさん 投稿日: 02/09/11 16:44
>>445

Dim fNum As Integer
Const fNm = "a.txt"

fNum = FreeFile
Open fNm For Append As #fNum
Print #fNum, "A"
Close #fNum


451 名前: 445 投稿日: 02/09/11 16:50
>>450
有難うございました



452 名前: デフォルトの名無しさん 投稿日: 02/09/11 17:01
アドバイスお願いします。

メイン処理 と タイマイベント処理 があります。
メインがある処理まできたら、指定した時間がくるまでメインの処理を中断して、
タイマイベント処理で、その指定した時間がきたかチェックして、
時間がきたらメインに通知して処理を再開させたいです。

タイマ側での時間の経過チェックの方法まではわかったのですが、
メイン側でどうやって処理の中断をして、
タイマ側でどうやってメインの処理を再開させればいいのかがわかりません。

よろしくお願いします



453 名前: 投稿日: 02/09/11 17:02
>>449 根本的解決じゃないからスッキリしないな・・・何か原因があるはず・・・


454 名前: デフォルトの名無しさん 投稿日: 02/09/11 17:03
みなさんとても親切ですね。知識もありますし。
プロとして開発やってたりする人達なのかな・・・?


455 名前: デフォルトの名無しさん 投稿日: 02/09/11 17:20
VB6.0でシステムトレイに納めるにわどうしたらいい?


456 名前: 421 投稿日: 02/09/11 17:32
>>424
> >>421はネタ。
ネタじゃないのに。。。

オブジェクトブラウザではTextBoxもControlもクラスとされています。
TextBoxのスーパークラスがControlでしょ?
であるから
>  Dim t1 As TextBox
>  Dim t2 As Control
>  Dim t3 As Object
の一番の差異は上二つがインスタンス生成、一番下がオブジェクト型の変数生成であることだと
おもったのですが。。。
ていうか、>>421の表現はまちがってますね。(^^;

識者の方のご意見お願いします。m(_ _)m



457 名前: デフォルトの名無しさん 投稿日: 02/09/11 17:34
>>455
http://homepage1.nifty.com/MADIA/vb/API/Shell_NotifyIcon.htm


458 名前: 419 投稿日: 02/09/11 17:37
>>441
> 機能としては、レコードの追加・削除・更新、あとは項目を指定してのソートと検索が出来れば文句無しだと思っています。

そこまでの機能が必要ならRDBMS使ったほうがよいとおもう。

> アプリ中のログ管理とか、ちょっとしたデータ管理とか、汎用的に使いまわせるようなものを探しています。
> 自分でクラスモジュールでも書いちゃったほうが早いですかね?

ログ管理はWindowsのシステムロギングをつかうのが楽。


459 名前: デフォルトの名無しさん 投稿日: 02/09/11 18:02
>>452
簡単に言ったら、メイン処理を一定時間だけ中断したいってことでしょ?


460 名前: _ 投稿日: 02/09/11 18:04
>>152
いちいちそんな面倒なことしなきゃいけない理由はお有りですか?
どうしてもTimerを使ってやる必要がある!ってならこのレス読み飛ばしてください。

APIのSleep使って一定時間処理止めてやってください。


461 名前: _ 投稿日: 02/09/11 18:04
スマソ
152 > 452


462 名前: 434 投稿日: 02/09/11 20:03
>>436
ども、>>434です。
FORM2で作業するんすね。
できれば、Windowsのジョブ自体止めたいですが、さすがに無理ですかね?
例えばAlt+Tab押しても切り替わらなかったり、ミ田キー押してもメニューでなくなったり。


しかし関係ないけど、この(*´д`*)アハァ… はいいなぁ。
見つけやすいし。
ずっと使って欲しい。


463 名前: デフォルトの名無しさん 投稿日: 02/09/11 21:44
ActiveXでサーバの役割をするアプリケーションを作ったのですが
呼び出し元のアカウント?が違うとそのアプリケーションにアクセス出来ません。
元々呼び出し元は一つだったのに気にして無かったのですが仕様が変わってしまい
しかも運用方法の制限が有ってDCOMCNFGでの設定をいじっても解決できません。
で、呼び出し元用に子EXEで作って常にAdminアカウント下で呼び出せば解決する
様な気がするのですがあってるでしょうか?(というか一つの呼び出し元ではアカウント
指定出来るので・・・)また実現方法等ありましたらご教授お願いしますm(_ _)m



464 名前: 424 投稿日: 02/09/11 21:52
>>456
ネタじゃないなら一応マジレスしとくよ。

> TextBoxのスーパークラスがControlでしょ?
TextBox型の内部にControlインターフェイスが
実装されているという点だけ見れば間違いではないけどね。
でもそれはObject型でも同じ。

すべてのコントロールの、(IUnknownとかIDispatchを除いた)
カスタムインターフェイスの部分に共通して
「メンバ名に対するバイナリ互換性」がない限りは、
Control型のVTable経由で(つまりアーリーバインド)で
直接メンバを呼び出すことは不可能。

実際に、Control型は単にIDispatchに別名を持たせた
ようなもので、アーリーバインド用のメソッドは
持っていない。
つまり、Object型との違いは代入時の型チェックだけ。

> の一番の差異は上二つがインスタンス生成、
> 一番下がオブジェクト型の変数生成であることだとおもったのですが。。。

インスタンス生成っていうのは全然違うよね。
これらの宣言だけでは変数はインスタンスを生成しない。
あんたの言葉を借りれば3つとも「変数生成」です。

これらの変数にインスタンスを持たせるには、
Setステートメントでオブジェクト(インスタンス)を
参照する必要がある。


465 名前: デフォルトの名無しさん 投稿日: 02/09/11 22:10
>>459-460
メインの処理を止めてる間に、違う事したいんじゃないのかな ?

Sub Form_Load()
 Call メインの処理_途中まで。
 Timer1.Interval = 待ち時間
Timer1.Enabled = TRUE
End Sub

Sub Timer1_Timer()
 Timer1.Enabled = FALSE
 Call メインの処理_続き
End Sub

みたいじゃダメか ?


466 名前: 421 投稿日: 02/09/11 22:38
>>464
THX!
理解できました。


467 名前: デフォルトの名無しさん 投稿日: 02/09/11 23:42
ソフト側でマウスをコントロール(ポインタを強制的に移動したりクリックさせたり)するにはどうすればいいんですか?


468 名前: デフォルトの名無しさん 投稿日: 02/09/11 23:58
>>465
>メインの処理を止めてる間に、違う事したいんじゃないのかな ?

だったらメインからサブを呼べば済む話じゃないの?
>>452は何度読んでも、処理を中断したいだけとしか思えん。
っていうか、肝心の452のレスがないなあ。


469 名前: 465 投稿日: 02/09/12 00:14
>>468
> だったらメインからサブを呼べば済む話じゃないの?
ちょっと説明不足だっだね。メインの処理止めてる間に、ユーザーからの
入力を受けたりしたいんじゃないかな ? 例えば、初期設定終了後に、
10秒間テキストボックスへの入力を待って、入力された値で残りの処理を
するとか...。

まあ、いずれにせよ...
> 肝心の452のレスがないなあ。
ですねぇ...。


470 名前: デフォルトの名無しさん 投稿日: 02/09/12 00:27
>>467
mouse_event


471 名前: デフォルトさん ◆oZf4cgA6 投稿日: 02/09/12 04:07
今までMouseUpイベントでListView上の右クリックを処理していたんですが
ListViewを複数選択可能にして、右クリックで範囲選択しても
mouse_upにはならないようなんですよ。
デスクトップ上で右クリックで範囲選択すると、マウスボタン離した時にメニューが出ますが
あれと同じような動作をListView上でやりたいのです。
どうやったらできるのでしょうか。

それと、範囲選択してやると、もともと選択されていた部分も選択されたままになります。
えと、例えば最初にindex=2のアイテムが選択されている状態で
範囲選択で4,5,6を選択してやっても、2のアイテムまで選択状態のままです。
これの対処法もあると嬉しいんですが・・・

よろしくおねがしいます。


472 名前: デフォルトの名無しさん 投稿日: 02/09/12 10:03
>>464
横からすいません。
"VTable" というものをはじめて知りました。文脈から大体の意味は取れるのですが、
内容を知らないので調べてみたいんですが、ちょっとだけヒントを貰えないでしょうか。



473 名前: デフォルトの名無しさん 投稿日: 02/09/12 10:27
>>472
http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&q=VB+VTable&btnG=Google+%8C%9F%8D%F5&lr=lang_ja


474 名前: 464 投稿日: 02/09/12 10:53
>>472
ごめん。473が示してくれたのでわかると思うけど、
「仮想関数テーブル」の略称です。
これを略してV-Table、VTable、V-Tbl、vTbl
などと呼ぶことが多い。

すべてのCOMオブジェクトは仮想関数テーブルを持つ。
(C++の純粋仮想関数の概念がベースになっている)

VBで事前バインディングというと、通常は
「仮想関数テーブルバインディング」のこと、
つまり、カスタムインターフェイス経由での
呼び出しのことを指す。

(もう1つ「DISPIDバインディング」なるものも
あるけれど、こちらは内部実装としては
実行時バインディングの一種と呼ぶ方が相応しい)

とりあえずはこんなところで。わからなければまた。


475 名前: デフォルトの名無しさん 投稿日: 02/09/12 11:04
>>474
そのC++互換のVTBLを受け取ることでCOMはC++ではクラスとして振る舞えるわけか。


476 名前: 投稿日: 02/09/12 11:50
ActiveXコントロールでFormをもったものは 作成できるのでしょうか?

メソッドで そのFormを開いたり、
そのForm上のボタンを押すことにより、イベントを発生させいんですが、
どのようにすればいいのでしょうか?


477 名前: 投稿日: 02/09/12 11:51
イベントを発生させたいんですが、

の 間違い


478 名前: 投稿日: 02/09/12 13:49
ある領域に コントロールをたくさん貼り付けて、スクロールバーで閲覧するようにしたいのですが、
どのコントロールに貼り付ければいいでしょうか?
教えてください。


479 名前: デフォルトの名無しさん 投稿日: 02/09/12 14:01
>>478
スクロールバーまでついている便利なコントロールは無い。
Frameに貼り付けて、VScrollなどを使って自作が基本。
他にもコンテナになるコントロールなら、例えばPictureに貼り付けても良し。


480 名前: 投稿日: 02/09/12 14:51
>>479

スクロールの量と一緒に コントロールのtop等を変更するのでしょうか?



481 名前: デフォルトの名無しさん 投稿日: 02/09/12 15:05
>>473
すばらしいポインタをどうも。
つか、申し訳ない...。

>>474
ありがとうございます。
大体イメージはつかめました。

>とりあえずはこんなところで。わからなければまた。
大分知ってることに近づいてきたようですし、キーワードも多いので、
しばらく自分で勉強してみます。

お二人ともありがとうございました。m(__)m



482 名前: デフォルトの名無しさん 投稿日: 02/09/12 15:11
>>480
その通り。

…スクロールバーコントロールはコロコロマウスに反応しないんだよねぇ。泣ける。


483 名前: デフォルトの名無しさん 投稿日: 02/09/12 15:51
4桁の16進数を作りたいのですが、

例:
F → "000F"
FF → "00FF"

A = &HFF
B = Format(Hex(A), "0000")

とやっても上手くいきません。

B = "00" & Hex(A) とやれば良いのでしょうが、
桁数が多くなると大変です。

いい方法ありませんか?



484 名前: デフォルトの名無しさん 投稿日: 02/09/12 15:53
B=Right("0000" & Hex(A), 4) は?


485 名前: デフォルトの名無しさん 投稿日: 02/09/12 15:56
>>484
できました。
知りませんでした。
助かりました。
ありがとうございました


486 名前: 投稿日: 02/09/12 17:04
参照設定に追加したdll等を削除したいのですが、どうすればいいんでしょうか?


487 名前: デフォルトさん ◆oZf4cgA6 投稿日: 02/09/12 17:53
>>471 、無視モードでつか?(汗
ホント必要としてるんでお願いしますぅ
土下座でもなんでもするから・・・Googleのバカー!(何


488 名前: デフォルトの名無しさん 投稿日: 02/09/12 18:31
>>471
> それと、範囲選択してやると、もともと選択されていた部分も選択されたままになります。
> えと、例えば最初にindex=2のアイテムが選択されている状態で
> 範囲選択で4,5,6を選択してやっても、2のアイテムまで選択状態のままです。

言っている意味がはっきりわかりませんが、
勝手にSelectedItem.Select=Trueになるということでしたら、

コンポーネントをWindows Commons Control 6から5に変更するとか
とりあえずMouseDown , MouseMove をトラップしてみるとか。


489 名前: デフォルトの名無しさん 投稿日: 02/09/12 20:31
>>483
484のをさらに進化させて、
keta = 4
B=Right(String(keta,"0") & Hex(A), keta)
と書ける。

>>483
参照設定はずせばいいんでないの?
そのdllのファイルも消したいということなら、

regsvr32 /u そのファイルのパス

で登録解除してからファイル消すよろし。



490 名前: デフォルトの名無しさん 投稿日: 02/09/12 20:59
Inetコントロールを使って、2つのファイルをダウンロードしようとしてます。
1つめのファイルサイズが800バイト、
2つめのファイルサイズが500バイト、とすると、

2つ目のファイルをGet_Chunkした時、
1つ目のファイルの残骸(下300バイト)が2つの目のファイルの最後の方に入ってきてしまいます。

今は、GetChunkでバッファが空になるまで無条件に読み込んでいます。

Inetで”GET”したデータサイズを覚えておき、GetChunk する時にサイズ指定すれば
いい様に思いますが、GETしたサイズを知る方法ってありますか?

それとも、何か別のやりかたで、2つ目のファイルにゴミが入らないようにする方法があるのでしょうか?

どなたか、教えてくださいませ


491 名前: デフォルトの名無しさん 投稿日: 02/09/12 21:01
OLEで、エクセルグラフを読み込んだのですが、
ソフト側で作った乱数をOLEに代入して、
グラフ化するにはどうしたらいいのでしょうか?


492 名前: デフォルトの名無しさん 投稿日: 02/09/12 22:31
ESCキー押したらフォームを閉じるなどのショートカットキーを
付けたい場合、どこにフォーカスがあるか分からないので、
全コントロールのKeyPressとかにコード書かないといけないのでしょうか。
それとも、もっと簡単な、ショートカットキー用に何かやり方があるのでしょうか。


493 名前: デフォルトの名無しさん 投稿日: 02/09/12 22:51
>>492
メニューエディタでショートカットキーを割り当てるか
タイマーで監視ですかねぇ


494 名前: デフォルトの名無しさん 投稿日: 02/09/12 23:19
起動済みのプログラムでコマンドラインの因数取得(?)ってどうやるのでしょうか?
ソフト起動前ならForm_loadでcommandを取得すればよいのですが、
起動済みの場合どうすればいいのかわかりません。


495 名前: デフォルトの名無しさん 投稿日: 02/09/12 23:20
>>492
FormのKeyPreviewをTrueにする。
そのうえで、Form_KeyDownトカで監視。


496 名前: デフォルトの名無しさん 投稿日: 02/09/12 23:20
>>494
ひきすう


497 名前: デフォルトの名無しさん 投稿日: 02/09/12 23:21
>>494
起動済みでもcommandを取得すれば入ってると思うが。
…っていうか、起動しなきゃ取得コードが動かない罠。


498 名前: デフォルトの名無しさん 投稿日: 02/09/12 23:48
ああ、引数ですね。しょっちゅう間違えるんですよ。
>>497
ん〜。どこがトリガーになるんでしょう?


499 名前: デフォルトの名無しさん 投稿日: 02/09/12 23:54
>>498
えーと、トリガーもクソも、特別な変数 command を参照すれば、
いつでもどこでもコマンドライン引数は手に入りますが。
なんか勘違いしてる?


500 名前: デフォルトの名無しさん 投稿日: 02/09/12 23:57
いや、え〜と。
デスクトップにあるアイコンにファイルをドロップしますよね。
ソフトが起動してない状態でやると、ソフトが起動します。
で、Commandでドロップされたファイル名が分かります。
ソフトが既に起動されてる状態でドロップしても何も起きません。
どうやったらわかるんでしょうか、と。


501 名前: デフォルトの名無しさん 投稿日: 02/09/13 00:00
>デスクトップにあるアイコンにファイルをドロップしますよね。
しません。


502 名前: 500 投稿日: 02/09/13 00:09
>>501
いや、普通にしますって。


503 名前: デフォルトの名無しさん 投稿日: 02/09/13 00:12
>>500
ソフトが起動している状態で、デスクトップアイコンにD&Dするとどうなる?
当然、もう一つソフトが起動するよね?
とすると、後から起動した方を終了させて、commandの内容をすでに起動している
方に送ってやらなきゃいけない。

DDE通信を使う方法がメジャーなので、調べてみるヨロシ。
DDEじゃなくても、プロセス間通信ができるなら何でもいいけどね。


504 名前: 500 投稿日: 02/09/13 00:16
あっそうでした。新しく起動した方を終了させています。
DDEか。。難しそうですね
Form_LinkOpenだとかを使うのかな。


505 名前: デフォルトの名無しさん 投稿日: 02/09/13 00:36
DirectXを使用してpng画像の表示方法を教えて欲しいです。
ツールが必要なら置いてある場所も教えて欲しいです。


506 名前: 501 投稿日: 02/09/13 01:07
>>502
いや、そこ笑う所。


507 名前: デフォルトの名無しさん 投稿日: 02/09/13 01:17
ピクチャボックスに描画メソッドを使って書いた図形をセーブしたいのですが、
SavePicture Picture1.image "xxxx.bmp"では、図形がなくなってしまいます。
よい方法はないでしょうか?教えてください



508 名前: デフォルトの名無しさん 投稿日: 02/09/13 01:36
>>507
Picture1.AutoRedraw=Trueになってる?


509 名前: デフォルトの名無しさん 投稿日: 02/09/13 01:43
>>505
他に方法があるかもしれんが、なければlibpng使うとか。
for VBっつーDLLがあるみたい。

http://www.libpng.org/


510 名前: デフォルトの名無しさん 投稿日: 02/09/13 02:29
>>505
http://www.akikuma.cx/Download.htm
ここのTransG32.dllってのを使うのもいいかもしれない。
ActiveXやDirectXじゃないからお気に召さないかもしれないがー。


511 名前: デフォルトの名無しさん 投稿日: 02/09/13 02:39
>>508さん ありがと!
解決しました。忘れてました。


512 名前: デフォルトの名無しさん 投稿日: 02/09/13 10:20
キリ番げと。
ずさー


513 名前: 投稿日: 02/09/13 10:39
RaiseEventを用いて、イベントを発生させてるんだけど、呼び出し側でイベントが発生しません。

ActiveX DLLの作成途中です。

呼び出し元は こんな感じです。
Public Event test(test1 As Long)

Friend Sub Click()
DoEvents
RaiseEvent test(1)
End Sub

呼び出し側です。
Private WithEvents objtest As testclass

Private Sub objtest_test(test1 As Long)
Label1.Caption = test1
End Sub

で ラベルに値がセットされません。
どうすればいいのでしょうか?



514 名前: デフォルトの名無しさん 投稿日: 02/09/13 11:41
ビバのバージョン6はまだ売ってるの?


515 名前: なきや 投稿日: 02/09/13 11:48
はじめまして、なきやと申します。

VBのディストリビューションウィザードのことでお聞きしたいのですが、
インストーラを作成し、それを使って他のマシンにPGをインストールし、
アプリケーションを使用中に、
エラー番号:-2147221164(80040154)
「クラスが登録されていません。」
のエラーが出てしまいます。
エラーの発生する場所は必ず、mdbファイルへの接続時です。

作成環境は
windows98SE/VB6 SP5/Access97/SQL6.5/ADO2.5
ADOでのSQLサーバ接続と、mdbファイルへの接続を行います。

実行環境は、
windowsNT4.0 SP5 のみをインストールした状態です。

いろいろ試してはみたのですが、一向にうまくいきません。
どなたか、解決法方をご存知の方いらっしゃいましたら、ご教授ただけないでしょうか?
よろしくお願いします。



516 名前: デフォルトの名無しさん 投稿日: 02/09/13 12:16
>>514
IBMとかNECが買い上げて再販してくれりゃいいのに。
需要はかなりあると思うぞ。


517 名前: デフォルトの名無しさん 投稿日: 02/09/13 12:20
>>515
>作成環境は
>windows98SE/VB6 SP5/Access97/SQL6.5/ADO2.5
>ADOでのSQLサーバ接続と、mdbファイルへの接続を行います。

>実行環境は、
>windowsNT4.0 SP5 のみをインストールした状態です。

答えでてるじゃん。


518 名前: デフォルトの名無しさん 投稿日: 02/09/13 12:23
最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。


519 名前: 投稿日: 02/09/13 12:48
>>518
VB初心者にたいする あてつけか?(w
しかも 初めてきたとかいって しっかり 下げてるし。
>他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
おまえモナー



520 名前: デフォルトの名無しさん 投稿日: 02/09/13 12:50
>>519
ネタにマジレスする必要なし。放置しとけよ。


521 名前: デフォルトの名無しさん 投稿日: 02/09/13 12:51
最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。


522 名前: 投稿日: 02/09/13 13:20
配列を使用したいと思うのですが、どれだけ領域を確保すればいいのかわかりません。
代わりに MSFlexGridを 使用してみようかと思うのですが、これは、何列まで可能なのか
わかりますでしょうか?


523 名前: なきや 投稿日: 02/09/13 13:21
>>517さん
すみません、初心者なもので、分かりません。
よろしかったら、詳しく教えていただけるとありがたいのですが・・。


524 名前: デフォルトの名無しさん 投稿日: 02/09/13 13:38
>>522
http://www.netlaputa.ne.jp/~stadt/vb/


525 名前: デフォルトの名無しさん 投稿日: 02/09/13 13:44
テキストファイルの、ある行だけ削除したいという場合、どうすればよいですか?

今考えている方法は、
1 1行づつ読み込み新しいファイルに書き込む
2 削除したい行の時だけ書き込みをスキップする
3 最後まで書き込んだら、古いほうのファイルを削除
4 新しい方のファイルを、古いほうのファイル名へリネーム
という感じなのですが、もっといい方法があるような気がするのですが・・・



526 名前: デフォルトの名無しさん 投稿日: 02/09/13 13:44
>>523
初心者だっていうのは免罪符にならないってだれかが言ってた
俺もそう思う
参照設定だべよ?


527 名前: なきや 投稿日: 02/09/13 13:52
>>526
幾ら僕が初心者だからって参照設定くらいちゃんと
やってます。馬鹿にしないで下さい。


528 名前: デフォルトの名無しさん 投稿日: 02/09/13 13:56


最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。


529 名前: デフォルトの名無しさん 投稿日: 02/09/13 14:06
>>527
>馬鹿にしないで下さい。

だったら自力でやれよ。


530 名前: デフォルトの名無しさん 投稿日: 02/09/13 14:07
>>529
最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。


531 名前: デフォルトの名無しさん 投稿日: 02/09/13 14:10
>>513
なんか構成がわからんけど、
testclassのClickプロシージャが動作してるか
そこでDebug.Printしてみそ。

何かフォームなり、コントロールなりがクリックされたら、
testclassのClickが呼ばれるんだよね?


532 名前: デフォルトの名無しさん 投稿日: 02/09/13 14:12
>>522
聞く前に試してみれば?


533 名前: なきや 投稿日: 02/09/13 14:18
>>527
? 私のフリをして変な書き込みしないで下さい。

参照設定は大丈夫だと思いますが・・。
visual basic for applicaions
visual basic for runtime objects procedures
visual basec objects and procedures
OLE automation
microsoft activeX data objects 2.5 library
microsoft data report designer 6.0
microsoft data formatting object library 6.0
以上を参照しています。

先ほど試しに、ADOでなくDAOでmdbへ接続したところ、
つながりました。
ただ、MSDataShapeを使用するのに、DAOでは無理じゃないか?
ということを聞きまして、ADOにしてあります。
これは本当に無理なのでしょうか?




534 名前: なきや 投稿日: 02/09/13 14:29
>>533
無理が通れは道理引っ込む



535 名前: デフォルトの名無しさん 投稿日: 02/09/13 14:45
逆境ナインですか。


536 名前: 投稿日: 02/09/13 14:51
>>531
>testclassのClickプロシージャが動作してるか
ちゃんとここは 通過します。
RaiseEvent test(1)も通ります。

>何かフォームなり、コントロールなりがクリックされたら、
>testclassのClickが呼ばれるんだよね?

その通りです。
通常、そのようなコーディングは どのようにするのでしょうか?






537 名前: デフォルトの名無しさん 投稿日: 02/09/13 14:58
何か変な荒れ方してるね。


538 名前: 投稿日: 02/09/13 15:01
>>522
配列使った方がいいでしょ。Redimを調べてみて。
>>525
それでいいと思う。
>>533
OLEDBプロバイダが入ってないからだと思う。


539 名前: デフォルトの名無しさん 投稿日: 02/09/13 15:16
>>536
コントロールのあるActiveXはOCXと呼んでいただけるとわかりやすい。
(ユーザインタフェースのない奴がActiveX DLL)

むー。あなたがどんなコントロールを作りたいのかわからない???
呼び出し元の方では、testclassを宣言しただけで、Newしてないとか?

複合コントロールの場合、普通はユーザコントロールに
ラベルなりボタンなりをぺたぺた貼り付けて、
ユーザコントロールに直接コードを書いて終了です。
ユーザ定義のイベントを発生させる場合もあります。

複雑な処理がある場合は、適当にクラスモジュールを追加しますけど、
クラスモジュールからイベントを発生させることは少ないですね。
TextBoxDecoratorとかであれば別ですが。


540 名前: デフォルトの名無しさん 投稿日: 02/09/13 15:23
ADOでMDBのデータの更新を行う際に下記の様にコーディングしました。
例えば更新かけたときにエラーが発生した場合どのような形で
エラーを取得すればいいんでしょうか?


lstrPath = App.Path & "\test.mdb"
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & lstrPath & ";"

' レコードセット作成
lstrSQL = "select * from student where name = ""ponta"""
rs.Open lstrSQL, cnn, adOpenForwardOnly, adLockPessimistic

' レコード更新
With rs
.Fields("age") = 20
.Update
End With




541 名前: 投稿日: 02/09/13 15:33
>>540
On Error 〜 は知ってる?
エラー内容はErr.Descriptionに入ってるよ。
ていうかこれレコードセットオープンできる?


542 名前: 投稿日: 02/09/13 15:33
>>539
FormをもったDLLを作成したいんです。
それで、そのFormにあるボタンをクリックした時に、あるイベントを発生させたいんです。

これで わかりますでしょうか?


543 名前: 投稿日: 02/09/13 15:39
>>539
どうやら そのDLLにあるForm側でイベントを発生させることが
できるみたいなんです。


544 名前: 540 投稿日: 02/09/13 15:50
>>542
あ?さんだ。レスありがとうございます。
on error ですね。調べてみます。
レコードセットのnewとかは割愛しちゃいました。
本来のソースには書いてます


545 名前: デフォルトの名無しさん 投稿日: 02/09/13 15:56
>>540

Dim lstrPath As String
Dim lstrSQL As String
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset

lstrPath = App.Path & "\test.mdb"

With cnn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & lstrPath & ";"
.Open
.CursorLocation = adUseClient
End With

lstrSQL = "select * from student where name = 'ponta'"

With rs
.Open lstrSQL, cnn, adOpenForwardOnly, adLockPessimistic
.Fields("age") = 20
.Update
End With


546 名前: なきや 投稿日: 02/09/13 16:18
?さん、レスありがとうございます。
今から試してみます!


547 名前: デフォルトの名無しさん 投稿日: 02/09/13 16:23
コード入力してるときにマウスホイールがきかないのは仕様ですか?
ストレスたまりまくります


548 名前: 投稿日: 02/09/13 16:28
それは しようがないといいます。


549 名前: 525 投稿日: 02/09/13 16:39
>538
あ、この方法でいいんですか。
まずはチャレンジしてみます。ありがとうございました。


550 名前: デフォルトの名無しさん 投稿日: 02/09/13 16:40
>>547
過去すれに書いてるよ


551 名前: デフォルトの名無しさん 投稿日: 02/09/13 16:46
>>542 ずいぶんと面倒くさい事を >513 は無視して俺流で書いてみた。
ボタン→フォーム→クラス→DLL作成元とイベントが伝わるからめんどい。
{prjDllTest}
[Class1]
Option Explicit
Private WithEvents m_oForm1 As Form1
Public Event FormButtonClicked(nButton As Long)
Private Sub Class_Initialize()
  Set m_oForm1 = New Form1
  Call m_oForm1.Show
End Sub
Private Sub m_oForm1_ButtonClicked(nButton As Long)
  RaiseEvent FormButtonClicked(nButton)
End Sub
[Form1]
Option Explicit
Public Event ButtonClicked(nButton As Long)
Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  RaiseEvent ButtonClicked(CLng(Button))
End Sub
{prjDllTestTest}
[Form1]
Option Explicit
Private WithEvents m_oDllTest As prjDllTest.Class1
Private Sub Form_Load()
  Set m_oDllTest = New prjDllTest.Class1
End Sub
Private Sub m_oDllTest_FormButtonClicked(nButton As Long)
  Debug.Print "CLICKED!!!"
End Sub




552 名前: なきや 投稿日: 02/09/13 16:49
>>538
OLE-DB simple provider type library
を入れてみましたが、結果は同じでした・・。
入れたものが間違いだったのでしょうか?


553 名前: デフォルトの名無しさん 投稿日: 02/09/13 16:59
>>550
それはかなり昔にがいしゅつでした?
最近でてたならdat落ちしてるかも知れるけど探してみまふ


554 名前: _ 投稿日: 02/09/13 17:05
>>553
ちなみにオレはこれ

どこでもホイール
http://www2k.biglobe.ne.jp/~araken/qdoko.htm

マウスカーソル非対応なものでも、
Windows標準のコントロールを使っているアプリなら強制的にホイールスクロールさせる。
もちろんVBでも使えるので、ソースコードをホイールでスクロールさせれますYO!!


555 名前: 投稿日: 02/09/13 17:06
>>551

まず、
Private Sub m_oForm1_ButtonClicked(nButton As Long)
  RaiseEvent FormButtonClicked(nButton)
End Sub
ここのイベントが 発生しないんですけど・・・。
どこか設定が 悪いのかなぁ?




556 名前: デフォルトの名無しさん 投稿日: 02/09/13 17:13
>>554
おお、ありがとうございます。これでストレスが溜まらなくてすみます。

みなさまスレ違いな話してしまい申し訳なかったす


557 名前: 投稿日: 02/09/13 17:30
RaiseEvent は 通っても そのイベントが 発生しないのは なぜなんだろう?


558 名前: デフォルトの名無しさん 投稿日: 02/09/13 17:35
>551 うそー? 動作確認したコードなんだけどなあ。
設定とかではないと思いますが。


559 名前: デフォルトの名無しさん 投稿日: 02/09/13 17:54
>551
RaiseEventの後ろにスペースを入れると雷マークのポップアップが出ることと、
イベントを受ける方はコードを書くところの上にある2つのリストボックスから
オブジェクトとイベントを選択できることを確認してください。
あと、Class1のInstancingプロパティは5-MultiUseです。


560 名前: 投稿日: 02/09/13 17:59
>>558
http://support.microsoft.com/default.aspx?scid=kb;ja;JP177996
この記事と関係があるのかなぁ。
回避方法が2つあるといいながら、述べてないし、サンプルは わけわからんし・・・。



561 名前: bloom 投稿日: 02/09/13 18:06

http://www.leverage.jp/bloom/start3/


562 名前: デフォルトの名無しさん 投稿日: 02/09/13 18:08
>>412
亀レスで申し訳ないです。
うまくいきました、ありがとうございます。



563 名前: デフォルトの名無しさん 投稿日: 02/09/13 18:08
>560
IDEではイベントが発生しない? うちはSP5です。
じゃあ、Debug.PrintのとこをMsgBoxに変更してコンパイルしてみるしかないですね。


564 名前: 投稿日: 02/09/13 18:25
>>552
ConnectionStringのProviderに指定してるやつ。
Microsoft.Jet.OLEDB.〜 ←ここは何になってる?4.0なら3.5だか3.51(どっちか忘れた)に変えてみて。
あとディストリビューションウィザードで作ったパッケージの中のSupportフォルダ内に
MSJET〜.DLLだかMSJT〜.DLLだかって入ってる?入ってたら原因は違うとこにあると思う。
正直経験無いので全部予想です。確実な知識ある人いたらヘルプ!


565 名前: 投稿日: 02/09/13 18:45
>>549=525
基本はそれだと思うけど、ファイルIOの部分は
ファイル全体を一回で読み込んで改行でSplit
削除したい行のとこからUbound(arr)-1までarr(i)=arr(i+1)とやっていき
Redim Preserve arr(Ubound(arr)-1)して改行付きでJoinしたものを一回で書き込み
ってしたほうが速いかも。普段使わないからすっかり忘れてた。ゴメン。


566 名前: デフォルトの名無しさん 投稿日: 02/09/13 18:57
>560
Call m_oForm1.Show(vbModal)でやると確かにダメみたいだけど、
指定しちゃってる?


567 名前: デフォルトの名無しさん 投稿日: 02/09/13 19:04
>>552
515まで遡るけど、

>エラー番号:-2147221164(80040154)
>「クラスが登録されていません。」

単純に参照してるライブラリが、正しくインストーラーに組み込んでないだけじゃないの。
開発環境では動くけど、実行環境では動かないんでしょ。
見当違いだったらゴメンなさいね。

ちなみにインストーラーは、Visual Studio Installerが便利よ。
http://www.microsoft.com/japan/msdn/vstudio/downloads/vsi/default.asp


568 名前: 500 投稿日: 02/09/13 20:33
DDEについて調べてみたら、なんかもう時代遅れ(?)なインターフェイスのようですね。
.netではサポートされていない・・
簡単でおすすめな通信方法ってありますか?
なんかsend messageがどうのこうのありましたが。


569 名前: デフォルトの名無しさん 投稿日: 02/09/13 20:38
FontNameを使ってフォントを指定したいのですが、フォント名を指定しなければならず、ファイル名だと動作してくれません。
フォント名を知りたいのですが、どうすればいいのでしょうか?


570 名前: デフォルトの名無しさん 投稿日: 02/09/13 20:41
>>569
フォント名って
MS明朝とかの事?


571 名前: デフォルトの名無しさん 投稿日: 02/09/13 20:44
EnumFontFamilies


572 名前: デフォルトの名無しさん 投稿日: 02/09/13 20:47
>>570
はい、label1.fontname="MS 明朝"の場合は、ファイル名とフォント名が一致してるので
Label1.FontName=FN などで、ファイル名から拡張子を取った値で指定できるのですが
後から入れたフォントがファイル名とフォント名が一致してないもので…


573 名前: 500 投稿日: 02/09/13 20:50
screen.fonts(index)
とか?


574 名前: 500 投稿日: 02/09/13 20:50
ごめん、全然違うな。


575 名前: デフォルトの名無しさん 投稿日: 02/09/13 21:09
>>571
ありがとうございました!


576 名前: なきやの友達 投稿日: 02/09/14 01:28
567 さんの、おっしゃる通りです。
533 の参照設定の他に、
MSDataShapeを使用時のライブラリが欠落していますが、
それが何か、わかっていません。


577 名前: _ 投稿日: 02/09/14 13:22
Inetコントロールをつかってファイルをダウンロードしてみてるんですが
落としているファイルの全容量を調べることはできるのですか?
今何%落としたってのを調べるにはそれが必要だと思うのですが。


578 名前: _ 投稿日: 02/09/14 13:22
age


579 名前: デフォルトの名無しさん 投稿日: 02/09/14 15:01
テキストを表示するのに必要なheightってどうやって取得すればよいのでしょう?
Form1.textheightでそれらしい感じですが、
フォントサイズが違う部分なので利用できません。


580 名前: デフォルトの名無しさん 投稿日: 02/09/14 15:11
大事件!!DJクラブ板にて、

麻薬常習者がfusianasanに引っかかる!!

これは逮捕に発展するかも!

祭りの予感!!

DJクラブ板(xxxxバキバキな奴集まれxxxx)より


http://music.2ch.net/test/read.cgi/dj/1031033092/


581 名前: デフォルトの名無しさん 投稿日: 02/09/14 15:31
>>579
Form1.Font.Sizeの値を変更してから
From1.TextHeight("hoge")をやってみればいいんでないの?


582 名前: 579 投稿日: 02/09/14 16:51
>>581
あっ!なるほど。
Form自体に描画はしないからそれでOKですね。
ありがとうございました。



583 名前: デフォルトの名無しさん 投稿日: 02/09/14 17:14
秀丸とかみたいに、改行コードのところで "↓" みたいな編集不可の記号の表示って
どうやるんでしょうか。
VBのtextboxじゃ無理なんでしょうか。
先生!教えてください。


584 名前: デフォルトの名無しさん 投稿日: 02/09/14 18:49
>>583
A. 気にしないでください。アイフルのサイトやサービスについて
ご質問はございますか?



585 名前: デフォルトの名無しさん 投稿日: 02/09/14 19:21
>>583
ちまたにあるテキストエディタはTextBoxもRichTextBoxも使わず、
自前で文字列を管理、文字列の描画を管理しています。
その一環として改行コード等も自前で描画しています。



586 名前: デフォルトの名無しさん 投稿日: 02/09/14 19:24
>>583
そういうコントロールを買って来い!


587 名前: 583 投稿日: 02/09/15 00:05
ガーン!


588 名前: デフォルトの名無しさん 投稿日: 02/09/15 00:26
>>577
ファイルサイズはヘッダで取得


589 名前: デフォルトの名無しさん 投稿日: 02/09/15 00:40
>>583
TextBoxに直接描画しちゃえばできるよ。
そう難しい事じゃない。


590 名前: 583 投稿日: 02/09/15 01:09
>>589
直接描画!? 調べてみます!


591 名前: デフォルトの名無しさん 投稿日: 02/09/15 10:19
>>589
オーナードローなんて出来るの?あれ。


592 名前: デフォルトの名無しさん 投稿日: 02/09/15 14:04
TextBoxをGetDCして、改行の位置を探し、そこにLineToとかでやじるし書いてやれば実現できる。
別に↓を描画してもいいけど。
当然縦、横スクロールしたときの対処や、ウィンドウが重なったときの
再描画処理なんかもしないとだめ。
縦スクロール位置はSendMessageで取得、
横スクロール位置はGetScrollPosで取得できる。
再描画処理はサブクラス化してWM_PAINT時に再描画してやればいい。


593 名前: デフォルトの名無しさん 投稿日: 02/09/15 14:11
>>592
VB厨の理解を遙かに超えた予感。

じゃなくても面倒だから出来るだけやりたくないな・・・。


594 名前: デフォルトの名無しさん 投稿日: 02/09/15 15:06
> 再描画処理はサブクラス化してWM_PAINT時に再描画してやればいい。
なら元から再描画の処理だけでいい。


595 名前: デフォルトの名無しさん 投稿日: 02/09/15 21:03
VB6で作成したexeファイルのバージョンについて質問です。
ファイルのプロパティーを開き、バージョン情報タブの
「ファイル バージョン」って、A.B.C.Dというふうに
4カラムからなっていますが、3カラム目はどうやったら変化するのでしょう?

コンパイラ上で[プロジェクト]−[xxx.exeのオプション]で
「実行可能ファイルの作成」タブにある[バージョン番号]部分は
・メジャー  → 1カラム目
・マイナ   → 2カラム目
・リビジョン → 4カラム目
という対応になっているようであり、3カラム目だけ変えられません。



596 名前: デフォルトの名無しさん 投稿日: 02/09/15 21:34
FILETIME 構造体ってのがどう使えばいいかよく分かりません
64ビットなので、半分に分けているようなのですが。
なんか100ナノセコンドレベルで管理されてるみたいだけど。
低い位が最大だと約214秒のようなのですが。

どういう計算をすればよいのでしょうか?


597 名前: デフォルトの名無しさん 投稿日: 02/09/15 22:22
>>596
通貨型に入れて計算するのが簡単。
でもDate型に変換するのじゃだめなの?

> どういう計算をすればよいのでしょうか?
たとえばどんな感じの日付計算をしたいんでしょう?


598 名前: デフォルトの名無しさん 投稿日: 02/09/15 22:28
>>595
俺はVB使いじゃないので間違ってるかもしれないけど、
本当にオプション項目がないとすれば、
> ・リビジョン → 4カラム目
このリビジョンの上位何桁かが3カラム目に
入るんじゃないかな?


599 名前: デフォルトの名無しさん 投稿日: 02/09/15 22:59
なるほど。通貨型は64ビットなのか。

1601/01/01から今までの経過時間を求めたいです。
単位は100ナノセコンド。
FTime.dwHighDateTimeに上位32ビット、
FTime.dwLowDateTime 下位32ビットを代入します


Dim cDate As Currency

cDate = DateDiff("s", "1601/01/01", Date) * 1000

FTime.dwHighDateTime = CLng(cDate / 214748.3647)
FTime.dwLowDateTime = CLng(cDate Mod 214748.3647)
こんな感じにしてみたけど、最後の行でオーバーフローになります。


600 名前: デフォルトの名無しさん 投稿日: 02/09/15 23:52
>>599
通貨型にMod演算子は使えないと思う。




601 名前: デフォルトの名無しさん 投稿日: 02/09/16 00:14
質問ですが、ここでさせて下さい。
ウイルスに感染したファイルからウイルスの部分
だけ取り除きたいのですが、方法あるでしょうか?
使いやすいソフトなどありましたらアドバイスお願い
します。
初心者ですが勉強したいのでさわりから・・


602 名前: 質問ですよ? 投稿日: 02/09/16 00:17
アクセスで、特定のテキストボックスにフォーカスされている状態から、
フォーカスを外すのって、どうやればいいですか?


603 名前: デフォルトの名無しさん 投稿日: 02/09/16 00:17
>>601
ここのVBってウィルスバスターじゃないぞ。
はげしくスレ違い。

基本は感染予防。
駆除できる場合もあるが駆除できない場合もある。
それ以前に、消されたり、壊されたファイルなぞ元に戻す方法はない。


604 名前: デフォルトの名無しさん 投稿日: 02/09/16 00:19
>>601
> 質問ですが、ここでさせて下さい。

注意書きぐらい読めよ。

> プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
> ネタ、板とは関係の無い話題はご遠慮ください。


605 名前: 597 投稿日: 02/09/16 00:28
>>599
> 1601/01/01から今までの経過時間を求めたいです。
これだけならFILETIMEを使う必要はないです。

Date型のゼロ は 1899/12/30 で、
1601/01/01から1899/12/30までの日数は 109205日
(秒数なら 9435312000秒)
(ナノ秒なら94353120000000000)

だから、仮に1601/01/01から今日までの経過日数を求めたいなら

  Const BASEDAYS_FROM_1601 = 109205
  MsgBox BASEDAYS_FROM_1601 + CLng(Date)

だけで求まる。(UTCでなくローカル時間で計算する場合)

それと、上で通貨型に入れると書いたのは、
MoveMemoryまたは LSetステートメントを使って
メモリ内容をそっくりそのままコピーする
という意味です。


606 名前: デフォルトの名無しさん 投稿日: 02/09/16 00:30
>>602
SetFocus スレ違い。


607 名前: 601 投稿日: 02/09/16 00:39
すみません。
プログラムの仕組みを知りたく、バスター等が駆除する
プロセスを手動でやるとどうなるかをやってみたいのです。
>>603
>駆除できる場合もあるが駆除できない場合もある。
まず何をためされますか?



608 名前: 602 投稿日: 02/09/16 00:39
>>606
スレ違いなのに教えていただいて有り難う御座います。
SetFocusですか。
他のボックスにFocusをあわせるのでなくて、
完全にFocusを解放してしまうこともできますか?
とりあえず、スレ違いなので、続きの詳しい質問は、
Access総合相談所 Part4というスレでしてきますね。
ありがとうございました。


609 名前: 605 投稿日: 02/09/16 00:53
あ、ごめん。全然違った。

DateDiffで直接取れるよね。
だったら
DateDiff("s", "1601/01/01", Date) * 10000000
だけでいいし、
それを整数表示したいならFormat関数
またはDecimalに変換すればいい。


610 名前: デフォルトの名無しさん 投稿日: 02/09/16 01:02
Winsockコントロールを使ってTCPで通信したいんですけど、
1対多数の通信をする方法教えてください。サーバ側では
Winsock一杯用意してPORTを一人一人割り当てていけばいいんでしょうか?
なんか使い方間違ってるのかなと思ってます。


611 名前: デフォルトの名無しさん 投稿日: 02/09/16 01:29
>>610
Winsockコントロールを沢山用意するか、コントロール配列にする。
んで、1個だけ待ち受け状態にする。

winsock_ConnectionRequestが来たら、適当な空いているWinsock
に対し、Winsock.Accept requestID する。
んで、そのWinsockで以後は通信。
RestenしてたWinsockはそのまま次の接続を待ち続ける。

…ってな感じ。


612 名前: デフォルトの名無しさん 投稿日: 02/09/16 01:42
ピクチャーボックスをスクロールさせたいんですけど、どうしたらいいでしょう?
画像はできたんですけど、文字列ができないのれす。

ピクチャーボックスに文字列を上から下に表示していって、表示しきれなくなったら
スクロールしたいです。テキストボックスみたいに・・・

ご教授ください。おねがいしますです


613 名前: デフォルトの名無しさん 投稿日: 02/09/16 01:52
Formのプロパティの"Icon"でアイコンを指定してEXEを作ったら、
生成された.exeのアイコンが指定した通りに反映されたのですが、
起動してみるとウィンドウの上のバーのタイトル左のアイコンだけ反映されていないのです。
どうしてなのですか。タ、タスケテクダサイ。VB6デス。


614 名前: デフォルトの名無しさん 投稿日: 02/09/16 01:56
>>612
意味わからん。

>画像はできたんですけど、文字列ができないのれす。

ピクチャボックス上に描かれている文字列は画像と同じ。

自分が何をやってどういう状態にあるかもきちんと説明できなけりゃ
あいまいすぎてレス不可能。

>テキストボックスみたいに・・・
じゃ、テキストボックス使っておけば。


615 名前: デフォルトの名無しさん 投稿日: 02/09/16 02:01
>>607
>プログラムの仕組みを知りたく、バスター等が駆除する
>プロセスを手動でやるとどうなるかをやってみたいのです。

そんなもん企業秘密で社員、及び元社員以外誰も知るか。
それにウィルスの数だけ対応も違うだろう。

>>603
>駆除できる場合もあるが駆除できない場合もある。
まず何をためされますか?

ウィルス対策ソフトを試す。以上。

一言いっておく。他人に意見を求めるときには自分の意見をまず持て。



616 名前: デフォルトの名無しさん 投稿日: 02/09/16 02:37
ありがとうございます。>>611
Winsock一杯使うんですね。


617 名前: デフォルトの名無しさん 投稿日: 02/09/16 02:38
>>615
>駆除できる場合もあるが駆除できない場合もある。
>そんなもん企業秘密で社員、及び元社員以外誰も知るか。
つじつまが合わん。
知るかといってウイルス対策ソフトを使うという姿勢なら
これに限った話でなくともプログラムをやってる意味は無い
と考えるがいかがか。



618 名前: デフォルトの名無しさん 投稿日: 02/09/16 02:57
タイピングソフトを作ってるのですが、例えばjaとzya、tyaとchaなど
を同じと判定する方法をどうしようか迷ってます。考えたのがtyaと打ったら
”ちゃ”になるので日本語で判別しようかと思ったのですが、keypressで
1語づつ読んでjaでzを押したら、jaがzyaにすぐ入れ替えて画面に表示したいのです。
何か良い方法教えてください。


619 名前: デフォルトの名無しさん 投稿日: 02/09/16 03:05
>>618
Ifとフラグだけでどうにでもなると思うけど、それじゃ格好悪いからダメってこと?


620 名前: デフォルトの名無しさん 投稿日: 02/09/16 03:07
その前にIME入力モードでやってるのかそうじゃないのかはっきりしてくれ>>618


621 名前: デフォルトの名無しさん 投稿日: 02/09/16 03:36
>>617
ウイルスデータベースを構築できるならどうぞご自由に…。
漏れには無理だYo!

現実問題として、そのウイルスの感染方法が判明している場合だけ、
元ファイルの復元可能性がある。それには当然ウイルスの解析結果等の
データベースが必要。
さらに、もし感染方法が判明したとしても、元EXEを破壊せずに感染する
ケースは希だろうと思われるので、たいていの場合で復元は不可能。

普通にプログラムやってればここらへんまでは短時間で思い至るだろう。
だから、>>615氏も知るかと言ってるんだろうよ。
つーか、怒らないから正直に板を間違いましたと謝りなさいな。


622 名前: デフォルトの名無しさん 投稿日: 02/09/16 03:38
>>618
IMEをOFFで使うなら、自前でローマ字→かな変換のIMEモドキを
作ってみたらどうか。
練習のつもりで作ってるなら、こっちの方が面白いかも。


623 名前: デフォルトの名無しさん 投稿日: 02/09/16 03:51
>>618
ttp://www5b.biglobe.ne.jp/~yone-ken/VB/
ここのごみ箱に一例があるぞ。


624 名前: デフォルトの名無しさん 投稿日: 02/09/16 05:08
>>621
怒らせるつもりなど全く無かったがそうなってしまったかな・・
感染で困ってるとか駆除出来ればそれでいいという趣旨では
なかったのでここを訪ねてみたが、関係なかったのなら悪かった。
申し訳無い。
ただ、私がもしプログラムで飯食ってる人間なら間違っても
>>615のような発言はしないがな、本業ではプライドあるからね。
もう逝く



625 名前: 596 投稿日: 02/09/16 06:05
うわ、ごめんなさい。
じつはその求めた経過時間を使いたいのです。
SetFileTimeWriteでタイプスタンプを書き換えたいので


626 名前: デフォルトの名無しさん 投稿日: 02/09/16 06:40
>>625
それなら、SystemTimeToFileTime / FileTimeToSystemTime あたりのAPI使ってみたら?
年月日時分秒形式と64bit日付の変換関数。


627 名前: 609 投稿日: 02/09/16 07:14
>>625
初めからそう言いなよ。
> SetFileTimeWriteでタイプスタンプを書き換えたいので
SetFileTimeでしょ。

Declare Function SetFileTime Lib "kernel32" _
  (ByVal hFile As Long, lpCreationTime As Any, _
  lpLastAccessTime As Any, lpLastWriteTime As Any) As Long
Declare Function LocalFileTimeToFileTime Lib "kernel32" _
  (lpLocalFileTime As Any, lpFileTime As Any) As Long
' 他の宣言は省略

Sub サンプル()

  Dim hFile As Long
  Dim curTime As Currency ' FILETIME構造体と互換

  hFile = CreateFile(省略)
  If hFile <> INVALID_HANDLE_VALUE Then
    curTime = VBDateToFileTime("2000/01/01")
    SetFileTime hFile, ByVal 0&, ByVal 0&, curTime
    CloseHandle hFile
  End If

End Sub


628 名前: 627の続き 投稿日: 02/09/16 07:17
' 日付型をFILETIMEに変換して通貨型で返す
Private Function VBDateToFileTime(ByVal dt As Date) As Currency

  Dim curLocal As Currency, curUTC As Currency
  ' FILETIMEをローカル時間で取得
  curLocal = DateDiff("s", "1601/01/01", dt) * 1000
  ' ローカル時間をUTCに変換
  LocalFileTimeToFileTime curLocal, curUTC

  VBDateToFileTime = curUTC

End Function

FILETIMEへの変換はSystemTimeToFileTimeを使う方法もあるけど、
上のようにCurrencyで処理する方が簡単だと思う。
長くてごめんよ。


629 名前: 596 投稿日: 02/09/16 08:44
できましたっ!
完璧です。
FILETIME使ったときはSetFileTimeのByVal 0&のところ(作成日時とか)が指定できなかったのですが、
これだとできますね。なんでだろ。

っていうかどこでどうSetFileTimeWriteと間違えたんだろうか。
しかもちゃんと動いていたのですが。


630 名前: 609 投稿日: 02/09/16 09:01
> FILETIME使ったときはSetFileTimeのByVal 0&のところ(作成日時とか
> が指定できなかったのですが、これだとできますね。なんでだろ。

関数宣言の第2引数以降の型を As FILETIME で
宣言していた(型が一致しなかった)のでは?
上のコードでは As Any で宣言しています。

> っていうかどこでどうSetFileTimeWriteと間違えたんだろうか。
Alias "SetFileTimeWrite"
を使って別名を付けていただけではないかと。


631 名前: 609 投稿日: 02/09/16 09:04
あれれ、すぐ上の書き込みの
> Alias "SetFileTimeWrite"
は間違い。
SetFileTimeWrite Alias "SetFileTime"
が正解。


632 名前: デフォルトの名無しさん 投稿日: 02/09/16 09:37
>>624
言い訳を一生懸命しているが、板違いではないとしてもスレ違いは明白。
> 本業ではプライドあるからね。
どんなすばらしい仕事をしているか知らないけど、間違えた時は素直に認めて
謝罪できない奴はダメ。


633 名前: デフォルトの名無しさん 投稿日: 02/09/16 09:56
>>632
今ごろ・・( ´,_ゝ`)プッ



634 名前: デフォルトの名無しさん 投稿日: 02/09/16 09:58
>>632
負け犬・・( ´,_ゝ`)プップッ


635 名前: 602 投稿日: 02/09/16 10:39
>>606
向こうのスレまできていただき、教えていただいて有難う御座いました。
透明ボタンを作る方法で、いちど試してみたいとおもいます。


636 名前: ぺんた 投稿日: 02/09/16 12:04
VBでMMORPG作れますか?


637 名前: デフォルトの名無しさん 投稿日: 02/09/16 12:13
>>636
道のりは険しいが、作れる。
ちゃんとした構想と技術があれば可能だよ。がんばってね。


638 名前: デフォルトの名無しさん 投稿日: 02/09/16 12:20
>>636
UOやEQやROのようなものだけをMMORPGと思っているなら
作れないと思って差し支えないでしょう。

アイディア次第だよ。



639 名前: デフォルトの名無しさん 投稿日: 02/09/16 12:35
>>638
(・ε。・)え〜?がんばれば出来るYO!



640 名前: ぺんた 投稿日: 02/09/16 12:46
>>637
まぁ、WinSockぐらいなら出来るんですが、まだまだ無理っぽいっすね。

>>638
えと、じゃぁああいうのは何で作ってるんですか?
Cか何かでしょうか?クライアント側はどうにでもなると思うんだけど
向こうのサーバーで動いているのは何で作ってるんでしょう?

そういえばめちゃ初歩的ではありますけど
一応VBで作られたMMORPG発見。
http://www.alpha-net.ne.jp/users2/kousaku/eternalonline.html


641 名前: 618 投稿日: 02/09/16 12:53
IMEをON、OFF選択できるようにする予定です。
ソースが長々となるのは覚悟しなきゃいけないのかな(汗)
>>623
サンプルみて理解しようしてます。やりたかったことが出来てますね、ありがとうございます。



642 名前: 615 投稿日: 02/09/16 13:18
>>615
> ただ、私がもしプログラムで飯食ってる人間なら間違っても

617がフォローしてくれている通りだ。
少しでもプログラミングしている人間なら、
君の発言がどれだけあほな発言かすぐにわかるってこった。
プログラミングで飯食ってる人間なら間違っても
君みたいなあほな発言をここでしない。

それと、他人が労力を費やして作ってるソフトを
自分で努力もしないやつが解析して理解できるわけがないだろ。




643 名前: 615 投稿日: 02/09/16 13:21
>>642
>>615じゃなくて>>624だ。がーん。かっこわるすぎ。



644 名前: デフォルトの名無しさん 投稿日: 02/09/16 13:26
>>642
まぁ、あるソフトと同じ動作をするモノを作ってみたいという行為自体は俺はいいと思うけどな。
しかし、ここで聞く時点で彼にはその資格はないと思った。
自分でどうすれば実現出来るかを考えて自分なりにアルゴリズムを試行錯誤して見る。
関係のありそうな書籍を読んで自分の技のレパートリーを増やしていく。
それがまねると言うことでありプログラミングという創造的な作業の基本であると思う。



645 名前: デフォルトの名無しさん 投稿日: 02/09/16 13:30
ま、初心者スレですし。


646 名前: デフォルトの名無しさん 投稿日: 02/09/16 13:42
>>642 >>644
な、なるほど!
つまりお二人の意見をまとめると、こういうことですね。
「書籍も買えない貧乏人は麦を食え」

うーん。なんとなくカッコいいからage。


647 名前: デフォルトの名無しさん 投稿日: 02/09/16 13:52
>>646
違うぞ。
・金がないなら努力しろ。
本屋で立ち読みして必要な部分丸暗記してくるくらいの覇気が必要。
後、インターネットは使用可能なわけだ。情報には事欠かないだろう。
金がないんだから工夫で乗り切るしかない。
幸い、コンパイラも情報も無料のモノが多くなってきたことだし。
なお、「インターネットで人に聞く」は勉強のうちにも努力のうちにも入らん。

・努力する気ないなら金を出せ。
面倒なら初めから市販ソフトで我慢するかどっかのSEにでも頼んで作ってもらえと。
自分で作れないんだから仕方ない。人にその面倒なことをやってもらう対価を払うべし。

・どちらも出来ないなら死んでしまえ。
上記のことはPCのすべての分野に当てはまる。出来ないのならやめて違う仕事なり
趣味なりを探すのがあなた自身のため。落ち込むことはない。人には適正というモノが
あるんだから。


648 名前: デフォルトの名無しさん 投稿日: 02/09/16 13:55
>>642
一人相撲しちゃった・・( ´,_ゝ`)プップッ



649 名前: デフォルトの名無しさん 投稿日: 02/09/16 14:03
>>646
>「書籍も買えない貧乏人は麦を食え」

書籍うんぬんの前に自分で考えるだろ。
その考えることまずしてないって話だと思うが。

本を読むなら、
・図書館を探す。なければ取り寄せを頼むこともできる。
・本屋で立ち読みもできる。

書籍変えませんってやつは、どこからインターネットしてるんだよ。
電気代やネット代は誰がどうやって払ってるんだ。
書籍も買えないほど貧乏なら、まずはバイトでも何でもして金稼げ。
中学生や小学生でバイトができないなら、親と交渉しろ。
プログラミングしてんだったら、プログラミングのできる環境があるわけで、
そもそも貧乏ではないと思われ。



650 名前: デフォルトの名無しさん 投稿日: 02/09/16 14:07
>>646
麦は健康にいいぞ。


651 名前: デフォルトの名無しさん 投稿日: 02/09/16 14:09
>>650
マジカルてハァハァ



652 名前: デフォルトの名無しさん 投稿日: 02/09/16 14:56
ってか、もうやめませんか。
初心者の私が質問しにくい空気がピンピンです


653 名前: デフォルトの名無しさん 投稿日: 02/09/16 15:40
>>652
自分でやるべきことをやった上で、
それを明確にして質問すれば叩かれることもなかろう。
板違いな内容は別として。


654 名前: デフォルトの名無しさん 投稿日: 02/09/16 15:52
VBのIDE画面のプログラムコードの色を、
ツール>オプション>エディタの設定タブ
で変更できますよね。
そのときに指定できる色が、あらかじめ決められた色しかありませんが、
RGB値なりなんなりで、自分で色を自由に指定する方法はないでしょうか?
それらを保存してるINIファイルらしきものも見当たりません。

どうかお教えください。


655 名前: デフォルトの名無しさん 投稿日: 02/09/16 15:56
>>654
ブチギレても良いですか?


656 名前: デフォルトの名無しさん 投稿日: 02/09/16 16:35
キーッ


657 名前: キンキンに腹まで反り返った 投稿日: 02/09/16 17:49
>>624のティムボあげ。


658 名前: デフォルトの名無しさん 投稿日: 02/09/16 17:51
>>654

コメントは赤
キーワードを青

にするだけで十分だべが?
ナマ言うんじゃねェて。



659 名前: デフォルトの名無しさん 投稿日: 02/09/16 18:03
次のようなWith文の中にエラー処理を入れたいのですが
そういうことは可能でしょうか?

With rs_TmpFile
.Fields("aaa").Value = str_Sample1
.Fields("bbb").Value = str_Sample2
.Update
End With


660 名前: 651 投稿日: 02/09/16 18:05
あ、ADO使ったコーディングです。


661 名前: デフォルトの名無しさん 投稿日: 02/09/16 18:07
>>659
入れれば。


662 名前: デフォルトの名無しさん 投稿日: 02/09/16 18:22
VB.net買ったんだけど、ナゲェ、ナゲェよインストールの時間
インストールしてる時間で
コーディングできちゃうよ


663 名前: デフォルトの名無しさん 投稿日: 02/09/16 18:23
>>662
インストールしている時間に寝てなさい。


664 名前: デフォルトの名無しさん 投稿日: 02/09/16 21:52
textboxのDataFormatプロパティに
formattypeとして日付(yyyy/mm/dd)を設定しました。
これってユーザが20010101とか入力して
ロストフォーカスした際に
勝手に"2001/01/01"に整形したり
してくれるわけじゃないの?



665 名前: デフォルトの名無しさん 投稿日: 02/09/16 22:03
>>652
粘着厨房が荒らしてるだけなので、気にせずドゾ。
無視してマターリやればいいです。
とはいえ、>>601を読み返してみれば、荒れるのもわかるわな…。


666 名前: デフォルトの名無しさん 投稿日: 02/09/16 22:53
>664
使ったことないんでわからないんだが、ヘルプを読む限りDBに保存している値を
表示させるときの書式、という意味合いだと思うよ。
しかもDBと連結してないと使えないみたいだ。


667 名前: デフォルトの名無しさん 投稿日: 02/09/16 23:47
>>659
「可能でしょうか?」じゃねえだろ。
まずは自分で試してみて、出来なかったら聞いて来い。


668 名前: デフォルトの名無しさん 投稿日: 02/09/17 01:24
このスレ恐ろしいな〜。俺が質問するには十年早いや。


669 名前: デフォルトの名無しさん 投稿日: 02/09/17 01:41
質問文の形式と態度さえ間違ってなければ問題ないはず>>668


670 名前: デフォルトの名無しさん 投稿日: 02/09/17 02:08
>>668
十年後にはVBがないから、質問するなら今だ。


671 名前: デフォルトの名無しさん 投稿日: 02/09/17 03:29
ツールバーなら知っているのですがクールバーとはなんでしょうか?


672 名前: デフォルトの名無しさん 投稿日: 02/09/17 03:42
↓の右側のほう
http://images.google.co.jp/images?hl=ja&ie=UTF-8&oe=UTF-8&q=%E3%82%AF%E3%83%BC%E3%83%AB%E3%83%90%E3%83%BC&sa=N&tab=wi&lr=lang_ja


673 名前: 671 投稿日: 02/09/17 03:48
そこに行ったところ
クール・バーニンという音楽アルバムだとわかりました。ありがとうございます。


674 名前: デフォルトの名無しさん 投稿日: 02/09/17 05:56
>>668
同感
みんな冷たい
初心者向けの板に思えない



675 名前: デフォルトの名無しさん 投稿日: 02/09/17 06:14
初心者向けの”板”じゃない。


676 名前: デフォルトの名無しさん 投稿日: 02/09/17 06:56
>>671-673
(・∀・)イイ!


677 名前: デフォルトの名無しさん 投稿日: 02/09/17 08:40
>>646
お歳がバレますわよ(W


678 名前: デフォルトの名無しさん 投稿日: 02/09/17 10:12
自称プログラマー気取りのセンズリスレはここですか?


679 名前: デフォルトの名無しさん 投稿日: 02/09/17 10:14
>>678
どうやらそのようです スレタイのアハァがすでに物語ってます


680 名前: デフォルトの名無しさん 投稿日: 02/09/17 11:06
>>678
自称プログラマー気取りって日本語変だよね。
そんな事書いてて楽しい?


681 名前: デフォルトの名無しさん 投稿日: 02/09/17 11:16
(*´д`*)アハァ…


682 名前: デフォルトの名無しさん 投稿日: 02/09/17 11:54
株価をネットから取得するには、どうしたらいいんでしょうか?フリーソフトを使わないで
組み込んでみたいのですが・・・



683 名前: デフォルトの名無しさん 投稿日: 02/09/17 11:57
煽られてる質問にちょっとやさしめのレスしてみます。
>>601
原理的にはさほど難しい事では無いよ。勉強してれば自然にわかってくる。
でもウイルスの数は膨大&増え続けているからキミ一人では一生かかっても終わらない。
だからこそいくつもの会社がそれをネタに食ってけるわけで・・・。
プログラムで飯食ってる人間なら間違っても一人でやろうとは思わない。
プライドあったらこんな事しようとしてるなんて恥ずかしくてとても言えない。

>>654
多分ムリ。ていうかよほど奇特な人以外は調べるどころかやろうとも思わないんじゃないかな。
まずそれをやる意義を皆に理解させる事から始めましょう。
意義があるなら調べてくれる人も出てくるかもしれない。

>>659
その質問は自分じゃ調べる気も試す気も全くありませんって言ってるのと同じだよ。
少しは自分で調べるなり試すなりしようよ。


684 名前: デフォルトの名無しさん 投稿日: 02/09/17 13:06
VBSでWIN32APIを使いたいのですが
そういうことは可能でしょうか?
教えてください。


685 名前: デフォルトの名無しさん 投稿日: 02/09/17 13:06
(*´д`*)アハァ…
(・∀・)イイ!


686 名前: デフォルトの名無しさん 投稿日: 02/09/17 14:00
>>684 可能です。


687 名前: 684 投稿日: 02/09/17 14:18
>>686
ありがとうございます。
どのような命令を使えばいいか、教えていただけますでしょうか。
(自分で色々調べてみてもわからなかったので)


688 名前: デフォルトの名無しさん 投稿日: 02/09/17 15:01
マウスポインタがpicturebox上にあるときだけlineを表示したいんですが、
picturebox.mousemoveでlineをvisibleにするのはいいとして、
ポインタが外に出た時にlineを消すのがうまくいきません。
form.mousemoveを使おうにもオブジェクトが敷き詰められてるのでうまくいかないし、
picturebox.lostfocusは別にfocusを得ているわけではないから使えないし。

どうすればよいでしょうか?


689 名前: デフォルトの名無しさん 投稿日: 02/09/17 15:27
VBSでAPI使うのは邪道だろ。


690 名前: デフォルトの名無しさん 投稿日: 02/09/17 15:29
>>689
別にいいじゃん


691 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:02
よろしくお願いします。
あるフォームのテキストボックスの内容を取ってきたいのですが、

form1に

ret = fncFormtxt(me)

と書いて、

public function fncFormtxt(frm as form) as string
dim ret as string

ret = fncBoxGet(frm)

end function

public function fncBoxGet(frm as form) as string
dim ret as string

ret = frm.text1.text

end function

と言う感じにしたいのですが、どうしたらよろしいでしょうか。



692 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:11
全くもって関係ない話ですえけど
色々プログラムなどしてる方に聞きたくて、IPやホスト名の話なのですが
この2チャンネル掲示板に書きこんだだけで、相手にIPなどバレてしまうのですか?
と言うか、調べる事は出来るのですか?例えば、今私が何のPCを使ってるかだとか
どこに住んでるかぐらいは、調べられるんでしょうか?


693 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:14
>>692
禿しくスレ違い。


694 名前: 692 投稿日: 02/09/17 16:15
わかり辛くてすみません。
例えばですよ、全く関係の無い>>691さんが私のIPなどを調べる事は出来るのか、と言う事です。
不可能ではない話なのでしょうか?


695 名前: 692 投稿日: 02/09/17 16:16
>>693
すみません、そう言う行為が可能か?不可か?だけでも教えて頂けないでしょうか?


696 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:21
IP抜かれてなんか困るようなことでもしたのかなー


697 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:24
すみません、質問させてください。
ActiveReports1.5を使用して帳票作成をしています。
出力データに依存しないラインを引きたいと思っています。
(Formオブジェクトでのlineメソッドのような感じです)

ヘルプファイルやネットで調べたのですが、該当するものが発見できませんでした。
どなたか知っている方がいらっしゃいましたら、ぜひご教授お願いします。
宜しくお願いします。

開発環境: VB6、ActiveReports1.5、Oracle8、OS:Windows2000


698 名前: 692 投稿日: 02/09/17 16:25
>>696
いえ、やってませんが、いろいろ不安なんですよ。
今、ウイルスバスターもファイアーウォールも何も入れてない状態なんで
ちなみに>>696さんは私のOSぐらいはわかってらっしゃるんでしょうか・・・。


699 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:25
>>694
691の頭では付加。
http://pc3.2ch.net/test/read.cgi/tech/1031809334/l50


700 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:27
むしろ板違いだろ。


701 名前: 692 投稿日: 02/09/17 16:30
すみませんです。
もう消えます>>699さん・・・その言い方がだと、かなり技術力がある奴が
やったら不可能ではないと言う事ですね・・。


702 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:31
VBにて、他のアプリケーションソフト(・・・.exe)を立ち上げるプログラム
のやり方を教えて下さいませ。例えば、ボタンを押すとEXCELやWORD
等が起動するカンジの内容なのですが・・・。


703 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:36
>>702
shell()関数
詳しくはMSDN


704 名前: ibhについて 投稿日: 02/09/17 16:40
わたし素人でもうしわけないんですけど、ibhってついてるのは、何のソフトで見れるんでしょうか



705 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:42
>>704
なんでそれをVBスレで聞く?


706 名前: デフォルトの名無しさん 投稿日: 02/09/17 16:42
>>704
激しくスレ違い


707 名前: 投稿日: 02/09/17 16:51
>>688
アクティブなコントロールのTop、LeftとマウスのX、Yから
マウスカーソルがpicturebox上にあるかどうかを算出する関数を作り
それを全コントロールのmousemoveから呼び出すってな感じかな。

>>691
form1に
ret = fncBoxGet(me)
と書いて、
public function fncBoxGet(frm as form) as string
fncBoxGet = frm.text1.text
end function

>>697
データ出力後にコードで移動すればいいのでは。


708 名前: 697 投稿日: 02/09/17 17:06
>>707
返答ありがとうございました。
申し訳ないんですが、「コードで移動」の意味がわからないです。すいません。。
質問の仕方が悪かったかもしれないです。

やりたい事は、出力されているデータの数などと関係なく、
四角や線を出力するレポートに対して縦横無尽に描きたい、
というものなのですが…。
大変申し訳ないですが、もう一度噛み砕いてご説明いただけないでしょうか。
宜しくお願いします。


709 名前: デフォルトの名無しさん 投稿日: 02/09/17 17:18
>>707
頭文字は大文字にしてYO!


710 名前: Delフサギコ ◆VzDeLphI 投稿日: 02/09/17 17:41
 ミ,,゚Д゚彡すつもんっす。
よろしくおねがいします。

グリニッジ時で
"2002-09-10T22:30:00Z"
こんな表現があるのですが
これを簡単に現地時間に
変換する方法はないでしょうか。

標準のライブラリにあればすごく楽なんです。


711 名前: Delフサギコ ◆VzDeLphI 投稿日: 02/09/17 17:51
 ∧,,∧
ミ,,゚Д゚彡ちょと説明不足だったかも。

グリニジ時文字列を普通のニポン時間文字列に
変換したいってことです。

よろしくおねがいします。


712 名前: 684 投稿日: 02/09/17 17:56
漏れの質問もどなたか回答お願いします。


713 名前: 投稿日: 02/09/17 17:59
>>708
デザイナに図形コントロールを張り付けるとデータ量に応じて
自動的に移動してしまうがそれを固定にしたい。
という事だと思ったけど違うみたいだね。
自由にお絵かきしたいって事ならPrinterオブジェクト使うとか。
またはデザイナにイメージボックス貼り付けて、別に描いた絵をそこに読み込むとか。

>>709
>>691のコピペなもんで。

>>710-711
無いと思う。普通にコード書いても簡単だと思う・・・


714 名前: 697 投稿日: 02/09/17 18:00
すみません自力で解決しました。調査不足でした。
申し訳ないですーー。


715 名前: 697 投稿日: 02/09/17 18:10
>>713
すいません、ありがとうございます。レス見ずに714を投稿してしまいました。
Printerオブジェクトもどんな事ができるのか、見てみますです。

自分がやりたかった線や四角描きは、Canvasオブジェクトに
Drawline,DrawPictureなどのメソッドがちゃんとありました。
調査不足でご迷惑お掛けしました。


716 名前: デフォルトの名無しさん 投稿日: 02/09/17 18:16
>>711
Win32APIの FileTimeToLocalFileTime あたりを使ってみるのは
どうかな?
VBだけでTZ考慮しならどうにかする方法は、自分でロジック組むしか
ないような気がするです。


717 名前: 投稿日: 02/09/17 18:51
>>715 わざわざどうも。見つかって良かったね。俺も覚えておこう


718 名前: デフォルトの名無しさん 投稿日: 02/09/17 20:58
VBド素人の質問で申し訳ありませんがご指導おねがいします。

Option Explicit

Private Sub Command1_Click()
  Dim bytArray() As Byte
  Dim intFileNo  As Integer
  Dim lngFileLenB As Long
  lngFileLenB = FileLen("sample1.txt")
  ReDim bytArray(lngFileLenB - 1)
  intFileNo = FreeFile
  Open "sample1.txt" For Binary As #intFileNo
  Get #intFileNo, , bytArray
  Close #intFileNo
  Text1.Text = StrConv(bytArray, vbUnicode)
End Sub

このときの「sample1.txt]ファイルはどこにおいて置けばよいのでしょう?
試している時はデスクトップに置いていたのですが読み込めませんでした。
基本的にパスの通し方を理解できていないですかねぇ?
よろしくお願いします。



719 名前: デフォルトの名無しさん 投稿日: 02/09/17 21:00
chdir()で指定したところとか
特に指定して無いならexeと同じフォルダ


720 名前: デフォルトの名無しさん 投稿日: 02/09/17 21:07
>>719
カレントフォルダだろ


721 名前: デフォルトの名無しさん 投稿日: 02/09/17 21:13
サムネイル表示させる(縮小画像がいくつも表示できる)プログラム
をVBで作成したいのですが、わかるかたはいらっちゃいませんか?


722 名前: 718 投稿日: 02/09/17 21:16
>719
実行してみたら成功しました!本当に有難う御座います。
これで3日間の胸のつかえがとれました。感謝!


723 名前: デフォルトの名無しさん 投稿日: 02/09/17 21:36
>>721
「わかるかた」って何がわかる人を指すの?


724 名前: デフォルトの名無しさん 投稿日: 02/09/17 21:39
>>721
いないでちゅ〜



725 名前: デフォルトの名無しさん 投稿日: 02/09/17 21:42
>>721
ざっと考えたけど、遅そう。


726 名前: デフォルトの名無しさん 投稿日: 02/09/17 21:53
>>725
そりゃエクスプローラの表示でも遅いしなぁ。でも、だからなに?


727 名前: Delフサギコ ◆VzDeLphI 投稿日: 02/09/17 21:55
 ミ,,゚Д゚彡なんかのAPIでできるって聞いたことあるけど...


728 名前: Delフサギコ ◆VzDeLphI 投稿日: 02/09/17 22:18
 ∧,,∧ かんたんですた。>>710
ミ,, ゚Д゚彡

Public Sub Check(ByVal A As String, ByVal B As String)
 If A <> B Then
  MsgBox "エラー" + vbCrLf + _
      A + "≠" + B
 End If
End Sub

'↓グリニッジ時を日本時間に修正する関数
Public Function GuriToJapTime(ByVal GuriTime As String) As String
 Dim Time As Date
 
 Mid$(GuriTime, 5, 1) = "/"
 Mid$(GuriTime, 8, 1) = "/"
 Mid$(GuriTime, 11, 1) = " "
 GuriTime = Left$(GuriTime, 19)
 
 Time = CDate(GuriTime)
 GuriTime = DateAdd("h", 9, GuriTime)
 GuriToJapTime = CStr(GuriTime)
End Function

Public Sub testGuriToJapTime()
 Call Check("2002/07/22 21:13:00", GuriToJapTime("2002-07-22T12:13:00Z "))
 Call Check("2002/07/22 21:13:00", GuriToJapTime("2002-07-22T12:13:00Z"))
End Sub


729 名前: デフォルトの名無しさん 投稿日: 02/09/17 22:36
>>691
そんな細切れにして、どうすんの?


730 名前: デフォルトの名無しさん 投稿日: 02/09/17 22:53
>>728
ちょっとまてい


731 名前: Delフサギコ ◆VzDeLphI 投稿日: 02/09/17 23:59
 ミ,,゚Д゚ミまってみる。



732 名前: デフォルトの名無しさん 投稿日: 02/09/18 00:13
>>684
もう見てないと思うけど、DynaCallをぐぐれ


733 名前: デフォルトの名無しさん 投稿日: 02/09/18 00:28
>>731
いや、待たなくていいです…
Mid$(GuriTime, 5, 1) = "/"ができるのを知らなかった。逝ってきまつ


734 名前: Delフサギコ ◆VzDeLphI 投稿日: 02/09/18 00:41
 ミ,,゚Д゚ミノ  いってらっつぁい
        俺も最近しりまつた。


735 名前: デフォルトの名無しさん 投稿日: 02/09/18 03:24
>>734
文字列操作が速くなった。ありがたやありがたや。


736 名前: デフォルトの名無しさん 投稿日: 02/09/18 08:35
ん?
Mid$(GuriTime, 5, 1) = "/"
って、置き換えってことだよね?


737 名前: デフォルトの名無しさん 投稿日: 02/09/18 11:14
VB6.0からActiveReportsの2.0Jを通して帳票出力を行いたいのですが
ここのサイトにActiveReportsの詳しい使い方が出てるよ!みたいな
ところを知っている方いらっしゃれば教えていただけないでしょうか?
YahooとかGoogleとかソフト自体を紹介しているとこくらいしか
引っかからないんですよね・・・


738 名前: デフォルトの名無しさん 投稿日: 02/09/18 11:47
>>737 ヘルプとサンプルを参照した方が早い


739 名前: 投稿日: 02/09/18 13:07
gif画像を拡大して一つのFormに いくつか 表示したいのですがどうしたらいいのでしょうか?


740 名前: デフォルトの名無しさん 投稿日: 02/09/18 13:40
株価をネットから取得するには、どうしたらいいんでしょうか?フリーソフトを使わないで
組み込んでみたいのですが・・・


741 名前: デフォルトの名無しさん 投稿日: 02/09/18 14:09
>>740
じゃあ市販のコントロール使う。


742 名前: デフォルトの名無しさん 投稿日: 02/09/18 14:50
>>739
APIのStretchBltあたりを調べるヨロシ。
きれいに拡大縮小するにはちょっとコツがあるけどね。


743 名前: 投稿日: 02/09/18 16:13
>>739 Imageコントロール使えばいいのでは


744 名前: 688 投稿日: 02/09/18 16:27
>>707
うーむ、それしかないですか。
結局picturebox以外のすべてのmousemoveにvisible=falseを書き込む形になりそう。
ありがとうございました。


745 名前: デフォルトの名無しさん 投稿日: 02/09/18 16:40
>>744>>688
APIのGetCursorPosとWindowFromPointでできるだろ


746 名前: デフォルトの名無しさん 投稿日: 02/09/18 16:44
Dim Pos As POINTAPI
GetCursorPos Pos
Line1.Visible = (WindowFromPoint(Pos.X, Pos.Y) = Picture1.hwnd)


747 名前: 投稿日: 02/09/18 18:02
参照設定で追加したDLL(ActiveX)を exeと同じフォルダにするには どうしたらいいのでしょうか?

つまり、VBでDLLを使うとき、参照設定で指定してあげるが、これをexeが実行するときに
そのDLLの位置をexeと同じフォルダに変更したいのです。

どうしたらいいのか 教えてください。


748 名前: デフォルトの名無しさん 投稿日: 02/09/18 18:04
はあ?意味わからん。
ファイルを移動するのか、それとも作業フォルダを移動するのか、
それ以前になんでそんなことをする必要があるのか。


749 名前: 投稿日: 02/09/18 19:30
DLLを参照するEXEを一緒に配布した場合、フォルダが違うとエラーが出るからです。

そういう必要は、あるんじゃないですか?


750 名前: デフォルトの名無しさん 投稿日: 02/09/18 19:41
> DLLを参照するEXEを一緒に配布した場合、フォルダが違うとエラーが出るからです。
でません。


751 名前: デフォルトの名無しさん 投稿日: 02/09/18 19:53
>>749
> 参照設定で追加したDLL(ActiveX)を
ということではなかったのか?
それならフォルダが違っても動く。

> DLLを参照するEXEを一緒に配布した場合、フォルダが違うとエラーが出るからです。
DLLの登録はどんな方法でやってるの?

> そういう必要は、あるんじゃないですか?
普通は必要ない。


752 名前: デフォルトの名無しさん 投稿日: 02/09/18 21:03
ListBoxのプロパティのStyleを"1"に設定すると
チェックボックスが付くじゃないですか?
あれがチェックされているかどうかの判断ってどうすれば
良いんですか?
MSDNでListBoxのプロパティやメソッド一覧を
一通り見たんですけどそれらしいのがありません。
どなたかアドバイスお願いします


753 名前: 752 投稿日: 02/09/18 21:12
あ、Selectedって奴かな?ちょっと試してみます


754 名前: デフォルトの名無しさん 投稿日: 02/09/18 21:18
Excelで貼ってある画像の元画像のPATHをコードから取得できないでしょうか。

Excelの質問スレで聞いたのですが、こちらの方がプロフェッショナルな気がして、
向こうは取り下げて来ますた。
よろしくおながいします。


755 名前: デフォルトの名無しさん 投稿日: 02/09/18 21:22
向こうの方に失礼かと。


756 名前: デフォルトの名無しさん 投稿日: 02/09/18 21:23
>>753
まず ListBoxを作成して
       ListBoxプロパティの"Style"項目を「1-チェックボックス」にします。
       あとは下記の処理でOKです。

       Private Sub Form_Load()
         'リストボックスに項目を追加
         List1.AddItem "Sample-1"
         List1.AddItem "Sample-2"
         List1.AddItem "Sample-3"
         
         その他の記述文
       End Sub

       Private Sub List1_ItemCheck(Item As Integer)
         If List1.Selected(Item) Then
           List1.List(Item)がチェックされたときの処理を記述
         Else
           List1.List(Item)のチェックがばずれたときの処理を記述
         End If
       End Sub

らしいです
漏れも参考にさせて貰ったです



757 名前: デフォルトの名無しさん 投稿日: 02/09/18 21:26
>>755
それじゃあ、向こうが下だと言っているようなもんじゃないの?(w

>>756
その妙なインデントは何?(w



758 名前: 752 投稿日: 02/09/18 21:31
>>756
レスありがとうございます。
↓のような感じで上から順次チェックしていくような
ロジックにしました


List1.ListIndex = 0
For i = 0 To List1.ListCount - 1

If List1.Selected(i) Then
MsgBox "aaa"
Else
MsgBox "bbb"
End If
Next i



759 名前: デフォルトの名無しさん 投稿日: 02/09/18 21:35
>>757
>漏れも参考にさせて貰ったです
って書いたじゃん(w

>>752
まぁ、頑張ってくれ



760 名前: デフォルトの名無しさん 投稿日: 02/09/19 00:28
SQLサーバ6.5と
VB6.0で作ってるんですけど、
VBからSQLサーバに接続失敗したときに
ログインのダイアログが出てしまいます。
これを出したくないんですけど
どのようにしたらよいでしょうか?


761 名前: デフォルトの名無しさん 投稿日: 02/09/19 05:43
接続に失敗しないようにする。


762 名前: デフォルトの名無しさん 投稿日: 02/09/19 07:42
それしかないの?


763 名前:   投稿日: 02/09/19 09:10
>>750
実行すると
実行時エラー 430
クラスはオートメーションまたは予測したインターフェースをサポートしていません。
というエラーが出ます。


764 名前: デフォルトの名無しさん 投稿日: 02/09/19 09:17
SQLサーバ6.5と
VB6.0で作ってるんですけど、
VBからSQLサーバに接続失敗したときに
ログインのダイアログが出てしまいます。
これを出したくないんですけど
どのようにしたらよいでしょうか?


という内容の紙芝居を作っています。


765 名前: デフォルトの名無しさん 投稿日: 02/09/19 09:20
>>763
「フォルダが違う」なんて出て無いじゃん。
配布方法に問題ありと思われる。どういうふうに配布してるの?


766 名前:    投稿日: 02/09/19 09:30
>>765
あ、別のエラーも出ました。
オートメーションエラーってやつです。

配布する前に 違うフォルダ等で テストしてるだけなんですけどね。
これで OKじゃないと dllを 配布できません。




767 名前: デフォルトの名無しさん 投稿日: 02/09/19 09:35
>>763
 横レスです 
 DLLの参照設定が外れてるのでは?
 参照設定で追加したDLLをコンパイルするときは、
 DLLだけをコンパイルしただけではダメで
 DLLを参照するEXEも、再び参照設定をしなおしてからコンパイルした方がイイと思われます
 
 


768 名前:    投稿日: 02/09/19 09:37
>>767
すみませんが、参照設定しなおすというのは、dllを参照するようにすればいいということでしょうか?

普通に作成するときは、vbpで参照設定されてましたから・・・


769 名前: デフォルトの名無しさん 投稿日: 02/09/19 09:37
>>766
うざいなもー。DLLのファイルをコピーするだけじゃダメ。
REGSVR32 /s YOURDLL.DLL
とか実行してレジストリに登録しろ。
それかデストリビューションウィザードかWindowsInstallerでセットアップを作れ。



770 名前: 766 投稿日: 02/09/19 09:47
>>769
うざいとか言うんじゃねえよ糞野郎!!
俺はうざくねえよ糞野郎!!



771 名前: 769 投稿日: 02/09/19 09:50
>770
十分ウザいじゃねえか糞野郎



772 名前: 769 投稿日: 02/09/19 09:51
俺はお前がうざいよ。


773 名前:     投稿日: 02/09/19 09:51
>>769
ActiveXのDLLって レジストリに登録しないとダメなんでしょうか?



774 名前: デフォルトの名無しさん 投稿日: 02/09/19 09:51
VB6.0でAccessのソフトを作っています。

フォームを開く時に、最大化表示しないように「ポップアップ」を"yes"にしました。
これで最大化にならずにほぼ中央に表示されるようになったのですが、少し上のほうに
出てきて、メッセージボックスの位置とかなり外れたところに出てきてしまいます。

メッセージボックスと同じくらい画面中央に表示させたいのですが、どなたか教えて
いただけないでしょうか。よろしくお願い致します。


775 名前: 769 投稿日: 02/09/19 09:54
釣られますた。>>771はかたり。
>>773
ActiveXとはそういうものなのです。
その代わりに物理的な場所にとらわれず参照でき、
バージョンの互換も保たれる。はずだった。


776 名前: 767 投稿日: 02/09/19 10:01
>>768
 vbpで参照設定のチェックボックスが外れているのではないかと思ったんです
 外れていればチェックを付け直して再コンパイルした方がいいと思います
 レジストリ登録しても、ダメな時はダメなので(この辺、なんでダメなのかは不明)
 地道にやっていくしかないと思います。

 参照設定ではなくて、コード上でDLLをCreateObjectすると、
 これらの問題が出なくなるような気がしますが
 但し、DLLのレジストリ登録はやっといてね!
 


777 名前: 769 投稿日: 02/09/19 10:13
>767 = >776
VBPは配布しないだろうから、関係ないと思うよ。

>747
  >748
>749
  >750
  >751
>763
  >765
  >766
  >767
>768
  >769
>773
  >775
  >776


778 名前: 767 投稿日: 02/09/19 10:26
>>777
 DLLを参照しているEXE側のソースの
 参照設定のチェックボックスが外れていたらおかしくなるでしょ?
 バージョンの互換は、ソースの設定中に、プロジェクト互換とか、バイナリ互換とか
 設定するウィンドウがあったような気がする 手元にVBがないのでハッキリしていないが
 
>>768さん DLLを再コンパイルした後に、
 そのDLLを参照しているEXEのソースの参照設定を確認してください 
 


779 名前: デフォルトの名無しさん 投稿日: 02/09/19 10:31
あーあ。VBの罠の一つ。ActiveXにはまってるよ。
VBは馬鹿でも出来るぶんちょっとむずかしい(w)こと
しようとしてはまってる奴が多いんだよなぁ。
ヘルプを10回くらい読み直して少しは賢くなってから挑戦したら(w


780 名前: デフォルトの名無しさん 投稿日: 02/09/19 10:38
VB初心者です。
VBで処理を5秒間とか停止させるコマンドはありますか。
教えてちゃんで申し訳ありませんが教えてください。



781 名前: 投稿日: 02/09/19 10:45
regsvr32 /u で 何度 登録したDLLを削除しても
VBの参照設定を見ると 消えてません。

どうしたら 消えるのでしょうか?


782 名前: デフォルトの名無しさん 投稿日: 02/09/19 10:46
>>780
なんでわざわざ初心者だとか余計な一言言うかな・・・
そういうのが甘えだってたたかれる原因になるんだよ。
と、これだけだとなんなので、TimerとDo〜Loopでも
調べなさいと言っておく。一発でできるコマンドはVBにはない。


783 名前: デフォルトの名無しさん 投稿日: 02/09/19 10:50
>>781
くすくす


784 名前: デフォルトの名無しさん 投稿日: 02/09/19 10:58
>>783
なにがおかしんじゃこらぁ!
しねこらぁ!


785 名前: デフォルトの名無しさん 投稿日: 02/09/19 11:00
もうほとんど手遅れ。くすくす。


786 名前: 784 投稿日: 02/09/19 11:24
>>785
ハアァァア〜〜〜 チィ〜ン〜コォ〜
ハアァァア〜〜〜 マァ〜ン〜コォ〜
チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
チンコ(チンコ!)マンコ(マンコ!)チンコ(チンコ!)マンコ(マンコ!)
チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
爺っちゃんも 婆っちゃんも チンコマンコチンコマンコ
父っちゃんも 母っちゃんも チンコマンコチンコマンコ
坊っちゃんも 嬢っちゃんも チンコマンコチンコマンコ
みんな一緒に チンコマンコチンコマンコチンコマンコチンコマンコ
チンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコ


787 名前: デフォルトの名無しさん 投稿日: 02/09/19 11:25
ActiveXプラグイン(IE)から
全文検索エンジンを利用して
検索結果をActiveXプラグインの
フォームに表示させたいのですが、
可能ですか?


788 名前: デフォルトの名無しさん 投稿日: 02/09/19 11:25
ハァッ


789 名前: デフォルトの名無しさん 投稿日: 02/09/19 11:50
コントロールパネルのODBCデータソースの
システムDSNのデータソースの構成に、
「サーバー」っていう欄があるじゃないですか。
VBからこのサーバーに設定されている値をGETするにはいったいどうすればいいんでしょうか?



790 名前: 投稿日: 02/09/19 12:03
(*´д`*)アハァ… VB初心者質問スレ
みんな 初心者です。
ヘルプもどこを読めば わかるか 教えてくんなまし〜〜


791 名前: デフォルトの名無しさん 投稿日: 02/09/19 12:52
VB6.0をWinXP環境で使ってる人に質問です。
SP5を当てた時にmdac_type.exeを実行してますか?
WinXPには、mdac2.7が入ってると聞きますが、
これを実行しちゃえば、mdacが2.7→2.5へと
ダウングレードしてしまうと思うんですがいかがでしょう?


792 名前: 投稿日: 02/09/19 12:58
>>774
>VB6.0でAccessのソフトを作っています。
Access VBAのことですね。
中央に表示を指定しても少し上のほうに表示されるというのは
おそらくAccessの仕様ですので手動で設定してやるほか無いと思います。
でもAccessではScreen.Heightとか取得できないんじゃなかったかな。
というわけで詳細はAccessスレで聞いて下さい。
ちなみに最大化表示したくなければ最大化ボタンを無効にすればいいのでは。。。


793 名前: 774 投稿日: 02/09/19 13:03
>>792
そうですね、AccessVBAのことです。失礼致しました。
手動で設定ですか・・・。一応Accessスレの方でも聞いてみます。
最大化ボタンを非表示にする「ダイアログ」にしても、最大化表示されてしまいます。

アドバイス、ありがとうございました。


794 名前: デフォルトの名無しさん 投稿日: 02/09/19 13:06
>>774
DoCmd.MoveSizeを使え


795 名前: 投稿日: 02/09/19 13:28
>>793
>最大化ボタンを非表示にする「ダイアログ」にしても、最大化表示されてしまいます。
デザイン時に最大化した状態で保存してるからじゃない?


796 名前: 投稿日: 02/09/19 13:38
>>793
手動で設定ではなくコードで設定です。
コードで設定のことを手動で設定と言ってしまう変な癖がついてます。。。ゴメン。


797 名前: 投稿日: 02/09/19 13:54
>>789
サーバーって欄無いんだけど・・・
値はレジストリから取得できるんじゃない?


798 名前: 789 投稿日: 02/09/19 13:57
>>797
ありがとうございます。
HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\hoehoe
のServer にありました。
SQLGetPrivateProfileString でもとれるようです。


799 名前: デフォルトの名無しさん 投稿日: 02/09/19 14:05
今組んでるプログラムがちょっとでっかいファイルを
読み込んでキャッシュとしています。
実メモリ256M 仮想メモリ2Gとっているんですが、
300M超えたところでメモリ不足で落ち。
さてなぜでしょう?


800 名前: デフォルトの名無しさん 投稿日: 02/09/19 14:09
>>799
まずコード出せ。話はそれからだ。


801 名前: デフォルトの名無しさん 投稿日: 02/09/19 14:17
>>800
こんな感じです。
Redimで落ちてるからメモリ不足なんだろうけど
構造体の配列ってやばいんですかね。

Do While Not EOF(intFile) ' ファイルの終端までループを繰り返します。

ReDim Preserve typKeyInfo.typRelInfo(lngRTrm + 1) '関連情報配列確保
Line Input #intFile, strData

'配列に入れる文字列処理

lngRTrm = lngRTrm + 1 '関連ターム数加算
Loop



802 名前: デフォルトの名無しさん 投稿日: 02/09/19 14:36
>>801
そりゃそうだろ


803 名前: デフォルトの名無しさん 投稿日: 02/09/19 14:41
>>801
ディスクの空きは何バイトある?
構造体の配列の上限の制限をヘルプで探したけど無かった。
(これは構造体の配列をもつ構造体だけど)


804 名前: デフォルトの名無しさん 投稿日: 02/09/19 15:03
ActiveReports2.0でとりあえずデータベースとなるAccessから
データを表示することはできました。
しかし問題が1つ発生し、例えば項目が3つあり項目1を主Keyとして設定し
項目2と項目3があったとすると、まずAccessで登録したときには
項目1:3 項目2:あいうえお 項目3:かきくけこ
で2番目に登録したものが
項目1:1 項目2:さしすせそ 項目3:たちつてと
だとすると、Accessのテーブルでは昇順で設定されているので項目1の
数値が若い順番から登録されているのですが、これをActiveReportsで
表示すると、あくまで登録した順番で
  項目1 項目2    項目3
   3  あいうえお かきくけこ
   1  さしすせそ たちつてと

で表示されてしまいます・・・・。これを主Keyの数値の若い順番から
表示させるにはどうしたらいいのでしょうか?
Accessの方の設定をしなければならないのでしょうか?


805 名前: 804 投稿日: 02/09/19 15:05
すみません。使っているのはVB6.0のEnterPriseでSP5入れてます
ActiveReportsは2.0Jです


806 名前: デフォルトの名無しさん 投稿日: 02/09/19 15:06
>>803
ディスクは27Gとまだまだコンモリあります。
自分もメモリの制限探してみたんですが、
それらしい記述ないんですよね。
仕様書通りだとこのソースなんですが、
キャッシュにしないで逐一ファイルから読む方が
良さそうかもしんないですね・・・


807 名前: デフォルトの名無しさん 投稿日: 02/09/19 15:18
>>799
こんな質問の仕方でちゃんとしたレスがかえってくると思ってる
おまえの頭がメモリ不足。


808 名前: デフォルトの名無しさん 投稿日: 02/09/19 15:22
>>801
ReDim Preserve は毎回メモリ確保してメモリコピーして、って
やってるので、大きなループ中で+1しながらやるとスタック不足で
落ちるよ。

lngRTrm = 0
ReDim typKeyInfo.typRelInfo(100) '適当な初期値にする
Do While Not EOF(intFile)
  lngRTrm = lngRTrm + 1
  If lngRTrm > UBound( typKeyInfo.typRelInfo ) Then
    ReDim Preserve typKeyInfo.typRelInfo(lngRTrm * 2 + 1)
  End If
  Line Input #intFile, strData
  typKeyInfo.typRelInfo(lngRTrm) = strData
Loop
ReDim Preserve typKeyInfo.typRelInfo(lngRTrm)

このようにして、なるべくメモリ再確保の回数を少なくすれば、
落ちなくなると思う。
配列サイズの大きさがある程度予測できるなら、初期値をそれに
近くしておくと効率的。


809 名前: デフォルトの名無しさん 投稿日: 02/09/19 15:25
131 名前:nobodyさん 投稿日:2002/09/19(木) 05:08 ID:Ab8J7aLw
>質問者へ
あのよ、プログラムの質問なんだから無理に文章にしないで

・プログラム概略
プログラムの説明、使用目的など
・環境
OS、使用アプリ、関連アプリなど
・入力
データ入力の方法、データ形式など
・処理
プログラム内で行うデータ加工、計算、アルゴリズムなど
・出力
出力データ形式、出力先など
・問題点
不具合の説明
・自分なりの解決法(試したもの)
自分で試した方法
・ソース
問題となっているプログラムソース

このくらいの箇条書きに整理して質問しろよ。書いてるうちに問題が解決する
場合もあるだろ。
どうも、解り辛い書き込みが多いよ。



810 名前: 799,801 投稿日: 02/09/19 15:37
>>807
スマソ。逝ってきます。

>>808
ありがとうございます。
やってみるっす。



811 名前: 807 投稿日: 02/09/19 15:49
>>810
逝くんじゃあねェ。
逝く時は漏れと一緒だ


812 名前: 807 投稿日: 02/09/19 15:54
>>811
へんな文章でスレかたるなよw
おれはその趣味ないから。


813 名前: デフォルトの名無しさん 投稿日: 02/09/19 15:55
VBでWWWWサーバーに対してファイルのアップロード
が出来るクライアントを作ろうと思ってます。
つまり、ブラウザのGETやPUTメソッドをVBで実現させたいのです。

ブラウザだったら簡単ですが、VBの場合とうなんでしょうか?
標準でHTTPのプロトコルと通信を実装して
いるコントロールってありますか?


814 名前: 799 投稿日: 02/09/19 15:58
>>807

「おまえの頭がメモリ不足。」

に妙に納得。
増設キボンヌ。


815 名前: デフォルトの名無しさん 投稿日: 02/09/19 15:59
>>808
メモリ確保の回数を減らすのはいいことだけど、
それ以外は全然間違ってるよ。
あんまり適当な事書くな。


816 名前: デフォルトの名無しさん 投稿日: 02/09/19 16:00
>>813
> ブラウザだったら簡単ですが、VBの場合とうなんでしょうか?
おまえバカ?アプリと開発環境一緒にしてどーすんのと小一時間。
実現したいのなら、ちょっとは自分で探すなりしろ。
ここは子守りスレじゃないぞ。


817 名前: デフォルトの名無しさん 投稿日: 02/09/19 16:10
>>799
300MBという数値は何を元に判断した?


818 名前: 804 投稿日: 02/09/19 16:32
解決しました。最初はADOでデータベースに接続していて、それを今度は
DAOで接続するとうまくいきました。
でもなぜなのか理屈がわからない・・・


819 名前: デフォルトの名無しさん 投稿日: 02/09/19 16:47
webbrowserコントロールを使って現在表示しているページの内容を取得するにはどうしたらいいのでしょうか?

>>813
webbrowserコントロールの navigate でGET,POST出来るけど
それでファイル送信できるんすか?



820 名前: デフォルトの名無しさん 投稿日: 02/09/19 16:54
>>818
809じゃないけどさ、もう少し質問するとき具体的なこと書いたほうがいいよ。
自分のレス(>>804)読んでて人が理解・分析できると思う?
プロパティ設定してるのか、クエリを作成してるのか
それともSQL文を書いてるのか、さっぱりでしょ。
818でも、そうだよね。
独り言ならいいけど質問ならもう少し相手のこと考えてね。


821 名前: 804 投稿日: 02/09/19 17:05
>>820
申し訳ない・・・。次からは気をつけます


822 名前: デフォルトの名無しさん 投稿日: 02/09/19 17:57
あはーん、>>781答えてもらえてない。
かわいそうに。ここは馬鹿ばっかりだからなぁ。
くすくす。


823 名前: デフォルトの名無しさん 投稿日: 02/09/19 18:04
>>822=781
必死だな。


824 名前: デフォルトの名無しさん 投稿日: 02/09/19 18:15
盛り上がってるねえ


825 名前: デフォルトの名無しさん 投稿日: 02/09/19 18:51
誰か>>791の質問に答えてください。
おながいします。


826 名前: デフォルトの名無しさん 投稿日: 02/09/19 19:00
>>822
なにがおかしんじゃこらぁ!
しねこらぁ!


827 名前: デフォルトの名無しさん 投稿日: 02/09/19 19:14
別板にて質問させていただいたのですが解決しなかったので、申
し訳ありませんがこのスレにて再度聞かせていただきます。

Excelのアプリケーションウィンドウの左上に表示されているア
イコンを自作のものに変更することは可能だと思うのですが、ど
のようなコードを書けばよいのでしょうか?
タイトルを変更するのはCaptionの変更でできたのですが、いろ
いろ調べてみましたがわかりませんでした。

どなたかご存知の方がいましたら教えていただけないでしょうか?




828 名前: デフォルトの名無しさん 投稿日: 02/09/19 19:52
>いろいろ調べてみましたが
何を調べたの


829 名前: 827 投稿日: 02/09/19 19:59
>>827
ググって見たり、VBA関連のサイトで過去ログを見たりです。


830 名前: デフォルトの名無しさん 投稿日: 02/09/19 20:14
Vinus Basic


831 名前: デフォルトの名無しさん 投稿日: 02/09/19 20:15
>>827
そういうアイコンはリソースなのが普通。
API関連で検索してみ。


832 名前: デフォルトの名無しさん 投稿日: 02/09/19 20:58
>>825 mdac_type.exeを実行してみなよ。そうすればわかる。


833 名前: デフォルトの名無しさん 投稿日: 02/09/19 21:12
>>832
どうなるのよ
怖くて出来ません


834 名前: デフォルトの名無しさん 投稿日: 02/09/19 22:29
>>833「セットアップはシステムをアップデートできません」とメッセージが出て終わり。


835 名前: デフォルトの名無しさん 投稿日: 02/09/19 22:40
>>822
手遅れって回答ついてるけど。
プロジェクト互換にせずに拡張しつづけたんやろうねぇ。


836 名前: デフォルトの名無しさん 投稿日: 02/09/19 22:49
>>822
ちょっと哀れな気がしたので俺も答えてやるよ。

Regsvr32 でどういう結果が表示されるのかくらい書け。
単に「消えてません」でわかる奴がいるか、ボケ。
これだから一部のVB厨は...


837 名前: デフォルトの名無しさん 投稿日: 02/09/19 23:21
>>781
Regsvr32はレジストリの情報をいじる。
VBの参照設定はVBPに書き込まれる。
VBでコンパイルするとコンパイルしたマシンのレジストリは自動的に更新される。


838 名前: デフォルトの名無しさん 投稿日: 02/09/19 23:52
質問があるんですが、、、
コンボボックスで、項目ごとに文字色を変えるってことは可能ですか?
方法があったら、教えて欲しいです。


839 名前: デフォルトの名無しさん 投稿日: 02/09/20 00:09
>>837
> VBでコンパイルするとコンパイルしたマシンのレジストリは自動的に更新される。

そうとは限らん。
>>781は 自分で作ったVB製のDLLとはどこにも書いてない。


840 名前: 839 投稿日: 02/09/20 00:11
↑ それが原因とは限らん という意味でしゅ。


841 名前: デフォルトの名無しさん 投稿日: 02/09/20 00:41
エクセルのシートに張り付けたコントロールに
vbからデータを渡すのはどう書けばいいの?



842 名前: 688 投稿日: 02/09/20 07:15
>>745
なるほど、APIですか。今まで考慮してませんでした。
試してみます。


843 名前: デフォルトの名無しさん 投稿日: 02/09/20 08:07
>>834
ありがとう
実行してもしなくてもなくてもよかたんですね。
俺は実行してなくて不安だたけど安心しました。


844 名前: 827 投稿日: 02/09/20 08:14
>>831
ありがとうございました!キーワードを替えて検索しましたら見事に目
的のサンプルにたどり着けました。

煮詰まってたもんで、VBAVBAVBAアイコンアイコンばかり検索しちゃっ
てました。

はじめてAPIを使いましたが勉強になりました。
コードをいきなり教えてもらうよりヒントで答えていただいたおかげで
とても勉強になりました。

本当にありがとうございました。


845 名前: デフォルトの名無しさん 投稿日: 02/09/20 09:33
>>841
書き込み先にExcelシートにあるコントロール名を指定してやれば
出来るんじゃないの?


846 名前: デフォルトの名無しさん 投稿日: 02/09/20 09:40
アプリケーションアイコンを設定するにはフォームにアイコンを設定して
プロジェクトのプロパティでそのフォームを選択、としてるのですが、
フォームを持たないアプリケーションにアイコンを設定するにはどうするのでしょうか?


847 名前: 781 投稿日: 02/09/20 09:40
>>836
>>837

regsvr32 /u D:\test.dll
をやると
「D:\test.dll の DllUnregisterServer は成功しました。」 
と 表示されます。
次に VB6を起動します。
新規のEXEの作成を選んで、立ち上げてから、参照設定を確認してるんですが、
そのDLLが 残ったままになってます。

OSは XPで VB6のSP5をあててます。

レジストリを調査してみると 何箇所かそのDLLが表示されたのですが
何箇所かあるので 直接は 削除しませんでした。

どちらを変更するのが 確実なんでしょうか?
教えてください。


848 名前: デフォルトの名無しさん 投稿日: 02/09/20 10:43
>>847
> DLLが 残ったままになってます。
これは参照設定でチェックが入った状態になってるということ?
それとも名前が出るだけ?
そのDLLはどんなDLL?自作?

要するに REGSVR32の実行直後ならレジストリ情報が
消されているのか否かを調べてみた方がいいと思うわけだけど。


849 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:21

下記のようなCase文の書き方できるのってCだけでしたっけ?
"11","12","13"は無処理って事になっちゃうんですね


Select Case AAA
case "10"
msgbox "10"
Case "11"
Case "12"
Case "13"
msgbox "10以外"
End Select



850 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:23
道繁に包まれて走り出した行くべき道を
情熱のベクトルが僕の胸を貫いてゆく
どんな危険に傷付く事があっても


851 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:23
>>849
自分で試せボケ


852 名前: 849 投稿日: 02/09/20 11:24
>>851
試したよ。
なっちゃうんですねって言ってるべや


853 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:28
Cと同じようにしたいなら
 Case "11","12","13"
と書く。

つーかヘルプくらい読めボケ。


854 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:28
>>852
そんなもん常識だっつーの


855 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:28
>>849
Select Case AAA
case "10"
  msgbox "10"
Case "11", "12", "13"
  msgbox "11か12か13以外"
Case Else
  msgbox "それ以外"
End Select


856 名前: 855 投稿日: 02/09/20 11:29
まちがえた。。。


857 名前: 849 投稿日: 02/09/20 11:32
みんないい奴だな。
ありがとう


858 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:36
>>855
>Case "11", "12", "13"
>  msgbox "11か12か13以外"

これって
   msgbox "11か12か13"
じゃないの?



859 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:39
>>858
ちゃんと自分で間違えたって書いてるじゃん。
気づけよボケ。


860 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:43
もうボケボケ言い合うのはやめにしよう
不毛だ・・


861 名前: 849 投稿日: 02/09/20 11:49
みんないい奴だな。
ありがとう
俺の為を思って叩いてくれる、最高のダチだ


862 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:50
いやダチじゃないし。


863 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:53
おいおい こんなことでもう10レス以上
消費しちゃってるよ
資源の無駄遣いってこういうことを言うんだな


864 名前: デフォルトの名無しさん 投稿日: 02/09/20 11:55
>>863
ハアァァア〜〜〜 チィ〜ン〜コォ〜
ハアァァア〜〜〜 マァ〜ン〜コォ〜
チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
チンコ(チンコ!)マンコ(マンコ!)チンコ(チンコ!)マンコ(マンコ!)
チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
爺っちゃんも 婆っちゃんも チンコマンコチンコマンコ
父っちゃんも 母っちゃんも チンコマンコチンコマンコ
坊っちゃんも 嬢っちゃんも チンコマンコチンコマンコ
みんな一緒に チンコマンコチンコマンコチンコマンコチンコマンコ
チンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコ



865 名前: デフォルトの名無しさん 投稿日: 02/09/20 13:04
>>849
Cでは文字列をswitch文の対象にする事はできません。


866 名前: 投稿日: 02/09/20 15:11
>>859
何が間違えてるか わからんだろ。
訂正いれないと。


867 名前: デフォルトの名無しさん 投稿日: 02/09/20 15:39
>>866
まだ引っ張るのかYO!(w


868 名前: デフォルトの名無しさん 投稿日: 02/09/20 15:59
>>866
他にどこに間違いがあるか言ってみろ。
あれを見ても間違い箇所がわからんのは
お前1人なんだよ、ボケナス。


869 名前: デフォルトの名無しさん 投稿日: 02/09/20 16:05
メッセージボックスのアイコンを任意のものに変更する方法を教えてください
ただしフォームモジュールを使って作成する以外でお願いします


870 名前: デフォルトの名無しさん 投稿日: 02/09/20 16:16
>>869
MessageBoxIndirectが一番簡単。
またはTimerを併用して通常のメッセージボックスの
アイコンを差し替えてもいいな。

他にもダイアログボックスの自作があるが、
これはフォームの自作とあまり変わらんわな、このボケナス。


871 名前: 866 投稿日: 02/09/20 16:53
>>868
俺たちは同じVBスレの仲間だろう?
ボケだのボケナスだのいがみあってどうするよ?
仲良く行こうぜ?


872 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:02
VB使えるけどVB嫌いだよん。
VB厨よりVB使えるけどVB嫌いだよん。
このスレの奴はみんなアホだよん。

氏ねボケナス。


873 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:06
>>872
生理でイライラしてるのかい?
友達いなくてイライラしているのかい?
ライダー同士の戦いは止めるべきだ



874 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:12
はははん。
自分が使えないものを叩くのは難しいから使えるものを叩くんだよん。
言い返せないとこばかりつけるから楽しいよん。


875 名前: 868 投稿日: 02/09/20 17:13
>>872
VB使えるなんて当たり前のことをいちいち書きこみに来るな。
見ている方が恥ずかしいぞ、このVBコンプレックス野郎。


876 名前: 868 投稿日: 02/09/20 17:14
>>871
叱咤激励のつもりなんだが、気に障るのか?
もしそうなら控えるようにするが?


877 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:14
VBが悪いんじゃない!全てはVB厨が悪いんだ!
というわけで来週一週間をVB厨撲滅強化週間に指定します。


878 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:16
>>875
恥ずかしくて顔真っ赤ですか(w


879 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:19
>>872
> VB使えるけどVB嫌いだよん。
VBでも挫折?

( ´,_ゝ`) プッ


880 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:21
STOP THE AIDS!


881 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:21
VB厨よりVB使えるくらいで自慢カキコ?

( ´,_ゝ`) プッ


882 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:22
>>879
顔引きつってますよん。


883 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:22
>>881
くやしいの? ふふ


884 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:25
おっまえら だっせー(w


885 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:30
>all
ライダー同士の戦いは止めるべきだ


886 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:33
ここはひどいインターネトだすね


887 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:34
ライダーって、三輪車のか(w
キコキコキコキコ。
かっこいいでちゅね〜。


888 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:37
ぐわーっ!


889 名前: 868 投稿日: 02/09/20 17:40
おいおい、荒らしてるクズ共は職場で何かイヤなことでも
あったのか?
別に俺の知ったこっちゃないが、程度が低いことに気付けよ
このボケナス。


890 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:43
ったく荒らすんじゃねぇよなぁ。
お前らが大好きなVBが使えないからって。
好きなんだったらもっとわかってやれって。
少しの良い所も沢山の悪い所も。
俺は嫌いだがな。(w


891 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:49
質問、雑談、ちょっとしたTipsなどドゾー
罵り合いはご勘弁を :-)


892 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:54
うわぁ、こんなに釣れたよ。こいつら面白すぎ


893 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:56
ほーんと、面白いよねぇ。
釣れる釣れる。大漁じゃぁ〜!



894 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:57
>>872
こいつよっぽどVBでつらい目にあったんだろうな。

と さらに煽り立てて反応を見る。


895 名前: デフォルトの名無しさん 投稿日: 02/09/20 17:59
>>894
えっ、お前VBでつらい目にあったことないの?
あんまり使ってない証拠だなぁ。精進しろよ。



896 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:03
正直ジサクジエンうざすぎ


897 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:03
使えば使うほど嫌いになっていく言語。VB。
未だに好きで使っている奴は、初心者素人くんでしょ。


898 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:07
プッ
つらい目に合うくらい使っちゃったの?
それはつらいだろうけど頑張れ。VB使い君。

とさらに煽って様子をみる。


899 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:10
そろそろID導入して欲しいなぁ…。正直飽きた。


900 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:16
VB6を使用しています。
PCからRS232C経由で外部の機器へキャラクタコードを送信したいのですが、
特定のコードで送信データが NULL となってしまい、思ったように送信できません。
例えば
Mscomm1.Output=chr(244)
が送信できません。

244のほかに、129〜159 と 224〜252 で NULL になってしますようですが、
回避はできるのでしょうか?



901 名前: 898 は >>895 投稿日: 02/09/20 18:16
あれ、おかしいな。
すごい速さで反応するところが一番笑えたのに。。。トイレかな。
じゃ俺もそろそろ飽きるとするか。


902 名前: 投稿日: 02/09/20 18:17
おいおい 
アホだから 恥さらして きいんてんだろ。
アホじゃなかったら、聞く前に ちゃんとコーディングしてるって。



903 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:21
>>900
その数字が何を意味するかは気付いてんのか?
というかバイト型配列でも使っとけ、ボケナス。

>>902
誰向けのレスなんだろう?


904 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:42
押忍!下のSQL文なんか変っすか?
ADOのレコードセットのOpenで「演算子がありません」
と出てしまうんですけど。
HIZUKEは日付型です。


"SELECT * FROM TBLNM WHERE HIZUKE > = '2000/02/02'"



905 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:43
> と = の間を詰めろよ、ボケナス。


906 名前: 904 投稿日: 02/09/20 18:44
>>904
あ、詰めても同じだったよ
ボケナスとはご挨拶だな糞野郎。


907 名前: 905 投稿日: 02/09/20 18:45
ついでにもう一丁。
日付型なら #で括れ。


908 名前: 904 投稿日: 02/09/20 18:45
>>907
ありがと!!やってみる!!


909 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:46
> あ、詰めても同じだったよ
エラーメッセージも同じのわけないだろ、ボケナス。


910 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:46
>>908
ちょっと笑ったじゃないかYO。


911 名前: 投稿日: 02/09/20 18:47
VBで作成したActiveXのDLLを修正して 上書きしたら、
それを呼んでいるVBのプログラムが エラーが出ました。

DLLの置き換えは できないんでしょうか?


912 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:48
VBだしな。出来なくてもおかしくないだろう。


913 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:49
>>904
「=>」 に入れ替えてみ


914 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:55
>>911
日本語勉強してからまた来い


915 名前: デフォルトの名無しさん 投稿日: 02/09/20 18:58
>>911
COMのインターフェイス不変の原則って知ってるか?

ちなみにエラーを起こすプログラムはコンパイル後の
EXEなのか?
もしそうでないなら参照設定を一旦解除してみろ。
それで直らなければDLLの登録を解除してから再登録も
やってみろ、ボケナス。


916 名前: 投稿日: 02/09/20 19:32
「VB2.0→VB6.0変換」
VB2.0のFormソースコードはバイナリで保存されているらしくVB6.0などでは読み込めません。
どうしたらよいでしょうか?
VB2.0ももってないし、VB4.0では2.0のフォームを読み込むことができるのですが、
VB4.0をインストールするとパソコン内のdllが古いバージョンのdllになってしまうし・・・。
持っているVB入門の本の付録フロッピーに収録されているサンプルがVB2.0のものなのでなんとかしてそのフロッピーのサンプルを読み込みたいです。


917 名前: 911 投稿日: 02/09/20 19:32
>>915
ぼくはボケナスじゃないですよ・・・



918 名前: 869 投稿日: 02/09/20 19:32
>>870
ありがとうございます。
MessageBoxIndirectで出来るようなのですが、アイコンの指定の方法がよくわかりません。
MAKEINTRESOURCEマクロというのを使うようなのですが。。。
なお表示させたいアイコンはアプリケーションの既定でもあるメインのフォームのものです。
どうかご教示ください。


919 名前: デフォルトの名無しさん 投稿日: 02/09/20 19:33
>>916
自分でVB6でフォーム作ってそのサンプルのソース貼り付けたりすれば
動くんじゃないの?


920 名前: 916 投稿日: 02/09/20 19:37
>>919
VB2.0の.frmファイルはテキスト形式で保存されないためテキストエディタやVB5.0、VB6.0だと開けないんです。


921 名前: 916 投稿日: 02/09/20 19:39
VB2.0には.frmをテキスト形式で保存する機能がついてますが、そもそも2.0を持ってないし・・・


922 名前: デフォルトの名無しさん 投稿日: 02/09/20 19:41
日本語版VBで作ったソフトは海外で動作しますか?
また、どうすれば動作することができますか?
単に日本語を使わなければ良いだけなのでしょうか?


923 名前: デフォルトの名無しさん 投稿日: 02/09/20 19:45
>>922
> 日本語版VBで作ったソフトは海外で動作しますか?
完全に動作する。日本語も使える。パソコン持ってけばw


924 名前: デフォルトの名無しさん 投稿日: 02/09/20 19:45
日本語テスト


925 名前: 869 投稿日: 02/09/20 20:07
>>918
実行ファイルからだと出来ました。
お騒がせしてすみません。


926 名前: 870 投稿日: 02/09/20 20:24
>>918
そりゃ開発環境ではEXEを別途ロードしてhInstanceに
指定しないと無理だわな。
MAKEINTRESOURCEなんてものは Win32では
整数の下位16ビットをLPSTRにキャストしている
だけだと思っとけ。つまりMAKEINTRESOURCEは不要。

>>917
回答の揚げ足を取る暇があるならさっさと試せ、ボケナス。


927 名前: 869 投稿日: 02/09/20 20:29
>>926
なるほど!
勉強になります


928 名前: デフォルトの名無しさん 投稿日: 02/09/20 21:32
>>916
あきらめろ。
VB2.0がなけりゃただのゴミ>VB2.0のバイナリ保存されたコード


929 名前: 投稿日: 02/09/20 21:33
>>915
「COMのインターフェイス不変の原則」なんて 検索しても出てこんぞ。
わからんから、知ってるなら、教えてくれ!

知らんのなら いいけど。


930 名前: 915 投稿日: 02/09/20 22:30
>>929
>「COMのインターフェイス不変の原則」なんて 検索しても出てこんぞ。
単語を分けて検索くらいしろよボケナス。

わかりやすく言えば
COMのインターフェイスを一旦公開した後は
その仕様を変えてはいけない。という原則。
「インターフェイスの不変性」とも言う。

COMに限った話でもないと思うけどな。


931 名前: デフォルトの名無しさん 投稿日: 02/09/20 22:33
>929 (= >911)
公開済みのインターフェースを変更する時に追加するならば互換性は保持されるが、
修正、変更などしてしまうと、互換性はなくなってしまう。
「コンポーネントのデバッグ、テスト、配置」
http://www.microsoft.com/japan/developer/library/default.asp?PP=/japan/developer/library/toc/vbcon98/vbcon984-1-1-6.xml&tocPath=vbcon984-1-1-6&URL=/japan/developer/library/vbcon98/vbcondebuggingtestingdeployingcomponents.htm
の「ActiveX コンポーネントのバージョン間の互換性」あたりを読んどけ。

インターフェースって何?って状態ならCOMの基礎からやり直せ。


932 名前: デフォルトの名無しさん 投稿日: 02/09/21 15:14
MSFlexGridを使ってます。
単一行のみしか選択できないようにするにはどうしたらいいでしょうか?
いろいろHPを見てみたんですが良い案が見つかりませんでした


933 名前: 916 投稿日: 02/09/21 17:24
>>928
わかりました。VB2.0おそるべし。


934 名前: デフォルトの名無しさん 投稿日: 02/09/21 19:50
>>916
VMwareがいいよ


935 名前: デフォルトの名無しさん 投稿日: 02/09/21 21:06
へっぽこな質問すいません
半角の " (半角二重引用符)ってtextの中でどうやって表示するのですか?
chr$( )
ですか?
さらりと、よろしくお願いします


936 名前: デフォルトの名無しさん 投稿日: 02/09/21 21:09
>>935
'"'


937 名前: 935 投稿日: 02/09/21 21:09
>>936
それじゃわからねえんだよ糞野郎。


938 名前: デフォルトの名無しさん 投稿日: 02/09/21 21:14
ダヴルコーテーションって言え。


939 名前: 935 投稿日: 02/09/21 21:14
>>936
ん?すいません、わかりません
もちろん>>937は私ではありません


940 名前: デフォルトの名無しさん 投稿日: 02/09/21 21:17
chr(22)だったかな。


941 名前: 935 投稿日: 02/09/21 21:18
>>940
だったかなじゃねえよ。
正確に答えろ。


942 名前: 940 投稿日: 02/09/21 21:18
まちがえた
chr(34) ですな。
又はchr(&h22)


943 名前: 935 投稿日: 02/09/21 21:19
ぶっくるすぞ。


944 名前: 935 投稿日: 02/09/21 21:19
>>940
まさしく22です!
狐'sバイナリエディタで見たから間違いありません


945 名前: 940 投稿日: 02/09/21 21:20
>>941
ヘッポコな回答でスマソ
てかMSDN見たら?


946 名前: デフォルトの名無しさん 投稿日: 02/09/21 21:23
つーか、なんかかわいそうになったから書いてやる。

 ""
2個重ねる。


947 名前: 935 投稿日: 02/09/21 21:23
>>945
いやヘッポコなりによくやった。
感動した!!



948 名前: 935 ◆fFbZBKKc 投稿日: 02/09/21 21:27
>>940さん
>>946さん
レスありがとうございます、今から全部やってみます
とりあえず、急いでレスしないと、大変なことになりそうなので
まずはお礼だけ。


949 名前: デフォルトの名無しさん 投稿日: 02/09/21 21:29
>>948
新人か?頑張れよ


950 名前: 935 投稿日: 02/09/21 21:29
>948
にせものウゼーぞっ!!!
トリップまでつけやがって。


951 名前: 935 ◆fFbZBKKc 投稿日: 02/09/21 21:43
>>949さん
ありがとうございます、趣味でやっております。
必要なアプリ(というほどのものでもないですが)ができれば、そのつど作っています
まだ、VBは半年ほどですが、ブランク5ヶ月で、また必要になったんです
おっと、やらなくちゃ


952 名前: 935 ◆fFbZBKKc 投稿日: 02/09/21 22:00
いけました
>>940さん
>>946さん
chr(34)とchr(&h22) で

””でもいけるんですねえ
はじめは、空白になるのでは、と思っていました

ありがとうございました
勉強になりました


953 名前: 916 投稿日: 02/09/21 22:57
>>934
初耳のVMwareについて調べてきます。


954 名前: デフォルトの名無しさん 投稿日: 02/09/22 01:52
あるフォルダーにある、HTMLファイルを、
VBからIEを起動して、表示させたいんですけど、
どうやって実装したらいいでしょ?
よろしくお願いします。



955 名前: デフォルトの名無しさん 投稿日: 02/09/22 02:11
>>954
オートメーション(CreateObject)とか、
Shell関数とか、
関連付け起動とか、
方法は色々あるぞボケナス。


956 名前: デフォルトの名無しさん 投稿日: 02/09/22 02:52
>>954
ShellExecute( NULL, NULL, strURL, NULL, NULL, SW_SHOWNORMAL );

strURLに"file:///c:/hoge.html"とかすればいいじゃん


957 名前: ボケナス(954) 投稿日: 02/09/22 03:06
>>955
>>956
レスありがとうございます。
レスの情報から、Googleで検索して、実現できました。
shell32.dllのShellExecuteEXを呼び出すことで実現できました。




958 名前: デフォルトの名無しさん 投稿日: 02/09/22 05:53
as Byte
で宣言した変数が現在何バイトの大きさになっているかを取得する関数がどうしても見つからないのですがよろしくお願いします。
LenやLenBはStringにしか使えないですよね。


959 名前: デフォルトの名無しさん 投稿日: 02/09/22 07:17
>>958
?? Dim A As Byte なら、当然1バイトだと思うが ?
動的配列なのか ? だったら、UBound(A) - LBound(A) だろ。


960 名前: デフォルトの名無しさん 投稿日: 02/09/22 11:21
UBound(A) - LBound(A) + 1 だろ。


961 名前: 959 投稿日: 02/09/22 11:47
>>960
すまん、とちった。訂正サンクス。


962 名前: デフォルトの名無しさん 投稿日: 02/09/22 13:12
ByRef引数に値を設定する関数に、クラス変数のメンバを渡すと
値が設定されません。どうしてか分かる方いらっしゃいませんでしょうか。

例)
次の例で、Sub main を実行すると "結果はNG" のダイアログが出ます。

[CLASS1.CLSの内容]
Public val As String
Private Sub Class_Initialize()
val = "NG"
End Sub

[MODULE1.BASの内容]
Sub main()
Dim c As Class1
Set c = New Class1
Call SetByRef(c.val)
MsgBox "結果は" & c.val
End Sub
Public Sub SetByRef(ByRef a As String)
a = "OK"
End Sub



963 名前: デフォルトの名無しさん 投稿日: 02/09/22 13:41
>>962
CLASS1の外からvalを参照すると

Private m_val As String
Public Property Get val() As String
val = m_val
End Property
Public Property Let val(ByVal v As String)
m_val = v
End Property

のようにプロパティ経由でアクセスしたのと同等になるから。
SetByRefがCLASS1にあれば予想通りに動くけどね。


964 名前: 958 投稿日: 02/09/22 13:59
>>959さん
おっしゃるとおりバイト配列です。

Dim b() As Byte
b() = Inet.OpenURL(http://www/〜jpg、zip、などインターネット上のファイル)
のように
Inetコントロールでダウンロードしたファイルをb()に格納していますが、
b()がある大きさ以上のバイト数だったらb()に格納されているjpgなどをハードディスクに保存したいので、
現在のb()のサイズを知りたいんです。

'b()をバイナリーアクセスで保存してます。インターネットで検索したコードを貼り付けて使ってるだけなのでよく下のプログラムの意味は理解してませんが。
Open 保存ファイル名 For Binary Access Write As #intFile
Put #intFile, , b()
Close #intFile
'ハードディスクにダウンロードしたzipやjpgを保存完了

>>959さん
>>960さん
UBound(b) - LBound(b) + 1
を試してみます。


965 名前: 962 投稿日: 02/09/22 14:04
あぁ、そうか。代入とプロパティレットはコード上は一緒でも
中身は違うのでした。SetByRef関数からはその違いが分からない
から、プロパティレットではなく代入しようとしている、
ということですね。
963さん、日曜日にわざわざありがとうでした。


966 名前: デフォルトの名無しさん 投稿日: 02/09/22 15:09
>>964
MSDN見ながら頑張って理解してみることをお勧めする。


967 名前: 958 投稿日: 02/09/22 15:22
>>966さん
あとで調べたことの報告をしますです。


968 名前: デフォルトの名無しさん 投稿日: 02/09/22 17:35
>>958
>LenやLenBはStringにしか使えないですよね。
不正解。


969 名前: 958 投稿日: 02/09/22 18:34
>>968さん
つかえるけど特殊な値が返ってくるということでつね。


970 名前: デフォルトの名無しさん 投稿日: 02/09/22 18:37
そろそろ次スレ立てろや


971 名前: 968 投稿日: 02/09/22 19:33
>>969
変数のサイズを返す。
変数がByte型なら1、Integer型なら2、Longなら4を返す
ユーザ定義型のサイズ計算にも使える。
ユーザ定義型の変数をLen関数に渡すと論理サイズを返す。
LenB関数に渡すとメモリ上のサイズ(バイトアラインメントを考慮した値)を返す。

文字列の場合はLenで文字数、LenBでバイト数を返す。


972 名前: 969 投稿日: 02/09/22 20:19
>>971さん
ありがとうございます。
変数がByte型なら1、Integer型なら2、Longなら4を返す
というのは知りませんでした。これはいつか役立ちそうな気がします。


973 名前: デフォルトの名無しさん 投稿日: 02/09/22 20:59
パス上にXXX.exeがあるかないのかどうなのかの調べる方法がみつかりませんでした


974 名前: デフォルトの名無しさん 投稿日: 02/09/22 21:00
>>973
新山(へろぱ)さんのサイトを覗いてみな
そこのTips集にあったはずだから


975 名前: デフォルトの名無しさん 投稿日: 02/09/22 21:12
>>974
あっタ━━━━━━(゚∀゚)━━━━━━ !!!!!
ありごとうごまきました


976 名前: デフォルトの名無しさん 投稿日: 02/09/22 21:24
XPのSP1が出たらしいね。Formatの仕様があーら、元通り。


977 名前: デフォルトの名無しさん 投稿日: 02/09/22 21:25
あんまりそんなやついないと思うが、
Currency型の変数をFor文の制御変数に使っちゃだめよん。


978 名前: デフォルトの名無しさん 投稿日: 02/09/22 21:56
遅くなるから?


979 名前: デフォルトの名無しさん 投稿日: 02/09/22 22:32
A,B,C,Dという四つの変数(整数型)を作って、
それぞれを乱数にして
A>=B,A>=C,A>=D,A+B+C+D=100
の条件を満たすA,B,C,Dの値を作りたいのですが

Do While A>=B,A>=C,A>=D,A+B+C+D=100
A=int(rnd*100)+1
B=int(rnd*100)+1
C=int(rnd*100)+1
D=int(rnd*100)+1
loop
と書くと非常に効率が悪いです。
もっと効率のいいプログラムってあるでしょうか?
私にはどうしてもこれしか思いつきません…


980 名前: デフォルトの名無しさん 投稿日: 02/09/22 22:50
A = int(rnd*96) + 1
B = int(rnd * (100 - A)) + 1
C = int(rnd * (100 - A - B)) + 1
D = int(rnd * (100 - A - B - C)) + 1

A〜Dの数値をいれかえて、A >= B => C >= D にする


981 名前: 980 投稿日: 02/09/22 22:51
失敗
D = 100 - A - B - C


982 名前: 980 投稿日: 02/09/22 22:56
完成版
A = int(rnd * 96) + 1
B = int(rnd * (100 - A - 2)) + 1
C = int(rnd * (100 - A - B - 1)) + 1
D = 100 - A - B - C

AからDを並び替える


983 名前: デフォルトの名無しさん 投稿日: 02/09/22 22:57
>>980
> A〜Dの数値をいれかえて、A >= B => C >= D にする
仕様を勝手に変えるなよ。元々は、A>=B, A>=C, A>=D だぞ。
(',' の意味がちょっと不明確だが、まあ AND の意味なんだろうな。)


984 名前: デフォルトの名無しさん 投稿日: 02/09/22 22:58
>>977
理由書いて


985 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:02
>>982
A<25の時に解があるのかな?
もうすでに算数の問題だな。


986 名前: 985 投稿日: 02/09/22 23:05
おれはあほだな。


987 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:09
>>985
B=A-b, C=A-c, D=A-d (0 <= b, c, d <= A) とおくと
4*A-b-c-d=100 だから 4*A=100+b+c+d
b+c+d >= 0 なので 4*A >= 100 ∴A>=25 だと思う。


988 名前: 987 投稿日: 02/09/22 23:13
一箇所訂正
0 <= b, c, d < A


989 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:23
>>985
> A<25の時に解があるのかな?
> もうすでに算数の問題だな。

A ≧ B, A ≧ C, A ≧ D だから
100 = A + B + C + D ≦ A + A + A + A = 4A
∴ 100 ≦ 4A
 25 ≦ A でないといけない。
逆に、100 = A + B + C + D ≧ B + B + C + D = 2B + C + D
B, C, D の定義域が不明なのだが、多分 1 ≦ A, B, C, D ≦ 100 を想定しているだろうから、100 ≧ 2B + C + D ≧ 2B + 1 + 1
∴ 98 ≧ 2B
 49 ≧ B
当然 C, D も同じだよ。


990 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:29
A=25〜96
B=1〜MIN(A, 98-A)
C=1〜MIN(A, 99-A-B)
D=100-A-B-C
の範囲で生成すれば入れ換え不要だと思うけど、これで合ってる?
教えれ偉いひと。


991 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:35
>>990
次スレよろ。


992 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:35
>>990
> A=25〜96
> B=1〜MIN(A, 98-A)
> C=1〜MIN(A, 99-A-B)
> D=100-A-B-C
> の範囲で生成すれば入れ換え不要だと思うけど、これで合ってる?
> 教えれ偉いひと。

ダメ。A = 97, B = 1, C = 1, D = 1 の解が抜けてる。また、A = 25, B = 1, C = 1 等の場合に D = 73 とかなってしまう。


993 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:56
新スレがたちました。引越しましょう。

http://www.2ch.net/2ch.html


994 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:57
>>993
何だ、そのリンクは。(w


995 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:58
 


996 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:58
 


997 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:59
   


998 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:59
  


999 名前: デフォルトの名無しさん 投稿日: 02/09/22 23:59
>992
A,B,C,Dが自然数だったら、
n = 100
A = int( rnd * ( n - n / 4 -2 )) + n / 4
B = int( rnd * iif( A >= n / 2 - 1, n - A - 2 , n / 2 - 1 )) + 1
C = int( rnd * iif(( A + B ) >= n / 2, n - ( A + B ) - 1, n / 2 - 1 )) + 1
D = n - A - B - C
かな?


1000 名前: デフォルトの名無しさん 投稿日: 02/09/23 00:00
次スレ
http://pc3.2ch.net/test/read.cgi/tech/1032706491/l50


1001 名前: 1001 投稿日: Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。



2ちゃんねるは、ここのサーバを使ってるです。。。