using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace AppCallWin32Api
{
public partial class FormTest : Form
{
string title = getTitle();
public FormTest()
{
InitializeComponent();
}
/// <summary>
/// 开启计时器
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnStrat_Click(object sender, EventArgs e)
{
this.tmrOne.Start();
}
/// <summary>
/// 关闭计时器
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnStop_Click(object sender, EventArgs e)
{
this.tmrOne.Stop();
}
private void tmrOne_Tick(object sender, EventArgs e)
{
string temp = getTitle();
if (!title.Equals(temp))
{
title = temp;
this.lsbContent.Items.Add(title);
}
}
[DllImport("user32.dll")]
public extern static int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount);
[DllImport("user32.dll")]
public extern static IntPtr GetForegroundWindow();
/// <summary>
/// 获取标题的静态方法
/// </summary>
/// <returns></returns>
static string getTitle()
{
StringBuilder str = new StringBuilder(512);
//获取当前运行的应用窗体的标题
GetWindowText(GetForegroundWindow(), str, str.Capacity);
//将标题返回
return str.ToString();
}
}
}
C#调用windows api 窗体部分
最新推荐文章于 2022-11-25 15:06:27 发布