I know a couple of these threads exist on the internet, but none describe what I am having...

vb Code:
  1. Public Structure SHELLEXECUTEINFO
  2.         Public cbSize As Integer
  3.         Public fMask As Integer
  4.         Public hwnd As IntPtr
  5.         <MarshalAs(UnmanagedType.LPTStr)> Public lpVerb As String
  6.         <MarshalAs(UnmanagedType.LPTStr)> Public lpFile As String
  7.         <MarshalAs(UnmanagedType.LPTStr)> Public lpParameters As String
  8.         <MarshalAs(UnmanagedType.LPTStr)> Public lpDirectory As String
  9.         Dim nShow As Integer
  10.         Dim hInstApp As IntPtr
  11.         Dim lpIDList As IntPtr
  12.         <MarshalAs(UnmanagedType.LPTStr)> Public lpClass As String
  13.         Public hkeyClass As IntPtr
  14.         Public dwHotKey As Integer
  15.         Public hIcon As IntPtr
  16.         Public hProcess As IntPtr
  17.     End Structure
  18.     Private Const SEE_MASK_INVOKEIDLIST = &HC
  19.     Private Const SEE_MASK_NOCLOSEPROCESS = &H40
  20.     Private Const SEE_MASK_FLAG_NO_UI = &H400
  21.     Private Const SW_SHOW As Integer = 5
  22.     Private Declare Function ShellExecuteEx Lib "shell32.dll" Alias "ShellExecuteExA" (ByRef lpExecInfo As SHELLEXECUTEINFO) As Boolean
  23.     Public Function ShowProps(ByVal FileName As String, ByVal OwnerhWnd As IntPtr) As Boolean
  24.         Dim sei As New SHELLEXECUTEINFO
  25.         sei.cbSize = Marshal.SizeOf(sei)
  26.         sei.fMask = SEE_MASK_INVOKEIDLIST
  27.         sei.hwnd = OwnerhWnd
  28.         sei.lpVerb = "properties"
  29.         sei.lpFile = FileName
  30.         sei.lpParameters = vbNullChar
  31.         sei.lpDirectory = vbNullChar
  32.         sei.nShow = SW_SHOW
  33.         sei.hInstApp = 0
  34.         sei.lpIDList = 0
  35.         Return ShellExecuteEx(sei)
  36.     End Function

(import Marshal btw)

When I first ran the code, it worked. But after some days (now) it suddenly stopped working, and only displays an error with, for example:
"Windows cannon find 'C'. Make sure you type the name correctly, and then try again.
This, while I send the request for the file of "C:\test.txt". It only seems to read the first character. What is going on here?

(Running on Window 7)