Αυτό που δίνεις δεν είναι C# ούτε καν .NET. Μάλλον το αντέγραψες από κάποιο sample σε C για επικοινωνία με σειριακές θύρες μέσω Win 32 API. To L είναι ένα macro που χρησιμοποιείται στους headers του Win32 API για να ορίσει ότι το string που ακολουθεί είναι double byte (Unicode) και όχι single byte (ANSI).
Αν θέλεις να επικοινωνήσεις με σειριακές θύρες στο .NET καλύτερα να χρησιμοποιήσεις την έτοιμη κλάση SerialPort. Αν θέλεις να χρησιμοποιήσεις γενικά την CreateFile του Win 32 API, θα πρέπει να κοιτάξεις πως δουλεύει το interoperability.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos