我们正在编写一个代码,使用Windows Defender API对C#中的文件进行按需扫描.
[DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
public static extern int WDStatus(out bool pfEnabled);
[DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
public static extern int MpManagerOpen(uint dwReserved, out IntPtr phMpHandle);
[DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
public static extern int MpScanStart(IntPtr hMpHandle, uint ScanType, uint dwScanOptions, IntPtr pScanResources, IntPtr pCallbackInfo, out IntPtr phScanHandle);
[DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
public static extern int MpHandleClose(IntPtr hMpHandle);
private void DoDefenderScan_Click(object sender, EventArgs e)
{
try
{
bool pfEnabled;
int result = WDStatus(out pfEnabled); //Returns the defender status - It's working properly.
ErrorHandler.ThrowOnFailure(result, VSConstants.S_OK); …Run Code Online (Sandbox Code Playgroud) 我在字典中有一些记录,我需要根据创建日期(CDate)和修改日期(MDate)对数据进行排序.在创建记录时,我的CDate将具有当前日期时间,但MDate将是1/1/0001 12:00:00 AM.
这是用于排序的示例数据和代码.
CDate MDate 4/30/2013
4:43:41 PM 4/30/2013 4:46:47 PM 4/30/2013 4:43:28 PM
4/30/2013 4:46:36 PM 4/30
/ 2013年4月4日下午4:43:54
4:46:16 PM 4/30/2013 5:03:13 PM 1/1/0001 12:00:00 AM
码:
FileSchedulerEntities = FileSchedulerEntities
.OrderByDescending(pair => pair.Value.MDate)
.ThenByDescending(pair => pair.Value.CDate)
.ToDictionary(pair => pair.Key, pair => pair.Value);
Run Code Online (Sandbox Code Playgroud)
根据排序,我需要按照这样的降序对数据进行排序.
CDate MDate 4/30/2013
5:03:13 PM 1/1/0001 12:00:00 AM 4/30/2013 4:43:41 PM 4/30/2013
4:46:47 PM 4/30
/ 2013 4/43:28 PM
4/30/2013 4:46:36 PM 4/30/2013 4:43:54 PM 4/30/2013 4:46:16 PM
但上述代码无效.有任何想法吗?