-
C# 键盘Ctrl+g控制蜂鸣器播放声音
Visual C#播放声音,运行程序后,操作键盘上的Ctrl+g组合键发出蜂鸣声...这里的拖放声音是蜂鸣声,从音箱里发出,并不是从机箱的蜂鸣器发声。实现的过程和细节代码如下:
//导入 Windows Beep() API 函数
[DllImport("kernel32.dll")]
private static extern bool Beep(int freq, int dur);
// 定义PlaySound()要使用的常数
public const int SND_FILENAME = 0x00020000;
public const int SND_ASYNC = 0x0001;
// 导入 Windows PlaySound() 函数
[DllImport("winmm.dll")]
public static extern bool PlaySound(string pszSound,
int hmod,
int fdwSound);
[STAThread]
static void Main(string[] args)
{
// 使用Ctrl+g发出蜂鸣声
Console.Write("a");
Console.WriteLine("使用Ctrl+g发出蜂鸣声...");
Console.ReadLine();
// 使用 Windows API 发出蜂鸣声
Beep(800, 200);
Console.WriteLine("使用 Windows API 发出蜂鸣声...");
Console.ReadLine();
// 播放bells.wav文件
PlaySound("bells.wav",
0,
SND_FILENAME | SND_ASYNC);
Console.WriteLine("播放bells.wav文件...");
Console.ReadLine();
}
- 2022-05-23 17:14:52下载
- 积分:1
-
C# 在LINQ to XML中将XML文件转换为CSV文件的例子源码
C# 在LINQ to XML中将XML文件转换为CSV文件的例子源码,转换的结果请参考如图所示:
private void button1_Click(object sender, EventArgs e)
{//在LINQ to XML中将XML文件转换为CSV文件
TextReader MyReader = new StringReader(this.textBox1.Text);
XElement MyCustomers= XElement.Load(MyReader);
MyReader.Close();
string MyInfo =
(from MyElement in MyCustomers.Elements("客户")
select
String.Format("{0},{1},{2},{3},{4}",
(string)MyElement.Element("客户ID"),
(string)MyElement.Element("公司名称"),
(string)MyElement.Element("城市") + (string)MyElement.Element("地址"),
(string)MyElement.Element("联系人姓名"),
Environment.NewLine
)
).Take(10).Aggregate(new StringBuilder(),(MySubString, MyString)=>MySubString.Append(MyString),MySubString=>MySubString.ToString());
MessageBox.Show(MyInfo, "信息提示");
}
- 2023-04-08 15:00:04下载
- 积分:1
-
C# 读取SQL Server数据库结构,包括表结构
Visual C# 2012读取SQL Server数据库结构,在SQL2000中可以顺利通过测试,获取到所有的数据库和指定库的数据表,本程序主要针对用户表进行操作,在进行操作时要求用户名为sa密码为空。
- 2022-03-15 16:11:23下载
- 积分:1
-
C# 是行提交方式插入、删除、更新数据库记录
C# 是行提交方式插入、删除、更新数据库记录,本实例小程序主要演示了以行提交方式插入数据库记录、以行提交方式修改数据库记录、以行提交方式删除数据库记录、使用带有列值的Update()方法修改记录、使用带有列值的Delete()方法删除记录、使用带有列值的Insert()方法插入记录,对应的各个功能核心代码如下:
private void button2_Click(object sender, EventArgs e)
{//以行提交方式修改数据库记录(首先以添加新数据源方式新增NorthwindDataSet)
NorthwindDataSet.ShippersRow MyRow;
MyRow = this.northwindDataSet.Shippers.FindByShipperID(1);
MyRow.Phone = "13996060872";
this.shippersTableAdapter.Update(this.northwindDataSet.Shippers);
}
private void button4_Click(object sender, EventArgs e)
{//使用带有列值的Update()方法修改记录
NorthwindDataSetTableAdapters.ShippersTableAdapter MyAdapter =
new MyForm.NorthwindDataSetTableAdapters.ShippersTableAdapter();
MyAdapter.Update("Speedy Express", "13036371686", 1, "Speedy Express", "13996060872");
this.shippersTableAdapter.Fill(this.northwindDataSet.Shippers);
}
private void button3_Click(object sender, EventArgs e)
{//以行提交方式删除数据库记录(首先以添加新数据源方式新增NorthwindDataSet)
Northwi
- 2023-02-24 10:00:04下载
- 积分:1
-
程序守护(进程守护)-源代码C#
程序守护(进程守护)-源代码C#
/*
* 由SharpDevelop创建。
* 用户: zhang
* 日期: 2017/3/18
* 时间: 21:50
* 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
*/
using System;
using System.Diagnostics;
using System.Drawing;
using System.Threading;
using System.Windows.Forms;
namespace CPinfoSafe
{
public sealed class NotificationIcon
{
private NotifyIcon notifyIcon;
private ContextMenu notificationMenu;
DialogResult dr;
#region Initialize icon and menu
public NotificationIcon()
{
notifyIcon = new NotifyIcon();
notificationMenu = new ContextMenu(InitializeMenu());
notifyIcon.DoubleClick += IconDoubleClick;
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(NotificationIcon));
notifyIcon.Icon = (Icon)resources.Get
- 2022-11-01 19:35:03下载
- 积分:1
-
Visual C#创建两个基本的线程(多线程)实例
Visual C#创建两个基本的线程(多线程)实例,为了演示方便,这里把本实例 写成了一个控制台程序,创建两个线程后,通过控制台输出线程信息,演示了两个线程同时工作,下面来看具体代码:
创建两个基本的线程:
Thread thread1 = new Thread(new ThreadStart(Thread1)); //使用自定义方法Thread1声明线程
thread1.Priority = ThreadPriority.Lowest;//设置线程的调度优先级
Thread thread2 = new Thread(new ThreadStart(Thread2)); //使用自定义方法Thread2声明线程
thread1.Start();//开启线程一
thread2.Start();//开启线程二
定义函数向控制台输出线程:
static void Thread1()
{
Console.WriteLine("线程一");
}
输出线程二则可按照上面再创建一个函数,不再列举源码了。
- 2022-03-18 18:55:49下载
- 积分:1
-
C# 在分组查询中使用ROLLUP
C# 在分组查询中使用ROLLUP,/// /// 查询数据库信息
/// /// 方法返回DataTable对象 private DataTable GetEmployee()
{
string P_Str_ConnectionStr = string.Format(//创建数据库连接字符串
@"server=LVSHUANGSHJ;database=db_TomeTwo;uid=sa;pwd=");
string P_Str_SqlStr = string.Format(//创建SQL查询字符串
@"SELECT 所属部门,性别, AVG(工资) AS 平均工资 FROM tb_Employee GROUP BY 所属部门,性别 WITH ROLLUP");
SqlDataAdapter P_SqlDataAdapter = new SqlDataAdapter(//创建数据适配器
P_Str_SqlStr, P_Str_ConnectionStr);
DataTable P_dt = new DataTable();//创建数据表
P_SqlDataAdapter.Fill(P_dt);//填充数据表
return P_dt;//返回数据表
}
- 2022-01-25 22:57:00下载
- 积分:1
-
C#验证码识别程序OCR源码实例
C#验证码识别程序OCR源码实例,程序代码 在Class1.cs中,本程序中将涉及到以下知识点:加载位图,图像反转、分割、取有效区域,识别位图,生成验证码样本等,程序在CMD控制台端运行,先运行CMD命令,然后将本程序编译目录中生成的exe,拖动至cmd窗口中即可运行。
- 2022-01-25 23:27:51下载
- 积分:1
-
C# 判断是否为数值
C# 判断是否为数值,具体来说就是判断学生年龄是否为数值,private List GetStudent()
{
string P_Str_ConnectionStr = string.Format(//创建数据库连接字符串
@"server=WIN-GI7E47AND9RLS;database=db_TomeTwo;uid=sa;pwd=");
string P_Str_SqlStr = string.Format(//创建SQL查询字符串
"SELECT 学生姓名,ISNUMERIC(年龄) FROM tb_Student");
SqlDataAdapter P_SqlDataAdapter = new SqlDataAdapter(//创建数据适配器
P_Str_SqlStr, P_Str_ConnectionStr);
DataTable P_dt = new DataTable();//创建数据表
P_SqlDataAdapter.Fill(P_dt);//填充数据表
List P_str = new List();//创建数据集合
foreach (DataRow item in P_dt.Rows)
{
P_str.Add(new Instance() { 姓名=item[0].ToString(),//添加数据项
年龄 = item[1].ToString() ==
"1" ? "数值" : "非数值" });
}
return P_str;//数据集合
}
- 2022-03-19 05:06:24下载
- 积分:1
-
C# 在程序中使用指针、十字光标、浮动窗口等不安全代码
C# 在程序中使用指针、十字光标、浮动窗口等不安全代码的实例,单击以下按钮会演示出对应功能:
在程序中显示一个浮动帮助窗口
显示等待光标
显示十字光标
对于功能实现,逐一分享源代码如下:在程序中使用指针等不安全代码:
var MyFileName = "C:atlog.txt";
var MyReader = new MyReaderClass(MyFileName);
const int MyBuffSize = 128;
byte[] MyBuffer = new byte[MyBuffSize];
ASCIIEncoding MyEncoder = new ASCIIEncoding();
var MyInfo = MyFileName + "的内容如下:";
while (MyReader.Read(MyBuffer, 0, MyBuffSize) != 0)
MyInfo += "
" + MyEncoder.GetString(MyBuffer);
MessageBox.Show(MyInfo, "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
private void button2_Click(object sender, EventArgs e)
{//在程序中显示一个浮动帮助窗口
Help.ShowPopup(this, "提高程序开发效率、拓展软件应用领域", new Point(300, 350));
}
private void button3_Click(object sender, EventArgs e)
{//显示等待光标
this.Cursor = Cursors.WaitCursor;
}
private void button4_Click(object sender, EventArgs e)
{//显示十字光标
this.Cursor = Cursors.Cross;
}
- 2023-05-20 08:40:02下载
- 积分:1