很简单,不翻译了. If you are using COM components on your .NET code, you might be already aware of the Marshal.ReleaseComObject and Marshal.FinalReleaseComObject, which are used to release the managed reference to Runtime Callable Wrapper (RCW) of the COM ob…
最近需要按顺序打印word.excel.图片,其中有的需要单面打印,有的双面.网上查了很多方法.主要集中在几个方式解决 1.word的print和excel的printout里设置单双面 2.printdocument里的printsettings的duplex设置单双面 试过之后效果都不好,昨天终于在MSDN上找到个直接设置打印机单双面的代码,非常管用. using System.Runtime.InteropServices; using System; namespace MyDuplex…
本文转载自: http://www.cnblogs.com/yhlx125/archive/2011/11/22/2258543.html#2269154我的博文 http://www.cnblogs.com/tendzzss/archive/2011/11/11/2245627.html ae的com对象是需要释放的,不然就可能会锁住一些基础设备(如mdb文件等),这里研究了一下ae锁mdb的情况. 释放方法一般是,Marshal.ReleaseComObject或Marshal.FinalR…
测试环境: 测试图片(30M): 测试计时方法: Stopwatch sw1 = new Stopwatch(); sw1.Start(); //TODO...... sw1.Stop(); string xx = sw1.ElapsedMilliseconds.ToString(); MessageBox.Show(xx); 方法一,(1张30M图片,用时799毫秒) public Image getThumbNailUsingGetThumbnailImage(string fileName…
//导入Windows类库,可以获得进程ID        [DllImport("User32.dll", CharSet = CharSet.Auto)]        public static extern int GetWindowsThreadProcesId( IntPtr bwnd,out int ID ); /// <summary>        /// 从Excel 获取学生数据        /// </summary>        /…
/// <summary>        /// 从Excel 导入学生        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void btnInport_Click(object sender, EventArgs e)…
现在有这样的需求,给Word文档的指定位置填充上特定数据,例如我们有一个终端,用来打印员工的薪资证明,对于一个公司来说,他的薪资证明模板是固定的,变化的地方是员工姓名,部门,职位等.我们只需要将这些指定数据填写到指定位置即可. 1. 制作Word模板, 在Word中,有一个东东叫书签,我们可以在需要填充的地方预先插入特定名称的书签. 2. 在指定的Bookmark位置写入特定数据: MSWord.Application app = new MSWord.Application(); string…
最近在论坛里又看到很多关于DataTable(DataSet)导入Excel的帖子,我也温故知新一下,用VS2010重新整理了一个Sample.这个问题简化一下就是内存数据到文件,也就是遍历赋值,只不过文件是有特殊格式的Excel,因此不能像一般的文本文件处理.另外,还有一种叫CSV的文件(用逗号分隔的文件,扩展名为.csv),因为默认用Excel打开的,网友也往往把这种文件误当做Excel文件.其实一个通过Excel COM对象作成Excel文件,一个通过一般的IO处理,他们的作成过程是完全不…
一.PDF/WORD/EXCEL 转 XPS 转 第一页内容 转 图片 WORD.EXCEL转XPS (Office2010) public bool WordToXPS(string sourcePath, string targetPath) { bool result = false; Microsoft.Office.Interop.Word.WdExportFormat exportFormat = Microsoft.Office.Interop.Word.WdExportForma…
PDF转图片大概有十几种方式,褒贬不一,我就详细给大家说一下我认为效率最高的方式,使用Adobe官方的SDK 安装acrobat reader 9.0以上即可,勾选如下组件.…
数据导出的方法如下: 一.下载office的类库:microsoft.office.interop.excel.zip 根据电脑安装的office版本选择引入相应的类库,office2007选择12.0的版本,office2010选择14的版本 二.设置该类库的嵌入互操作类型属性为false,如图 三.调用该方法实现数据的导出 主要代码如下: public static bool ExportExcel(System.Data.DataTable dt, string path) { bool…
第一种方法: 1. 在设计页面,有一个button按钮,当用户单击按钮的时候,发生转换 <asp:Button ID="Export" runat="server" Text="Export" OnClick="Export_Click" /> 2. 发生转换的代码 protected void Export_Click(object sender, EventArgs e) { using (SqlConnect…
来源:http://www.cnblogs.com/ahui/archive/2013/03/05/2944441.html 有一个项目用到Excel组件产生报表,本以为这个通用功能是个很简单的case,没想到结果却花了不少时间 本人开发环境: Win7 64bit + IIS7.5 + VS2012 最开始碰到的问题是NetworkService无法访问com组件,需要对帐户进行授权,这个相信很多人都碰到过,也很好解决 1.运行:mmc comexp.msc /32,找到我的电脑 -> DCo…
Arcengine工作总结地物点查询本部分可以在一个窗体中实现,也可以在两个窗体中实现.由于工作要求本人是在两个窗体中实现的:弹出窗体的名称为FormQuery主窗体单机查询时间的代码FormQuery qu = new FormQuery(axMapControl); qu.TopMost = true; qu.Show();FormQuery中要有public FormQuery(ESRI.ArcGIS.Controls.AxMapControl axMapControl1) { // TO…
本示例主要测试了directshow.Emgucv的视频流采集功能,其中Emgucv还实现了人脸的识别.示例源码下载 一.directshow的介绍 实现原理:directshow可以将摄像头的数据流以事件的方式实时传递给程序,程序在此事件中拿到流后可以保存为图片(流可以经过多个filterGraph2对象).directshow提供将数据绑定到picturebox控件上.以下为打开一个摄像头的步骤: 1. 引入directshow.net控件 此控件可以在网上搜索,即好下载,名称为Direct…
本文转载自:http://www.cnblogs.com/Moosdau/archive/2012/03/11/2390729.html .Net对POP3邮件系统已经集成了相应的功能,但是如果是基于Exchange server的邮件系统,相对就比较复杂.如果仅仅是发送,可以简单地调用CDO来实现(参见我以前的一篇文章http://www.cnblogs.com/Moosdau/archive/2007/09/28/908834.html),但是如果要接收或进行其它一些更复杂一些操作,CDO就…
在导入之前都需要将上传的文件保存到服务器,所以避免重复的写这些代码,先贴出上传文件并保存到服务器指定路径的代码. protected void btnImport_Click(object sender, EventArgs e) { Random random = new Random(); ImportClass Import = new ImportClass(); //保存文件的虚拟路径 string path = "Import/"; //获取选择的文件名 string fi…
第一种:使用 Microsoft.Office.Interop.Excel.dll 首先需要安装 office 的 excel,然后再找到 Microsoft.Office.Interop.Excel.dll 组件,添加到引用. public void ExportExcel(DataTable dt) { if (dt != null) { Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Inter…
如果想在C#编程中解析并运行JavaScript代码,常见的方式有两种: 利用COM组件“Microsoft Script Control”,可参见:C#使用技巧之调用JS脚本方法一 利用JScript.net,可参见:C#使用技巧之调用JS脚本方法二 或 从命令行编译 JScript 代码 这两种方式都能达到在C#中执行JavaScript代码的效果,不过各有利弊. 方法一对程序运行环境有要求,程序只能以x86为目标平台.方法二实际是将JavaScript代码编译成为了.NET程序集,对Jav…
在导入前都需要将上传的文件保存到服务器,所以避免重复的写这些代码,先贴出上传文件并保存到服务器指定路径的代码 protected void btnImport_Click(object sender,EventArgs e) { Random random=new Random(); ImportClass Import=new ImportClass(); //保存文件的虚拟路径 string path="Import/"; //获取选择的文件名 string fileName=Fi…
1. 采用NPOI方式,只需引用NPOI.dll,但目前最高只能到2.4.0版. 缺点:只支持.xls,不支持.xlsx格式.github上的2.4.1版支持.xlsx,但总提示缺ICSharpCode.SharpZipLib.dll,但找不到合适版本,暂时不能用. 优点:读取excel文件极快,1万行*9列的excel文件0.5秒就能读完,比下面的传统Office方法快将近1000倍!首选此方法. using NPOI.HSSF.UserModel;using NPOI.SS.UserMode…
公司的产品需要人脸比对,摄像头相关的需求如下(突然发现除了英文不太好外,实际上中文也不太好,所以直接上一个接口) using System; using System.Drawing; using System.Windows.Media; namespace YK { public enum ECameraAngle { A0, A90, A180, A270 } public interface IVideo { /// <summary> /// 摄像头初始化 /// </summ…
Marshal类 提供了一个方法集,这些方法用于分配非托管内存.复制非托管内存块.将托管类型转换为非托管类型,此外还提供了在与非托管代码交互时使用的其他杂项方法. 命名空间:System.Runtime.InteropServices Marshal 类中定义的 static 方法对于处理非托管代码至关重要.此类中定义的大多数方法通常由需要在托管和非托管编程模型之间提供桥梁的开发人员使用. 例如,StringToHGlobalAnsi 方法将 ANSI 字符从指定的字符串(在托管堆中)复制到非托…
在两个不同的实体(两个线程或者进程甚至机器.在Managed和Unmanaged之间)进行方法调用和参数传递的时候,具体的调用方法和参数的内存格式可能需要一定的转换,这个转换的过程叫做Marshal. Marshal就是把一个结构(类)序列化成一段内存,然后送到另一个进程(.net中Application domain)中供另一个进程中的函数使用.比如你的一个结构 struct{Pen pen;}s; s是一个指向已有的Pen对象的引用,当你把s传给本进程中的一个函数f时,f可以很容易地找到pe…
static void Main(string[] args) { ,,,}; ,,,}; IntPtr pt = Marshal.AllocHGlobal(a.Length); //从source数组的startIndex下标开始复制length个对象到ptr; Marshal.Copy(b,,pt+,b.Length); //从ptr复制length个对象到目标数组的,从目标数组的startIndex开始写入. Marshal.Copy((pt+),a,,); unsafe { byte*…
Vidyo32.VidyoClientInEventLogin Login = new Vidyo32.VidyoClientInEventLogin(); Login.portalUri = this.tbxIP.Text.Trim(); //"http://kaunas.vidyo.scandihealth.net"; Login.userName = this.tbxID.Text.Trim(); //"test-sa3"; Login.userPass =…
补充过程中~ 感觉应该是C#调用非托管的比较专门的class 例1. public struct ImageDataMsg { public char DataType; public int Srv_index; public char ConvertType; //这个个地方要指定长度,这样就可以的德奥结构体的正确长度了 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)] public int[] VecLayer;//需要那几个图层.…
原文:Marshal UTF8 Strings in .NET Marshal UTF8 Strings in .NET Wow, what a pain in the butt. .NET strings are stored internally as UTF16, not UTF8, so if you're marshaling strings to and from a library that wants strings as UTF8, you have to manually m…
Vidyo32.VidyoClientInEventLogin Login = new Vidyo32.VidyoClientInEventLogin(); Login.portalUri = this.tbxIP.Text.Trim(); //"http://kaunas.vidyo.scandihealth.net"; Login.userName = this.tbxID.Text.Trim(); //"test-sa3"; Login.userPass =…
/// <summary> /// 创建ACCESS数据库,并且创建表和数据 /// </summary> /// <param name="dictTable"></param> /// <param name="filePath"></param> /// <returns></returns> public int DataTableToAccess(Diction…