diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 27e97daf..d29b5cf7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,6 +1,7 @@ name: Release CI on: push jobs: + x64_build: runs-on: windows-latest @@ -67,6 +68,41 @@ jobs: name: x86_${{ steps.current-time.outputs.formattedTime }}_pdb path: Bin/Release/*.pdb + arm64ec_build: + runs-on: windows-latest + + steps: + - uses: actions/checkout@v3 + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v1.1.3 + + - name: Run msbuild + run: msbuild -p:configuration=release -p:platform=ARM64EC -p:platformToolset=v143 + + - name: Get current time + uses: josStorer/get-current-time@v2.0.2 + id: current-time + with: + format: YYYYMMDD_HHmmss + utcOffset: "+08:00" + + - name: Move dll file path + run: mv Bin/x64/Release/*.dll Bin/ARM64EC/Release/ + + - name : Upload artifact + uses: actions/upload-artifact@v3 + with: + name: arm64EC_${{ steps.current-time.outputs.formattedTime }}_TrafficMonitor + path: | + Bin/ARM64EC/Release/TrafficMonitor.exe + Bin/ARM64EC/Release/*.dll + + - name : Upload pdb files + uses: actions/upload-artifact@v3 + with: + name: arm64EC_${{ steps.current-time.outputs.formattedTime }}_pdb + path: Bin/ARM64EC/Release/*.pdb # winXP_build: # runs-on: windows-latest diff --git a/OpenHardwareMonitorApi/OpenHardwareMonitorApi.vcxproj b/OpenHardwareMonitorApi/OpenHardwareMonitorApi.vcxproj index 09b5af68..3d87f4c6 100644 --- a/OpenHardwareMonitorApi/OpenHardwareMonitorApi.vcxproj +++ b/OpenHardwareMonitorApi/OpenHardwareMonitorApi.vcxproj @@ -1,10 +1,18 @@  + + Debug + ARM64EC + Debug Win32 + + Release + ARM64EC + Release Win32 @@ -47,6 +55,13 @@ true Unicode + + DynamicLibrary + true + v143 + true + Unicode + DynamicLibrary false @@ -54,6 +69,13 @@ true Unicode + + DynamicLibrary + false + v143 + true + Unicode + @@ -68,9 +90,15 @@ + + + + + + true @@ -82,6 +110,11 @@ $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + + true + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + false $(ProjectDir)..\include;$(IncludePath) @@ -92,6 +125,11 @@ $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + + false + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + Level3 @@ -114,6 +152,18 @@ + + + Level3 + Disabled + _DEBUG;%(PreprocessorDefinitions);OPENHARDWAREMONITOR_EXPORTS + Use + + + + + + Level3 @@ -134,6 +184,17 @@ + + + Level3 + NDEBUG;%(PreprocessorDefinitions);OPENHARDWAREMONITOR_EXPORTS + Use + + + + + + LibreHardwareMonitorLib.dll @@ -155,8 +216,10 @@ Create Create + Create Create Create + Create diff --git a/PluginDemo/PluginDemo.vcxproj b/PluginDemo/PluginDemo.vcxproj index 11769d2e..b634050c 100644 --- a/PluginDemo/PluginDemo.vcxproj +++ b/PluginDemo/PluginDemo.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64EC + Debug Win32 + + Release + ARM64EC + Release Win32 @@ -48,6 +56,13 @@ Unicode Dynamic + + DynamicLibrary + true + v143 + Unicode + Dynamic + DynamicLibrary false @@ -56,6 +71,14 @@ Unicode Dynamic + + DynamicLibrary + false + v143 + true + Unicode + Dynamic + @@ -70,9 +93,15 @@ + + + + + + true @@ -89,11 +118,21 @@ $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)Bin\$(Platform)\$(Configuration)\plugins\ + + true + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)Bin\$(Platform)\$(Configuration)\plugins\ + false $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)Bin\$(Platform)\$(Configuration)\plugins\ + + false + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)Bin\$(Platform)\$(Configuration)\plugins\ + Level3 @@ -146,6 +185,22 @@ false + + + Level3 + true + _DEBUG;PLUGINDEMO_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + true + + + Windows + true + false + + Level3 @@ -166,6 +221,26 @@ false + + + Level3 + true + true + true + NDEBUG;PLUGINDEMO_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + true + + + Windows + true + true + true + false + + @@ -184,9 +259,11 @@ Create + Create Create Create Create + Create diff --git a/TrafficMonitor.sln b/TrafficMonitor.sln index 3f408b38..075ec9cf 100644 --- a/TrafficMonitor.sln +++ b/TrafficMonitor.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.31515.178 +# Visual Studio Version 17 +VisualStudioVersion = 17.7.34031.279 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrafficMonitor", "TrafficMonitor\TrafficMonitor.vcxproj", "{09483BED-B1E9-4827-8120-A18302C84AA8}" ProjectSection(ProjectDependencies) = postProject @@ -14,56 +14,82 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PluginDemo", "PluginDemo\Pl EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug (lite)|ARM64EC = Debug (lite)|ARM64EC Debug (lite)|x64 = Debug (lite)|x64 Debug (lite)|x86 = Debug (lite)|x86 + Debug|ARM64EC = Debug|ARM64EC Debug|x64 = Debug|x64 Debug|x86 = Debug|x86 + Release (lite)|ARM64EC = Release (lite)|ARM64EC Release (lite)|x64 = Release (lite)|x64 Release (lite)|x86 = Release (lite)|x86 + Release|ARM64EC = Release|ARM64EC Release|x64 = Release|x64 Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug (lite)|ARM64EC.ActiveCfg = Debug (lite)|ARM64EC + {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug (lite)|ARM64EC.Build.0 = Debug (lite)|ARM64EC {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug (lite)|x64.ActiveCfg = Debug (lite)|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug (lite)|x64.Build.0 = Debug (lite)|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug (lite)|x86.ActiveCfg = Debug (lite)|Win32 {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug (lite)|x86.Build.0 = Debug (lite)|Win32 + {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug|ARM64EC.ActiveCfg = Debug|ARM64EC + {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug|ARM64EC.Build.0 = Debug|ARM64EC {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug|x64.ActiveCfg = Debug|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug|x64.Build.0 = Debug|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug|x86.ActiveCfg = Debug|Win32 {09483BED-B1E9-4827-8120-A18302C84AA8}.Debug|x86.Build.0 = Debug|Win32 + {09483BED-B1E9-4827-8120-A18302C84AA8}.Release (lite)|ARM64EC.ActiveCfg = Release (lite)|ARM64EC + {09483BED-B1E9-4827-8120-A18302C84AA8}.Release (lite)|ARM64EC.Build.0 = Release (lite)|ARM64EC {09483BED-B1E9-4827-8120-A18302C84AA8}.Release (lite)|x64.ActiveCfg = Release (lite)|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Release (lite)|x64.Build.0 = Release (lite)|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Release (lite)|x86.ActiveCfg = Release (lite)|Win32 {09483BED-B1E9-4827-8120-A18302C84AA8}.Release (lite)|x86.Build.0 = Release (lite)|Win32 + {09483BED-B1E9-4827-8120-A18302C84AA8}.Release|ARM64EC.ActiveCfg = Release|ARM64EC + {09483BED-B1E9-4827-8120-A18302C84AA8}.Release|ARM64EC.Build.0 = Release|ARM64EC {09483BED-B1E9-4827-8120-A18302C84AA8}.Release|x64.ActiveCfg = Release|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Release|x64.Build.0 = Release|x64 {09483BED-B1E9-4827-8120-A18302C84AA8}.Release|x86.ActiveCfg = Release|Win32 {09483BED-B1E9-4827-8120-A18302C84AA8}.Release|x86.Build.0 = Release|Win32 + {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug (lite)|ARM64EC.ActiveCfg = Debug|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug (lite)|x64.ActiveCfg = Debug|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug (lite)|x86.ActiveCfg = Debug|Win32 + {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug|ARM64EC.ActiveCfg = Debug|x64 + {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug|ARM64EC.Build.0 = Debug|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug|x64.ActiveCfg = Debug|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug|x64.Build.0 = Debug|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug|x86.ActiveCfg = Debug|Win32 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Debug|x86.Build.0 = Debug|Win32 + {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release (lite)|ARM64EC.ActiveCfg = Release|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release (lite)|x64.ActiveCfg = Release|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release (lite)|x86.ActiveCfg = Release|Win32 + {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release|ARM64EC.ActiveCfg = Release|x64 + {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release|ARM64EC.Build.0 = Release|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release|x64.ActiveCfg = Release|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release|x64.Build.0 = Release|x64 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release|x86.ActiveCfg = Release|Win32 {C0A42F4A-ABB3-4575-B4D5-CEDD8379AC26}.Release|x86.Build.0 = Release|Win32 + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug (lite)|ARM64EC.ActiveCfg = Debug|ARM64EC + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug (lite)|ARM64EC.Build.0 = Debug|ARM64EC {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug (lite)|x64.ActiveCfg = Debug|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug (lite)|x64.Build.0 = Debug|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug (lite)|x86.ActiveCfg = Debug|Win32 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug (lite)|x86.Build.0 = Debug|Win32 + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug|ARM64EC.ActiveCfg = Debug|ARM64EC + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug|ARM64EC.Build.0 = Debug|ARM64EC {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug|x64.ActiveCfg = Debug|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug|x64.Build.0 = Debug|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug|x86.ActiveCfg = Debug|Win32 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Debug|x86.Build.0 = Debug|Win32 + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release (lite)|ARM64EC.ActiveCfg = Release|ARM64EC + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release (lite)|ARM64EC.Build.0 = Release|ARM64EC {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release (lite)|x64.ActiveCfg = Release|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release (lite)|x64.Build.0 = Release|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release (lite)|x86.ActiveCfg = Release|Win32 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release (lite)|x86.Build.0 = Release|Win32 + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release|ARM64EC.ActiveCfg = Release|ARM64EC + {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release|ARM64EC.Build.0 = Release|ARM64EC {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release|x64.ActiveCfg = Release|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release|x64.Build.0 = Release|x64 {D1CA3ECC-DC32-445A-B734-C4DB08D4BA34}.Release|x86.ActiveCfg = Release|Win32 diff --git a/TrafficMonitor/AboutDlg.cpp b/TrafficMonitor/AboutDlg.cpp index 77e56b40..defdd251 100644 --- a/TrafficMonitor/AboutDlg.cpp +++ b/TrafficMonitor/AboutDlg.cpp @@ -78,7 +78,9 @@ BOOL CAboutDlg::OnInitDialog() version_info += _T(" (For WinXP)"); #endif // COMPILE_FOR_WINXP -#ifdef _M_X64 +#ifdef _M_ARM64EC + version_info += _T(" (Arm64EC)"); +#elif _M_X64 version_info += _T(" (x64)"); #endif diff --git a/TrafficMonitor/TrafficMonitor.vcxproj b/TrafficMonitor/TrafficMonitor.vcxproj index a49ccf6a..b1379d34 100644 --- a/TrafficMonitor/TrafficMonitor.vcxproj +++ b/TrafficMonitor/TrafficMonitor.vcxproj @@ -1,6 +1,10 @@  + + Debug (lite) + ARM64EC + Debug (lite) Win32 @@ -9,10 +13,18 @@ Debug (lite) x64 + + Debug + ARM64EC + Debug Win32 + + Release (lite) + ARM64EC + Release (lite) Win32 @@ -21,6 +33,10 @@ Release (lite) x64 + + Release + ARM64EC + Release Win32 @@ -78,6 +94,13 @@ Unicode Dynamic + + Application + true + v143 + Unicode + Dynamic + Application true @@ -85,6 +108,13 @@ Unicode Dynamic + + Application + true + v143 + Unicode + Dynamic + Application false @@ -93,6 +123,14 @@ Unicode Dynamic + + Application + false + v143 + true + Unicode + Dynamic + Application false @@ -101,6 +139,14 @@ Unicode Dynamic + + Application + false + v143 + true + Unicode + Dynamic + @@ -121,15 +167,27 @@ + + + + + + + + + + + + true @@ -152,6 +210,13 @@ $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)lib\x64;$(OutDir);$(LibraryPath) + + true + + $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)lib\x64;$(OutDir);$(SolutionDir)Bin\x64\$(Configuration)\;$(LibraryPath) + true @@ -159,6 +224,13 @@ $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)lib\x64;$(OutDir);$(LibraryPath) + + true + + $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)lib\x64;$(OutDir);$(SolutionDir)Bin\x64\$(Configuration)\;$(LibraryPath) + false @@ -180,6 +252,13 @@ $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)lib\x64;$(OutDir);$(LibraryPath) + + false + + $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)lib\x64;$(OutDir);$(SolutionDir)Bin\x64\$(Configuration)\;$(LibraryPath) + false @@ -187,6 +266,13 @@ $(ProjectDir)..\include;$(IncludePath) $(SolutionDir)lib\x64;$(OutDir);$(LibraryPath) + + false + + $(SolutionDir)Bin\$(Platform)\$(Configuration)\ + $(ProjectDir)..\include;$(IncludePath) + $(SolutionDir)lib\x64;$(OutDir);$(SolutionDir)Bin\x64\$(Configuration)\;$(LibraryPath) + Use @@ -302,6 +388,43 @@ + + + Use + Level3 + Disabled + _WINDOWS;_DEBUG;%(PreprocessorDefinitions) + true + true + + + Windows + OpenHardwareMonitorApi.lib;%(AdditionalDependencies) + RequireAdministrator + + + false + true + _DEBUG;%(PreprocessorDefinitions) + + + 0x0804 + _DEBUG;%(PreprocessorDefinitions) + $(IntDir);%(AdditionalIncludeDirectories) + + + print_compile_time.bat + + + $(UM_IncludePath);%(AdditionalIncludeDirectories) + + + + + + + + Use @@ -339,6 +462,42 @@ + + + Use + Level3 + Disabled + _WINDOWS;_DEBUG;%(PreprocessorDefinitions);WITHOUT_TEMPERATURE + true + true + + + Windows + %(AdditionalDependencies) + + + false + true + _DEBUG;%(PreprocessorDefinitions) + + + 0x0804 + _DEBUG;%(PreprocessorDefinitions) + $(IntDir);%(AdditionalIncludeDirectories) + + + print_compile_time.bat + + + $(UM_IncludePath);%(AdditionalIncludeDirectories) + + + + + + + + Level3 @@ -466,6 +625,47 @@ + + + Level3 + Use + MaxSpeed + true + true + _WINDOWS;NDEBUG;%(PreprocessorDefinitions) + true + true + + + Windows + true + true + OpenHardwareMonitorApi.lib;%(AdditionalDependencies) + RequireAdministrator + + + false + true + NDEBUG;%(PreprocessorDefinitions) + + + 0x0804 + NDEBUG;%(PreprocessorDefinitions) + $(IntDir);%(AdditionalIncludeDirectories) + + + print_compile_time.bat + + + $(UM_IncludePath);%(AdditionalIncludeDirectories) + + + + + + + + Level3 @@ -507,6 +707,46 @@ + + + Level3 + Use + MaxSpeed + true + true + _WINDOWS;NDEBUG;%(PreprocessorDefinitions);WITHOUT_TEMPERATURE + true + true + + + Windows + true + true + %(AdditionalDependencies) + + + false + true + NDEBUG;%(PreprocessorDefinitions) + + + 0x0804 + NDEBUG;%(PreprocessorDefinitions) + $(IntDir);%(AdditionalIncludeDirectories) + + + print_compile_time.bat + + + $(UM_IncludePath);%(AdditionalIncludeDirectories) + + + + + + + + @@ -664,11 +904,15 @@ Create Create Create + Create Create + Create Create Create Create + Create Create + Create @@ -686,9 +930,13 @@ NotUsing NotUsing NotUsing + NotUsing NotUsing + NotUsing NotUsing + NotUsing NotUsing + NotUsing diff --git a/TrafficMonitor/TrafficMonitor.vcxproj.user b/TrafficMonitor/TrafficMonitor.vcxproj.user index 4dd10010..146246bf 100644 --- a/TrafficMonitor/TrafficMonitor.vcxproj.user +++ b/TrafficMonitor/TrafficMonitor.vcxproj.user @@ -11,4 +11,8 @@ Mixed WindowsLocalDebugger + + Mixed + WindowsLocalDebugger + \ No newline at end of file