title: Using Windows Service to Create,Update,Delete CSV File using C# or VB.net
body: <p>I am creating a windows service to save current username and logon time in a CSV file. But when I install the service, the file is just created, not details are written to it, and  that file is set to read-only mode. what is the problem in my code?</p>
  
  <p>My code:</p>
  
  <pre class="lang-vb prettyprint-override"><code>   Imports System.IO
     Imports System.Text
     Imports System.DirectoryServices
     Imports System.DirectoryServices.AccountManagement
     Imports System.Diagnostics
     Public Class LoginService1
  
        Protected Overrides Sub OnStart(ByVal args() As String)
          Dim win As System.Security.Principal.WindowsIdentity
          win = System.Security.Principal.WindowsIdentity.GetCurrent()
          Dim Logon_UserName = win.Name.Substring(win.Name.IndexOf("\") + 1)
          Dim pc As New PrincipalContext(ContextType.Machine, My.Computer.Name)
          Dim uc As UserPrincipal = UserPrincipal.FindByIdentity(pc, Logon_UserName)
          Dim str As String = ""
          Try
             Dim sr As New StreamReader("c:\logondetails.csv")
             str = sr.ReadToEnd()
             sr.Close()
             sr.Dispose()
          Catch ex As Exception
          End Try
          Try
             Dim sw As New StreamWriter("c:\logondetails.csv")
             Str += Logon_UserName &amp; "," &amp; uc.LastLogon.Value.ToString
             sw.WriteLine(str)
             sw.Close()
             sw.Dispose()
          Catch ex As Exception
          End Try
     End Sub
  
     Protected Overrides Sub OnStop()
        ' Add code here to perform any tear-down necessary to stop your service.'
     End Sub
  
    End Class
  </code></pre>