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

わんくま同盟

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

C# と VB.NET の入門サイト


(過去ログ 119 を表示中)
■69624 / )  Windowサービスからキックされるアプリ
□投稿者/ けんけん (3回)-(2014/01/15(Wed) 11:49:18)

分類:[.NET 全般] 

開発環境:VB2010
OS:WinXP SP3

処理の概要としましては、上記環境にてWindowsサービスを作成しそのサービス内で、上記環境で作成した
Windowsアプリケーションをキックし、Windowsアプリ内でフォルダの存在確認をしております。
現象としましては、Windowsアプリ内でローカルフォルダの存在確認をした場合は、正常にフォルダ有無が取得できて
おりますが、ネットワークパスを指定するとフォルダの有無が取得できません。
※ネットワークドライブ、IP指定、コンピュター名のどれを指定しても取得できません。
別EXEから上記Windowsアプリをキックした場合は、正常にフォルダ有無の取得ができます。
(ネットワークパスのOS:WinXP SP3)

何か原因が考えられるのでしょうか。
下記にソースを記述します。

'↓サービス側↓
Protected Overrides Sub OnStart(ByVal args() As String)
' サービスを開始するコードをここに追加します。このメソッドによって、
' サービスが正しく実行されるようになります
' ProcessStartInfo の新しいインスタンスを生成する
Dim hPsInfo As New System.Diagnostics.ProcessStartInfo()

' 起動するアプリケーションを設定する
hPsInfo.FileName = "HamadaService_EXE.exe"

'' コマンドライン引数を設定する
'hPsInfo.Arguments = (i + 1).ToString

' 新しいウィンドウを作成するかどうかを設定する (初期値 False)
hPsInfo.CreateNoWindow = False

' シェルを使用するかどうか設定する (初期値 True)
hPsInfo.UseShellExecute = True

' 起動できなかった時にエラーダイアログを表示するかどうかを設定する (初期値 False)
hPsInfo.ErrorDialog = False

' アプリケーションを起動する時の動詞を設定する
hPsInfo.Verb = "Open"

' 起動ディレクトリを設定する
hPsInfo.WorkingDirectory = "C:\Development\TEST\HamadaService_EXE\HamadaService_EXE\bin\Debug"

' 起動時のウィンドウの状態を設定する
hPsInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal '通常

' ProcessStartInfo を指定して起動する
System.Diagnostics.Process.Start(hPsInfo)

End Sub
'↑サービス側↑

'↓Windowsアプリ↓
Private Sub Form1_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown
Dim strLogPath As String = Path.Combine(My.Application.Info.DirectoryPath, "LOG")
LOG = New OperationLog(strLogPath, "TRUE", 30)
If Not Directory.Exists(strLogPath) Then
Directory.CreateDirectory(strLogPath)
End If
Call LOG.Start()
Call LOG.ScreenStart(Me.Text)

Dim strDir As String = "\\128.167.89.169\R"
'Dim strDir As String = "\\128.167.89.137\共有"
'Dim strDir As String = "V:\"
LOG.Write(1, strDir)
If Directory.Exists(strDir) Then
'If Directory.Exists("C:\hamada") Then
LOG.Write(0, "ファイルあり")
Else
LOG.Write(0, "ファイルなし")
End If


End Sub
'↑Windowsアプリ↑



返信 編集キー/


管理者用

- Child Tree -