Exemple #1
0
        public static String[] ListAllPhysicalDevices(Status status = null)
        {
            using (StatusChecker checker = new StatusChecker(status))
            {
                byte[] nameBuffer = new byte[2048];

                GCHandle nameHandle = GCHandle.Alloc(nameBuffer, GCHandleType.Pinned);

                TfInvoke.tfeListAllPhysicalDevices(
                    nameHandle.AddrOfPinnedObject(),
                    checker.Status);

                nameHandle.Free();
                String   nameResult = System.Text.Encoding.ASCII.GetString(nameBuffer);
                String[] names      = nameResult.TrimEnd('\0', '\n').Split('\n');
                return(names);
            }
        }