自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 C# 读取ini文件,读不出来原因

通过api函数GetPrivateProfileString读取ini文件,取不到值。方法:1)将ini文件的编码格式,由utf8,改为unicode;2)ini文件的第一行不能是有效内容(不能为section)。...

2018-03-01 11:16:18 6563

原创 32位程序删除64位注册表,重定向问题

对应.Net3.5,32位程序想读写64位注册表,需要借助advapi来实现,以下为删除64位注册表的方法:      [DllImport("advapi32.dll")] static extern int RegDeleteKey(UIntPtr hKey, string lpSubKey); [DllImport("advapi32.dll", CharSet = CharS

2018-01-25 16:08:12 971

转载 C#以逗号拆分字符串,若字段中包含逗号(备注:包含逗号的字段必须有双引号引用)则对其进行拼接处理

我们知道,使用excel工具保存成csv文件时有几个规则:1、每一行的单元格内容之间用逗号分隔。2、如果单元格的内容本身有逗号,这个单元格的内容将会用引号包含。3、如果单元格的内容本身有引号,引号不在首或尾,这个单元格内容不会被引号包含。引号在首或尾,这个单元格内容会被引号包含且原来首尾的引号会被转义。    所以对于这样的内容,直接按逗号或引号使用split方法明显不合适,以下方法就是经特别处理

2018-01-25 15:56:10 3340

转载 c#中winform窗体之间的传值

1.使用公共类创建UserHelper类,里面都是静态成员class UserHelper{public static int id;public static string name;.........}各窗体可以把里面的id,name当作全局变量来用;A窗体:UserHelper.id=10;B窗体:textBox1.Text=UserH

2016-04-22 11:11:59 747

转载 Winform中模仿实现上一步、下一步的导航页面

经常看到有人询问在winform中怎么实现类似安装向导那样的上一步、下一步的页面,这个如果在ASP.NET中实现起来比较简单,无非就是多个panel交替显示罢了,可是在winform中控制起来就没有那么容易了,本人用tabControl做了一个简单实现,可以满足一般的要求,具体实现过程如下:1.新建一个winform工程,在窗体上添加tabControl控件2.设置tabControl的T

2016-04-20 16:04:43 6534

转载 C#获取所有SQL Server数据库名称的方法

本文实例讲述了C#获取所有SQL Server数据库名称的方法。分享给大家供大家参考。具体如下:连接到master库中,执行 select name from master..sysdatabases 。sp_helpdb也可以列出数据名,但不是全部,sp_helpdb是会根据当前用户角色找出相应的数据库,而用sysdatabases表则只要有权限访问该表就能查出所有数据库信息。默认情

2016-04-19 16:09:49 2425

原创 HTTP 错误 500.19- Internal Server Error 错误解决方法

1,首先,确认电脑是否安装了IIS,.Net Frame Work,ASP.Net等2,设置 Application Pools DefaultAppPool的.Net Fram Work版本为2.03,设置 Application Pools DefaultAppPool的Enable 32-Bit Applications 为True

2016-01-28 17:48:11 745

转载 Wix学习整理(7)——在开始菜单中为HelloWorld添加卸载快捷方式

通过前面的几篇随笔,我们已经给我们的HelloWorld提供了填写注册表信息,以及开始菜单快捷方式和桌面快捷方式。这些在安装时添加的内容,在卸载时也会自动地删除。但是,到目前为止,我们的卸载只有两种方式:通过原始安装包或控制面板中的卸载或更改程序。现在,我们来学习Wix如何为我们的HelloWorld在安装时在开始菜单中提供卸载的快捷方式。一 添加卸载快捷方式添加卸载的快捷方式也是

2015-12-18 17:39:38 1139

转载 Wix学习整理(6)——安装快捷方式

一 为HelloWorld案例添加安装快捷方式通常我们安装一个应用软件的时候,都喜欢在桌面或开始菜单中添加快捷方式以便我们快速访问。现在我们就在上篇添加注册信息的基础上为HelloWorld的安装包添加安装快捷方式。下面我们将以安装开始菜单快捷方式为实例详细地阐述一下Wix的关于安装快捷方式的基础知识。首先,我们要定义好目录结构。开始菜单快捷方式的安装目录结构与应用软件的实际安

2015-12-18 17:36:53 922

转载 Wix学习整理(5)——安装时填写注册表

一 Microsoft操作系统的注册表什么是注册表?注册表是Mircrosoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。详细介绍参考维基百科——注册表。如何操作注册表?通过工具Windows操作系统自带工具regedit.exe即可对注册表进行添加、删除、修改等操作。注册表的五个分支注册表有五种分支:HKMU、HKCR、HKCU、

2015-12-18 17:33:44 1710

转载 Wix学习整理(4)——关于WiX文件格式和案例HelloWorld的分析

关于WiX文件格式.wxs是WiX的源文件扩展名。.wxs文件以类XML文件的格式来指定了要构造Windows Installer安装数据包.msi文件所需的信息。.wxs的文件格式为:….wxs必须只有一个根元素,即。在下至多有一个下列的直接子元素:、或;但是可以拥有不限个数的子元素。通过元素或元素的子元素即可指定Windows Installer安装包

2015-12-18 17:31:20 880

转载 Wix学习整理(3)——关于Windows Installer和MSI

关于Windows InstallerWindows Installer是微软Windows操作系统自带的一个软件安装和配置服务,其实现了软件安装的业务逻辑:如何安装软件?如何修改注册表键值?如何创建快捷方式?如何操作网站目录或注册服务?等等。Windows Installer技术由两部分组成:客户端安装程序服务(Msiexec.exe)和Microsoft软件安装包文件(MSI)。

2015-12-18 17:29:00 1192

转载 Wix学习整理(2)——HelloWorld安装添加UI

在前一篇随笔Wix学习整理(1)——快速入门HelloWorld中,我们制作的安装包安装界面太简单,没有与用户进行交互的过程。下面我们修改Wix源文件来给安装程序添加UI。1 Wix的预定义UI简介Wix toolset提供的WixUIExtension.dll包(在目录C:\Program Files\WiX Toolset v3.6\bin下)中提供了五种UI对话框集合,分别是

2015-12-18 17:24:26 682

转载 Wix学习整理(1)——快速入门HelloWorld

1 Wix简介Wix是Windows Installer XML的简称,其通过类XML文件格式来指定了用于创建Windows Installer安装包数据库的元素。关于Wix的详细介绍,查看Wix Tutorial。通过http://wix.codeplex.com/,我们下载最新的Wix toolset,并进行安装。2 1+1=2动手实践是感受最深的方式。下面我们就通

2015-12-18 17:09:38 1044

转载 Wix打包系列(七) 添加系统必备组件的安装程序

我们知道在vs的打包工程中添加系统必备组件是一件很容易的事情,那么在wix中如何检测系统必备组件并在安装过程中安装这些组件。这里以.Net Framework组件作为必备组件为例: 7.1 检测.Net Framework 版本    步骤1:为安装项目添加WiX .NET extensions库的引用    如果是命令行方式使用wix,那么需要在candle和

2015-12-18 10:31:37 1024

转载 Wix打包系列 (六)制作升级和补丁包

前面我们已经知道怎么制作一个完整安装包了,但我们的软件往往不能一次性就满足客户的需要,当客户需要我们给软件进行升级的时候,我们应该怎么做呢? 在这之前,我们有必要了解下Windows Installer中的Upgrades定义: 6.1 关于Windows Installer Upgrades     在Windows Installer中将软件产品

2015-12-18 10:28:13 2517

转载 Wix打包系列(五) 部署数据库

很多人在使用vs进行打包的时候,经常会为数据库部署的问题犯愁,即便是重写Installer类的方法,也不是很可靠方便,下面我们来看看在wix中如何部署数据库。  5.1 创建数据库    wix包含数据库的相关链接库,需要为wix添加如下命名空间:Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns

2015-12-18 10:23:37 866

转载 Wix打包系列(四) 自定义UI

除了标准的安装界面,如果我们要在安装时需要提供一些额外的信息时,这时就需要自定义界面来显示和录入这些信息。 4.1  自定义对话框    如上一章中我们测试数据库的连接串在源文件中定义的,如果我们需要用户安装时输入数据库信息,就需要添加一个如图的对话框。    开始之前,我们先看看标准的WixUI_Mondo UI包含哪些对话框: 1: BrowseDlg

2015-12-18 10:12:29 1104

转载 Wix打包系列(三)自定义Action(Custom Action)

3.1 关于Action      我们已经知道如何生成具有标准安装界面的安装程序了,Windows Installer按照我们的界面设置使用标准的安装步骤进行安装,它的安装过程是由一系列标准的Action组成,通过这些Action来完成对计算机的安装配置;如果我们想自定义安装步骤或者在安装过程中执行自定义的操作,就需要使用自定义的Action。当然,使用Custom Action之前,我

2015-12-18 10:08:47 1804

转载 Wix打包系列(二)用户界面和本地化操作

上一章节,我们已经大概知道如何对文件进行打包安装,不过我们也注意到,通过对Sample.wxs的编译链接,生成的msi安装包没有任何用户界面,只有一个安装进度条。下面我们来看看如何给安装包添加用户界面:     2.1   使用wix用户界面    wix本身自带有一套UI,使用这些UI我们可以满足大多数的安装界面要求,你可以决定到底使用哪种WixUI:    1、

2015-12-17 18:57:48 1280

转载 Wix打包系列(一)如何使用wix制作安装程序

最近由于项目需要,需要给客户制作安装程序,一开始使用vs2005自带的打包工程来打包,但用了一段时间发现vs打包太死板,而且使用起来问题很多。收费的商业打包工具不在我考虑范围内,于是在网上找到了wix,稍微了解了下,发现wix的确可以满足我的需求;但是网上wix中文的资料少的可怜,百度,google上搜索到关于wix中文的资料少的可怜,有的只是一些简单的应用,还不足以满足我的要求;没办法,只能靠自

2015-12-17 18:06:24 7665

转载 C#编码规范

1. 简介本规范为一套编写高效可靠的 C# 代码的标准、约定和指南。它以安全可靠的软件工程原则为基础,使代码易于理解、维护和增强,提高生产效率。同时,将带来更大的一致性,使软件开发团队的效率明显提高。2. 适用范围本规范适用于公司所有的C#源代码,为详细设计,代码编写和代码审核提供参考和依据。3. 文体本规范中的建议分为四种:要,建议,避免,不要,表示需要遵

2015-12-17 10:54:43 281

转载 Advapi32.dll 函数接口说明

Advapi32.dll 函数接口说明      函数原型                              说明  AbortSystemShutDown              终止使用InitiatezSystemShutdown函数启动系统               

2015-12-17 10:21:05 6634

转载 [C#]用API的方法解决X64系统注册表被重定向问题

我们知道,X64系统引入了一项技术叫文件和注册表的重定向。之所以有这个技术,是为了将32位程序和64位程序分离开。这种在64位平台上运行32位程序的模拟器被称为WOW64。WOW64是"Windows 32 on Windows 64"的简称,它在系统层中另提供了一层,以支持老式的32位程序。有兴趣的读者可查阅相关资料,我这边只讨论关于注册表的重定向:如果是32位程序,对注册表的操作不论是

2015-12-17 10:17:16 670

转载 在DataTable中执行DataTable.Select("条件")

1.在DataTable中执行DataTable.Select("条件")返回DataTable; //  // 执行DataTable中的查询返回新的DataTable //  // dt 是源数据DataTable // condition 是查询条件 DataTable newdt = new DataTable(); newdt = dt.Clone()

2015-12-17 10:08:34 261

转载 .Net用UploadFile控件上传文件受到大小限制的解决办法

一、缘由因.net引起的方法一:(经过验证了)错误提示:System.ObjectDisposedException: 无法访问已关闭的文件。解决办法:在web.config文件中添加如下语句:tUrl="false" requestLengthDiskThreshold="8192"/>maxRequestLength="40960" 是最大的

2015-12-17 10:01:25 925

计算机网络原理第五版课后习题答案

计算机网络原理第五版课后习题答案 计算机网络原理第五版课后习题答案

2010-03-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除