<4D F736F F D E4345C6BDCCA84323B1E0B3CCD2AAB5E3D6AED2BB2E646F63>

Similar documents
FY.DOC

untitled

untitled

untitled

C H A P T E R 7 Windows Vista Windows Vista Windows Vista FAT16 FAT32 NTFS NTFS New Technology File System NTFS

新版 明解C++入門編

<313031A4C9BEC7C160BA5DB3E A457BAF4A4BDA769AAA9292E584C53>

nbqw.PDF

概述

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

Microsoft Word - ch04三校.doc

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple

2015 度 第 2 期 批 量 集 中 询 价 采 购 项 目 包 组 A1 台 式 计 算 机 ( 配 置 一 ) 采 购 人 信 息 及 采 购 数 量 序 号 单 位 编 码 采 购 单 位 配 送 地 址 广 东 省 交 通 运 输 高 级 技

海 南 冯 琳 峰 海 南 省 锅 炉 压 力 容 器 与 特 种 设 备 检 验 所 海 南 省 定 安 县 白 蒙 路 47 号 信 XC 内 蒙 古 冯 磊 赤 峰 市 特 种 设 备 检 验 所 内 蒙 古 赤 峰 市 红 山 区 八 里 铺 油 库 路

河 南 蓝 皮 书 文 化 (2008) 网 络 文 学 主 要 是 指 在 网 上 原 创 的 文 学 作 品 作 为 网 络 文 化 的 主 力 部 分, 网 络 文 学 的 发 展 在 近 年 来 势 不 可 挡 作 为 凭 借 新 兴 媒 介 兴 起 的 文 学, 网 络 文 学 与 传 统

21 flash

《將進酒》

Microsoft Office SharePoint Server MOSS Web SharePoint Web SharePoint 22 Web SharePoint Web Web SharePoint Web Web f Lists.asmx Web Web CAML f

1.5招募说明书(草案)

BOOL EnumWindows(WNDENUMPROC lparam); lpenumfunc, LPARAM (Native Interface) PowerBuilder PowerBuilder PBNI 2

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

PowerPoint 簡報

<4D F736F F D20AC4FBDBDA4FBB67DA96CAABA2DA743A67EAFC5AAA95FA7B9BD5A5F2E646F63>

ex

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

年 中 央 国 家 机 关 政 府 采 购 中 心 网 上 竞 价 品 目 表 中 央 国 家 机 关 政 府 采 购 中 心 2016 年 7 月 21 日 - 2 -

第一章 章标题-F2 上空24,下空24

Guava学习之Resources

untitled

Microsoft Word - 01.DOC

51 C 51 isp 10 C PCB C C C C KEIL

untitled

前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii

Microsoft Word - 11.doc

untitled

c_cpp


1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

untitled

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

基于ECO的UML模型驱动的数据库应用开发1.doc

提问袁小兵:

FileMaker 16 ODBC 和 JDBC 指南

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

EJB-Programming-3.PDF

《大话设计模式》第一章

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

untitled

EJB-Programming-4-cn.doc

Microsoft Word - 在VMWare-5.5+RedHat-9下建立本机QTopia-2.1.1虚拟平台a.doc

<ADB6ADB1C25EA8FAA6DB2D4D56432E706466>

Chapter 9: Objects and Classes

ebook39-5

哈尔滨应用职业技术学院2012年教育教学质量报告

untitled

untitled

Visual Basic D 3D

C 1

游戏厅捕鱼技巧_天天酷跑游戏技巧 2048游戏技巧,游戏厅打鱼技巧_

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

Microsoft Word - CIN-DLL.doc

概述

泂 3F MEDICAL

穨文件1

教育部高等学校教学

FileMaker 15 ODBC 和 JDBC 指南

chp6.ppt

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

在挑选合适的 SDK 的时候需要注意, 标准 windows 平台应用选择 FBX SDK VS2015,windows 应用商店和全平台通用的不用考虑 windows 全平台通用的应用是 windows10 新推出的功能, 可以打通 windows phone windows s

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

最新文化产业管理执法全书(一百一十).doc

ebook 86-15

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++;

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

建模与图形思考

epub83-1

全国计算机技术与软件专业技术资格(水平)考试

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

用户大会 论文集2.2.doc

untitled

附 件 : 2009 年 度 国 家 精 品 课 程 名 单 一 本 科 国 家 精 品 课 程 ( 以 学 科 为 序, 共 400 门 ) 序 号 一 级 学 科 二 级 学 科 课 程 名 称 学 校 名 称 负 责 人 1 哲 学 哲 学 类 马 克 思 主 义 伦 理 学 安 徽 师 范

罗 4:12 又 作 受 割 礼 之 人 的 父, 就 是 那 些 不 但 受 割 礼, 并 且 照 我 们 祖 宗 亚 伯 拉 罕, 未 受 割 礼 时 之 信 的 脚 踪 而 行 的 人 一 罗 得 错 误 的 离 别 亚 伯 拉 罕, 渐 渐 挪 移 帐 棚, 直 到 所 多 玛 ( 创 十

ebook12-1

郎 船 安 兩 槳, 儂 舸 動 雙 橈 掃 黛 開 宮 額, 裁 裙 約 楚 腰 乖 期 方 積 思, 臨 醉 欲 拼 嬌 莫 以 採 菱 唱, 欲 羨 秦 台 簫 相 和 歌 辭 王 昭 君 毛 延 壽 畫 欲 通 神, 忍 為 黃 金 不 為 人 馬 上 琵 琶 行 萬 里, 漢 宮 長 有

untitled

3. 反 映 : 4. 五 花 八 门 : 5. 慷 慨 : 6. 参 与 : 7. 慰 劳 : 8. 延 续 : 9. 珍 爱 : 10. 浪 漫 : 三. 找 出 下 列 每 组 词 中 的 近 义 词 或 同 义 词 : 节 日 节 气 节 令 时 节 习 俗 民 俗 仪 式 风 俗 文 献

运用多媒体提升实验教学有效性的研究.doc

说 : 荀 子 极 偏 驳, 只 一 句 性 恶, 大 本 已 失 5 朱 熹 说 : 荀 扬 不 惟 说 性 不 是, 从 头 到 底 皆 不 识 6 采 取 的 都 是 这 种 理 论 框 架 另 一 种 理 论 框 架 始 于 20 世 纪 前 期, 这 便 是 诸 子 学 研 究 的 框 架

bingdian001.com

59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID

相 应 功 能 (5) 再 将 Boy 类 作 为 Girl 类 的 友 元 类, 在 Boy 类 的 某 成 员 函 数 VisitGirl(Girl & ) 中 访 问 Girl 类 的 私 有 成 员, 观 察 编 译 器 给 出 的 信 息 ( 6 ) 删 除 两 个 类 中 的 函 数 V

Chapter 9: Objects and Classes

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

ASP.NET实现下拉框二级联动组件

untitled

Microsoft PowerPoint - L17_Inheritance_v4.pptx

Transcription:

基于 WINCE 平台 C# 编程要点之一 本文主要介绍在基于 Windows CE 平台的英创嵌入式主板下进行 C#(Microsoft Visual Stdio.Net 2005) 应用程序开发时会常常用到的一些功能函数以及开发方法, 这些方法适用于英创采用 WinCE 平台的所有型号嵌入式主板, 包括 EM9000 EM9260 EM9160 等 本文要点包括 : 文件的删除和复制 如何获取存取设备的空间大小 如何重启系统 如何隐藏 / 显示 Windows 任务栏 一 文件的删除和复制 一般来说,C# 在 WinCE 平台上进行文件的删除和复制有两种方法, 下面我们将对这两种方法进行介绍 在介绍之前, 对一种情况要特殊说明一下 : 关于文件的复制, 大家都知道最简便的方法是将源文件直接复制到目标文件, 如果目标文件事先存在, 则直接覆盖 ; 但在 WinCE 的平台上, 由于采用 TFAT 文件系统, 当进行文件覆盖时, 要求系统剩余空间至少大于所需更新的文件大小, 否则文件拷贝时, 系统将报错 所以我们建议, 如果目标文件事先存在, 先删除目标文件, 然后再将源文件复制过去 两种方法的申明均是 : using System.IO; 1) 方法一 : 静态 File 方法 ( 最简单的方法 ) 文件删除 : File.Delete(string path); 文件复制 : File.Copy(string sourcefilename, string destfilename); 2) 方法二 :FileInfo 方法 ( 最灵活的方法 ) 使用这种方法, 每个具体的文件要定义一个 FileInfo 类, 然后通过操作具体的类来进行文件删除 复制或其它操作 下面以一个具体范例来说明 : string sourcefilename, destfilename; sourcefilename = @"\USB Storage\mysourcefile.bin"; // 源文件名及路径

destfilename = @"\NandFlash\mydestfile.bin"; // 目标文件名及路径 FileInfo sourcefile = new System.IO.FileInfo(sourceFileName); FileInfo destfile = new System.IO.FileInfo(destFileName); try if (destfile.exists) destfile. Delete(); // 如果目标文件已经存在, 则删除 sourcefile.copyto(destfilename,true); // 将源文件复制到目标文件 catch(exception ex) MessageBox.Show(ex.Message); 二 获取存储设备的大小信息 很多底层操作的函数,Visual Studio 2005.NET 的 API 库中并没有提供, 这个时候, 我们就要在 C# 开发中调用 Win32 的函数来进行相应的操作 一大批 Win32 底层操作的函数都存在于 cordll.dll 动态链接库中 调用 Win32 的申明 : 在 WinCE 下已经没有了驱动器名的概念, 文件存储设备都是在 WinCE 的根目录下中以目录的形式出现, 可以采用如下方法并调用相应函数来获取存储设备的总的大小和空闲空间的信息 : [DllImport("coredll.dll")] private static extern bool GetDiskFreeSpaceEx(string directoryname, ref long freebytesavailable, ref long totalbytes, ref long totalfreebytes); 调用例子如下 : long freebytes = 0, totalbytes = 0, totalfreebytes = 0; GetDiskFreeSpaceEx("\\Nor Flash", ref freebytes, ref totalbytes, ref totalfreebytes);

string strtotalbytes = "Nor Flash 磁盘空间大小为 :"+totalbytes.tostring()+"bytes"; 三 重启系统函数 很多底层操作的函数,Visual Studio 2005.NET 的 API 库中并没有提供, 这个时候, 我们就要在 C# 开发中调用 Win32 的函数来进行相应的操作 一大批 Win32 底层操作的函数都存在于 cordll.dll 动态链接库中 调用 Win32 的申明 : 调用 cordll.dll 里的 Win32 函数 SetCleanRebootFlag( ) 和 KernelIoControl( ) 可以实现 WINCE 系统重新启动, 定义的代码如下 : [DllImport("Coredll.dll")] extern static int KernelIoControl(int dwiocontrolcode, IntPtr lpinbuf, int ninbufsize, IntPtr lpoutbuf, int noutbufsize, ref int lpbytesreturned); [DllImport("Coredll.dll")] extern static void SetCleanRebootFlag(); 可以写成一个系统重启的函数 : public void HardReset() int IOCTL_HAL_REBOOT = 0x101003C; int bytesreturned = 0; SetCleanRebootFlag(); KernelIoControl(IOCTL_HAL_REBOOT,IntPtr.Zero,0, IntPtr.Zero, 0, ref bytesreturned); 然后在程序里需要重启的地方直接调用 HardReset() 这个函数即可 四 隐藏 / 显示 Windows 任务栏 很多底层操作的函数,Visual Studio 2005.NET 的 API 库中并没有提供, 这个时候, 我

们就要在 C# 开发中调用 Win32 的函数来进行相应的操作 一大批 Win32 底层操作的函数都存在于 cordll.dll 动态链接库中 调用 Win32 的申明 : 很多客户的应用程序需要独占屏幕, 而不需要下方的 Windows 任务栏 因此显示 / 隐藏 Windows 任务栏是一个很实用的功能 这个时候就需要调用 coredll.dll 里的 FindWindow( ) 和 ShowWindow( ) 函数来实现任务栏的显示和隐藏 (Windows 的任务栏实际上也是一个特殊的 Windows 窗口 ) [DllImport("coredll.dll", EntryPoint = "FindWindow")] public static extern int FindWindow( string lpwindowname, string lpclassname ); [DllImport("coredll.dll", EntryPoint = "ShowWindow")] public static extern int ShowWindow( int hwnd, int ncmdshow ); public const int SW_SHOW = 5; public const int SW_HIDE = 0; // 显示窗口常量 // 隐藏窗口常量 下面是一个隐藏 / 显示 Windows 任务栏的小例子 : public Form1() InitializeComponent(); private void button1_click(object sender, EventArgs e) int Hwnd = FindWindow("HHTaskBar", null); if (Hwnd!= 0) ShowWindow(Hwnd, SW_HIDE); // 隐藏任务栏 button2.enabled = true; button1.enabled = false;

private void button2_click(object sender, EventArgs e) int Hwnd = FindWindow("HHTaskBar", null); if (Hwnd!= 0) ShowWindow(Hwnd, SW_SHOW); // 显示任务栏 button1.enabled = true; button2.enabled = false;