public static bool GetDUOFirmwareVersion(IntPtr duo, ref string val) { try { UnmanagedString str = new UnmanagedString(); if (DUOLibInternal.DUOGetFirmwareVersion(duo, str.Pointer)) { val = str.String; return(true); } else { return(false); } } catch { return(false); } }