Search code examples
c#vb.netfilefile-exists

File.Exists is working in C#, but doesn't work in VB.NET


I faced with a strange problem.

VB.NET - not working

Dim stringData As String = Encoding.UTF8.GetString(buffer, 0, buffer.Length)    
If Not [String].IsNullOrEmpty(stringData) AndAlso System.IO.File.Exists(stringData) Then
    Process.Start(stringData)
End If 

Working

  If Not [String].IsNullOrEmpty(stringData) AndAlso System.IO.File.Exists(stringData) Then
      Process.Start(stringData)
End If
 Process.Start(stringData)

C# - working:

string stringData = Encoding.UTF8.GetString(buffer, 0, buffer.Length);

if (!String.IsNullOrEmpty(stringData) && System.IO.File.Exists(stringData))
{
    Process.Start(stringData);
}

Can anyone explain me what am I doing wrong?


Solution

  • Try this way:

    Dim stringData As String = GetFolderPath(SpecialFolder.MyDocuments) & "\my.exe" 'For example
    
                If Not String.IsNullOrEmpty(stringData) Then
    
                    If File.Exists(stringData) Then
    
                        Process.Start(stringData)
    
                    Else
    
                        MsgBox("File couldn't be found.", vbCritical, "MyApp")
    
                    End If
    
                End If