![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Winform
luxin10
这个作者很懒,什么都没留下…
展开
-
System.IO.Directory.GetCurrentDirectory()方法
<br />今天做一个导出数据的模块,在界面上点击到处按钮后,先弹出一个SaveFileDialog对话框提示用户选择保存路径,程序获得该路径后先复制程序安装路径下的模版文件到用户选择的保存路径,然后打开复制的文件,进行数据的写入。<br />在测试时出现了灵异时间,在win7下试用该程序,完全正常,当移植到XP下时,弹出报错,错误提示的意思为在桌面上找不到模版文件,当时就很纳闷,程序试用System.IO.Directory.GetCurrentDirectory()来获取程序启动路径,然后在该路径下找到原创 2010-12-20 18:38:00 · 8225 阅读 · 2 评论 -
ILMerge合并多个dll程序集,签名问题有待解决
在开发程序时为了代码清晰方便修改,对程序集的添加引用和命名都比较规范,但是生成解决方案是VS会默认将程序集编译为对应的dll文件,在发布程序时我们可能不希望直接将所有dll文件全部暴露给用户,此时需要考虑将两个或多个dll文件合并为一个dll 经过搜索,发现微软官方提供了一款小工具,ILMerge(官方下载地址:http://www.microsoft.com/downloads/en/details.aspx?familyid=22914587-b4ad-4eae-87cf-b14ae6a原创 2010-11-05 17:29:00 · 2759 阅读 · 0 评论 -
control的Invoke和BeginInvoke
Control的Invoke和BeginInvoke 是相对于支线线程(因为一般在支线线程中调用,用来更新主线程ui)Invoke立即插入主线程中执行,而BeginInvoke 要等主线程结束才执行 近日,被Control的Invoke和BeginInvoke搞的头大,就查了些相关的资料,整理如下。感谢这篇文章对我的理解Invoke和BeginInvoke的真正含义 。(一)Control的Invoke和BeginInvoke我们要基于以下认识:(1)Control的Invoke和BeginInvoke与D转载 2011-03-01 23:07:00 · 475 阅读 · 0 评论 -
通用邮件自动发送Winform控件开发(一)
朋友需要在自己项目中添加一个邮件自动发送的功能(声明一下,不是专门群发垃圾邮件的,因为有许多相同的邮件需要发送,试用人工比较费时费力),我思考了一下,准备写一个Winform控件,放在任意窗体后直接可以开始操作邮件自动发送,需求如下:1.邮件发送人信息需要保存在SQL、Access、MySQL、Excel或者TXT文本文档中2.邮件收件人信息也需要保存在SQL、Access、MySql、Excel或者TXT文本文档中3.邮件收件人信息后缀可以自定义,例如定义为“@XXXX.com”,如果自定义后缀,系统在发原创 2011-03-07 22:35:00 · 2539 阅读 · 1 评论 -
通用邮件自动发送Winform控件开发(三)
<br />在上一节中完成了Excel的打开,下面我们来看一下数据写入。首先我们分析一下,在Excel打开后,写入的过程应该是用户在外部调用写入方法,并传入一个DataTable数据源,其他的工作应该全部由写入方法完成,用户不需要管在写入过程中遇到的问题,好,那结合我们在上一节分析的在写入过程中可能遇到的问题,我们画出写入数据的流程图,如下:<br /><br />上图中还有一个步骤缺失了,在写入数据完成后应该将本次数据写入的结束位置保存到配置文件中,以便下一次数据写入时直接读取。写入对外公开的方法只有一个原创 2011-03-16 14:59:00 · 985 阅读 · 1 评论 -
通用邮件自动发送Winform控件开发(四)
<br />在上面的文章中讲述了如何与数据保存载体交互,下面我们来看看配置文件的读取和编辑。<br />对于系统的配置文件,在本系统中个人觉得最好的情况是在软件运行时即读取配置,放置在一个静态对象中,因为发送邮件的时候用户只需要点击“开始发送”,然后系统根据配置信息开始进行读取发件人、收件人、邮件内容、保存发件记录等信息,将这些信息在程序运行时加载到内存不失为一个好办法,下面直接贴代码。<br />using System;using System.Collections.Generic;using原创 2011-03-17 22:58:00 · 880 阅读 · 0 评论 -
通用邮件自动发送Winform控件开发(五)
<br />在上面几篇中记录了如何系统如何实现与存储媒介通信以及系统的配置,下面说说系统的业务部分。在第一篇的示例图中可以看出,我将业务部分分为了人员管理部分和收发件管理部分,人员管理部分负责人员的增删改查,包括收件人和发件人,下面具体看看实现:<br />首先看看收件人部分:<br />using System;using System.Collections.Generic;using System.Text;namespace AccountInformation{ publ原创 2011-03-23 21:51:00 · 831 阅读 · 0 评论 -
打包Winform程序_制作windows程序安装部署包
1. 在“文件”菜单上指向“添加项目”,然后选择“新建项目”。 2. 在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。在“名称”框中键入 setup1。 3. 单击“确定”关闭对话框。 4. 项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。 5. 在“属性”窗口中,选择 ProductName 属性,并键转载 2011-11-29 12:44:21 · 864 阅读 · 0 评论