diff --git a/README.md b/README.md index 4ca62aa..efbd1f4 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,59 @@ -# IRext decode algorithm porting examples +# IRext Win32 Example -This repository contails various of example which show you how to port IRext decode algorithm to different OS and platforms +A Windows desktop example demonstrating the IRext infrared decoder library. -Version 1.5.0 +## Overview -- Android example -- Java web example with JNI -- Windows example -- Arduino example (TBD) +IRext is an open-source infrared remote control library. This example provides a command-line application to test IR decoding functionality on Windows. + +## Features + +- Decode IR binary files for air conditioners (AC) +- Decode IR binary files for TV devices +- Query supported AC modes, wind speeds, swing options, and temperature ranges +- Generate IR timing data for remote control signals + +## Requirements + +- Operating System: Windows 10 or later +- IDE: Visual Studio 2019 or later +- Build Tools: MSVC v142 (VS2019) or v143 (VS2022) + +## Building + +1. Open win32-example/IRextWin32Example.sln in Visual Studio. + +2. If you encounter build error MSB8020 (Platform Toolset not found), retarget the solution: + - Right-click the solution in Solution Explorer + - Select Retarget solution + - Choose an installed Windows SDK and Platform Toolset + +3. Select the desired configuration (Debug or Release) and platform (x86 or x64). + +4. Build the solution (Ctrl+Shift+B or Build > Build Solution). + +## Usage + +1. Run the compiled executable from the command line. +2. The program will prompt you to input key codes to simulate remote control actions. +3. Key code reference: https://site.irext.net/doc#keymap +4. Enter 99 to exit the program. + +### Example Key Codes + +| Key Code | Function | +|----------|----------| +| 14 | Query supported modes | +| 15 | Query supported wind speeds | +| 16 | Query temperature range | +| 99 | Exit program | + +## Related Links + +- IRext Official Site: https://irext.net +- IRext Documentation: https://site.irext.net/doc +- IRext GitHub: https://github.com/irext + +## License + +Please refer to the IRext repository for license information. diff --git a/win32-example/DecodeTestWin.cpp b/win32-example/DecodeTestWin.cpp index 06d26b8..605539d 100644 --- a/win32-example/DecodeTestWin.cpp +++ b/win32-example/DecodeTestWin.cpp @@ -261,7 +261,7 @@ static INT8 decode_as_tv(char *file_name, UINT8 ir_hex_encode) if (1 == first_time) { printf("Please input valid key code " - "(Key code could be referenced from https://irext.net/doc#keymap) : \n"); + "(Key code could be referenced from https://site.irext.net/doc#keymap) : \n"); first_time = 0; } else diff --git a/win32-example/README.md b/win32-example/README.md new file mode 100644 index 0000000..982eb24 Binary files /dev/null and b/win32-example/README.md differ diff --git a/win32-example/ReadMe.txt b/win32-example/ReadMe.txt deleted file mode 100644 index ea4d203..0000000 --- a/win32-example/ReadMe.txt +++ /dev/null @@ -1,39 +0,0 @@ -======================================================================== - 控制台应用程序:DecodeTestWin 项目概述 -======================================================================== - -应用程序向导已为您创建了此 DecodeTestWin 应用程序。 - -本文件概要介绍组成 DecodeTestWin 应用程序的每个文件的内容。 - - -DecodeTestWin.vcxproj - 这是使用应用程序向导生成的 VC++ 项目的主项目文件,其中包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。 - -DecodeTestWin.vcxproj.filters - 这是使用“应用程序向导”生成的 VC++ 项目筛选器文件。它包含有关项目文件与筛选器之间的关联信息。在 IDE 中,通过这种关联,在特定节点下以分组形式显示具有相似扩展名的文件。例如,“.cpp”文件与“源文件”筛选器关联。 - -DecodeTestWin.cpp - 这是主应用程序源文件。 - -///////////////////////////////////////////////////////////////////////////// -应用程序向导创建了下列资源: - -DecodeTestWin.rc - 这是程序使用的所有 Microsoft Windows 资源的列表。它包括 RES 子目录中存储的图标、位图和光标。此文件可以直接在 Microsoft Visual C++ 中进行编辑。 - -Resource.h - 这是标准头文件,可用于定义新的资源 ID。Microsoft Visual C++ 将读取并更新此文件。 - -///////////////////////////////////////////////////////////////////////////// -其他标准文件: - -StdAfx.h, StdAfx.cpp - 这些文件用于生成名为 DecodeTestWin.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。 - -///////////////////////////////////////////////////////////////////////////// -其他注释: - -应用程序向导使用“TODO:”注释来指示应添加或自定义的源代码部分。 - -/////////////////////////////////////////////////////////////////////////////