C#版:
using System;
using System.Collections.Generic;
using System.Text;
namespace swapMouseButton2
{
class Program
{
private const int SM_SWAPBUTTON = 23;
[System.Runtime.InteropServices.DllImport("user32.dll")]
private extern static bool SwapMouseButton(bool fSwap);
[System.Runtime.InteropServices.DllImport("user32.dll")]
private extern static bool GetSystemMetrics(int nIndex);
static void Main(string[] args)
{
SwapMouseButton(!GetSystemMetrics(SM_SWAPBUTTON));
}
}
}
C++版:
#include <windows.h>
#include <stdio.h>
int WINAPI WinMain(
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
LPSTR lpCmdLine, // command line
int nCmdShow // show state
)
{
BOOL bSwapped = ::GetSystemMetrics(SM_SWAPBUTTON);
::SwapMouseButton(! bSwapped);
return 0;
}
很明显两者都是通过调用windows的API。编辑后给EXE文件新建一个快捷方式,如取名为swap(您也可以保留后缀名),把快捷方式拷贝到用户变量定位文件路径下,必要时运行里输入"swap"就OK了。