cdiskinactivityimpdrvnt.cpp
来自「PGP8.0源码 请认真阅读您的文件包然后写出其具体功能」· C++ 代码 · 共 80 行
CPP
80 行
/*____________________________________________________________________________
Copyright (C) 2002 PGP Corporation
All rights reserved.
$Id: CDiskInactivityImpDrvNT.cpp,v 1.6 2002/08/06 20:09:31 dallen Exp $
____________________________________________________________________________*/
#include "pgpClassesConfig.h"
#include "CDiskInactivityImpDrvNT.h"
_USING_PGP
_UNNAMED_BEGIN
// Static variables
const WCHAR *kPGPsdkDeviceName = L"PGPsdkDriver";
_UNNAMED_END
// Class CDiskInactivityImpDrvNT member functions
CDiskInactivityImpDrvNT::CDiskInactivityImpDrvNT()
{
Status() = mPGPsdkDevice.Status();
}
CComboError
CDiskInactivityImpDrvNT::AttachToDriver()
{
CComboError error;
if (!mPGPsdkDevice.IsAttached())
{
CUnicodeString sdkName(kPGPsdkDeviceName);
error = sdkName.Status();
if (error.IsntError())
error = sdkName.Prepend(kNTDevicePathPrefix);
if (error.IsntError())
error = mPGPsdkDevice.Attach(sdkName);
if (error.IsntError())
{
error = mPGPsdkDevice.Reference();
if (error.IsError())
mPGPsdkDevice.Detach();
}
}
return error;
}
CComboError
CDiskInactivityImpDrvNT::SendInactivityCommand(
PGPINACTIVITYSTRUCT& pgpIS) const
{
CComboError error;
error = mPGPsdkDevice.SendIoctlRequest(IOCTL_PGPUTIL_INACTIVITY,
&pgpIS, sizeof(pgpIS), &pgpIS, sizeof(pgpIS), TRUE);
if (error.IsntError())
error.pgpErr = pgpIS.ulError;
return error;
}
void
CDiskInactivityImpDrvNT::Shutdown()
{
if (mPGPsdkDevice.IsAttached())
{
mPGPsdkDevice.Dereference();
mPGPsdkDevice.Detach();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?