private static IEnumerable <Credential> ParseCredentials(int count, SafeCredBuffer buffer)
        {
            using (buffer)
            {
                buffer.Initialize <IntPtr>((uint)count);
                IntPtr[] ptrs = buffer.ReadArray <IntPtr>(0, count);

                return(ptrs.Select(ParseCredential).ToList().AsReadOnly());
            }
        }
        private static IEnumerable <Credential> ParseCredentials(int count, SafeCredBuffer buffer)
        {
            using (buffer)
            {
                buffer.Initialize <IntPtr>((uint)count);
                IntPtr[] ptrs = buffer.ReadArray <IntPtr>(0, count);

                return(ptrs.Select(p => (CREDENTIAL)Marshal.PtrToStructure(p,
                                                                           typeof(CREDENTIAL))).Select(c => new Credential(c)).ToList().AsReadOnly());
            }
        }
Exemple #3
0
 internal static extern bool CredEnumerate(
     string Filter,
     CredentialEnumerateFlags Flags,
     out int Count,
     out SafeCredBuffer Credential
     );