摘要: C# int.ToString()2007-12-27 10:14格式化数值:有时,我们可能需要将数值以一定的格式来呈现,就需要对数值进行格式化。我们使用格式字符串指定格式。格式字符串采用以下形式:Axx,其中 A 为格式说明符,指定格式化类型,xx 为精度说明符,控制格式化输出的有效位数或小数位数。格式说明符说明示例输出C货币2.5.ToString("C")¥2.50D十进制数25.ToString("D5")00025E科学型25000.ToString("E")2.500000E+005F固定点25.ToString(&quo 阅读全文
posted @ 2011-10-19 09:38 心随灵动 阅读(3402) 评论(0) 推荐(0) 编辑
摘要: 通常我们并不以root身份登录,但是当我们执行某些命令 (command)时需要用到root权限,我们通常都是用"sudo command"来执行command。由于使用Ubuntu,所以经常都都用sudo,而使用sudo时,又得输入密码,所以我就寻找sudo不输入密 码的方法。前阵子google了一下,很容容易找到一个方法,但是对其不够理解,今天,仔细研究了一下/etc/sudoers这个文件,对于如何实现自 己的需求就非常清楚了。网上说看到的资料往往写得不清楚,所以我根据自己的需求好好整理了一下。假设我的用户名为jay(属于 admin组),使sudo不用密码的方法如下 阅读全文
posted @ 2011-10-17 23:16 心随灵动 阅读(7089) 评论(0) 推荐(0) 编辑
摘要: 1.隐藏最上面的GroupPanel gridView1.OptionsView.ShowGroupPanel=false;2.得到当前选定记录某字段的值 sValue=Table.Rows[gridView1.FocusedRowHandle][FieldName].ToString();3.数据只读 gridView1.OptionsBehavior.Editable=false;4.不显示MasterDetailView gridView1.OptionsDetail.EnableMasterViewMode=false;5.修改最上面的GroupPanel内容 gridView1.Gr 阅读全文
posted @ 2011-10-17 12:00 心随灵动 阅读(1093) 评论(0) 推荐(0) 编辑
摘要: 1.安装VMTools2.设置共享文件之后在/mnt/hgfs文件夹下若找不到共享文件==>3.安装工具Shell代码sudoapt-getinstallopen-vm-dkms4.安装过程中选择“y“5.执行Shell代码sudomount-tvmhgfs.host://mnt/hgfs 阅读全文
posted @ 2011-10-17 09:00 心随灵动 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 这里说明,Ubuntu中系统没有了RH系统中的chkconfig命令 !可用一些小工具来管理Ubuntu的启动选项:小工具rcconf:#sudo apt-get rcconf#sudo apt-get install rcconfroot 下运行:#sudo rcconf功能更全的工具:sysv-rc-conf#sudo apt-get update#sudo apt-get install sysv-rc-conf运行:#sudo sysv-rc-conf也可以直接加入启动程序,例如把/etc/init.d/red5加入到系统自动启动列表中:#sudo sysv-rc-conf red5 阅读全文
posted @ 2011-10-16 23:28 心随灵动 阅读(14272) 评论(0) 推荐(0) 编辑
摘要: 在使用.Net Framework编写窗体应用程序的时候,有时有需要响应窗体的按键消息。 当窗体上没有任何其他控件的时候,窗体是可以直接响应这些消息的。但是当窗体上有其他控件时,会发现窗体再也不会响应这些消息了,因为这些消息都由其上的控件所处理掉并且不再发给父窗体。但是响应窗体上的按键消息是很有必要的。Form类有一个KeyPreview的属性,可以让它接收得到按键消息。它的定义如下: KeyPreview的属性 获取或设置一个值,该值指示在将键事件传递到具有焦点的控件前,窗体是否将接收此键事件。 命名空间:System.Windows.Forms 程序集:System.Windows.For 阅读全文
posted @ 2011-10-13 17:37 心随灵动 阅读(1488) 评论(1) 推荐(1) 编辑
摘要: 与网上其它关于 DevExpress 汉化的文章不同,本文提供了DevExpress WinForm 汉化和 WebForm(ASPxControls) 汉化的最简单最实用的方法,能让你快速实现对DevExpress 的汉化。同时也说明了使用原始 .resx 文件实现汉化的方法。WebForm(ASPxControls) 汉化效果图WinForm 汉化效果图如何实现上述的汉化呢?DevExpress 汉化总结下来一般分三种形式: 一、利用已经汉化好的资源包; 二、使用本地对象类,利用代码汉化; 三、资源包和代码结合。 本文只讲述用汉化好的资源包进行汉化的方法,因为此种方法最简单实用。1. W. 阅读全文
posted @ 2011-10-10 16:34 心随灵动 阅读(638) 评论(0) 推荐(1) 编辑
摘要: You can set the selected index property of the RepositoryItemComboBox in the InitNewRow event as follows:private void gridView_InitNewRow(object sender, DevExpress.XtraGrid.Views.Grid.InitNewRowEventArgs e) { gridView.SetRowCellValue(e.RowHandle, viewAddColumns.Columns["colFieldName"], ((( 阅读全文
posted @ 2011-10-10 15:25 心随灵动 阅读(1901) 评论(0) 推荐(0) 编辑
摘要: Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。本文主要参考曹元其先生的《Linux必学的60个命令》。◆ 安装和登录命令:login、shutdown、halt、reboot、install、mou 阅读全文
posted @ 2011-10-10 11:13 心随灵动 阅读(638) 评论(1) 推荐(0) 编辑
摘要: 在C#中,如何将一个int转换成一个bytearray,又如何将一个bytearray转换成一个int至少可以通过三种方法来进行转换。在.NET Framework类库的System名字空间中有个叫做BitConverter的类,它是专门用来进行这种转换的。它有一个GetBytes方法,对于大多数简单的类型来说,该方法都被重载了,它可以返回一个bytearray来保存你传递的值。它也有几个ToTypeName方法用来将一个bytearray转换成一个基本类型(primitive type):byte[] b = BitConverter.GetBytes( 0xba5eba11 );//{0x 阅读全文
posted @ 2011-10-09 15:41 心随灵动 阅读(855) 评论(0) 推荐(0) 编辑
摘要: C++ C#=====================================WORD ushortDWORD uintUCHAR int/byte 大部分情况都可以使用int代替,而如果需要严格对齐的话则应该用bytebyteUCHAR* string/IntPtrunsigned char* [MarshalAs(UnmanagedType.LPArray)]byte[]/?(Intptr)char* stringLPCTSTR stringLPTSTR [MarshalAs(UnmanagedType.LPTStr)] stringlong i... 阅读全文
posted @ 2011-09-22 09:37 心随灵动 阅读(694) 评论(0) 推荐(0) 编辑
摘要: 对于串口编程,熟悉的应该觉得不困难。.NET下就更容易了,废话也没了。开始吧。1.虚拟串口软件由于手上没有串口硬件,所以在网上找了一个 VSPM 虚拟串口软件 ,据说是免费的。下载地址:http://www.skycn.com/soft/30517.html刚开始也不知道怎么用,摸索了一下,终于成功。安装以后工作模式选择应该为:VSPM运行在Server模式,支持Client模式设备然后是使用设备探测器简历虚拟串口。(如果选择 建立默认的串口,软件就会自动帮你建立四个虚拟串口的)之后就是新增虚拟串口 串口选COM2,选择监听的IP地址:192.168.1.111 ,Client模式的设备尝试连 阅读全文
posted @ 2011-09-20 18:02 心随灵动 阅读(506) 评论(0) 推荐(0) 编辑
摘要: http://cid-47027e68f36cbaf5.spaces.live.com/blog/cns!47027E68F36CBAF5!308.entryMFC界面库: GUIToolkit 和 SYGUI官网:http://www.beyondata.com/GUIToolkithttp://www.codeproject.com/KB/library/guitoolkit.aspx?display=PrintAll&fid=4311&df=90&mpp=25&noise=3&sort=Position&view=Quick&fr= 阅读全文
posted @ 2011-09-06 15:31 心随灵动 阅读(1392) 评论(0) 推荐(0) 编辑
摘要: CxImage CxImage是C++实现的功能强大的、能处理多种文件格式的图像管理类。它能够简单快速的实现图像的导入、保存、显示和变换。 为什么使用CxImage u 它是平台无关的 u 它是自由软件、免费的、开源的 u 支持多种平面格式:BMP、GIF、ICO、TGA、JPEG、PCX、PNG、TIFF、MNG、RAS等,还有更多! u 功能强大:几何变换、图像处理、图像格式转换等。 u 使用简单:下面的入门教程会给你展示这一点。 CxImage的功能Constructors 构造函数Initialization 初始化File 文件操作,主要是编解码Generic 图像基本变化DSP 图 阅读全文
posted @ 2011-09-06 09:16 心随灵动 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 在语言传输中,如果每次都把数据包发送影响流量,可以再发送前对数据包进行静音检测,如果是静音就不发送原理 :检测数据是否都在一个范围内,统计不在范围内的数据量,就算百分比,如果打印某个指定的比例就认识是静音//适合8位音频function TWaveIn.DetectSilence(Data: PByte; DataLen: DWORD): Boolean;constTHRESHOLD:DWORD =10;//范围HITPERCENT:DWORD=85;//错误率vari:Integer;dwHit:DWORD;begindwHit:=0;for i:=0 to DataLen-1 dobegi 阅读全文
posted @ 2011-08-31 17:51 心随灵动 阅读(1506) 评论(0) 推荐(0) 编辑
摘要: 前段时间,搞了一阵声学回声消除,非常郁闷,因为没有成功,但可以说学到一点东西吧,至少理论上懂了一点。为什么需要声学回声消除呢?在一般的VOIP软件或视频会议系统中,假设我们只有A和B两个人在通话,首先,A的声音传给B,B然后用喇叭放出来,而这时B的MIC呢则会采集到喇叭放出来的声音,然后传回给A,如果这个传输的过程中时延足够大,A就会听到一个和自己刚才说过的话一样的声音,这就是回声,声学回声消除器的作用就是在B端对B采集到的声音进行处理,把采集到声音包含的A的声音去掉再传给A,这样,A就不会听到自己说过的话了。声学回声消除的原理我就不说了,这在网上有很多文档,网上缺少的是实现,所以,我在这把一 阅读全文
posted @ 2011-08-31 14:21 心随灵动 阅读(4457) 评论(0) 推荐(1) 编辑
摘要: 随着贸易国际化,在软件开发过程中,常会碰到需在现有中文版软件加入多语言支持的情况。由于不同语言版本间的差别通常仅是软件操作界面的不同,为实现多语言支持,使用纯资源DLL是一个不错的解决之道。所谓纯资源DLL是指只包含资源的DLL,譬如:快捷键、对话框、字符串、菜单、工具条、位图、图标、版本信息等等。具体做法是:利用VC可视化编辑环境为每种语言制作一套资源ID一一对应的资源集并编译生成DLL文件。应用程序初始化时按预设的语言设置选择合适的资源DLL调入,使用资源时依据资源ID进行访问,这样即可实现软件的多语言支持。当然了,应用程序退出前,注意将动态调入的DLL文件占用的资源释放。现有一个心电图查 阅读全文
posted @ 2011-08-26 10:44 心随灵动 阅读(2010) 评论(0) 推荐(0) 编辑
摘要: 在使用 GDI + 的 Microsoft 基础类 (MFC) 应用程序的调试版本时, 可能会出现类似于以下内容的错误消息:错误 C2660: Gdiplus::GdiplusBase::operator new: 函数不带三个参数 原因:在调试版本中 MFC 定义扩展到带有两个额外的参数的重载 new 运算符的 new 运算符的预处理器宏。额外的参数是源文件名称和代码行号。 MFC 可以使用此信息对程...在调试版本中 MFC 定义扩展到带有两个额外的参数的重载 new 运算符的 new 运算符的预处理器宏。额外的参数是源文件名称和代码行号。MFC 可以使用此信息对程序员在调试模式下时报告内 阅读全文
posted @ 2011-08-23 10:23 心随灵动 阅读(1632) 评论(0) 推荐(0) 编辑
摘要: VC++中GlobalAlloc()、malloc()和new()函数都可以用来实现内存的动态分配,那么它们之间有什么区别呢?三者的区别主要有以下几点:1、GlobalAlloc()函数在程序的堆中分配一定的内存,是Win16的函数,对应于系统的全局栈,而在Win32中全局栈和局部堆的区别已经不存在了,因此不推荐在Win32中使用该函数。2、malloc()是标准库函数,而new则是运算符,它们都可以用于申请动态内存。3、new()实际上调用的是malloc()函数。4、new运算符除了分配内存,还可以调用构造函数,但是malloc()函数只负责分配内存。对于非内部数据类型的对象而言,只使用. 阅读全文
posted @ 2011-08-23 09:29 心随灵动 阅读(687) 评论(0) 推荐(0) 编辑
摘要: 首先,在StdAfx.h中静态调用diplus.lib,即由编译系统完成对DLL的加载,应用程序结束时卸载DLL的编码。如下#ifndef ULONG_PTR#define ULONG_PTR unsigned long*#include "GdiPlus.h"using namespace Gdiplus;#pragma comment(lib, "gdiplus.lib")#endif在类的头文件中定义,以下成员变量,用来初始化GDI+的使用和结束使用。GdiplusStartupInput m_gdiplusStartupInput;ULONG_P 阅读全文
posted @ 2011-08-19 11:01 心随灵动 阅读(1378) 评论(0) 推荐(0) 编辑
摘要: 1.下载(GDI+ for VC6.0 SDK)GDIPlus文件将其中的Includes和Lib中的文件拷到vc目录下的Includes和Lib文件夹中. 下载地址:http://www.codeguru.com/code/legacy/gdi/GDIPlus.zip(引用他人的)2.在你将要使用GDI+的工程中,完成初始化工作:在StdAfx.h中加入#define ULONG_PTR unsigned long#include <Gdiplus.h>using namespace Gdiplus;#include "GdiPlus.h"3.在CApp头文件 阅读全文
posted @ 2011-08-19 10:58 心随灵动 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 1,busybox简介busybox是一个集成了一百多个最常用linux命令和工具的软件,他甚至还集成了一个http服务器和一个telnet服务器,而所有这一切功能却只有区区1M左右的大小.我们平时用的那些linux命令就好比是分立式的电子元件,而busybox就好比是一个集成电路,把常用的工具和命令集成压缩在一个可执行文件里,功能基本不变,而大小却小很多倍,在嵌入式linux应用中,busybox有非常广的应用,另外,大多数linux发行版的安装程序中都有busybox的身影,安装linux的时候案ctrl+alt+F2就能得到一个控制台,而这个控制台中的所有命令都是指向busybox的链接 阅读全文
posted @ 2011-08-15 14:29 心随灵动 阅读(13922) 评论(0) 推荐(2) 编辑
摘要: 今天看到论坛上有人在问上下文菜单管理器类CContextMenuManager的问题,记得做过,但是忘了,忙里偷闲记下来,免得下次又忘了... CContextMenuManager和CMenu同样是继承于CObject,请看这里。不过菜单画得比CMenu好看多了,因此很多人愿意使用它。如何使用大家MSDN就是了。 但是,假如你觉得不想创建一个CContextMenuManager类来管理你的菜单。其实,还有一个方法:CWinAppEx还有这么一个方法,CContextMenuManager类型,你想增加菜单的话,theApp.GetContextMenuManager()->AddMe 阅读全文
posted @ 2011-08-15 11:26 心随灵动 阅读(2280) 评论(0) 推荐(0) 编辑
摘要: Linux内核源码目录结构代码目录结构在阅读源码之前,还应知道Linux内核源码的整体分布情况。现代的操作系统一般由进程管理、内存管理、文件系统、驱动程序和网络等组成。Linux内核源码的各个目录大致与此相对应,其组成如下(假设相对于Linux-2.4.23目录):arch目录包括了所有和体系结构相关的核心代码。它下面的每一个子目录都代表一种Linux支持的体系结构,例如i386就是Intel CPU及与之相兼容体系结构的子目录。PC机一般都基于此目录。include目录包括编译核心所需要的大部分头文件,例如与平台无关的头文件在include/linux子目录下。init目录包含核心的初始化代 阅读全文
posted @ 2011-08-11 22:37 心随灵动 阅读(4186) 评论(0) 推荐(0) 编辑
摘要: sqlliteExpert下载http://www.sqliteexpert.com/download.html3Technorati 标签:c#+SqlLite注意事项:1、 ADO.NET Provider For SQLite 1.0.66版并不支持VS2005、只能在VS2008上用,使用VS2005的请用旧版。其中安装目录下WM的dll需要把dll和lib文件名中的066去掉,否则在WM上不能使用。2、SQLite的图形UI最好用SQLite Expert Personal,免费的,只不过英文版,支持UTF-8,不会乱码。sqliteadmin虽然支持中文界面,但数据容易乱码(不支持 阅读全文
posted @ 2011-08-10 11:46 心随灵动 阅读(2863) 评论(0) 推荐(0) 编辑
摘要: 默认情况下,窗口是不响应WM_MOUSELEAVE和WM_MOUSEHOVER消息的,所以要使用_TrackMouseEvent函数来激活这两个消息。调用这个函数后,当鼠标在指定窗口上停留超过一定时间或离开窗口后,该函数会Post这两个消息到指定窗口。使用方法:1.在窗口类中定义一个变量来标识是否追踪当前鼠标状态,之所以要这样定义是要避免鼠标已经在窗体之上时,一移动鼠标就不断重复产生WM_MOUSEHOVER。BOOL _bMouseTrack=TRUE;2.在OnMouseMove中调用_TrackMouseEvent函数if (_bMouseTrack)//若允许追踪,则。{TRACKMO 阅读全文
posted @ 2011-08-08 21:52 心随灵动 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 方法一:/*创建全局互斥体,然后在进程启动时检查该互斥体是否已被创建只需要在InitInstance()中加入*/::CreateMutex(NULL, FALSE, "MyAPP");/*创建一个互斥体*/if(ERROR_ALREADY_EXISTS == GetLastError()){ AfxMessageBox("Already run!"); return FALSE;}方法二:一个程序可以运行多个实例(进程),那我们如何让它仅运行一个实例呢?很简单,使用#pragma编译器指令在进程的地址空间内创建一个“共享节”就可以 达到目的,这个“共享 阅读全文
posted @ 2011-08-08 11:57 心随灵动 阅读(879) 评论(0) 推荐(0) 编辑
摘要: 转载自:http://blog.sina.com.cn/s/blog_56eda66b0100073j.html1、DirectX是什么DirectX(简称:DX)是微软推出的一套基于Windows系统的多媒体应用程式接口APIs函式。在开发中,DX分为两个部分,一个是运行库,通过DX编译出来的程式必须要有运行库的支持,另外一个是开发库,也就是常说的SDK,这部分是在编译DX程序中是必需的。DirectX是一种图形应用程序接口(API),简单的说它是一个辅助软件,一个提高系统性能的加速软件,微软创建开发的。他的意思不难理解,Direct是直接的意思,X是很多东西,加在一起就是一组具有共性的东西 阅读全文
posted @ 2011-08-04 17:25 心随灵动 阅读(1666) 评论(0) 推荐(0) 编辑
摘要: C++调用约定和名字约定调用约定:__cdecl __fastcall与 __stdcall,三者都是调用约定(Calling convention),它决定以下内容:1)函数参数的压栈顺序,2)由调用者还是被调用者把参数弹出栈,3)以及产生函数修饰名的方法。1、__stdcall调用约定:函数的参数自右向左通过栈传递,被调用的函数在返回前清理传送参数的内存栈,2、__cdecl是C和C++程序的缺省调用方式。每一个调用它的函数都包含清空堆栈的代码,所以产生的可执行文件大小会比调用_stdcall函数的大。函数采用从右到左的压栈方式。注意:对于可变参数的成员函数,始终使用__cdecl的转换方 阅读全文
posted @ 2011-07-28 16:45 心随灵动 阅读(1104) 评论(0) 推荐(0) 编辑
摘要: 什么是ANSI,什么又是UNICODE呢?其实这是两种不同的编码方式标准,ANSI中的字符采用 8bit,而UNICODE中的字符采用16bit。(对于字符来说ANSI以单字节存放英文字符,以双字节存放中文等字符,而Unicode下,英文和 中文的字符都以双字节存放)Unicode码也是一种国际标准编码,采用二个字节编码,与ANSI码不兼容。目前,在网络、Windows系统和很多大型 软件中得到应用。8bit的ANSI编码只能表示256种字符,表示26个英文字母是绰绰有余的,但是表示汉字,韩国语等有着成千上万个字符的非西方字符 肯定就不够了,正是如此才引入了UNICODE标准。 在软件开发中, 阅读全文
posted @ 2011-07-28 16:15 心随灵动 阅读(545) 评论(0) 推荐(0) 编辑