上一页 1 ··· 4 5 6 7 8 9 下一页

2012年10月14日

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

摘要: 关于Windows InstallerWindows Installer是微软Windows操作系统自带的一个软件安装和配置服务,其实现了软件安装的业务逻辑:如何安装软件?如何修改注册表键值?如何创建快捷方式?如何操作网站目录或注册服务?等等。Windows Installer技术由两部分组成:客户端安装程序服务(Msiexec.exe)和Microsoft软件安装包文件(MSI)。关于MSIWindows Installer是从一个数据库中来获取软件安装的相关信息。MSI文件就是一个Windows Installer的数据库,它包含了安装一种产品所需信息、安装(或卸载)程序所需的指令和数据; 阅读全文

posted @ 2012-10-14 21:13 lienhua34 阅读(5855) 评论(4) 推荐(1) 编辑

2012年10月8日

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对话框集合,分别是WixUI_Advanced、WixUI_FeatureTree、WixUI_InstallDir、WixUI_Minimal和WixUI_Mondo。下面分别对这五种预定义UI对话框集合进行简单的说明。WixUI_ 阅读全文

posted @ 2012-10-08 00:16 lienhua34 阅读(7132) 评论(1) 推荐(2) 编辑

2012年10月7日

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动手实践是感受最深的方式。下面我们就通过制作一个简单的HelloWorld安装包来感受一下Wix。2.1 HelloWorld程序我们编写一个很简单的C# 的HelloWorld程序。HelloWorld.cs 1 using System; 2 using Sys 阅读全文

posted @ 2012-10-07 20:18 lienhua34 阅读(17362) 评论(14) 推荐(3) 编辑

修改Win7引导文件实现Win7与Ubuntu双系统引导的失败

摘要: 1 背景之前安装过Win7和Ubuntu的双系统,安装的过程是先安装Win7,然后安装Ubuntu,在安装Ubuntu时将GRUB引导程序安装在硬盘的主引导扇区中。按这样的安装顺序是因为Windows系统的引导程序无法自动检索Ubuntu系统的引导程序,而且安装Win7系统时,默认会将Windows系统的引导程序安装在硬盘的主引导扇区,这样就会造成无法进入Ubuntu系统。将GRUB引导程序安装在主引导扇区固然方便,但是每当我们 要重新安装Windows系统时,就要重新安装Ubuntu系统或者GRUB引导程序。通过网上的一些资料,知道可以修改Win7系统的引导文件来引导Ubuntu系统,这样每 阅读全文

posted @ 2012-10-07 13:10 lienhua34 阅读(12622) 评论(9) 推荐(3) 编辑

2012年9月13日

【小技巧积累】用Style实现必填提示“*”根据选项的不同而显示或隐藏

摘要: 1.问题需求有一个界面,界面上有一组单选按钮(一个是“可选”,另一个是“必填”),还有一个“备注”信息的文本输入框。现在要求在选择“必填”时,“备注”信息不能为空,此时应该在“备注”文本框前显示必填标志(常用的是“*”),如图2所示;而在选在“可选”时,“备注”信息可为空,此时必填标志“*”应该隐藏起来,如图1所示。图1 备注可选图2 备注必填2.问题分析当然,这个问题实际上很简单。如果是文本“备注”是通过TextBlock和文本输入框放在同一个GroupBox中,那么我们可以在“备注”TextBlock和文本输入框之间加一个显示“*”的TextBlock(为了描述方便,假设将其命名为tbSt 阅读全文

posted @ 2012-09-13 22:44 lienhua34 阅读(2595) 评论(0) 推荐(2) 编辑

2012年4月29日

由装逼造就的毕业设计

摘要: 今天进行了毕业设计项目的最后测试,不想再进行修改了。然后,开始回忆关于毕设的一切,发现这是一条由装逼造就的路。我的毕业设计项目是用C语言实现一个Scheme解释器(当然,最后我也只是简单地实现了基本功能框架而已)。第一次接触LISP编程语言是在大三第二个学期。当时想学习在Linux下进行C语言编程,需要选择C语言代码编辑器,最后选择了emacs编辑器(选择emacs是第一件装逼的事!传说世上有三种程序员:一是用vim的,一是用emacs的,还有一种是用其他编辑器的。另外通过自定义配置后的emacs界面可以相当地华丽,而通过emacs的快捷键可以达到码字如飞的操作,emacs可以说是程序员的一大 阅读全文

posted @ 2012-04-29 22:23 lienhua34 阅读(2080) 评论(10) 推荐(0) 编辑

2012年4月22日

浅析C语言的非局部跳转:setjmp和longjmp

摘要: 作者:李恩华 写于2012.4.22日凌晨西甲国家德比之前C语言中有一个goto语句,其可以结合标号实现函数内部的任意跳转(通常情况下,很多人都建议不要使用goto语句,因为采用goto语句后,代码维护工作量加大)。另外,C语言标准中还提供一种非局部跳转“no-local goto",其通过标准库<setjmp.h>中的两个标准函数setjmp和longjmp来实现。C标准库<setjmp.h>下面是K&R的《C程序设计语言(第2版 . 新版)》第232页给出的关于标准库<setjmp.h>的说明。8 非局部跳转<setjmp.h>头文 阅读全文

posted @ 2012-04-22 12:35 lienhua34 阅读(12367) 评论(3) 推荐(4) 编辑

2012年3月21日

samba配置文件smb.conf的语法格式及其重要选项的说明

摘要: 这是我在去年暑假实习时参考samba文档和一些博文进行整理的一篇文档。smb.conf是samba最重要的配置文件,该文件定义了samba服务器的共享服务以及共享属性选项。下面将对该文件的语法结构及其一些重要配置选项进行简单说明。一、语法格式配置文件smb.conf的语法格式为: <file> :== { <section> } EOF <section> :== <section header> { <parameter line> } <section header> :== ‘[‘ NAME... 阅读全文

posted @ 2012-03-21 00:44 lienhua34 阅读(24400) 评论(0) 推荐(0) 编辑

2012年3月18日

samba源代码安装以及环境配置

摘要: 这是一篇我在2011年7月21日写的一篇文档,当时我在深圳一家公司实习,实习的内容与samba相关,那时靠着自己上网找资料学习samba的源代码安装和配置,当时参考了很多网上的博文都没有看到一篇很完整的博文。很多博文作为案例使用的samba版本居然是2.x.x的,与我使用的3.5.9版本存在很多特性差异。但是参考这些博文都没有能够让我的samba顺利的运行起来,最后结合samba源码包中自带的一些文档才最终解决samba的安装问题。所以,就写了这篇文档进行总结。今天不小心翻到这篇文档,于是将其放上来,希望能对有需要的朋友起到一点作用。一、获取源代码包并进行解压从samba的官方网站可以下载最新 阅读全文

posted @ 2012-03-18 21:17 lienhua34 阅读(17863) 评论(0) 推荐(2) 编辑

2012年3月10日

浅谈静态作用域和动态作用域

摘要: 静态作用域和动态作用域所谓的作用域就是指某段程序文本代码。一个声明起作用的那一段程序文本区域,则称为这个声明的作用域。静态作用域是指声明的作用域是根据程序正文在编译时就确定的,有时也称为词法作用域。而在采用动态作用域的语言中,程序中某个变量所引用的对象是在程序运行时刻根据程序的控制流信息来确定的。大多数现在程序设计语言都是采用静态作用域规则,而只有为数不多的几种语言采用动态作用域规则,包括APL、Snobol和Lisp的早期方言。而采用静态作用域的语言中,基本都是最内嵌套作用域规则:由一个声明引进的标识符在这个声明所在的作用域里可见,而且在其内部嵌套的每个作用域里也可见,除非它被嵌套于内部的对 阅读全文

posted @ 2012-03-10 12:16 lienhua34 阅读(16956) 评论(7) 推荐(8) 编辑

上一页 1 ··· 4 5 6 7 8 9 下一页

导航