(*´д`*)アハァ… VB初心者質問スレ Part13

このエントリーをはてなブックマークに追加
952951:02/09/01 23:43
Operaで書いたら化けやがった
953944:02/09/01 23:55
>951
あああありがとうございます!
コードの意味はわかりませんができました。
ゆっくり勉強します。

>2秒の時間を止める

我ながらアホな日本語…


>>951

>time1 = Val(Timer)
>time2 = Val(Timer)

time1 = Val(Timer)
time2 = time1

の方がいいね。
955951:02/09/01 23:59
>>951
あらホントですね。
書いてて何か気持ち悪さを感じたのはそのせいか…。
>>940
シーケンシャルファイルなら、その指定の行まで読み飛ばせ。
その行だけ取得することはできない。

>>942
その表現は20バイト分ではなく、20文字分だ。細かいツッコミだが、
ランダムアクセスをやる上では超重要事項だ。
FileSystemObject 使ってます。
FolderオブジェクトのFilesコレクションを扱うときにわからない事がありましたので、
質問させてください。

Filesコレクションから直接ファイルパスを取得しようとする場合、

Dim oFolder as Folder
Set oFolder = ofs.GetFolder("---パス---")

Dim sFilePath as String
sFilePath = oFolder.Files(0).Path

等とやると思うのですが、

sFilePath = oFolder.Files(0).Path

の部分で、「プロシージャの呼び出し、もしくは引数が不正(エラーNo.5)」と出てしまいます。

For Each 構文でファイルを列挙し、パスを取得する事はできるのですが、
以上のように、Filesコレクションから直接ファイルパスを取得する事は出来ないでしょうか?
958957:02/09/02 06:21
書き忘れましたしたが、環境は以下の通りです。
Windows2000 SP2
VB6 SP5
IE6
scrrun.dll(5.6.0.6626)
959908:02/09/02 07:28
>>920-921
亀レスですがスマソ
960デフォルトの名無しさん:02/09/02 12:30
>>957
> sFilePath = oFolder.Files(0).Path
> の部分で、「プロシージャの呼び出し、もしくは引数が不正(エラーNo.5)」と出てしまいます。

Filesはコレクションなのでかっこで指定する値はインデクスではなくキーを指定する必要があります。
僕が調べたところではFilesコレクションはファイル名をキーとしているようなので、
oFolder.Files("foo.txt").Path
と指定すれば
C:\foo\foo.txt
のようにパスを取得できます。
961デフォルトの名無しさん:02/09/02 13:06
VB6.0でTCPによるソケット通信アプリを作りたいのですが、
サーバ上でサービス化させたいためにWinsockコントロール
が使えません。代わりになにか、Winsockコントロールと同等
の働きを実現するAPIだとかDLLのようなものがありましたら
使い方とともに教えてください。お願いします。

「スレ立てるまでもない・・・」でも質問したのですが、こちらの方が
適所かも。ということでマルチポストスマソ


962961:02/09/02 13:08
ちなみにWinのNT4.0にアプリを置き、98SEと通信します。
>>961
コントロールという基本的な用語すら間違える。
Winsockと言うAPIセットの存在すら知らない。

プログラマとしての実力を疑ったため放置しました。
>>963
             ∩
                 | |
                 | |
        ∧_∧   | |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄
  / ̄\  ´Д`)//  < 放置できてねーよ!!!
.r ┤    ト、      /    \_______
|.  \_/  ヽ  /
|   __( ̄  |  |
|    __)_ノ ̄ ̄ ̄ ̄\
ヽ___) ノ          \
  ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
  ||  || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
     .||              ||
実力がある人しか答えてもらえない初心者質問スレ(w




もちろん皮肉です。>>963への。
つーか>>963がちょっと知恵つけただけのガキだし。
>>965
初心者と初心者未満のバカは明確に区別されます。
割と常識ですが。
>>965-966
自演必死だな。
>>963 >>968
自演必死だな。
970961:02/09/02 14:02
>>963はどうでもいいです。答えられないだけのようですから。
他の方、どなたか知っていたら教えてください。
>>969
隠してるつもりはないけどね。

違うって言わないところを見ると>>965-966は正解みたいだな。
それだけで俺は満足さ。
972961=965=966=969:02/09/02 14:03
早く答えなさい。本気を出しますよ?
973966:02/09/02 14:04
>>971
やっぱりか。俺は>>965じゃねーよ。自己満足さん。



         V B 厨 バ カ ば っ か ( 藁



>>974
そうだな。>>963がバカなのは認める。
976965:02/09/02 14:12
966じゃないよ。
961=965と言われるかと思ったがそっちに来たか。
満足させられずにごめんね>>971
しかし965=966だと満足感が得られる、というのは俺には理解できない世界だな。
俺が思うに970=972=974 (961,965,966,969ではない) だな。
978970、972、974のうちの一人 :02/09/02 14:24
>>977

は・ず・れ
誰か>>961を分かる日本語質問分にしてくれたらsocketに関して答えてあげてもいいよ。
>>979
日本語質問分って日本語ですか?
981979:02/09/02 14:29
間違った日本語です。
982デフォルトの名無しさん:02/09/02 14:29
>>980

そういうこというとまた980=961とか言い出すだろ? ヴァカ厨が。
すぐに自演、ネカマ、ネタで結びつけるやつは(略
>>981
つまり彼は自分が覚えている日本語がおかしいことに気付かずに>>961の正しい日本語を
矯正しろと言っているってことですか?
>>957 >>960
ほんとだね、Indexを数値にするとダメだ。

Private Sub Form_Load()
  Dim oFso As FileSystemObject
  Dim oFolder As folder
  Dim oFile As file
  Dim n As Long

  Set oFso = New FileSystemObject
  Set oFolder = oFso.GetFolder("c:\temp")

  For n = 1 To oFolder.Files.Count
    Debug.Print oFolder.Files.Item(n).Path '実行時エラー'5' プロシージャの呼び出し、または引数が不正です。
  Next

  'こっちを使え
  For Each oFile In oFolder.Files
    Debug.Print oFile.Path
  Next
End Sub
>>979
>>961ってそんなに変か?
変って言ってる奴が何か勘違いしているだけじゃないのか。

>>961
Winsockコントロール(言うまでもなくこれはAPIじゃない)はサービスにしても使えると思うが。
>>985

>>961がバカなのは確かだな。
>>984
なぜ数値じゃだめなのか勝手に推測。

もしIndexに数値を使えたとする。
するとIndex番号0のファイルなのかファイル名0のファイルなのか区別がつかない。
一見Files(0)とFiles("0")のように文字列型と数値型で区別できるように思える。
しかし、FileSystemObjectはWSHで使うことを考慮している。
WSHではデータ型はバリアント型しかない。
ゆえにIndexに数値は使えない。
>>988
単に数字のキー名にデータがmapされてないだけでは?
990961:02/09/02 14:51
>>985
やっとまともなレスをいただき感激です。

>Winsockコントロール(言うまでもなくこれはAPIじゃない)はサービスにしても使えると思うが。

アプリを動かすPCはサーバー機なので常時ログオフの状態にしておきます。
そうするとフォームにTerminateイベントが発生してしまうと思われます。
その状態でもWinsockコントロールを動かすことは可能なのですか?
>>988
>するとIndex番号0のファイルなのかファイル名0のファイルなのか区別がつかない。

通常、そう言うポリシーの異なる2つ以上の名前付けは1つのコレクション内で行うべきではない。
数字で参照させるなら数字をキーに。ファイル名で参照させるならファイル名をキーに。

たまたま、その仕様がファイル名で参照させるタイプであっただけ。

「仕様」以上の答えはないと思われ。
>>990
ああ、WinSockコントロールをエクストラストラクチャとしてWindowsに登録すれば良いんだよ。
Dynamicキーワード使ってね。
やっぱりというか、なんと言うか。
>>961>>990では全然質問の意味が違うじゃねーかYO!
>>993
ほら、既に言葉の定義すら本人の中で固まってない。
VBのいい加減でも通る柔軟な構文の賜だ。
995961:02/09/02 14:59
>>992

そんな方法があるんですか!?
でも難しそうなのでちょっと調べてみます。
「Dynamicキーワード」がキーワードですね?
>>993
それは>>985が新たな情報を与えたため。
>>994
お前ウザイよ。
998961:02/09/02 15:02
皆さんVB歴は何年ですか?
私は2ヶ月です。
それ未満の人は私の質問に答えないでください。

それでは質問の答えをお願いします。
999
うんこ
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。