Skip to content
This repository has been archived by the owner on Dec 6, 2024. It is now read-only.

PhysicalDiskInfo class #455 #460

Open
wants to merge 259 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
259 commits
Select commit Hold shift + click to select a range
ebde6a1
-Code improvement, work in progress;
Yomodo Jan 31, 2018
0d2ddcc
Code improvement, work in progress.
Yomodo Jan 31, 2018
03230a0
Code improvement, work in progress.
Yomodo Jan 31, 2018
3e5ace4
Code improvement, work in progress.
Yomodo Jan 31, 2018
11fcb92
Code improvement, work in progress.
Yomodo Feb 1, 2018
7077360
Corrected some casing of native members, removed obsolete enum [Flag …
Yomodo Feb 1, 2018
372edf5
Code improvement, work in progress.
Yomodo Feb 1, 2018
f22bc85
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 1, 2018
eeb240a
Code improvement, work in progress.
Yomodo Feb 2, 2018
1de63a0
Code improvement, work in progress.
Yomodo Feb 3, 2018
cc88f4e
Fixed infinite loop.
Yomodo Feb 3, 2018
1b527d2
Code improvement, work in progress.
Yomodo Feb 3, 2018
bc3fd90
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 3, 2018
186dfe9
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 3, 2018
e9b97f6
Update/cleanup of unit tests.
Yomodo Feb 3, 2018
412dd4f
Fixed unit test.
Yomodo Feb 3, 2018
91ba6be
Simplified unit test.
Yomodo Feb 3, 2018
ec1dbf6
Modified method Utils.UnitSizeToText to treat negative values as zero…
Yomodo Feb 4, 2018
c71f8f3
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 4, 2018
2d17d19
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 4, 2018
7529e76
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 4, 2018
8aa4af2
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 4, 2018
70056fa
Initial commit: Network List Manager.
Yomodo Feb 5, 2018
b266b71
Code improvement, work in progress.
Yomodo Feb 5, 2018
63745e5
Completed.
Yomodo Feb 5, 2018
9adaf3f
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 6, 2018
3fc1888
-Fixed NetworkConnectionInfo for .NET 3.5 build;
Yomodo Feb 7, 2018
bfc9041
-Fixed NetworkConnectionInfo for .NET 3.5 build;
Yomodo Feb 7, 2018
9bec491
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 7, 2018
54365b7
Replace properties AdapterID, AdapterName and AdapterDescription with…
Yomodo Feb 7, 2018
36e6068
Merge branch 'NetworkConnection' into PhysicalDriveInfo2
Yomodo Feb 7, 2018
25f172c
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 7, 2018
06f5c9d
Merge branch 'develop' into NetworkConnection
Yomodo Feb 7, 2018
db19425
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 7, 2018
f07a2e5
Merge branch 'develop' into NetworkConnection
Yomodo Feb 7, 2018
b81c6d9
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 7, 2018
bcc103f
NetStatistics
Yomodo Feb 9, 2018
faae479
-Fixed compile error;
Yomodo Feb 9, 2018
1ffa744
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 9, 2018
31348cd
Implemented ServerStatisticsInfo.
Yomodo Feb 9, 2018
cc73f0a
Code improvement, work in progress.
Yomodo Feb 10, 2018
b21b288
Added class WorkstationStatisticsInfo.
Yomodo Feb 10, 2018
66d358b
Merge branch 'NetStatistics' into NetworkConnection
Yomodo Feb 10, 2018
86543f3
Fixed project file.
Yomodo Feb 10, 2018
0d496c0
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 10, 2018
f7255b5
Initial commit, work in progress.
Yomodo Feb 10, 2018
e07bd9b
Code improvement, work in progress.
Yomodo Feb 11, 2018
0b29017
Code improvement.
Yomodo Feb 11, 2018
e606e4c
Merge branch 'NetworkConnection' into PhysicalDriveInfo2
Yomodo Feb 11, 2018
32c9179
Fixed project missing file.
Yomodo Feb 11, 2018
1d07550
Renamed SessionInfoLevel to SessionLevel.
Yomodo Feb 11, 2018
a18e578
Merge branch 'NetworkConnection' into PhysicalDriveInfo2
Yomodo Feb 11, 2018
49e80c2
-Added PhysicalDriveInfo unit tests;
Yomodo Feb 12, 2018
27bae6c
Code improvement, work in progress.
Yomodo Feb 13, 2018
b495c22
Code improvement, work in progress.
Yomodo Feb 13, 2018
1fed847
-Added class Filesystem.StorageDeviceInfo;
Yomodo Feb 14, 2018
3a99019
-Method EnumeratePhysicalDrives now shows CDRom drives;
Yomodo Feb 15, 2018
472869f
Code improvement, work in progress.
Yomodo Feb 16, 2018
3ded2e5
Merge branch 'develop' into NetworkConnection
Yomodo Feb 16, 2018
f0b7b96
Merge branch 'NetworkConnection' into PhysicalDriveInfo2
Yomodo Feb 16, 2018
84c2c4f
Added ProcessContext static class that determine the context of the c…
Yomodo Feb 16, 2018
6dd2364
Merge branch 'ProcessContext2' into NetworkConnection
Yomodo Feb 16, 2018
2f7cf14
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 16, 2018
c7216ce
-Improved method EnumeratePhysicalDrives;
Yomodo Feb 17, 2018
d813fc3
Code improvement, work in progress.
Yomodo Feb 17, 2018
0b5e33b
Merge branch 'develop' into ProcessContext2
Yomodo Feb 17, 2018
ed3f988
Merge branch 'ProcessContext2' into NetworkConnection
Yomodo Feb 17, 2018
68393d1
Merge branch 'NetworkConnection' into PhysicalDriveInfo
Yomodo Feb 17, 2018
6a9ec41
-Added class Filesystem.StorageAdapterInfo;
Yomodo Feb 17, 2018
563736c
Code improvement, work in progress.
Yomodo Feb 19, 2018
2b6b1bb
Merge remote-tracking branch 'origin/CreateFileCore' into PhysicalDri…
Yomodo Feb 19, 2018
9a7773c
-Added method: Filesystem.Device.GetStorageAdapterInfo;
Yomodo Feb 19, 2018
6ec583f
Merge branch 'develop' into ProcessContext2
Yomodo Feb 19, 2018
c1e017e
Merge branch 'develop' into NetworkConnection
Yomodo Feb 19, 2018
9baebd1
Merge branch 'develop' into ProcessContext2
Yomodo Feb 19, 2018
f1a6956
Merge branch 'ProcessContext2' into NetworkConnection
Yomodo Feb 19, 2018
798de4f
Merge branch 'NetworkConnection' into PhysicalDriveInfo2
Yomodo Feb 19, 2018
0ad2b5c
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 19, 2018
cfe2029
Code improvement, work in progress.
Yomodo Feb 19, 2018
99e0fd9
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 20, 2018
0792193
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 20, 2018
a3ef519
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 23, 2018
6fa6a15
Added instance class StoragePartitionInfo, work in progress.
Yomodo Feb 23, 2018
8708852
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 23, 2018
6541b4d
Fixed unit test utils.
Yomodo Feb 23, 2018
4ab39ae
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 23, 2018
59f21b9
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 23, 2018
9e1ddbd
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 24, 2018
f065515
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 24, 2018
c6b50cb
Merge remote-tracking branch 'origin/develop' into PhysicalDriveInfo
Yomodo Feb 24, 2018
df69c54
Merge remote-tracking branch 'origin/develop' into PhysicalDriveInfo
Yomodo Feb 24, 2018
e666700
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 24, 2018
e65caa5
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Feb 25, 2018
ff6a313
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 25, 2018
f86eb4a
-Added StoragePartitionInfo, work in progress;
Yomodo Feb 26, 2018
4579a55
Work in progress.
Yomodo Feb 27, 2018
6255cb9
Merge branch 'develop' into PhysicalDriveInfo2
Yomodo Feb 27, 2018
779560d
-Fixed enum EfiPartitionAttributes;
Yomodo Feb 27, 2018
4df4cc3
Code improvement, work in progress.
Yomodo Feb 27, 2018
3e077bc
Renamed PhysicalDrive to PhysicalDisk.
Yomodo Feb 27, 2018
89429eb
Added more PartitionType enum members. Code improvement, work in prog…
Yomodo Feb 28, 2018
f48d370
Code improvement, work in progress.
Yomodo Feb 28, 2018
f21ea9f
Code improvement, work in progress.
Yomodo Mar 2, 2018
5e33540
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Mar 4, 2018
249f32c
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Mar 4, 2018
0e8d119
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Mar 5, 2018
b285c79
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Mar 12, 2018
afed731
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Mar 25, 2018
362a006
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Apr 15, 2018
fa45301
Renamed members to their original Win32 name.
Yomodo May 9, 2018
6fa6861
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 9, 2018
f2bb4bc
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 9, 2018
7596f74
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 10, 2018
8655c3c
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 10, 2018
b5745fc
Restored missing file.
Yomodo May 10, 2018
b9b8ae1
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 10, 2018
5a0c15a
Corrected unit test files.
Yomodo May 10, 2018
08e8bf0
Corrected unit test files.
Yomodo May 10, 2018
f9d461a
Updated year in headers.
Yomodo May 17, 2018
b870b65
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 23, 2018
c26344e
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 23, 2018
cdaf619
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 24, 2018
78c4b64
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 24, 2018
a14cd90
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 24, 2018
102809b
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 24, 2018
9115a8d
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 25, 2018
500719f
Fixed project file.
Yomodo May 25, 2018
fdbaced
Fixed project file, added missing files.
Yomodo May 25, 2018
3245730
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 25, 2018
84b8d47
Merge branch 'Split_unittests' into PhysicalDriveInfo
Yomodo May 25, 2018
c44771c
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 25, 2018
3162ef0
Fixed duplicate/missing unit test files.
Yomodo May 26, 2018
35caa89
-Modified EnumeratePhysicalDisksCore to exclude mapped network drives;
Yomodo May 26, 2018
015c44a
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 26, 2018
22b36f8
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 29, 2018
0e316a9
Merge branch 'unittest_improvement' into PhysicalDriveInfo
Yomodo May 29, 2018
d6bfbc1
Moved unit tests.
Yomodo May 29, 2018
500f7c4
Moved unit tests.
Yomodo May 29, 2018
524f2bb
Improved unit test code.
Yomodo May 30, 2018
5711592
Improved unit tests.
Yomodo May 30, 2018
eb28891
Merge branch 'unittest_improvement' into PhysicalDriveInfo
Yomodo May 30, 2018
337c502
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 30, 2018
3cbe48c
Fixed unit tests that would fail on a subst.exe created drive mapping.
Yomodo May 30, 2018
84ac7c6
Merge branch 'Codacy_Fixes' into PhysicalDriveInfo
Yomodo May 31, 2018
317a571
Merge branch 'develop' into PhysicalDriveInfo
Yomodo May 31, 2018
2f6829d
Simplified unit test exception testing. (#449) (#450)
Yomodo May 31, 2018
2b287c3
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 1, 2018
d4b401a
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 1, 2018
c5018f4
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 1, 2018
335887f
Implemented #451: Add overloaded method for File.GetSize to retrieve …
Yomodo Jun 1, 2018
3b22003
Merge branch 'File_GetSize' into PhysicalDriveInfo
Yomodo Jun 1, 2018
45036a0
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 1, 2018
cf622d1
Merge branch 'Directory.GetSize' into PhysicalDriveInfo
Yomodo Jun 3, 2018
fef8b1f
Merge branch '#426' into PhysicalDriveInfo
Yomodo Jun 4, 2018
17ea90a
Relocated some files.
Yomodo Jun 4, 2018
9c7e3b3
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 4, 2018
9880aaf
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 5, 2018
81ccc22
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 5, 2018
c9736b2
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 5, 2018
753b5b2
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 5, 2018
03dbdf7
Renamed unit tests.
Yomodo Jun 5, 2018
f10eeeb
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 5, 2018
b2bd3bb
-Fixed some code analysis issues;
Yomodo Jun 5, 2018
e3ddf92
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 5, 2018
b267d50
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 6, 2018
1495359
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 6, 2018
4be026b
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 6, 2018
a20d85f
-Improved PhysicalDiskInfo code;
Yomodo Jun 6, 2018
709b406
Some code improvement.
Yomodo Jun 7, 2018
1e9585e
Fixed failing unit tests.
Yomodo Jun 7, 2018
b8d7218
-Introduced Alphaleonis.Win32.Device namespace;
Yomodo Jun 7, 2018
10cd497
-Moved all native members of Device class to Device namespace;
Yomodo Jun 7, 2018
d635901
Removed obsolete references.
Yomodo Jun 7, 2018
15b9ba3
-Restored SafeHandles namespaces;
Yomodo Jun 8, 2018
cfe4ac9
Fixed method Local.GetVolumeDiskExtents to return valid results.
Yomodo Jun 8, 2018
79e5316
Code improvement, renamed physical disk unit tests.
Yomodo Jun 8, 2018
8bb89a5
-Added Volume.GetVolumeInfo(string volumePath, bool continueOnExcepti…
Yomodo Jun 8, 2018
bb73632
Fixed unit test Volume.GetUniqueVolumeNameForPath to handle mount poi…
Yomodo Jun 8, 2018
28511e3
Merge branch '#456' into PhysicalDriveInfo
Yomodo Jun 9, 2018
fbe3413
Merge branch '#459' into PhysicalDriveInfo
Yomodo Jun 9, 2018
243735c
Updated changelog.
Yomodo Jun 9, 2018
63cc0e1
Code improvement.
Yomodo Jun 9, 2018
34b5a3d
Code improvement.
Yomodo Jun 10, 2018
67420d9
Code improvement.
Yomodo Jun 10, 2018
4796976
Code improvement.
Yomodo Jun 10, 2018
a46184d
Code improvement.
Yomodo Jun 11, 2018
baa4d82
Code improvement.
Yomodo Jun 11, 2018
c74705d
Code improvement.
Yomodo Jun 12, 2018
e3330db
Code improvement, moved some files.
Yomodo Jun 12, 2018
59f77eb
Code improvement.
Yomodo Jun 13, 2018
4c29d63
Code improvement, moved some files.
Yomodo Jun 13, 2018
ed6b0f2
Code improvement.
Yomodo Jun 13, 2018
f5f00e9
Code improvement.
Yomodo Jun 14, 2018
e2f8855
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 14, 2018
5d3a71c
Code improvement.
Yomodo Jun 14, 2018
bc5a676
Dynamic disk code improvement.
Yomodo Jun 15, 2018
f61fa39
Dynamic disk code improvement.
Yomodo Jun 15, 2018
5dcac6b
Code improvement, work in progress.
Yomodo Jun 15, 2018
1a883d8
Code improvement, work in progress.
Yomodo Jun 16, 2018
a8db114
Code improvement, work in progress.
Yomodo Jun 16, 2018
e948a21
Code improvement, work in progress.
Yomodo Jun 16, 2018
5a1dd6f
Code improvement, work in progress.
Yomodo Jun 16, 2018
a7b5a4e
-Code improvement, work in progress;
Yomodo Jun 17, 2018
a9bd9e4
Renamed argument safeHandle to safeFileHandle for consistency.
Yomodo Jun 17, 2018
ae290d8
Code improvement, work in progress.
Yomodo Jun 17, 2018
a4c52b7
Code improvement, work in progress.
Yomodo Jun 17, 2018
e1e5b0a
Code improvement, renamed some unit tests.
Yomodo Jun 17, 2018
c2a3d3c
Code improvement, moved some files.
Yomodo Jun 18, 2018
adebbde
Code improvement.
Yomodo Jun 18, 2018
0f1a1eb
Code improvement, work in progress.
Yomodo Jun 18, 2018
b251ab6
Code improvement, work in progress.
Yomodo Jun 19, 2018
7bff3af
Code improvement.
Yomodo Jun 20, 2018
49a54b8
Code improvement, work in progress.
Yomodo Jun 20, 2018
3ac52a0
Code improvement, cleanup.
Yomodo Jun 20, 2018
7d591a8
Split file.
Yomodo Jun 20, 2018
e417811
-Added method Alphaleonis.Win32.Device.Local.GetDevicePowerState;
Yomodo Jun 21, 2018
df5ca10
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 27, 2018
ec78c6d
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 28, 2018
298ec8c
Update CHANGELOG.md
Yomodo Jun 28, 2018
182ad04
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jun 28, 2018
917e7a3
Merge branch 'CodacyFixes2' into PhysicalDriveInfo
Yomodo Jun 28, 2018
3376044
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 9, 2018
e9234dc
Correct isFolder usage in method GetFileIdInfoCore.
Yomodo Jul 9, 2018
76ef620
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 9, 2018
fc0c49b
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 9, 2018
c69cecb
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 9, 2018
83ad248
Removed obsolete file.
Yomodo Jul 9, 2018
15499d8
Merge branch 'SplitFiles' into PhysicalDriveInfo
Yomodo Jul 9, 2018
948a6c4
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 9, 2018
6fc2e51
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 10, 2018
d581b90
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 10, 2018
88fa47a
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 10, 2018
cb10c3b
Merge branch 'SplitFiles' into PhysicalDriveInfo
Yomodo Jul 10, 2018
e29f340
Merge branch 'SplitFiles' into PhysicalDriveInfo
Yomodo Jul 10, 2018
d8d7ba2
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 10, 2018
90f4e8c
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 10, 2018
9b22cdd
Renamed some solution folders.
Yomodo Jul 10, 2018
b2b8b6a
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 10, 2018
215d3fd
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 11, 2018
be25bd6
Merge branch 'SplitFiles' into PhysicalDriveInfo
Yomodo Jul 11, 2018
7751129
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 11, 2018
e5301dc
-Improved methods Directory.DeleteDirectoryCore and File.DeleteFileCore;
Yomodo Jul 12, 2018
e1e28d7
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 12, 2018
0de9fdf
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 12, 2018
69466c4
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 13, 2018
a719f0e
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 13, 2018
fdeeb7f
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 13, 2018
cbb29d7
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 15, 2018
f42d664
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Jul 31, 2018
8cece0c
Merge branch 'develop' into PhysicalDriveInfo
Yomodo Aug 18, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 7 additions & 7 deletions AlphaFS.Doc/AlphaFS.Doc.shfbproj
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@
<SyntaxFilters>Standard</SyntaxFilters>
<HelpFileVersion>2.2</HelpFileVersion>
<DocumentationSources>
<DocumentationSource sourceFile="..\Bin\$(Configuration)\Net452\AlphaFS.dll" />
<DocumentationSource sourceFile="..\Bin\$(Configuration)\Net452\AlphaFS.xml" />
<DocumentationSource sourceFile="..\Bin\$(Configuration)\Net40\AlphaFS.dll" />
<DocumentationSource sourceFile="..\Bin\$(Configuration)\Net40\AlphaFS.xml" />
</DocumentationSources>
<FooterText>https://github.com/alphaleonis/AlphaFS/</FooterText>
<ShowFeedbackControl>False</ShowFeedbackControl>
Expand All @@ -49,11 +49,11 @@
<NamespaceSummaries>
<NamespaceSummaryItem name="Alphaleonis.Win32.Filesystem" isDocumented="True">The Filesystem namespace contains classes to access and work with the local filesystem. Many of the classes in this namespace are replicas of the ones available in the System.IO namespace, but with added functionality. All methods in this namespace accept long windows unicode paths (i.e. paths starting with &lt;c&gt;\\?\&lt;/c&gt;).
Additional classes and methods are provided to provide more advanced functionality than that of System.IO.</NamespaceSummaryItem>
<NamespaceSummaryItem name="Alphaleonis.Win32.Security" isDocumented="True">This namespace contains classes directly related to security such as authentication, authorization and privilege tokens that may be needed for some file operations. For an example the SE_SECURITY_NAME privilege needs to be held to be able to modify the SACL of any file.</NamespaceSummaryItem>
<NamespaceSummaryItem name="(global)" isDocumented="True" />
<NamespaceSummaryItem name="Alphaleonis.Win32" isDocumented="True">This namespace contains general classes related to the Win32 Api.</NamespaceSummaryItem>
<NamespaceSummaryItem name="Alphaleonis.Win32.Network" isDocumented="True">This namespace contains network related classes.</NamespaceSummaryItem>
</NamespaceSummaries>
<NamespaceSummaryItem name="Alphaleonis.Win32.Security" isDocumented="True">This namespace contains classes directly related to security such as authentication, authorization and privilege tokens that may be needed for some file operations. For an example the SE_SECURITY_NAME privilege needs to be held to be able to modify the SACL of any file.</NamespaceSummaryItem>
<NamespaceSummaryItem name="(global)" isDocumented="True" />
<NamespaceSummaryItem name="Alphaleonis.Win32" isDocumented="True">This namespace contains general classes related to the Win32 Api.</NamespaceSummaryItem>
<NamespaceSummaryItem name="Alphaleonis.Win32.Network" isDocumented="True">The Network namespace contains network related classes.</NamespaceSummaryItem>
<NamespaceSummaryItem name="Alphaleonis.Win32.Device" isDocumented="True">The Device namespace contains device related classes.</NamespaceSummaryItem></NamespaceSummaries>
<HelpFileFormat>HtmlHelp1, Website</HelpFileFormat>
<ComponentConfigurations>
</ComponentConfigurations>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,14 @@ public partial class AlphaFS_BackupFileStreamTest


[TestMethod]
public void AlphaFS_BackupFileStream_InitializeInstance_LocalAndNetwork_Success()
public void AlphaFS_BackupFileStream_CreateInstance_LocalAndNetwork_Success()
{
AlphaFS_BackupFileStream_InitializeInstance(false);
AlphaFS_BackupFileStream_InitializeInstance(true);
AlphaFS_BackupFileStream_CreateInstance_(false);
AlphaFS_BackupFileStream_CreateInstance_(true);
}


private void AlphaFS_BackupFileStream_InitializeInstance(bool isNetwork)
private void AlphaFS_BackupFileStream_CreateInstance_(bool isNetwork)
{
using (var tempRoot = new TemporaryDirectory(isNetwork))
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
/* Copyright (C) 2008-2018 Peter Palotas, Jeffrey Jangli, Alexandr Normuradov
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/

using System;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace AlphaFS.UnitTest
{
public partial class EnumerationTest
{
// Pattern: <class>_<function>_<scenario>_<expected result>


[TestMethod]
public void AlphaFS_Device_EnumeratePhysicalDisks_ReturnsStorageDeviceInfoForDevice()
{
UnitTestConstants.PrintUnitTestHeader(false);

var driveCount = 0;

var physicalDrives = Alphaleonis.Win32.Filesystem.Volume.QueryAllDosDevices().Where(device => device.StartsWith("PhysicalDrive", StringComparison.OrdinalIgnoreCase)).ToArray();

var cdRoms = Alphaleonis.Win32.Filesystem.Volume.QueryAllDosDevices().Where(device => device.StartsWith("CdRom", StringComparison.OrdinalIgnoreCase)).ToArray();

var pDrives = Alphaleonis.Win32.Device.Local.EnumeratePhysicalDisks().OrderBy(pDiskInfo => pDiskInfo.StorageDeviceInfo.DeviceNumber).ThenByDescending(pDiskInfo => pDiskInfo.StorageDeviceInfo.PartitionNumber).ToArray();

var allPhysicalDrives = physicalDrives.Length + cdRoms.Length;


Console.WriteLine("Found: [{0}] physical drives.\n", allPhysicalDrives);

Assert.AreEqual(allPhysicalDrives, pDrives.Length);


foreach (var pDiskInfo in pDrives)
{
Console.WriteLine("#{0:000}\tPhysical Disk: [{1}]", driveCount, pDiskInfo.StorageDeviceInfo.DeviceNumber);

UnitTestConstants.Dump(pDiskInfo);

UnitTestConstants.Dump(pDiskInfo.StorageAdapterInfo, true);

UnitTestConstants.Dump(pDiskInfo.StorageDeviceInfo, true);

UnitTestConstants.Dump(pDiskInfo.StoragePartitionInfo, true);


Assert.IsNotNull(pDiskInfo);

Assert.IsNotNull(pDiskInfo.LogicalDrives);

Assert.IsNotNull(pDiskInfo.VolumeGuids);


// DosDeviceName should be the same for device.

Assert.AreEqual(pDiskInfo.DosDeviceName, pDiskInfo.PhysicalDeviceObjectName);


// PartitionNumber should be 0 for logical drive on dynamic disk.

if (pDiskInfo.StoragePartitionInfo.OnDynamicDisk)
Assert.AreNotEqual(0, pDiskInfo.StorageDeviceInfo.PartitionNumber);

else
{
// PartitionNumber should be -1 for CDRom.

if (pDiskInfo.StorageDeviceInfo.DeviceType == Alphaleonis.Win32.Device.DeviceType.CDRom)
Assert.AreEqual(-1, pDiskInfo.StorageDeviceInfo.PartitionNumber);

// PartitionNumber should be > 0 for logical drive because it is not the device.
else
Assert.AreEqual(0, pDiskInfo.StorageDeviceInfo.PartitionNumber);
}


// TotalSize depends on dynamic disk on device.

if (pDiskInfo.StoragePartitionInfo.OnDynamicDisk)
Assert.AreNotEqual(pDiskInfo.StorageDeviceInfo.TotalSize, pDiskInfo.StoragePartitionInfo.TotalSize);
else
Assert.AreEqual(pDiskInfo.StorageDeviceInfo.TotalSize, pDiskInfo.StoragePartitionInfo.TotalSize);


// Show all partition information.

if (null != pDiskInfo.StoragePartitionInfo && null != pDiskInfo.StoragePartitionInfo.GptPartitionInfo)
foreach (var partition in pDiskInfo.StoragePartitionInfo.GptPartitionInfo)
UnitTestConstants.Dump(partition, true);

if (null != pDiskInfo.StoragePartitionInfo && null != pDiskInfo.StoragePartitionInfo.MbrPartitionInfo)
foreach (var partition in pDiskInfo.StoragePartitionInfo.MbrPartitionInfo)
UnitTestConstants.Dump(partition, true);


driveCount++;

Console.WriteLine();
}


Assert.IsTrue(driveCount > 0, "No physical disks enumerated, but it is expected.");
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
/* Copyright (C) 2008-2018 Peter Palotas, Jeffrey Jangli, Alexandr Normuradov
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/

using System;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace AlphaFS.UnitTest
{
public partial class AlphaFS_PhysicalDiskInfoTest
{
// Pattern: <class>_<function>_<scenario>_<expected result>


[TestMethod]
public void AlphaFS_PhysicalDiskInfo_CreateInstance_UsingDevicePathFromSystemDrive_ReturnsStorageDeviceInfoForDevice()
{
UnitTestConstants.PrintUnitTestHeader(false);

var deviceCount = 0;

var sourceDrive = UnitTestConstants.SysDrive;

var sourceVolume = Alphaleonis.Win32.Filesystem.Volume.GetVolumeGuid(sourceDrive);

var devicePath = new Alphaleonis.Win32.Device.PhysicalDiskInfo(sourceDrive).DevicePath;

Console.WriteLine("#{0:000}\tInput Device Path: [{1}]", ++deviceCount, devicePath);


var pDiskInfo = new Alphaleonis.Win32.Device.PhysicalDiskInfo(devicePath);


UnitTestConstants.Dump(pDiskInfo);

UnitTestConstants.Dump(pDiskInfo.StorageAdapterInfo, true);

UnitTestConstants.Dump(pDiskInfo.StorageDeviceInfo, true);

UnitTestConstants.Dump(pDiskInfo.StoragePartitionInfo, true);


Assert.IsNotNull(pDiskInfo);

Assert.IsNotNull(pDiskInfo.LogicalDrives);

Assert.IsNotNull(pDiskInfo.VolumeGuids);


// DosDeviceName should be the same for device.

Assert.AreEqual(pDiskInfo.DosDeviceName, pDiskInfo.PhysicalDeviceObjectName);

// PartitionNumber should be 0 for device.

Assert.AreEqual(0, pDiskInfo.StorageDeviceInfo.PartitionNumber);


// TotalSize should always match for device.

Assert.AreEqual(pDiskInfo.StorageDeviceInfo.TotalSize, pDiskInfo.StoragePartitionInfo.TotalSize);


// ContainsVolume should find volumes/logical drives.

Assert.IsTrue(pDiskInfo.LogicalDrives.Contains(sourceDrive, StringComparer.OrdinalIgnoreCase));

Assert.IsTrue(pDiskInfo.ContainsVolume(sourceDrive));


Assert.IsTrue(pDiskInfo.VolumeGuids.Contains(sourceVolume, StringComparer.OrdinalIgnoreCase));

Assert.IsTrue(pDiskInfo.ContainsVolume(sourceVolume));


// Show all partition information.

if (null != pDiskInfo.StoragePartitionInfo && null != pDiskInfo.StoragePartitionInfo.GptPartitionInfo)
foreach (var partition in pDiskInfo.StoragePartitionInfo.GptPartitionInfo)
UnitTestConstants.Dump(partition, true);

if (null != pDiskInfo.StoragePartitionInfo && null != pDiskInfo.StoragePartitionInfo.MbrPartitionInfo)
foreach (var partition in pDiskInfo.StoragePartitionInfo.MbrPartitionInfo)
UnitTestConstants.Dump(partition, true);


Console.WriteLine();
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
/* Copyright (C) 2008-2018 Peter Palotas, Jeffrey Jangli, Alexandr Normuradov
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace AlphaFS.UnitTest
{
public partial class AlphaFS_PhysicalDiskInfoTest
{
// Pattern: <class>_<function>_<scenario>_<expected result>


[TestMethod]
public void AlphaFS_PhysicalDiskInfo_CreateInstance_UsingLogicalDrivePath_ReturnsStorageDeviceInfoForVolume()
{
UnitTestConstants.PrintUnitTestHeader(false);

var driveCount = 0;
Alphaleonis.Win32.Device.PhysicalDiskInfo prevDiskInfo = null;

foreach (var driveInfo in System.IO.DriveInfo.GetDrives())
{
// System.UnauthorizedAccessException: (5) Access is denied.
if (driveInfo.DriveType == System.IO.DriveType.Network)
{
Console.WriteLine("#{0:000}\tSkipped Network drive: [{1}]\n", ++driveCount, driveInfo.Name);
continue;
}

if (driveInfo.DriveType == System.IO.DriveType.NoRootDirectory)
{
Console.WriteLine("#{0:000}\tSkipped NoRootDirectory drive: [{1}]\n", ++driveCount, driveInfo.Name);
continue;
}


Console.WriteLine("#{0:000}\tInput Logical Drive Path: [{1}]", ++driveCount, driveInfo.Name);


var pDiskInfo = new Alphaleonis.Win32.Device.PhysicalDiskInfo(driveInfo.Name);

Assert.AreNotEqual(prevDiskInfo, pDiskInfo);

prevDiskInfo = pDiskInfo;


UnitTestConstants.Dump(pDiskInfo);

UnitTestConstants.Dump(pDiskInfo.StorageAdapterInfo, true);

UnitTestConstants.Dump(pDiskInfo.StorageDeviceInfo, true);

UnitTestConstants.Dump(pDiskInfo.StoragePartitionInfo, true);


Assert.IsNotNull(pDiskInfo);

Assert.IsNotNull(pDiskInfo.LogicalDrives);

Assert.IsNotNull(pDiskInfo.VolumeGuids);


// DosDeviceName should be different for logical drive.

Assert.AreNotEqual(pDiskInfo.DosDeviceName, pDiskInfo.PhysicalDeviceObjectName);


// PartitionNumber should be -1 for CDRom.

if (pDiskInfo.StorageDeviceInfo.DeviceType == Alphaleonis.Win32.Device.DeviceType.CDRom)
Assert.AreEqual(-1, pDiskInfo.StorageDeviceInfo.PartitionNumber);

// PartitionNumber should be > 0 for logical drive because it is not the device.
else
Assert.AreNotEqual(0, pDiskInfo.StorageDeviceInfo.PartitionNumber);


Assert.AreEqual(pDiskInfo.StorageDeviceInfo.DeviceNumber, pDiskInfo.StorageAdapterInfo.DeviceNumber);

Assert.AreEqual(pDiskInfo.StorageDeviceInfo.DeviceNumber, pDiskInfo.StoragePartitionInfo.DeviceNumber);


// Show all partition information.

if (null != pDiskInfo.StoragePartitionInfo && null != pDiskInfo.StoragePartitionInfo.GptPartitionInfo)
foreach (var partition in pDiskInfo.StoragePartitionInfo.GptPartitionInfo)
UnitTestConstants.Dump(partition, true);

if (null != pDiskInfo.StoragePartitionInfo && null != pDiskInfo.StoragePartitionInfo.MbrPartitionInfo)
foreach (var partition in pDiskInfo.StoragePartitionInfo.MbrPartitionInfo)
UnitTestConstants.Dump(partition, true);


Console.WriteLine();
}
}
}
}
Loading