- 博客(54)
- 资源 (12)
- 收藏
- 关注
原创 shell脚本调试方法
可以在脚本中,增加set -x语句,打印脚本执行过程。在开始打印的地方,增加set -x, 在结束打印的地方,增加set +x,这样比较灵活。否则,整个脚本的执行过程都会被打印出来。 还有其他参数,详情见:https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html4.3.1 The Set ...
2018-08-22 18:29:55
397
原创 计算嵌入式Linux操作系统内存使用的方法
0. 记录操作系统启动时打印的内存信息。1. 执行“echo 3 >/proc/sys/vm/drop_caches”命令把caches清除。2. 执行“cat /proc/meminfo”命令查看内存。4. 计算公式:32768 = 30176(kernel code + data + apps) + reserved - init
2015-03-13 15:03:59
633
原创 字符串转为小写
#include /* 将字符串中的大写字符全部转换为小写 */void convertToLowerCase ( char *sPtr ){ while ( *sPtr != '\0' ) { *sPtr = tolower ( ( unsigned char ) *sPtr); ++sPtr;
2015-01-21 14:22:45
674
原创 字符串转换为大写
/* 将字符串中的小写字符全部转换为大写 */void convertCharToUpperCase ( char *sPtr ){ while ( *sPtr != '\0' ) { *sPtr = toupper ( ( unsigned char ) *sPtr ); ++sPtr; }}
2015-01-21 14:08:14
509
原创 SecureCRT SSH登录Linux乱码问题解决方案
如果登陆的是Red Hat Enterprise Linux Server,在~/.bash_profile文件中添加“export TERM=xterm-color”如果登录的是Ubuntu Linux,在文件中添加“export TERM=xterm-color”
2015-01-10 15:06:40
551
转载 va_start和va_end使用详解
本文主要介绍va_start和va_end的使用及原理。 在以前的一篇帖子Format MessageBox 详解中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解。 介绍这两个宏之前先看一下C中传递函数的参数时的用法和原理: 1.在C中,当我们无法列出传递函数的所有实参的类型和数目时,可以用省略号指定参数表void foo(..
2014-05-25 19:07:28
867
原创 将字符串中的小写字符全部转换为大写
/* 将字符串中的小写字符全部转换为大写 */void convertToUpperCase ( char *sPtr ){ while ( *sPtr != '\0' ) { *sPtr = toupper ( ( unsigned char ) *sPtr ); ++sPtr; }}
2014-01-18 09:46:51
1816
原创 获取ipv6客户端列表函数
static int DHCP6S_UpdateHost(){ unsigned long ulCurrTime = 0; static unsigned long ulPreUpdateTime = 0; ulCurrTime = time(0); if ( (ulCurrTime - ulPreUpdateTime) {
2013-07-30 20:01:03
716
转载 netconsole配置 .
Netconsole 用于将本地主机的日志信息打印到远程主机上,便于远程用户查看日志信息。至于如何配置Netconsole,网上搜到一篇文章,讲的比较全面,包括了本地主机和远程服务器的配置。这里转载过来,虽是英文的的,但理解起来应该没有难度,就不再翻译了。根据文中netconsole模块的参数形式,应该是适用于2.6内核的。Linux Configure Netconsole To L
2012-06-06 09:28:22
3306
原创 Ubuntu 11.04 启动daytime服务
第一步: 需要安装xinetd服务(其实daytime就包含在xinetd服务中) 第二步: 修改 /etc/xinetd.d/daytime文件。 将此文件中的两个 disable 的值 yes 改为 no 。 第三步:注销下系统或重新启动下xinetd服务。 # /etc/init.d/xinetd restart OK!
2012-03-06 19:15:18
570
原创 Ubuntu 11.04 Samaba 设置
一. Samba的安装:$ sudo apt-get insall samba4$sudo apt-get install system-config-samba 二. 创建Samba共享目录,应修改权限: $sudo mkdir samba_share_folder $sudo chmod 777 samba_share_folder三. 通过
2012-03-03 17:20:17
712
转载 Ubuntu 11.04 NFS 设置
nfs 安装(1)apt-get install nfs-kernel-serverapt-get install portmap nfs-common(2)编辑/etc/exports/home/jgyang/nfsroot *(rw,sync,no_root_squash)(3)修改挂载点的属性chmod 777 /home/jgyang/rootfs(4
2012-03-03 17:11:02
555
原创 Ubuntu Linux 11.04 修改 hostname方法
1. 修改 /etc/hostname文件内容为你想设置的hostname2. 修改/etc/hosts得内容为:127.0.0.1 localhost127.0.1.1 your_local_host_name 搞定!
2012-03-03 14:28:07
429
原创 编译器内嵌宏的使用
printf("This is a test program.\n\n"); printf("Current file is: %s\n",__FILE__); printf("Current Fun is: %s\n",__FUNCTION__); printf("current line is %d\n",__LINE__); printf("Current date is:
2012-02-15 23:22:16
399
原创 VC 中与获取路径有关的函数
1. GetModuleFileName() 可以获取可执行文件的全路径(包括可执行文件的名字),如“f:\WorkSpace\Update\Debug\update.exe”2. 可以通过下面的函数获取当前程序的路径(文件夹)TCHAR m_szAppPath[MAX_PATH]; // 这个是类成员GetAppPath(void){ TCHAR *lpPathTemp;
2011-12-08 17:10:10
608
原创 修改ActiveX控件图标
在 ActiveXCtrl::OnDraw 中: //限制控件窗口大小 if (rcBounds.Height()!=16||rcBounds.Width()!=16) SetControlSize(16,16); //显示位图 //显示位图 CBitmap bitmap; CBitmap* pOldBitmap; CDC MemDC; MemDC.Cre
2011-12-06 19:12:54
672
原创 VC 判断左右"Control"键是否被按下
#define BIT31 (1 // 有按键按下,并已经释放 if((lParam&BIT31)) { if(wParam == VK_CONTROL) { if(GetAsyncKeyState(VK_LCONTROL)) { AfxMessageBox(_T("左侧的Ctrl键按下!")); } else if(GetAsy
2011-12-06 16:24:29
1645
原创 VC 设置应用程序只能运行一个实例
在::InitInstance()中添加以下代码: handle=::CreateMutex(NULL,FALSE,PROC_ID);//handle为声明的HANDLE类型的全局变量 if(GetLastError()==ERROR_ALREADY_EXISTS) { //AfxMessageBox(_T("应用程序已经在运行")); return FALSE;
2011-12-06 09:03:56
433
转载 用VC++建立Service服务应用程序
用VC++建立Service服务应用程序作者:李佳颖(niying) 本文转自:http://www.vckbase.com/document/viewdoc/?id=1677下载源码 本文主要介绍了 OpenSCManager、CreateService、OpenService、ControlService、DeleteService、RegisterServiceC
2011-12-05 09:38:34
387
原创 VC 隐藏对话框
在对话框程序的OnInitDialog()中添加下面的代码即可: // 从任务栏中删掉 ModifyStyleEx(WS_EX_APPWINDOW,WS_EX_TOOLWINDOW); // 设置参数 WINDOWPLACEMENT wh; wh.length=sizeof(WINDOWPLACEMENT); wh.flags=WPF_RESTORETOMAXI
2011-12-02 10:41:37
982
转载 VC实现程序开机自启动
很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动项目,而是直接能够启动运行,方法是写注册表Software//Microsoft//Windows//CurrentVersion//Run 。参考程序可以见下:(查找程序目录的执行文件,存在则进行添加注册表操作) //实用代码一int C***Dlg::CreateRun(void){//添加以下代码HKEY
2011-12-01 10:31:07
561
转载 SetPrinter() 使用范例
// MySetPrinter// // Demonstrates how to use the SetPrinter API. This particular function changes the orienation// for the printer specified in pPrinterName to the orientation specified in dmOr
2011-11-14 17:25:59
2593
原创 设置默认打印机驱动页长
BOOL SetDefaultPrinterPaperSize(short DefaultPrinterPaperSize){ LPTSTR szPrinterName=NULL; DWORD lPrinterNameLength=0; DWORD ret=0; DWORD ErrorNum=0; HANDLE hPrinter; PRINTER_INFO_8 *pP
2011-11-14 17:24:01
1000
原创 获取Windows默认打印机名
#ifdef _FILL_DEFAULT_PRINTER_NAME_ LPTSTR szPrinterName=NULL; DWORD lPrinterNameLength=0; DWORD ret=0; DWORD ErrorNum=0; GetDefaultPrinter(NULL,&lPrinterNameLength); szPrinterName = new T
2011-11-11 20:48:30
1036
转载 Sending Data Directly to a Printer
It is sometimes necessary to bypass the driver and send printer-specific data directly to a printer.The following code shows how this can be done for both local and networked printers.This method
2011-11-10 18:20:38
467
原创 通过注册表设置默认打印机的方法
//获取默认打印机BOOL CPrinterInfo::GetTheDefaultPrinterByReg(){ //通过注册表,获取默认的打印机配置 HKEY defaultKey; DWORD bufferSize = 255; TCHAR *printerName = new TCHAR[255]; //_tprintf_s(_T("\nGet The Defau
2011-07-27 15:42:53
14519
原创 source insight的自动缩进 以及网上的一些使用技巧
让source insight的if(ddd) { }变成:if(ddd){}不过在{}中的第一行还是不能又自动缩进4个字符方法如下:options --> Document Options -->Auto IndentAuto Indent Type选择SimpleSmart Indent Options都选上
2011-06-30 11:40:00
8939
原创 ubuntu10.04下tftp和nfs配置
网络上介绍tftp配置的方法一大堆,有些方法好像不行,最后折腾了半天,把我成功的方法记下来,其实很简单,网上有些说得太复杂了。1.Ubuntu10.04 下安装TFTP软件tftp-hpa是客户端,tftpd-hpa是服务器端sudo apt-get install tftp-hpa tftpd-hpa2.配置TFTP服务器sudo gedit /etc
2011-06-27 22:12:00
562
原创 研究 tekkamanninja-u-boot-2010.03-tekkaman 遇到的问题
发现问题: 在Board.c文件中:start_armboot()函数中: #if defined(CONFIG_MINI2440_LED) writel(0x0, &gpio->GPBDAT); //tekkamanninja#endif 这段代码是关闭蜂鸣器,那是在哪里打开蜂鸣器的呢? 今天就到这里了,明天再继续…
2011-06-21 23:12:00
954
原创 USB入门的一些参考资料(转)
中文参考书籍:1. USB系统架构图解,陈乃塘,陆克文化事业有限公司。2. USB2.0 设计应用全揽,廖惠如总编辑,陆克文化事业有限公司。3. USB理论规范与设计,郭士秋编着,儒林出版社,957-499-211-X。4. USB系统架构,Don Anderson原著,陈振荣编译,碁峰。5. 精通USB 2.0硬件设计,萧世文编着,文魁,P2097。6. USB 2.0程
2011-06-16 16:09:00
1312
原创 文件夹右键排列图标里没修改时间
<br />就是在打开的文件夹里面,按“右键”,在“排列图标”中原来有四个东西,分别是:名称、大小、类型、修改时间。但现在“那个“修改时间”不见了。但在其他文件夹里是有这个的,就是在MP3这个文件夹里没有。如图:<br /><br /> <br /> 解决办法: 1,打开那个文件夹,右键选择“查看”-详细信息。 2,在“名称 大小 类型...”那一栏上点右键,在 修改时间 一项上打钩。(如果没有,则选择“其他...”,再在修改时间 上打钩。) 3,右键选择“查看”-图标/平铺。 4,这时右键-排列图标就会有
2011-04-12 11:25:00
7322
原创 vs2005 添加右键菜单
<br />1. 添加菜单资源,ID修改为:IDR_MENU1,并为其增加子菜单和菜单项<br /> <br />2. 在"PoupUpMenuView.h"中添加右键消息响应函数的声明<br />afx_msg void OnRButtonDown(UINT nFlags, CPoint point);<br /> <br />3. 在"PoupUpMenuView.cpp"中添加右键消息响应函数的定义<br />// 右键按下消息处理函数<br />void CPoupUpMenuView::OnRB
2011-03-22 10:35:00
825
原创 编写动态链接库(dll)时容易出现的问题
<br />项目->属性->配置属性->常规->项目默认值->MFC的使用,应选择为: 在静态库中使用 MFC<br /> <br /> <br />否则会有问题、
2011-03-21 11:38:00
400
原创 VC++下“CString”与“char *”的相互转化
<br />1. CString 转换为 char *:<br /> <br />char * PJoblist= NULL;<br />CString JobListStr = _T("");<br /> <br />USES_CONVERSION; <br />pJobList = T2A(JobListStr); <br /> <br /> <br /> <br /> <br />2. char * 转换为 CString:<br /> <br />char * pMyJobList = NULL;<
2011-03-17 09:48:00
586
串口 自发自收 数据对比
2011-08-18
pediy_program_asm_design.chm
2010-08-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人