C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 >>
■1781  Re[10]: ディスクエラーに関して
□投稿者/ トラの尻尾しましま -(2005/10/31(Mon) 11:37:13)

    分類:[VB.NET] 

    No1780に返信(まどかさんの記事)
    >>その、ワークファイル.txtを、DB.LZHファイルにして、UNLHA32.DLLで解凍させようとしたのですが、
    >>『ファイルの一部が見つかりません』とでてしまいます。
    >
    > ワークファイルとは分割したファイルを結合して元に戻したファイルでよろしいですか?
    はい。
    FD1枚・2枚目を ワークファイルに保存して、それをLZH方式で保存します。
    名前は、INFile_DB.txtです。
    outFile.txtという名前のワークファイルは、分割したデータを一度outFile.txtに読み込んで、FDに保存という方法をとっています。


    > だとしたら、その部分がわからないことには。。。
    > メッセージ文に少々違和感がありますが、LZH形式が矛盾してることは間違いないでしょう。
    >
    > と、思ってましたが、
    >
    >> '15000ごとにデータを区切る
    >> B = fs.ReadBytes(15000)
    > >
    >> '2枚目のとき
    >> Dim nokori As Long = FileSize
    >> outFile.Write(B, 0, nokori)
    >
    > 2枚目のときにBを読み込んでいないのでしょうか?

    >> '2枚目のとき
    >> Dim nokori As Long = FileSize
    >> outFile.Write(B, 0, nokori)
    これで、てっきり、読み込んでいるのだとおもってしまっていました・・・。
    すみません、どこをどうなおしたら良いのかが分かりません。
    >> outFile.Write(B, 0, nokori)
    の部分の(B, 0, nokori)の 『0』が問題なのでしょうか・・。
    そのせいで、データが正しく取れていなくてエラーが発生するのでしょうか・・。


    >
    > えっと、やろうとしてることは、
    > 1.MDBファイルをLHA圧縮する−>Bファイル
    > 2.Bファイルを分割してフロッピーへ保存する
    > 3.フロッピーからデータを結合する
    > 4.結合したファイルをLHA解凍する
    > と思うのですが、

    そのとおりです。

    > ワークファイルの位置付けがわかりません。
    > #先の説明だと分割時に作成しているようですが。。。

    分割時のワークファイル・結合時のワークファイルの名前が混在してしまい、
    ややこしく、分かりにくい説明をしてしまってすみません。
    大変失礼しました。


    何度も何度も、お手数をお掛けしてしまい大変申し訳ないです.
    よろしくお願いいたします。

記事No.1746 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1780  Re[9]: ディスクエラーに関して
□投稿者/ まどか -(2005/10/31(Mon) 11:08:31)

    分類:[VB.NET] 

    > その、ワークファイル.txtを、DB.LZHファイルにして、UNLHA32.DLLで解凍させようとしたのですが、
    > 『ファイルの一部が見つかりません』とでてしまいます。

    ワークファイルとは分割したファイルを結合して元に戻したファイルでよろしいですか?
    だとしたら、その部分がわからないことには。。。
    メッセージ文に少々違和感がありますが、LZH形式が矛盾してることは間違いないでしょう。

    と、思ってましたが、

    > '15000ごとにデータを区切る
    > B = fs.ReadBytes(15000)
    >
    > '2枚目のとき
    > Dim nokori As Long = FileSize
    > outFile.Write(B, 0, nokori)

    2枚目のときにBを読み込んでいないのでしょうか?

    えっと、やろうとしてることは、
    1.MDBファイルをLHA圧縮する−>Bファイル
    2.Bファイルを分割してフロッピーへ保存する
    3.フロッピーからデータを結合する
    4.結合したファイルをLHA解凍する
    と思うのですが、
    ワークファイルの位置付けがわかりません。
    #先の説明だと分割時に作成しているようですが。。。

記事No.1746 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1779  Re[8]: ディスクエラーに関して
□投稿者/ トラの尻尾しましま -(2005/10/31(Mon) 09:47:34)

    分類:[VB.NET] 

    土日、パソコンを触っていませんでしたので、
    お返事が大変遅くなりまして、もうしわけございません。

    丁寧なご説明ありがとうございます。
    新しいファイルでも、開く・読み込み・書き込み・閉じる
    の作業は必要ですよね。

    それでなのですが、
    エラー無く、1枚目・2枚目のデータをワークファイルに書き込めました。

    ところが、いざ、
    その、ワークファイル.txtを、DB.LZHファイルにして、UNLHA32.DLLで解凍させようとしたのですが、
    『ファイルの一部が見つかりません』とでてしまいます。

    さらに、Lhaca で強制的に解凍・展開させようとすると、元DB(アクセスのmdbファイル)
    きちんと、拡張子はmdbファイルなのですが、
    『認識できません』とでてしまいます。
    何故なのでしょうか・・・
    分割させたときに、そのデータをきちんと取ってこれていないということでしょうか・・・。
    ちなみに、下記が分割させたものを各フロッピーに保存させるロジックです。



    Dim fs As New BinaryReader(New FileStream("データ元パス・・・DB.LZH", FileMode.Open))
    '15000ごとにデータを区切る
    B = fs.ReadBytes(15000)
    fs.Close()
    outFile.Write(B, 0, B.Length)
    outFile.Close()
    'データベースのコピー 'tempのファイルをワークファイルとして読み込み最後に移動する方法
    A_Fname = Drive & "DISK" & Format(count, "000") & "-" & DAY
    File.Copy(outfileName, A_Fname & ".txt", False)
    FileSize = FileSize - B.Length

    count = count + 1
    MsgBox("" & count & "枚目のフロッピーディスクをセットして下さい", MsIcon, Caption)
    Else
    '2枚目のとき
    Dim nokori As Long = FileSize
    outFile.Write(B, 0, nokori)
    outFile.Close()
    A_Fname = Drive & "DISK" & Format(count, "000") & "-" & DAY
    'ファイル最後にENDをつける
    File.Copy(outfileName, A_Fname & "END.txt")
    FileSize = FileSize - nokori
    End If

    よろしくお願いします。
記事No.1746 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1769  Re[6]: ディスクエラーに関して
□投稿者/ トラの尻尾しましま -(2005/10/28(Fri) 15:40:29)

    分類:[VB.NET] 

    ディスクエラーに関してとても分かりやすい説明ありがとうございます。
    理解できました・・・。
    有難うございます.





    コードですが、正しくは、

    1枚目のディスクの場合
    'ファイル作成
    A_FCreate = File.Create(ワークファイル.txt")
    'ファイル書き込み
    Dim writer As StreamWriter = New StreamWriter(分割したバイナリファイルをテキスト形式で読み込んだファイル001., False, System.Text.Encoding.Default)
    writer.Write(txtA_Cname)
    writer.Close()
    writer = Nothing

    2枚目ディスクの場合

    'ファイル書き込み
    Dim writer As StreamWriter = New StreamWriter(分割したバイナリファイルをテキスト形式で読み込んだファイル002.txt, False, System.Text.Encoding.Default)
    writer.Write(A_Cname)
    writer.Close()
    writer = Nothing


    になりますかね・・・


    あの・・・すみません・・・
    もしかして、圧縮して保存したファイルをStreamReaderで最後まで読み込んで
    その読み込んだ内容をなにか変数に保存しておいてそれを新しく作ったファイルに書き込むという作業が必要なのでしょうか・・・。
    話がどんどん違う方向に行ってしまっていたらすみません。
記事No.1746 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1766  Re[4]: ディスクエラーに関して
□投稿者/ トラの尻尾しましま -(2005/10/28(Fri) 12:10:55)

    分類:[VB.NET] 

    >
    > エラー時の元と先のファイル名が変な形になってませんか?
    >
    > エラーの内容から言えることは
    > ドライブ内でクローズされる前にフロッピーを入れ替えたときの症状です。
    >
    > MoveをCopyに変えるとどうなるでしょうか?

    原因がわかりました・・。
    おっしゃるとおり、> MoveをCopyに変更しますと、上手くいきました。
    お騒がせしました。

    一つ、馬鹿な質問をさせてください。
    データをバイナリファイルで読み込んで、分割し、
    それらをテキスト形式で保存し、それを、作成した別のワークファイルで(テキスト形式)
    に書き込んでいく場合は、
    StreamWriter・BinaryWriter どちらで書き込んでいけばよいのでしょうか?

    1枚目のディスクの場合
    'ファイル作成
    A_FCreate = File.Create(ワークファイル.txt")
    'ファイル書き込み
    Dim writer As StreamWriter = New StreamWriter(A_Cname, False, System.Text.Encoding.Default)
    writer.Write(分割したバイナリファイルをテキスト形式で読み込んだファイル001.txt)
    writer.Close()
    writer = Nothing

    2枚目ディスクの場合

    'ファイル書き込み
    Dim writer As StreamWriter = New StreamWriter(A_Cname, False, System.Text.Encoding.Default)
    writer.Write(分割したバイナリファイルをテキスト形式で読み込んだファイル002.txt)
    writer.Close()
    writer = Nothing



    後で、そのワークファイル.txt(二つのデータを合わせたもの)を  DAta.LZHにします。

    上記のような記述にした場合、データが全くワークファイルに書き込まれていなかったので・・・。
    すみません、よろしくお願いします.
記事No.1746 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1754  Re[1]: ディスクエラーに関して
□投稿者/ まどか -(2005/10/27(Thu) 18:11:28)

    分類:[VB.NET] 

    > の File.Move(outfileName, A_Fname & "END.txt") の部分でエラーが発生します。
    > ※1枚目のデータはエラー発生せずに保存できました。
    >
    > 追加情報 : 間違ったフロッピー ディスクがドライブに挿入されています。
    > %2 (ボリューム シリアル番号: %3) を
    > ドライブ %1 に挿入してください。
    > というエラーが発生してしまいます。

    ドライブのランプが完全に消灯しないで2枚目に入れ替えてないか確認してみましょう。
    #そうなら、最悪データが読み取りできなくなりますので注意が必要です。

記事No.1746 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1746  ディスクエラーに関して
□投稿者/ トラの尻尾しましま -(2005/10/27(Thu) 17:29:41)

    分類:[VB.NET] 


    分類:[VB.NET] 

    2005/10/27(Thu) 17:58:42 編集(投稿者)
    2005/10/27(Thu) 17:30:43 編集(投稿者)

    すみません、前回の
    質問の続きにになり本当にすみません!!

    http://f57.aaa.livedoor.jp/~jeanne/bbs/faq.cgi?mode=al2&namber=1712&rev=&no=0
    昨日実行処理を実行したときは、問題なく2枚目(END付)のディスクも保存できたのですが、
    本日確認のため、実行すると

    Dim nokori As Long = FileSize
    outFile.Write(B, 0, nokori)
    outFile.Close()

    'ファイル最後にENDをつける
    File.Move(outfileName, A_Fname & "END.txt")

    A_Fname ・・・現在A:\を保存先に設定しています。

    の File.Move(outfileName, A_Fname & "END.txt") の部分でエラーが発生します。
    ※1枚目のデータはエラー発生せずに保存できました。

    'System.IO.IOException' のハンドルされていない例外が mscorlib.dll で発生しました。

    追加情報 : 間違ったフロッピー ディスクがドライブに挿入されています。
    %2 (ボリューム シリアル番号: %3) を
    ドライブ %1 に挿入してください。
    というエラーが発生してしまいます。

    それで、試しに、
    'ファイル最後にENDをつける
    File.Move(outfileName, A_Fname & "END.txt")
    のA_Fname部分を 『c:\test』に変更して保存処理を行うと、エラーも発生せず、問題なく
    保存することができました。

    どなたか、ご教授願います。

    すみません。
親記事 /0過去ログ2より / 関連記事表示
削除チェック/

■1739  Re[1]: ラベルのテキスト入力について
□投稿者/ sato -(2005/10/26(Wed) 21:54:14)

    分類:[VB.NET] 

    2005/10/28(Fri) 19:11:43 編集(投稿者)
    2005/10/26(Wed) 22:34:34 編集(投稿者)
    2005/10/26(Wed) 22:34:24 編集(投稿者)

    Dim x() As Label = {Me.Lbl000, Me.Lbl001, Me.Lbl002}
    Dim y As integer = 1

    x(y).Text = "555"

    としたらできました。どうもお騒がせいたしました<(_ _)>
記事No.1737 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1734  Re[1]: ログイン画面について
□投稿者/ tomo -(2005/10/26(Wed) 20:29:50)

    分類:[VB.NET] 

    tomoです。

    何とか思考錯誤の結果、以下のようにしたら取り敢えず解決できました。

    Protected Overridable Sub findData()

    Dim oleCn As OleDb.OleDbConnection = New OleDb.OleDbConnection
    Dim oleDr As OleDb.OleDbDataReader
    Dim oleCmd As OleDb.OleDbCommand
    Dim dtSet As DataSet = New DataSet("一覧")
    Dim UID As String
    Dim password As String

    'データベースに接続する
    olecn.ConnectionString = _
    "provider=microsoft.jet.oledb.4.0;data source=" _
    & "C:\test\test.mdb;Persist Security Info=False"

    '選択sql文を作成してレコードを取得する
    olecmd = New OleDb.OleDbCommand("SELECT * FROM tbl_rent", olecn)

    'コネクションを開く
    oleCn.Open()

    If txtuserId.Text = "" Then
    MessageBox.Show("ログオンIDを入力してください。")
    Exit Sub
    Else
    UID = UID & " UID =" & txtuserId.Text & " "
    End If

    If txtpassword.Text = "" Then
    MessageBox.Show("パスワードを入力してください。")
    Exit Sub
    Else
    password = password & " password = " & txtpassword.Text & " "
    End If

    'コマンドの定義
    olecmd.CommandText = "SELECT password FROM tbl_logon where UID='" & txtuserId.Text & "'"

    'データリーダーからのデータの読み出し
    oleDr = olecmd.ExecuteReader()

    'レコードの存在によって、該当するIDがあることを確認する
    If oleDr.Read Then
    'パスワードの判定
    If RTrim(oleDr("password")) = txtpassword.Text Then
    MsgBox("正しいIDであることを認証できました。システムにログオンします。")

    'ダイアログボックスの戻り値をOKにする
    Me.DialogResult = DialogResult.OK
    Else
    'パスワードが一致しないとき
    MsgBox("正しいパスワードを指定してください")
    End If

    Else
    'IDが存在しないとき
    MsgBox("正しいIDを指定してください")
    End If

    'データリーダーを閉じる
    oleDr.Close()

    'コネクションを閉じる
    oleCn.Close()
    End Sub

    また、お世話になるかもしれませんので宜しくお願いします。

記事No.1726 のレス / END /過去ログ2より / 関連記事表示
削除チェック/

■1726  ログイン画面について
□投稿者/ tomo -(2005/10/25(Tue) 23:29:25)

    分類:[VB.NET] 


    分類:[VB.NET] 

    tomoと言います。
    「日経BP社/ひと目でわかるMsVB.NETデータベース開発入門」を参考にログイン画面を作成中です。こちらの参照内容外で申し訳ありません。
    IDとpasswordを入力し正しければメインメニューを表示させたいと考えています。
    現在Accessのテーブルには、OleDb接続を行っているのですが、どのように変更するのか…
    大変未熟者で申し訳ないのですが、ご教授の程宜しくお願いします。

    Public dbCtrl As DbControl

    Protected Overridable Sub findData()
    Dim cmd As SqlClient.SqlCommand = SqlConnection1.CreateCommand()
    Dim dr As SqlClient.SqlDataReader
      cmd.Connection = SqlConnection1
    SqlConnection1.Open()
    cmd.CommandText = "SELECT password FROM tbl_logon where UID='" & txtuserId.Text & "'"
    dr = cmd.ExecuteReader()
    If dr.Read Then
    If RTrim(dr("password")) = txtpassword.Text Then
    MsgBox("IDを認証できました。")
    Me.DialogResult = DialogResult.OK
    Else
    MsgBox("パスワードの間違えです")
    End If
    Else
    MsgBox("IDの間違えです")
    End If
    dr.Close()
    scn.Close()
    End Sub

    DbControlの内容

    Public Class DbControl
    Private oleCn As New OleDb.OleDbConnection
    Public Sub DbConnect()
    Dim StrCn As String
    Dim dbName As String
    dbName = dbName & "c:\Test\Test.mdb"
    StrCn = " Provider=Microsoft.jet.OLEDB.4.0;"
    StrCn = StrCn & " Data Source=" & dbName
    oleCn.ConnectionString = StrCn
    Try
    oleCn.Open()
    Catch ex As Exception
    MsgBox(ex.Message)
    End Try
    End Sub

    Public Function getDataTable(ByVal Sql As String) As DataTable
    Dim oleDa As OleDb.OleDbDataAdapter
    Dim dtTbl As New DataTable
    Try
    oleDa = New OleDb.OleDbDataAdapter(Sql, oleCn)
    oleDa.Fill(dtTbl)
    Catch ex As Exception
    MsgBox(ex.Message)
    End Try
    Return dtTbl
    End Function

    Public Function executeSql(ByVal Sql As String) As Boolean
    Dim oleCmd As OleDb.OleDbCommand
    Try
    oleCmd = New OleDb.OleDbCommand(Sql, oleCn)
    oleCmd.ExecuteNonQuery()
    Catch ex As Exception
    MsgBox(ex.Message)
    executeSql = False
    End Try
    Return True
    End Function
    End Class

親記事 /0過去ログ2より / 関連記事表示
削除チェック/

■1720  DVStorm-XAドライバの取得方法
□投稿者/ nish -(2005/10/25(Tue) 14:38:12)

    分類:[その他の言語] 


    分類:[その他の言語] 

    -----
     CoCreateInstance(...);
     CreateClassEnumerator(CLSID_VideoInputDeviceCategory, &pClassEnum, 0);
    -----
    で取得できません。(DVStorm-RTのドライバは取得できます)
    その他いくつかのクラスIDで試しましたがダメです。

    DVStorm-XAのドライバの取得方法を教えて下さい。

親記事 /0過去ログ2より / 関連記事表示
削除チェック/

■1733  Re[12]: バイナリファイルについて
□投稿者/ トラの尻尾しましま -(2005/10/26(Wed) 12:26:04)

    分類:[VB.NET] 


    >指定したパスに問題があったりはしませんか?
    >極端な例を挙げるなら、
    >  File.Copy("C:\A.TXT", "CC:aaa.jpg", False)
    >などでも、同様のエラーが発生しますよね。

    はい、パスが間違っていました.
    それで、日付の件も無事解決しました。お騒がせしました。

    >あと、提示されたコードでは、ファイルが閉じられていない点も気になります。

    すみません、ファイル自体を閉じていませんでした。
    ご指摘ありがとうございます。


    最終的に、ファイルを分割上手く出来ました!!!
    皆様のおかげです。

    私はどうしても、ファイルを閉じる事を忘れてしまっている傾向がありました。
    今後気をつけます!!

    ありがとうございました。


記事No.1712 のレス / END /過去ログ2より / 関連記事表示
削除チェック/

■1732  Re[10]: バイナリファイルについて
□投稿者/ 魔界の仮面弁士 -(2005/10/26(Wed) 11:16:41)

    分類:[VB.NET] 

    > 『File.Copy(outfileName, A_Fname, False)』で
    > 'System.NotSupportedException' のハンドルされていない例外が mscorlib.dll で発生しました。
    > 追加情報 : 指定されたパスのフォーマットはサポートされていません。

    指定したパスに問題があったりはしませんか?
    極端な例を挙げるなら、
      File.Copy("C:\A.TXT", "CC:aaa.jpg", False)
    などでも、同様のエラーが発生しますよね。


    あと、提示されたコードでは、ファイルが閉じられていない点も気になります。
    投稿の際に端折っているだけならば良いのですけれども。
記事No.1712 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1731  Re[11]: バイナリファイルについて
□投稿者/ トラの尻尾しましま -(2005/10/26(Wed) 11:10:30)

    分類:[VB.NET] 

    すみません、原因はわかりました。
    名前に日付を入れていたのと、肝心の拡張子がなかったのですよね・・

    出力先ファイルパス = Drive & "DISK" & Format(count, "000") & "-" & System.DateTime.Now


    それで、出力先パスを= Drive & "DISK" & Format(count, "000") & "-" & yymmddhhnnss.txt
    にしたいのですが、
    現在日付 System.DateTime.Now で yymmddhhnnssというふうに取り出したいのですが可能でしょうか??

    例 A:\DISK001-2005/10/2611:10:43.txt  を
     
      A:\DISK001-20051026111043.txt にしたいのですが・・・。

    よろしくおねがいします。
記事No.1712 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1730  Re[10]: バイナリファイルについて
□投稿者/ トラの尻尾しましま -(2005/10/26(Wed) 09:50:45)

    分類:[VB.NET] 

    追記、

    > 'ファイル作成
    > Dim outfileName As String = "出力先ファイル名"
    > Dim outFile As New FileStream(outfileName, FileMode.Create, FileAccess.Write)
    >
     
    出力先ファイル名(パス) = "C:\TEST\out.txt"

    です。

    紛らわしくてすみません。
記事No.1712 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1729  Re[9]: バイナリファイルについて
□投稿者/ トラの尻尾しましま -(2005/10/26(Wed) 09:47:44)

    分類:[VB.NET] 

    おはようございます。
    お返事ありがとうございます。

    > ファイル分割、、、かな?

    そうなります。
    Do While FileSize > 0 'データ総容量が0になるまで
    'ファイル作成
    Dim outfileName As String = "出力先ファイル名"
    Dim outFile As New FileStream(outfileName, FileMode.Create, FileAccess.Write)

    If FileSize >= freeSpace Then 'MDBファイルのサイズがドライブの空き容量より大きい
    'ファイルを開く
    Dim fs As New BinaryReader(New FileStream("ファイル名", FileMode.Open))
    '15000ごとにデータを区切る
    B = fs.ReadBytes(15000)

    outFile.Write(B, 0, B.Length)

    'データベースのコピー File.Copy(outfileName, 出力先ファイルパス, False)
    Else
    Dim nokori As Byte
    nokori = FileSize - B.Length
    outFile.Write(B, 0, nokori)

    'ファイル最後にENDをつける
    File.Move(outfileName, 出力先ファイルのパス & "END")


    End If

    count = count + 1

    としました。
    しかし、

    『File.Copy(outfileName, A_Fname, False)』で

    'System.NotSupportedException' のハンドルされていない例外が mscorlib.dll で発生しました。

    追加情報 : 指定されたパスのフォーマットはサポートされていません。

    なぜそうなったのか分かりません・・。

    出力先に指定したパス名は下記です。

    出力先ファイルパス = Drive & "DISK" & Format(count, "000") & "-" & System.DateTime.Now

    ご指摘よろしくお願いします。
記事No.1712 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1722  Re[5]: バイナリファイルについて
□投稿者/ トラの尻尾しましま -(2005/10/25(Tue) 18:41:19)

    分類:[VB.NET] 

    Dim fs As New BinaryReader(New FileStream("ファイル名", FileMode.Open))
    '15000ごとにデータを区切る
    Dim B() As Byte = fs.ReadBytes(15000)
    '読み込んだByte配列をテキストに変換
    Dim strBuf As String = System.BitConverter.ToString(B)


    'データベースのコピー File.Copy(strBuf, コピー先, False)

    としました。
    それで、残り(??)容量をとってきたファイル名に"END"をつけたをしたいのですが、
    Dim B() As Byte = fs.ReadBytes(15000)
    で取ってきた残り(??)の容量はどうやってとってきたら良いのでしょうか・・・。

    BinaryReader.ReadBytes メソッド は指定したバイト数分のバイトを読み取り、
    指定したバイト数だけ現在位置を進めます。
    とあったので、
    で考えてみたのは
    残りの容量 =ファイル総容量 - 現在どこまで取れてきているか

    Dim nokori As Long
    nokori = FileSize - B
    と考えたのですが、うまくいきません・・・
    考え方に問題があるのでしょうか・・・

    よろしくお願い致します。





記事No.1712 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1719  Re[4]: バイナリファイルについて
□投稿者/ 魔界の仮面弁士 -(2005/10/25(Tue) 14:15:48)

    分類:[VB.NET] 

    > それから、どうファイル名を指定してどう区切りサイズごとに区切っていけば言いのかわかりません・・。
    ファイル自体は、System.IO.FileStream クラスにて開いておき、それを
    BinaryReader クラスのコンストラクタに指定すれば OK です。
    http://www.microsoft.com/japan/msdn/library/ja/vbcn7/html/vaconaccessthroughbinaryreaderbinarywriterclasses.asp

    細かい点を端折って書くと、
    Dim X As New BinaryReader(New FileStream(ファイル名, モード))
    Dim B() As Byte = X.ReadBytes(15000)
    X.Close
    という感じかな?


    > File.Open("...", FileMode.Open, FileAccess.Read)
    > ↑とかは使用しないのですか???
    File.Open() メソッドを使うこともできますよ。
    そのメソッドは、FileStream クラスを返しますので。
記事No.1712 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1716  Re[3]: バイナリファイルについて
□投稿者/ トラの尻尾しましま -(2005/10/25(Tue) 12:28:59)

    分類:[VB.NET] 

    始めにお詫びを・・・。
    名前は( 神無 です。 すみませんです。)
    トラの尻尾しましまに変更します。お騒がせしました.

    こんにちは・・・
    教えていただいたのですが・・・

    'バイナリファイル
    Public Overridable Function ReadBytes(ByVal count As Integer) As Byte()
    count'区切りサイズ
    End Function
    を利用することは分かったのですが、
    それから、どうファイル名を指定してどう区切りサイズごとに区切っていけば言いのかわかりません・・。

    File.Open("...", FileMode.Open, FileAccess.Read)
    ↑とかは使用しないのですか???
    すみません、無知で。

記事No.1712 のレス /0過去ログ2より / 関連記事表示
削除チェック/

■1667  windows server 2003でのスクリーンセーバー解除&再設定
□投稿者/ やま -(2005/10/21(Fri) 14:26:50)

    分類:[VB6以前] 


    分類:[VB6以前] 

    はじめまして、初めて書き込みをさせていただきます。
    どうぞよろしくお願いいたします。

    開発言語:VB6.0
    OS:Windows server 2003

    現在あるシステムの中で
    バッチ処理を終了後、自動でシャットダウンするような処理を
    行いたいと思っております。
    しかしながら商用環境の制約で10分でスクリーンセーバの
    ロックがかかってしまいます。
    スクリーンセーバーのロックがかかるとうまくシャットダウンが
    かかりません。

    そこで処理の先頭でスクリーンセーバーを解除し
    処理の最後で再設定をするプログラムを作りたいと思っておりますが
    Windows server 2000ではうまく行くのですがWindows server 2003では
    うまくできません。

    何か良い方法はないでしょうか?
    よろしくお願いいたします。

    **********プログラム**********
    Option Explicit

    Private Sub Command1_Click(Index As Integer)

    Select Case Index
    Case 0
    'スクリーンセーバを有効にする
    Call SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, True, 0, SPIF_SENDWININICHANGE)
    Case 1
    'スクリーンセーバを無効にする
    Call SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, False, 0, SPIF_SENDWININICHANGE)
    End Select

    End Sub

親記事 /0過去ログ2より / 関連記事表示
削除チェック/

<前の20件 | 次の20件>

<< 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 >>

ヒット件数が多いので過去ログ1〜3 までの検索結果 / 過去ログ4からさらに検索→

パスワード/

- Child Tree -