C++ 如何在MFC中使用接近传感器(P传感器)类?
我在使用接近传感器类时遇到了这个问题。 最近,我从事了接近传感器(P-Sensor)软件开发。 我从谷歌上找到了一些相关参考资料,例如接近传感器类(网站:msdn.microsoft.com/en-us/library/windows/apps/windows.devices.sensors.proximitysensor.aspx)和示例代码(网站:github.com/microsoft/windows-universal-samples/tree/master/samples/proximitysensor/cpp)。 我试图模仿示例代码,但它不起作用 我知道,首先需要创建运行时api接口。下面的代码是如何创建 接口IProximitySensorStatics并成功。输出打印“0”。 在使用之前,必须通过api GetActivationFactory()激活接口IProximitySensorStaticsC++ 如何在MFC中使用接近传感器(P传感器)类?,c++,mfc,windows-runtime,proximitysensor,C++,Mfc,Windows Runtime,Proximitysensor,我在使用接近传感器类时遇到了这个问题。 最近,我从事了接近传感器(P-Sensor)软件开发。 我从谷歌上找到了一些相关参考资料,例如接近传感器类(网站:msdn.microsoft.com/en-us/library/windows/apps/windows.devices.sensors.proximitysensor.aspx)和示例代码(网站:github.com/microsoft/windows-universal-samples/tree/master/samples/proxim
ComPtr<IProximitySensorStatics> stProximitySensorStatics;
HRESULT hr = GetActivationFactory(HStringReference(RuntimeClass_Windows_Devices_Sensors_ProximitySensor).Get(), &stProximitySensorStatics);
printf("CProximitySensorCtrl::GetActivationFactory stProximitySensorStatics hr = %x", hr);
if (FAILED(hr))
{
printf("GetActivationFactory stProximitySensorStatics failed");
return FALSE;
}
非常感谢。错误代码没有指明这一点,但您是否成功调用以初始化调用线程?是的,我在开始时调用了RoInitialize。错误代码没有指明这一点,但您是否成功调用以初始化调用线程?是的,我在开始时调用了RoInitialize。
ComPtr<IProximitySensor> stProximitySensor;
hr = GetActivationFactory(HStringReference(RuntimeClass_Windows_Devices_Sensors_ProximitySensor).Get(), &stProximitySensor);
printf("CProximitySensorCtrl::GetActivationFactory stProximitySensor hr = %x", hr);
if (FAILED(hr))
{
printf("GetActivationFactory stProximitySensor failed");
return FALSE;
}
HSTRING m_hsString;
hr = stProximitySensorStatics->GetDeviceSelector(&m_hsString);
hr = stProximitySensorStatics->FromId(m_hsString, &stProximitySensor);
printf("FromId hr = %x", hr);
if (FAILED(hr))
{
printf("FromId failed");
return FALSE;
}
if (stProximitySensor == NULL)
{
printf("FromId stProximitySensor = null failed");
return FALSE;
}