|
分類:[VB.NET/VB2005 以降]
初めまして。早速ですが、一つ質問させていただきます。
VB2005で開発を行っています。 今回開発しているシステムは、DENSOのハンディターミナルを使用したシステムで、
1、指定フォルダ内に「LIST.txt」というテキストファイルが存在している場合は削除する。 2、ボタンをクリックするとハンディターミナルが起動する。 3、ハンディターミナルで読み込んだデータをテキストファイルに出力して、 指定したフォルダ内に転送する。 4、転送されたファイルのデータをAccessのテーブルにインポートする。
という処理を行います。
ですが、次のようにコードを書くとエラーが発生してしまいます。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles btn1.Click
OleCnn = New OleDb.OleDbConnection() OleCnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; " _ & "Data Source=(Access名が入ります)" OleCnn.Open()
If System.IO.File.Exists("D:\SYSTEM\LIST.txt") = True Then
System.IO.File.Delete("D:\SYSTEM\LIST.txt")
End If
If MessageBox.Show("取込を開始します。よろしいですか?", "取込確認", MessageBoxButtons.YesNo, _ MessageBoxIcon.Question) = DialogResult.No Then
Exit Sub
End If
'取込アプリケーションの起動 Dim Myshell
Myshell = Shell("D:\SYSTEM\IT3CW32.EXE" & " " & "+P1 +R +E +V" & " " & "D:\SYSTEM\LIST.txt", _ AppWinStyle.NormalFocus)
Do Until System.IO.File.Exists("D:\SYSTEM\LIST.txt")
Loop
'StreamReader生成 Dim Sr1 As New IO.StreamReader("D:\SYSTEM\LIST.txt")
この部分 「Dim Sr1 As New IO.StreamReader("D:\SYSTEM\LIST.txt")」 でエラーが発生します。
エラー内容は 「別のプロセスで使用されているため、プロセスはファイル 'D:\SYSTEM\LIST.txt' にアクセスできません。」 という内容です。
どのようにしたらよろしいでしょうか?
|