くだすれVB6.0以前( ..
654:デフォルトの名無しさん
09/02/15 21:29:07 BE:1043968493-2BP(0)
>>2のVB5をダウンロードしたけどシステムの設定が
不正なため、vbを起動できないって出てきたけど
どうすればいいかおしえて
655:デフォルトの名無しさん
09/02/15 21:53:12
OSのインストールからやりなおすのが言語を入れる鉄則
656:デフォルトの名無しさん
09/02/15 22:04:21
Windowsの互換モード設定は試した?
657:デフォルトの名無しさん
09/02/16 19:18:02 BE:695979263-2BP(0)
>>656 互換モード設定してもできない
658:デフォルトの名無しさん
09/02/16 19:31:02
環境は何だよ?VirtualPCで開発環境作ったほうがよくないか。
659:デフォルトの名無しさん
09/02/17 17:35:25
vmware serverがいいお
660:デフォルトの名無しさん
09/02/19 08:29:05
VB5.0でとあるexeを起動して終了を待機しているのですが
そのexeの戻り値を取得する必要が出てきました。
exeの戻り値はどのようにして取得したらよいでしょうか?
下記が現在のコードです。
Dim IDProcess As Long
Dim hProcess As Long
Dim ret As Long
IDProcess = Shell(strCommandLine, vbMinimizedNoFocus)
hProcess = OpenProcess(SYNCHRONIZE, 1, IDProcess)
ret = WaitForSingleObject(hProcess, INFINITE)
ret = CloseHandle(hProcess)
661:デフォルトの名無しさん
09/02/19 09:02:10
exeは関数じゃないので戻り値なんて無いよ
もしかして終了コードのことを言ってるのか?
それともActiveX.exeなのか?
ActiveX.exeならexe自体ではなくexeが持つ関数に戻り値があるけど
662:デフォルトの名無しさん
09/02/19 09:16:40
>>661
すみません。戻り値じゃなくて終了コードですね。
失礼いたしました。
ぐぐりながらやってみているのですが
なぜかhProcessが0です。
なぜいままで動いていたのだろうorz
Dim IDProcess As Long
Dim hProcess As Long
Dim ret As Long
Dim lExitCode As Long
IDProcess = Shell(strCommandLine, vbMinimizedNoFocus)
hProcess = OpenProcess(SYNCHRONIZE Or PROCESS_QUERY_INFORMATION, True, IDProcess)
If hProcess <> 0 Then
MsgBox hProcess
ret = WaitForSingleObject(hProcess, INFINITE)
ret = GetExitCodeProcess(hProcess, lExitCode)
ret = CloseHandle(hProcess)
End If
663:デフォルトの名無しさん
09/02/19 09:25:19
うぅ。
すみません。
CreateProcessを使ったら終了コードが取得できました。
お騒がせしました。
664:デフォルトの名無しさん
09/02/20 00:52:53
ところでみなさん WshShell.Run や Exec を活用してますか?
665:デフォルトの名無しさん
09/02/20 01:09:32
あまり活用してない
というかその二つに限れば、VBで使えば活用(活かした利用)にはならない
もっといいものがいっぱいあるから
666:デフォルトの名無しさん
09/02/20 13:36:42
なるほど
ありがとうございました
667:デフォルトの名無しさん
09/02/21 20:32:43 BE:2165268487-2BP(0)
>>658使い方がわからん
668:デフォルトの名無しさん
09/02/21 20:35:59
VB6.0ってまだ需要ありますか?
ラーニングエディション持ってるんで、
ちょっと勉強してみようか・・・と思ってるんですが。
669:デフォルトの名無しさん
09/02/21 20:39:25
こういう取り残された人たちには需要があります。
>422 名前: デフォルトの名無しさん 投稿日: 2009/02/11(水) 17:01:01
>そもそも、.NETはお金を頂くソフトウェア作るには不向き
>・遅い
>・ソース丸見え
>・フレームワークインストール必須
>・FAでは絶対に無理
>
>枚挙に暇がない
670:デフォルトの名無しさん
09/02/21 20:41:47
>>669
どうもです。サンクス。
671:デフォルトの名無しさん
09/02/21 22:37:44
>>667
簡単だからネットで使い方調べれ。動作確認にはおすすめ。
672:デフォルトの名無しさん
09/02/22 16:09:59
なるほど
ありがとうございました
673:デフォルトの名無しさん
09/02/22 19:05:00
>>669
俺おもいっきり取り残されてるな…。
…だからこのスレにいるのかwww
674:デフォルトの名無しさん
09/02/24 01:08:24
なるほど
675:デフォルトの名無しさん
09/02/26 02:02:25
Javaでのstatic変数はVBではどんな宣言になるんですか?
やりたいこと
1.インスタンスを生成せずにその変数にアクセスしたい
2.異なるクラス間で同じ値を共有したい
3.javaのように簡単に実現したい
の三本です
676:デフォルトの名無しさん
09/02/26 02:15:51
すいません。訂正です。
>2.異なるクラス間で同じ値を共有したい
→ 2.異なるクラス間で同じ変数を共有したい
677:デフォルトの名無しさん
09/02/26 02:23:15
>>675
Shared
678:デフォルトの名無しさん
09/02/26 02:29:33
お、すまんVB6だったか。共通モジュールに宣言しかないかな。
Static Property とかいった手もあった記憶があるがめんどくさいはず。
679:デフォルトの名無しさん
09/02/26 03:33:15
つーかさ、ある言語の仕様が
他の言語でも、そのまま簡単に実現できると思ってるのってどうよ?
680:デフォルトの名無しさん
09/02/26 11:02:13
変数共有ならモジュールでグローバル変数の宣言だけで良いんじゃね?
VB6だとそれで十分だと思うが
681:デフォルトの名無しさん
09/02/26 19:29:12
>>675
VBのクラスはクラスメンバを持てない。
VBにはクラスのほかに標準モジュールというのがあるけど、
こっちはC#でいうstaticクラスに似ていて、インスタンスメンバを持てない。
(インスタンス化できない)
まあ、javaよりずっと前からある言語だから多少かかなりかウンコ仕様なのは仕方がないねw
682:デフォルトの名無しさん
09/02/27 00:49:52
>>681
ハァ?
クラスメンバ変数は Public で作れる
683:デフォルトの名無しさん
09/02/27 00:57:34
VBのクラスもメンバ持てるぞ。
だが、>>675 を実現するにはちょっと細工が必要。
ActiveX DLL に1つクラスを設けて、そいつの Instancing を GlobaMultiUse に
すればいい。
そいつに Public 変数を置けば、いわゆるグローバル変数扱いになる。もちろんクラス。
ただ、利用側で Option Explicit とした場合、アーリーバインディングでないと
エラーになった気がする。
それと常識だと思うが、プロセスが異なれば参照先も異なる。
クラスである必要があるならこうするしかないが、
どう考えても標準モジュールで十分な希ガス。
684:デフォルトの名無しさん
09/02/27 17:07:49
イベント処理での質問です。
vb2008 webページの作成をしています。
コンボボックスから、氏名を選択したら、別のテキストにIDを表示するのですが。
コンボボックスから選択しただけじゃイベント処理は発生しませんか?
SelectedIndexChangedとかTextChangedとか試してるのですが上手くいきません。
685:デフォルトの名無しさん
09/02/27 17:30:06
>>684
スレ違いです。
686:デフォルトの名無しさん
09/02/27 19:47:20
>>682
持てません。
クラスメンバの意味わかって言ってる?w
687:デフォルトの名無しさん
09/03/02 14:53:22
vbのwinsockコントロールで、メッセージを送ってきた相手のIPアドレスって取得できますか?
最低でもLANかWANかだけでもわからないでしょうか?
688:デフォルトの名無しさん
09/03/02 14:57:30
もうすこし詳しく書かないと、やりたい事が伝わってこないぞ
689:デフォルトの名無しさん
09/03/02 15:02:48
詳しく書くと、たとえば
TCPでlistenしてるところにconnectしてきた相手のIPアドレスを取得したいんです。
IPアドレスがわからなくても、最低限、そのconnectメッセージがLAN経由かWAN経由かの接続だけでも取得したいのです。
690:デフォルトの名無しさん
09/03/02 15:10:47
ぜんぜん詳しくなってないが、相手のIPはわかるから一度プログラム作ってみなよ
691:デフォルトの名無しさん
09/03/02 15:32:21
>>690
見直してみたら、てっきりRemoteHostしかないと思ったらRemoteHostIPの存在に気づきました。
すいません、お手数をおかけしました。
692:デフォルトの名無しさん
09/03/04 10:41:06
質問ですが、標準のデータグリッドでマウスホイール回転時にスクロールさせる方法って
何が考えられますか?
693:デフォルトの名無しさん
09/03/04 11:20:11
ホイールスクロールを受け取って自力で動かす
694:デフォルトの名無しさん
09/03/04 11:26:17
URLリンク(support.microsoft.com)
こんな感じで
695:デフォルトの名無しさん
09/03/05 01:50:23
アクセス操作について教えてください。
エクセルのCellsみたいに列、行指定はできませんか?
696:デフォルトの名無しさん
09/03/05 02:09:37
もしかして: VBA?
697:デフォルトの名無しさん
09/03/05 02:20:33
つーか、DBってものを解ってないな
利口ならDBについて3日勉強して出直せ
馬鹿ならDBについて3年勉強して出直せ
698:692
09/03/05 11:31:12
ありがとうございます。
ホイールイベント時の処理でスクロールさせるしかないということですね。
イベントの受け取り方などもう少し調べてみようと思います。
699:デフォルトの名無しさん
09/03/05 19:57:12
>695
ADOならRecordsetオブジェクトとか調べて見るといいかも
700:デフォルトの名無しさん
09/03/07 17:35:54
VB5.0で作成されたアプリってVistaでも動く?
701:デフォルトの名無しさん
09/03/07 18:03:33
答えになってないが
VB6は何とか動いたけどODBC関連がだめだめだったね
使い物にならないぐらい遅い
Win7では動かなくなるソフト続出だとおもう
702:デフォルトの名無しさん
09/03/07 18:04:59
VB5 アプリはものによっては動く
703:デフォルトの名無しさん
09/03/07 22:06:49
リストボックスをマウスホイールでスクロールさせた時に
リアルタイムでリストボックスのTopIndexを取得したいのですが
リストボックスのScrollイベントが動かないので私のスキルでは
八方塞がりです。方法をご教授頂けないでしょうか?
704:デフォルトの名無しさん
09/03/07 22:10:51
>>703
サブクラス化
ググればいくらでもサンプルは出てくる
それでも解らなかったら諦めるよろし
705:デフォルトの名無しさん
09/03/07 22:15:50
C#やVB.NETなどで作れという神託だよ
706:デフォルトの名無しさん
09/03/07 22:38:24
>>704
ありがとうございます。
私の探し方が悪いんでしょう。
なかなか見つけられなくてココに来た次第です
諦めるわけには行かないので調べなおします。
>>705
業務で使うのでVB6を使うしかありません。
10年以上稼動する機器なんてざらにあるので・・・
こちらがリファクタリングしたくても
機能も仕様も変わらないのにお金出すところなんてありませんから
707:デフォルトの名無しさん
09/03/07 23:30:07
自力で動かすと、ちょっと上でも方法込みで出てるし。
708:デフォルトの名無しさん
09/03/07 23:32:36
業務で使うのに、サポート切れてるツールを使おう、ってのがわからん。
不具合があったって、MS は知らん顔だよ?
709:デフォルトの名無しさん
09/03/07 23:34:13
MSのサポートなんか受けたことないよ
710:デフォルトの名無しさん
09/03/07 23:38:51
>>706
厳密にTopIndexが一つ変化するごとに確実にイベントが欲しい、
とかで無ければタイマ使ってポーリングしたら?
こんな感じのクラスを作って検証してみたが、悪くないように思うけど。
[ListBoxWatcher Class]
Private WithEvents mListBox As ListBox
Private WithEvents mTimer As Timer
Private mTopIndex As Integer
Public Event TopIndexChanged()
Public Property Set ListBox(lb As ListBox)
Set mListBox = lb
Dim frm As Form
Set frm = mListBox.Parent
If mTimer Is Nothing Then
Set mTimer = frm.Controls.Add("VB.Timer", "pollingTimer")
mTimer.Interval = 200
End If
If frm.ActiveControl Is mListBox Then
StartPolling
End If
End Property
711:デフォルトの名無しさん
09/03/07 23:40:35
Private Sub StartPolling()
mTimer.Enabled = True
mTopIndex = mListBox.topIndex
End Sub
Private Sub mListBox_GotFocus()
StartPolling
End Sub
Private Sub mListBox_LostFocus()
mTimer.Enabled = False
End Sub
Private Sub mTimer_Timer()
Dim currentTop As Integer
currentTop = mListBox.topIndex
If currentTop <> mTopIndex Then
mTopIndex = currentTop
RaiseEvent TopIndexChanged
End If
End Sub
しかし、なんでそんなイベントでそんな値が必要なんだろう
712:デフォルトの名無しさん
09/03/07 23:44:28
VB6のサブクラス化って初めて見た
横から勉強になります
713:デフォルトの名無しさん
09/03/07 23:48:29
「VB6 のサブクラス化」は、違う意味を指すもんだけどな。
714:デフォルトの名無しさん
09/03/07 23:55:46
「ホイールで動かしたけりゃこのドライバ入れるかあのソフト入れろ」と言える俺は趣味グラマ
715:デフォルトの名無しさん
09/03/08 00:03:30
趣味グラマ以前にバカすぎ
動かしたいって話ではなく
動かすのは出来てる上で
そのイベントを取りたいって話なのに
716:デフォルトの名無しさん
09/03/08 15:06:15
FlexGridライクなグリッドツールで
使いやすくてフリーか安価な物ってありますか?
717:デフォルトの名無しさん
09/03/08 16:16:19
URLリンク(www.grapecity.com)
718:デフォルトの名無しさん
09/03/08 16:17:29
Windows7でもランタイム入ってるのか
あと5年はイけそうだぬ
719:デフォルトの名無しさん
09/03/08 16:25:32
>>718
ところが動かないソフト続出w
720:デフォルトの名無しさん
09/03/08 18:44:50
>>716
俺はMSHFlexGridを自作のクラスと組み合わせて使いやすくしてる
プログラマなら他人が作ったものを使うことばかり考えてないで
少しは自力で便利にしようって気になろうよ
721:デフォルトの名無しさん
09/03/08 19:10:59
DataGridView
722:デフォルトの名無しさん
09/03/09 00:37:17
DataGridViewって.NETのコントロールじゃないの?
VB6でも使えるのか?
723:716
09/03/09 00:46:37
自分で実装しても良いんですけど
自作にかかる費用と購入する費用を考えたときに
購入する方が安上がりかと思いまして
後、うちの会社レベルが低すぎてクラスの概念理解できる人がいないんです…
やっぱグレープシティ買って貰うのが一番手っ取り早いですかね
1週間分の人件費で買えますし…
724:デフォルトの名無しさん
09/03/10 22:18:45
何でもかんでも自分で作ろうとする奴は馬鹿なのか?
費用対効果とか生産性で一番効率品質ともに良いほうを選ぶだけのこと。
車輪の再発明なんぞ自宅でやれ。仕事でやるな。
再発明した低レベルの車輪を見せびらかすな。
725:デフォルトの名無しさん
09/03/10 22:25:08
たいていは、上の人が買ってくれないから、って理由じゃない?>自前で作る
726:デフォルトの名無しさん
09/03/10 22:33:08
FlexGridProの品質の悪さは異常
727:デフォルトの名無しさん
09/03/10 23:25:40
> 車輪の再発明なんぞ自宅でやれ。仕事でやるな。
そもそも最初の質問で仕事で使うとは一言も書いてない件について
個人で使うことを想定した回答を、後出しの仕事で使うという情報を理由に叩く奴は馬鹿なのか?
728:デフォルトの名無しさん
09/03/10 23:40:34
>>724の回答もどうかと思うが、
君のそれも話が噛み合ってないんじゃないの?
>>725の言うように724は勤め人にありがちな境遇がわかってない、
ってのなら同意するんだが。。
まあ、くだらんことで熱くなってもしょうがないだろ。
729:デフォルトの名無しさん
09/03/11 23:33:39
でも車輪の再発明って楽しいよな。
730:デフォルトの名無しさん
09/03/12 00:15:49
再発明ではなく
新発明に出来る可能性を秘めてるからな
再発明にすら届かない可能性も孕んではいるが
731:デフォルトの名無しさん
09/03/13 00:12:26
再発明ってやつは、意識して取り組めば、何らか得るものがあるが、
いかんせん時間効率がよくない。と思う
車輪の再発明は学生のうちにしとけ。とはよくいったもの
世の中そううまくいかん(実りある再発明行為が、学生のうちにできるわきゃない)わけだが
732:デフォルトの名無しさん
09/03/13 00:21:25
時間効率が重視される仕事に置いてまで
再開発でも自作しろなんて言ってる奴は皆無である件について
733:デフォルトの名無しさん
09/03/13 00:28:14
コスト計算できない上司が部品買ってくれないってのは、自作しろって事じゃないの?
734:デフォルトの名無しさん
09/03/13 00:43:24
それは上司の主張であって、このスレの住人の主張ではないだろ
735:デフォルトの名無しさん
09/03/13 00:45:13
なんで上司の主張は除外されるわけ?
736:デフォルトの名無しさん
09/03/13 02:50:12
ここが会社ではなく2chのスレだから
737:デフォルトの名無しさん
09/03/13 03:19:15
2chのスレだったら会社の話をしちゃいかんのか?
738:デフォルトの名無しさん
09/03/13 05:24:15
別にいいんじゃないの?
ただ会社の場合は「会社では」って付けてね
何も付けないと、名前空間上「このスレでは」って意味になるから
739:デフォルトの名無しさん
09/03/13 15:41:56
上司の話をするのに、いちいち会社の上司はと付けなければいけないのか?
いつからそんなルールになったんだ?
740:デフォルトの名無しさん
09/03/13 15:48:00
いや、そもそも「このスレの住人の(合意された)主張」なんてものが存在しません。
741:デフォルトの名無しさん
09/03/13 17:43:28
★印の ”A7” とこを Cells(y, x) とすると
「Rangeメソッドは失敗しました」
と文句言われますが、どうすればいいのでしょう!?
Range("A7:R120").Select
Application.CutCopyMode = False
Selection.Sort _
Key1:=Range("A7"), _ ★
Order1:=xlDescending, _
Header:=xlGuess, _
OrderCustom:=1, _
MatchCase:=False, _
Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin
742:デフォルトの名無しさん
09/03/21 18:37:57
おしえてくだせえ。
frmMain 実行中に、フォームの右端をドラッグして大きさかえると、Resizeイベントが発生するまではいいんだが、
その後 frmMain.ScaleWidth や、frmMain.Width などを取得してみると大きさ変更前の値しか出てこないんだよ。
なにか足りない部分があるのでしょうか?
743:742
09/03/21 18:45:53
すんません。事故解決です。
VBのウイザードからある程度メニューやツールボックスが揃ったプロジェクトではじめていたので、
Set fMainForm = New frmMain
と標準モジュールからフォームオブジェクトが開かれてました。
初心者に意地悪なつくりでした。
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4112日前に更新/174 KB
担当:undef