相关疑难解决方法(0)

获取CPU温度

我想获得CPU温度.以下是我使用C++和WMI所做的事情.我正在读MSAcpi_ThermalZoneTemperature,但它始终是相同的,根本不是CPU温度.

有没有办法在不必编写驱动程序的情况下获得CPU的实际温度?或者我可以使用任何库吗?先感谢您.

#define _WIN32_DCOM
#include <iostream>
using namespace std;
#include <comdef.h>
#include <Wbemidl.h>

#pragma comment(lib, "wbemuuid.lib")

HRESULT GetCpuTemperature(LPLONG pTemperature)
{
        if (pTemperature == NULL)
                return E_INVALIDARG;

        *pTemperature = -1;
        HRESULT ci = CoInitialize(NULL);
        HRESULT hr = CoInitializeSecurity(NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_DEFAULT, RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, NULL);
        if (SUCCEEDED(hr))
        {
                IWbemLocator *pLocator;
                hr = CoCreateInstance(CLSID_WbemAdministrativeLocator, NULL, CLSCTX_INPROC_SERVER, IID_IWbemLocator, (LPVOID*)&pLocator);
                if (SUCCEEDED(hr))
                {
                        IWbemServices *pServices;
                        BSTR ns = SysAllocString(L"root\\WMI");
                        hr = pLocator->ConnectServer(ns, NULL, NULL, NULL, 0, NULL, NULL, &pServices);
                        pLocator->Release();
                        SysFreeString(ns);
                        if (SUCCEEDED(hr)) …
Run Code Online (Sandbox Code Playgroud)

c++ windows cpu winapi temperature

25
推荐指数
4
解决办法
2万
查看次数

托管C++以形成c#和C++之间的桥梁

我有点生疏,实际上我的C++真的很生疏.从大学一年级开始就没有触及它,所以已经有一段时间了.

无论如何,我正在做与大多数人相反的事情.从C++调用C#代码.我在网上做了一些研究,似乎我需要创建一些托管C++来形成一个桥梁.使用__declspec(dllexport)然后从中创建一个dll并使用整个东西作为包装器.

但我的问题是 - 我真的很难找到例子.我找到了一些基本的东西,有人想将C#版本用于String.ToUpper(),但这是非常基本的,只是一个小代码片段.

任何人都有任何想法,我可以在哪里寻找更具体的东西?注意,我不想使用COM.目标是根本不触及C#代码.

c# clr unmanaged c++-cli

11
推荐指数
2
解决办法
2万
查看次数

从本机C++调用C#,没有/ clr或COM?

之前已经问过这个问题,但我从来没有找到一个真正令人满意的解决方案 -

我有一个用C#编写的类库,我想从遗留的本机C++应用程序中调用它.主机应用程序是真正原生的,在Windows和Linux上编译,它是一个控制台应用程序.那么我怎么能让它调用C#类库,假设在Windows上使用Microsoft .NET,在Linux上使用Mono.

我在Windows上查看了SWIG并使用COM接口包装,但是有一个标准的可识别解决方案可以跨平台工作吗?即,它是通用的,适用于Microsoft .NET和Mono,一次写入使用到处实现.

解决方案应该将完整的类接口从C#域公开到C++域.

类似的问题只关注Windows解决方案,例如 -

在不使用COM的情况下从C++调用C#方法

.net c# c++ mono cross-platform

7
推荐指数
1
解决办法
2763
查看次数

我如何HTML-/URL-编码包含Unicode字符的std :: wstring?

我还有一个问题.如果我有一个std :: wstring看起来像这样:

ドイツ语で検索していてこちらのサイトにたどり着きました.

我怎么可能将它编码为URL-Encoded(%nn,n = 0-9,af):

%E3%83%89%E3%82%A4%E3%83%84%E8%AA%9E%E3%81%A7%E6%A4%9C%E7%B4%A2%E3%81%97%E3 %81%A6%E3%81%84%E3%81%A6%E3%81%93%E3%81%A1%E3%82%89%E3%81%AE%E3%82%B5%E3%82 %A4%E3%83%88%E3%81%AB%E3%81%9F%E3%81%A9%E3%82%8A%E7%9D%80%E3%81%8D%E3%81%BE %E3%81%97%E3%81%9F%E3%80%82

...还有HTML编码(&#nnn(nn);,n = 0-9(?)):

ドイツ语で検索していてこちらのサイトにたどり着きました.

请帮助我,因为我现在完全失去了,甚至不知道从哪里开始.顺便说一句,性能对我来说并不重要.

提前致谢!

html c++ unicode url utf-8

5
推荐指数
1
解决办法
6447
查看次数

标签 统计

c++ ×3

c# ×2

.net ×1

c++-cli ×1

clr ×1

cpu ×1

cross-platform ×1

html ×1

mono ×1

temperature ×1

unicode ×1

unmanaged ×1

url ×1

utf-8 ×1

winapi ×1

windows ×1