├── DeviceManagement
└── 1.3.0
│ ├── DeviceManagement.dll-Help.xml
│ ├── DeviceManagement.format.ps1xml
│ ├── DeviceManagement.psd1
│ ├── DeviceManagementCmdlet.dll
│ └── DeviceManagementEngine.dll
├── LICENSE
└── README.md
/DeviceManagement/1.3.0/DeviceManagement.dll-Help.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Disable-Device
6 |
7 | Disables a PnP device.
8 |
9 |
10 |
11 |
12 | Disable
13 | Device
14 |
15 |
16 |
17 | The Disable-Device cmdlet disables a Plug and Play (PnP) device. You must use an Administrator account to disable a device.
18 |
19 |
20 |
21 | Disable-Device
22 |
23 | InstanceId
24 |
25 | Specifies a unique instance IDs of a device.
26 |
27 | String
28 |
29 |
30 | Class
31 |
32 |
33 |
34 | Nullable`1[DeviceClass]
35 |
36 |
37 | InformationAction
38 |
39 |
40 |
41 | ActionPreference
42 |
43 |
44 | InformationVariable
45 |
46 |
47 |
48 | String
49 |
50 |
51 | WhatIf
52 |
53 |
54 |
55 | SwitchParameter
56 |
57 |
58 | Confirm
59 |
60 |
61 |
62 | SwitchParameter
63 |
64 |
65 |
66 | Disable-Device
67 |
68 | Name
69 |
70 | Specifies the name of the a device.
71 |
72 | String
73 |
74 |
75 | Class
76 |
77 |
78 |
79 | Nullable`1[DeviceClass]
80 |
81 |
82 | InformationAction
83 |
84 |
85 |
86 | ActionPreference
87 |
88 |
89 | InformationVariable
90 |
91 |
92 |
93 | String
94 |
95 |
96 | WhatIf
97 |
98 |
99 |
100 | SwitchParameter
101 |
102 |
103 | Confirm
104 |
105 |
106 |
107 | SwitchParameter
108 |
109 |
110 |
111 |
112 |
113 | InstanceId
114 |
115 | Specifies a unique instance IDs of a device.
116 |
117 | String
118 |
119 | String
120 |
121 |
122 |
123 |
124 |
125 | Class
126 |
127 |
128 |
129 | Nullable`1[DeviceClass]
130 |
131 | Nullable`1[DeviceClass]
132 |
133 |
134 |
135 |
136 |
137 | InformationAction
138 |
139 |
140 |
141 | ActionPreference
142 |
143 | ActionPreference
144 |
145 |
146 |
147 |
148 |
149 | InformationVariable
150 |
151 |
152 |
153 | String
154 |
155 | String
156 |
157 |
158 |
159 |
160 |
161 | WhatIf
162 |
163 |
164 |
165 | SwitchParameter
166 |
167 | SwitchParameter
168 |
169 |
170 |
171 |
172 |
173 | Confirm
174 |
175 |
176 |
177 | SwitchParameter
178 |
179 | SwitchParameter
180 |
181 |
182 |
183 |
184 |
185 | Name
186 |
187 | Specifies the name of the a device.
188 |
189 | String
190 |
191 | String
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 | string
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 | DeviceManagementLib.Device
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 | -------------------------- Example 1 --------------------------
242 |
243 | PS C:\>
244 |
245 | PS C:\> Disable-Device -InstanceId 'VMBUS\{0EC56B6F-245E-4EA5-92FD-683D208E05C9}\5&296C0F0E&0&{0EC56B6F-245E-4EA5-92FD-683D208E05C9}'
246 |
247 | This command disables the device identified by the Instance ID.
248 |
249 |
250 | Confirm
251 | Are you sure you want to perform this action?
252 | Performing the operation "Disable Device" on target "Microsoft Virtual Machine Bus Network Adapter #3".
253 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 | Enable-Device
271 |
272 | Enables a PnP device.
273 |
274 |
275 |
276 |
277 | Enable
278 | Device
279 |
280 |
281 |
282 | The Enable-Device cmdlet disables a Plug and Play (PnP) device. You must use an Administrator account to enable a device.
283 |
284 |
285 |
286 | Enable-Device
287 |
288 | InstanceId
289 |
290 | Specifies a unique instance IDs of a device.
291 |
292 | String
293 |
294 |
295 | Class
296 |
297 |
298 |
299 | Nullable`1[DeviceClass]
300 |
301 |
302 | InformationAction
303 |
304 |
305 |
306 | ActionPreference
307 |
308 |
309 | InformationVariable
310 |
311 |
312 |
313 | String
314 |
315 |
316 | WhatIf
317 |
318 |
319 |
320 | SwitchParameter
321 |
322 |
323 | Confirm
324 |
325 |
326 |
327 | SwitchParameter
328 |
329 |
330 |
331 | Enable-Device
332 |
333 | Name
334 |
335 | Specifies the name of the a device.
336 |
337 | String
338 |
339 |
340 | Class
341 |
342 |
343 |
344 | Nullable`1[DeviceClass]
345 |
346 |
347 | InformationAction
348 |
349 |
350 |
351 | ActionPreference
352 |
353 |
354 | InformationVariable
355 |
356 |
357 |
358 | String
359 |
360 |
361 | WhatIf
362 |
363 |
364 |
365 | SwitchParameter
366 |
367 |
368 | Confirm
369 |
370 |
371 |
372 | SwitchParameter
373 |
374 |
375 |
376 |
377 |
378 | InstanceId
379 |
380 | Specifies a unique instance IDs of a device.
381 |
382 | String
383 |
384 | String
385 |
386 |
387 |
388 |
389 |
390 | Class
391 |
392 |
393 |
394 | Nullable`1[DeviceClass]
395 |
396 | Nullable`1[DeviceClass]
397 |
398 |
399 |
400 |
401 |
402 | InformationAction
403 |
404 |
405 |
406 | ActionPreference
407 |
408 | ActionPreference
409 |
410 |
411 |
412 |
413 |
414 | InformationVariable
415 |
416 |
417 |
418 | String
419 |
420 | String
421 |
422 |
423 |
424 |
425 |
426 | WhatIf
427 |
428 |
429 |
430 | SwitchParameter
431 |
432 | SwitchParameter
433 |
434 |
435 |
436 |
437 |
438 | Confirm
439 |
440 |
441 |
442 | SwitchParameter
443 |
444 | SwitchParameter
445 |
446 |
447 |
448 |
449 |
450 | Name
451 |
452 | Specifies the name of the a device.
453 |
454 | String
455 |
456 | String
457 |
458 |
459 |
460 |
461 |
462 |
463 |
464 |
465 | string
466 |
467 |
468 |
469 |
470 |
471 |
472 |
473 |
474 |
475 | DeviceManagementLib.Device
476 |
477 |
478 |
479 |
480 |
481 |
482 |
483 |
484 |
485 |
486 |
487 |
488 |
489 |
490 |
491 |
492 |
493 |
494 |
495 |
496 |
497 |
498 |
499 |
500 |
501 |
502 |
503 |
504 |
505 |
506 | -------------------------- Example 1 --------------------------
507 |
508 | PS C:\>
509 |
510 | PS C:\> Enable-Device -Name 'System Speaker'
511 |
512 | This command enables the system speaker.
513 |
514 |
515 | Confirm
516 | Are you sure you want to perform this action?
517 | Performing the operation "Enable Device" on target "System speaker".
518 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
519 |
520 |
521 |
522 |
523 |
524 |
525 |
526 |
527 |
528 |
529 | -------------------------- Example 2 --------------------------
530 |
531 | PS C:\>
532 |
533 | PS C:\> Get-Device | Where-Object Name -like *Floppy* | Enable-Device
534 |
535 | This command enables all devices having names like *Floppy*.
536 |
537 |
538 | Confirm
539 | Are you sure you want to perform this action?
540 | Performing the operation "Enable Device" on target "Standard floppy disk controller".
541 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
542 |
543 | Confirm
544 | Are you sure you want to perform this action?
545 | Performing the operation "Enable Device" on target "Floppy disk drive".
546 | [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
547 |
548 |
549 |
550 |
551 |
552 |
553 |
554 |
555 |
556 |
557 | -------------------------- Example 3 --------------------------
558 |
559 | PS C:\>
560 |
561 | Get-Device -Class GUID_DEVCLASS_NET | Where-Object { -not $_.IsEnabled } | Enable-Device -Confirm:$false
562 |
563 | This command enables all disabled network adapters.
564 |
565 |
566 |
567 |
568 |
569 |
570 |
571 |
572 |
573 |
574 |
575 |
576 |
577 |
578 |
579 |
580 |
581 |
582 |
583 | Get-Device
584 |
585 | Returns information about PnP devices.
586 |
587 |
588 |
589 |
590 | Get
591 | Device
592 |
593 |
594 |
595 | The Get-Device cmdlet returns basic information about Plug and Play (PnP) devices. The values returned are common to all devices.
596 |
597 |
598 |
599 | Get-Device
600 |
601 | InstanceId
602 |
603 | Looks for the device with this Instance ID.
604 |
605 | String
606 |
607 |
608 | Class
609 |
610 | Returns all devices of the given class.
611 |
612 | Nullable`1[DeviceClass]
613 |
614 |
615 | ShowNonpresentPresentDevices
616 |
617 | Also shows hidden devices that are not visible in the Windows Device Manager without enabling "Show hidden devices.
618 |
619 | SwitchParameter
620 |
621 |
622 | InformationAction
623 |
624 |
625 |
626 | ActionPreference
627 |
628 |
629 | InformationVariable
630 |
631 |
632 |
633 | String
634 |
635 |
636 |
637 | Get-Device
638 |
639 | Name
640 |
641 | Looks for the device with the given name
642 |
643 | String
644 |
645 |
646 | Class
647 |
648 | Returns all devices of the given class.
649 |
650 | Nullable`1[DeviceClass]
651 |
652 |
653 | ShowNonpresentPresentDevices
654 |
655 | Also shows hidden devices that are not visible in the Windows Device Manager without enabling "Show hidden devices.
656 |
657 | SwitchParameter
658 |
659 |
660 | InformationAction
661 |
662 |
663 |
664 | ActionPreference
665 |
666 |
667 | InformationVariable
668 |
669 |
670 |
671 | String
672 |
673 |
674 |
675 |
676 |
677 | InstanceId
678 |
679 | Looks for the device with this Instance ID.
680 |
681 | String
682 |
683 | String
684 |
685 |
686 |
687 |
688 |
689 | Class
690 |
691 | Returns all devices of the given class.
692 |
693 | Nullable`1[DeviceClass]
694 |
695 | Nullable`1[DeviceClass]
696 |
697 |
698 |
699 |
700 |
701 | ShowNonpresentPresentDevices
702 |
703 | Also shows hidden devices that are not visible in the Windows Device Manager without enabling "Show hidden devices.
704 |
705 | SwitchParameter
706 |
707 | SwitchParameter
708 |
709 |
710 |
711 |
712 |
713 | InformationAction
714 |
715 |
716 |
717 | ActionPreference
718 |
719 | ActionPreference
720 |
721 |
722 |
723 |
724 |
725 | InformationVariable
726 |
727 |
728 |
729 | String
730 |
731 | String
732 |
733 |
734 |
735 |
736 |
737 | Name
738 |
739 | Looks for the device with the given name
740 |
741 | String
742 |
743 | String
744 |
745 |
746 |
747 |
748 |
749 |
750 |
751 |
752 | string
753 |
754 |
755 |
756 |
757 |
758 |
759 |
760 |
761 |
762 |
763 |
764 | DeviceManagementLib.Device
765 |
766 |
767 |
768 |
769 |
770 |
771 |
772 |
773 |
774 |
775 |
776 |
777 |
778 |
779 |
780 |
781 |
782 |
783 | -------------------------- Example 1 --------------------------
784 |
785 | PS C:\>
786 |
787 | PS C:\> Get-Device -ShowNonpresentPresentDevices
788 |
789 | Gets all devices, also the hidden ones.
790 |
791 |
792 | Name Enabled Class InstanceId
793 | ---- ------- ----- ----------
794 | Browser Support Driver True GUID_DEVCLASS_LEGACYDRIVER ROOT\LEGACY_BOWSER\0000
795 | WAN Miniport (IKEv2) True GUID_DEVCLASS_NET ROOT\MS_AGILEVPNMINIPORT\0000
796 | msisadrv True GUID_DEVCLASS_LEGACYDRIVER ROOT\LEGACY_MSISADRV\0000
797 | Communications Port (COM2) True GUID_DEVCLASS_PORTS ACPI\PNP0501\2
798 | Security Driver True GUID_DEVCLASS_LEGACYDRIVER ROOT\LEGACY_SECDRV\0000
799 | CD/DVD File System Reader True GUID_DEVCLASS_LEGACYDRIVER ROOT\LEGACY_CDFS\0000
800 | ...
801 |
802 |
803 |
804 |
805 |
806 |
807 |
808 |
809 |
810 |
811 | -------------------------- Example 2 --------------------------
812 |
813 | PS C:\>
814 |
815 | PS C:\> Get-Device -Name 'System Speaker'
816 |
817 | Gets only the System Speaker device.
818 |
819 |
820 | Name Enabled Class InstanceId
821 | ---- ------- ----- ----------
822 | System speaker True GUID_DEVCLASS_SYSTEM ACPI\PNP0800\4&215D0F95&0
823 |
824 |
825 |
826 |
827 |
828 |
829 |
830 |
831 |
832 |
833 | -------------------------- Example 3 --------------------------
834 |
835 | PS C:\>
836 |
837 | PS C:\> Get-Device -InstanceId 'ACPI\GENUINEINTEL_-_INTEL64_FAMILY_6_MODEL_45_-________INTEL(R)_CORE(TM)_I7-3930K_CPU_@_3.20GHZ\_1'
838 |
839 | Gets the device by the Instance ID.
840 |
841 |
842 | Name Enabled Class InstanceId
843 | ---- ------- ----- ----------
844 | Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz True GUID_DEVCLASS_PROCESSOR ACPI\GENUINEINTEL_-_INTEL64_FAMILY_6_MODEL_45_-________INTEL(R)_CORE(TM)_I7-3930K_CPU_@_3.20GHZ\_1
845 |
846 |
847 |
848 |
849 |
850 |
851 |
852 |
853 |
854 |
855 | -------------------------- Example 4 --------------------------
856 |
857 | PS C:\>
858 |
859 | PS C:\> Get-Device | Where-Object { -not $_.IsEnabled }
860 |
861 | Get all disabled devices.
862 |
863 |
864 | Name Enabled Class InstanceId
865 | ---- ------- ----- ----------
866 | SDA Standard Compliant SD Host Controller False 4294967295 ROOT\SDHOST\0000
867 |
868 |
869 |
870 |
871 |
872 |
873 |
874 |
875 |
876 |
877 |
878 |
879 |
880 |
881 |
882 |
883 | Uninstall-Device
884 |
885 | Uninstalls a PnP device.
886 |
887 |
888 |
889 |
890 | Uninstall
891 | Device
892 |
893 |
894 |
895 | The Uninstall-Device cmdlet uninstalls a Plug and Play (PnP) device. You must use an Administrator account to uninstall a device.
896 |
897 |
898 |
899 | Uninstall-Device
900 |
901 | InstanceId
902 |
903 | Specifies a unique instance IDs of a device.
904 |
905 | String
906 |
907 |
908 | Class
909 |
910 |
911 |
912 | Nullable`1[DeviceClass]
913 |
914 |
915 | InformationAction
916 |
917 |
918 |
919 | ActionPreference
920 |
921 |
922 | InformationVariable
923 |
924 |
925 |
926 | String
927 |
928 |
929 | WhatIf
930 |
931 |
932 |
933 | SwitchParameter
934 |
935 |
936 | Confirm
937 |
938 |
939 |
940 | SwitchParameter
941 |
942 |
943 |
944 | Uninstall-Device
945 |
946 | Name
947 |
948 | Specifies the name of the a device.
949 |
950 | String
951 |
952 |
953 | Class
954 |
955 |
956 |
957 | Nullable`1[DeviceClass]
958 |
959 |
960 | InformationAction
961 |
962 |
963 |
964 | ActionPreference
965 |
966 |
967 | InformationVariable
968 |
969 |
970 |
971 | String
972 |
973 |
974 | WhatIf
975 |
976 |
977 |
978 | SwitchParameter
979 |
980 |
981 | Confirm
982 |
983 |
984 |
985 | SwitchParameter
986 |
987 |
988 |
989 |
990 |
991 | InstanceId
992 |
993 | Specifies a unique instance IDs of a device.
994 |
995 | String
996 |
997 | String
998 |
999 |
1000 |
1001 |
1002 |
1003 | Class
1004 |
1005 |
1006 |
1007 | Nullable`1[DeviceClass]
1008 |
1009 | Nullable`1[DeviceClass]
1010 |
1011 |
1012 |
1013 |
1014 |
1015 | InformationAction
1016 |
1017 |
1018 |
1019 | ActionPreference
1020 |
1021 | ActionPreference
1022 |
1023 |
1024 |
1025 |
1026 |
1027 | InformationVariable
1028 |
1029 |
1030 |
1031 | String
1032 |
1033 | String
1034 |
1035 |
1036 |
1037 |
1038 |
1039 | WhatIf
1040 |
1041 |
1042 |
1043 | SwitchParameter
1044 |
1045 | SwitchParameter
1046 |
1047 |
1048 |
1049 |
1050 |
1051 | Confirm
1052 |
1053 |
1054 |
1055 | SwitchParameter
1056 |
1057 | SwitchParameter
1058 |
1059 |
1060 |
1061 |
1062 |
1063 | Name
1064 |
1065 | Specifies the name of the a device.
1066 |
1067 | String
1068 |
1069 | String
1070 |
1071 |
1072 |
1073 |
1074 |
1075 |
1076 |
1077 |
1078 | string
1079 |
1080 |
1081 |
1082 |
1083 |
1084 |
1085 |
1086 |
1087 |
1088 | DeviceManagementLib.Device
1089 |
1090 |
1091 |
1092 |
1093 |
1094 |
1095 |
1096 |
1097 |
1098 |
1099 |
1100 |
1101 |
1102 |
1103 |
1104 |
1105 |
1106 |
1107 |
1108 |
1109 |
1110 |
1111 |
1112 |
1113 |
1114 |
1115 |
1116 |
1117 |
1118 |
1119 | -------------------------- Example 1 --------------------------
1120 |
1121 | PS C:\>
1122 |
1123 | PS C:\> Get-Device -Name 'Microsoft Virtual Machine Bus Network Adapter #2' | Uninstall-Device
1124 |
1125 | Confirm
1126 | Are you sure you want to perform this action?
1127 | Performing the operation "Uninstall Device" on target "Microsoft Virtual Machine Bus Network Adapter #2".
1128 | [Y] Yes [A] Yes to All [N] No [L] No to All Suspend [?] Help (default is "Y"): y
1129 |
1130 |
1131 | This command removes the device selected by Get-Device by piping it to Uninstall-Device.
1132 |
1133 |
1134 |
1135 |
1136 |
1137 |
1138 |
1139 |
1140 |
1141 |
1142 | -------------------------- Example 2 --------------------------
1143 |
1144 | PS C:\>
1145 |
1146 | PS C:\> Get-Device -Class GUID_DEVCLASS_NET | Select-Object -First 2 | Uninstall-Device -Confirm:$false -Verbose
1147 |
1148 | DANGEROUS: This command removes the first 2 network adapters without asking for verification.
1149 |
1150 |
1151 | VERBOSE: Performing the operation "Uninstall Device" on target "Microsoft Virtual Machine Bus Network Adapter #2".
1152 | VERBOSE: Performing the operation "Uninstall Device" on target "Microsoft Virtual Machine Bus Network Adapter #3".
1153 |
1154 |
1155 |
1156 |
1157 |
1158 |
1159 |
1160 |
1161 |
1162 |
1163 |
1164 |
1165 |
1166 |
--------------------------------------------------------------------------------
/DeviceManagement/1.3.0/DeviceManagement.format.ps1xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | DeviceManagementLib.Device
7 |
8 | DeviceManager.Engine.Driver
9 |
10 |
11 |
12 |
13 | 30
14 |
15 |
16 |
17 | 17
18 |
19 |
20 |
21 | 12
22 |
23 |
24 |
25 | 14
26 |
27 |
28 |
29 | 13
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 | Description
38 |
39 |
40 | ManufacturerName
41 |
42 |
43 | ProviderName
44 |
45 |
46 | DriverDate
47 |
48 |
49 | DriverVersion
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 | DeviceManagementLib.Device
59 |
60 | DeviceManager.Engine.Device
61 |
62 |
63 |
64 |
65 | 35
66 |
67 |
68 |
69 | 9
70 |
71 |
72 |
73 | 10
74 |
75 |
76 |
77 | 21
78 |
79 |
80 |
81 | 20
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 | Name
90 |
91 |
92 | IsPresent
93 |
94 |
95 | HasProblem
96 |
97 |
98 | InstallState
99 |
100 |
101 | DriverProvider
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
--------------------------------------------------------------------------------
/DeviceManagement/1.3.0/DeviceManagement.psd1:
--------------------------------------------------------------------------------
1 | @{
2 | RootModule = 'DeviceManagementCmdlet.dll'
3 | ModuleVersion = '1.3.0'
4 | GUID = 'fc6a72f2-57ea-4066-8489-a76ca0ce4fa2'
5 | Author = 'Ricardo Mendes, Tobias Weltner'
6 | CompanyName = 'https://powershell.one'
7 | Copyright = '2015'
8 | Description = 'Windows PowerShell Module for managing devices'
9 | FormatsToProcess = @('DeviceManagement.format.ps1xml')
10 | PrivateData = @{
11 | PSData = @{
12 | # Tags = @()
13 | LicenseUri = 'https://en.wikipedia.org/wiki/MIT_License'
14 | ProjectUri = 'https://github.com/TobiasPSP/Modules.DeviceManagement'
15 | # IconUri = ''
16 | ReleaseNotes = 'Initial Release based on work performed by Ricardo Mendes (MSFT)'
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/DeviceManagement/1.3.0/DeviceManagementCmdlet.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/TobiasPSP/Modules.DeviceManagement/4eaa2b6d89c8ae7eea6a8d9d2df39c5d37488a2e/DeviceManagement/1.3.0/DeviceManagementCmdlet.dll
--------------------------------------------------------------------------------
/DeviceManagement/1.3.0/DeviceManagementEngine.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/TobiasPSP/Modules.DeviceManagement/4eaa2b6d89c8ae7eea6a8d9d2df39c5d37488a2e/DeviceManagement/1.3.0/DeviceManagementEngine.dll
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2020 Dr. Tobias Weltner
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Modules.DeviceManagement
2 | PowerShell module to manage devices and drivers
3 |
4 | This module is based on work published here by Ricardo Mendes (MSFT): https://gallery.technet.microsoft.com/device-management-7fad2388
5 | Raimund Andree has forked this work and published his source code here: https://github.com/AutomatedLab/DeviceManagement
6 |
7 | Since the original TechNet gallery is deprecated soon and this is not accessible via a PowerShell module available on the PowerShell Gallery, I decided to publish one.
8 |
9 | I decided to base the module on the *original* code published 2012 because it was downloaded 40K+ vs. 6K+. The last update of the derived work was 2018 so both can be considered either done or orphaned.
10 |
11 | The derived work from Raimund has made substantial breaking changes in an effort to combine cmdlet functionality. Unfortunately, it turned out that the new (and better) cmdlets do not work for non-admins at all anymore. In the original approach, read-only cmdlets like Get-Driver worked well for non-admins.
12 |
13 | Hopefully I will be able to restore the original c# source codes and continue to improve the code.
14 |
15 | You can download and install the module like this:
16 |
17 | `Install-Module -Name DeviceManagement -Scope CurrentUser -Force`
18 |
19 | To see the list of commands, run:
20 |
21 | `Get-Command -Module DeviceManagement`
22 |
23 | To get a list of drivers, run:
24 |
25 | `Get-Driver | Out-GridView`
26 |
27 | `Get-Device | Out-GridView`
28 |
29 |
--------------------------------------------------------------------------------