下面是小编收集整理的WinCE BSP中的Dirs文件和Sources文件,本文共10篇,供大家参考借鉴,希望可以帮助到有需要的朋友。本文原稿由网友“出水郭芙蓉”提供。
篇1:WinCE BSP中的Dirs文件和Sources文件
1.Dirs文件
关于Dirs文件,就是指定要编译的路径,这个地球人都知道,还是简单介绍一下。按照文档上面介绍有三种定义:DIRS,DIRS_CE和OPTIONAL_DIRS。
DIRS:就是指定要编译的目录。
DIRS_CE:只有目录下的源代码用于WinCE的映像文件时,才编译该目录。
OPTIONAL_DIRS:指定可以选择编译的目录。比如:OPTIONAL_DIRS=proj1,如果想编译proj1目录,可以设置BUILD_OPTIONS=proj1,然后运行build命令就可以了。
举个例子:
DIRS= common \\drivers \\oal \\bootloader
表示需要编译common,drivers,oal和bootloader目录。
DIRS=*
表示编译当前的所有目录。
2.Sources文件
在WinCE BSP中会看到很多sources文件,一般会和源代码放在同一个目录,当然不是绝对的。这些sources文件里面就是定义了一些宏,主要用于告诉Build.exe在编译源代码的时候应该如何编译和链接,告诉Nmake.exe如何编译源代码以及最后生成什么类型的文件。
下面具体介绍一下:
TARGETNAME:最后编译完后生成的目标文件的名字,不包括扩展名。
TARGETTYPE:生成的文件的类型。具体值如下:
LIBRARY,一个.lib文件
DYNLINK,一个.dll文件
PROGRAM,一个.exe文件
RELEASETYPE:该宏设置两个环境变量RELEASEDIR和RELEASELIBDIR,就是设置编译后生成文件存放的路径。具体值如下:
PLATFORM,生成的文件在PLATFORM\\
LOCAL,生成的文件在当前路径下
CUSTOM,生成的文件在TARGETPATH指定的位置
MANAGED,生成的文件在%_PROJECTROOT%\\OAK\\
OAK, SDK, DDK,生成的文件在%_PROJECTROOT%\\Oak\\
TARGETPATH:当上面的RELEASETYPE=CUSTOM的时候,该宏指定路径
SOURCELIBS:静态链接。函数的实体被链接过来,生成一份拷贝
TARGETLIBS:动态链接。函数的地址被链接过来,系统执行时会加载该库
INCLUDES:指定额外的要搜索的头文件的路径
SOURCES:指定要被编译的文件
ADEFINES:指定汇编器要使用的参数
CDEFINES:指定编译器要使用的参数
LDEFINES:指定连接器要使用的参数
RDEFINES:指定资源编译器Rc.exe的参数
DLLENTRY:指定dll的入口函数
DEFFILE:指定该模块的.def文件
EXEENTRY:指定可执行文件的入口函数
SKIPBUILD:不做实际的build操作,直接返回成功
WINCECOD:编译后生成一个.cod的汇编文件,用于查看汇编代码调试
WINCECPU:用于说明为指定的CPU编译,这样被编译出来的目标文件会被放在_TGTCPU环境变量所指定的子目录下面,一般该宏在sources.cmn中定义,
WINCEMAP:编译后生成一个.map文件,用于调试
WINCEOEM:设置该值表示需要使用WinCE下的一些公用的库和头文件,该值一般在BSP中的sources.cmn中定义。
WINCETARGETFILE0:用于告诉编译系统在编译当前路径下的源码文件之前,要先由Build.exe编译的目标文件。
WINCETARGETFILES:用于告诉编译系统在链接当前路径下所有的目标文件之前,要先由Build.exe编译的目标文件。
WINCE_OVERRIDE_CFLAGS:用于定义用户自己的编译器参数取代默认的编译器参数。
举个例子:
TARGETNAME=serial_smdk2410TARGETTYPE=DYNLINKRELEASETYPE=PLATFORM.TARGETLIBS=$(_COMMONSDKROOT)\\lib\\$(_CPUINDPATH)\\coredll.lib \\ $(_SYSGENOAKROOT)\\lib\\$(_CPUINDPATH)\\ceddk.libSOURCELIBS=$(_SYSGENOAKROOT)\\lib\\$(_CPUINDPATH)\\serpddcm.lib \\ $(_SYSGENOAKROOT)\\lib\\$(_CPUINDPATH)\\com_mdd2.libDEFFILE=serial.defDLLENTRY=_DllEntryCRTStartupSOURCES= ser_smdk2410.cpp \\ pdds3c2410_ser.cpp
需要编译的文件为ser_smdk2410.cpp和pdds3c2410_ser.cpp,DEF文件为serial.def,DLL的入口函数是_DllEntryCRTStartup,静态连接serpddcm.lib和com_mdd2.lib两个库,动态链接coredll.lib和ceddk.lib两个库,最终编译为dll文件,文件名为serial_smdk2410.dll。
最后总结一下,Dirs文件会和Sources文件配合使用,但是他们不可能存在同一个目录下面。Dirs文件指定编译目录,Sources文件指定如何编译。
篇2:在ASP.NET中如何进行文件上传
在ASP.NET中如何进行文件上传
上传文件的步骤:
首先,从客户端取得上传的文件,然后,我们将它放入数据流;
第二,服务器端读取数据流,然后将其保存到缓存;
第三,将缓存数据保存到数据库;
第一步
首先我们要实现用户在浏览器端自由选择文件,然后上传,这里用户选择文件,当然是要求标准的Windows方式,所以,我们在这里使用Form的File 文件组件来给用户选择文件,注意,因为上传文件,所以,在Form的属性设置的时候,我们应该设置为:multipart/form-data,这样,才可以正确上传文件。
下面是上传页面的主要代码:
第二步
我们可以将上传的文件通过数据流保存到缓存,缓存的`大小和文件的具体大小相同,我们可以使用以下的代码来取得文件的具体大小:
int intDocLen = txtFileContents.PostedFile.ContentLength;
然后,我们可以设置缓存的具体大小了:
byte[] Docbuffer = new byte[intDoclen];
这样设置以后,我们可以将上传文件的内容保存到缓存中:
Stream objStream;
objStream = txtFileContents.PostedFile.InputStream;
objStream.Read(Docbuffer,0,intDocLen);
在以上代码中,读取缓存的时候,从缓存的0位置开始,直到整个文件的长度,其实,这就是整个文件或者整个缓存的大小。
第三步
现在我们需要做的就是将缓存数据保存到数据库,我们已经直到数据表结 构,这样,我们通过编写简单的SQL语句就可以实现这个功能。在上面的内容中,我们编写了一个存储过程,在程序中,我们只要建立SqlCommand对象并且将这个存储过程传递给它,并设置“@Doc”参数取得缓存数据就可以了:
cmdUploadDoc = new SqlCommand(“uSP_BooksUploadFile”,BooksConn);
cmdUploadDoc.CommandType = CommandType.StoredProcedure;
cmdUploadDoc.Parameters.Add(“@Title “,SqlDbType.VarChar,200);
cmdUploadDoc.Parameters.Add(“@Doc”,SqlDbType.Image); cmdUploadDoc.Parameters.Add(“@DocType”,SqlDbType.VarChar,4);
cmdUploadDoc.Parameters[0].Value = txtTitle.Text;
cmdUploadDoc.Parameters[1].Value = Docbuffer;
cmdUploadDoc.Parameters[2].Value = strDocType;
点击按钮处理代码
private void btnSubmit_Click(object sender, System.EventArgs e)
{
string strDocExt;
//strDocType用于保存上传文件的类型
string strDocType;
//用于保存文件大小
int intDocLen;
//Stream用于读取上传数据
Stream objStream;
SqlConnection BooksConn;
SqlCommand cmdUploadDoc;
if(IsValid)
{
if(txtFileContents.PostedFile != null)
{
//文件类型
篇3:Fedora中如何创建文件夹和创建文件
Fedora中,创建文件和文件夹的命令不同,
创建文件使用的命令是touch,而创建文件夹的命令是mkdir。
下面举例说明两种命令如何使用:
1.touch命令
(1)在当前目录下,创建一个名称为lyc的文件
可以看出,已经在当前目录下成功创建文件lyc,
(2)在aaa文件夹(目录)中,创建文件lyc
2.mkdir命令
(1)在当前目录下,创建一个名称为bbb的文件夹(目录)
(2)在当前aaa文件夹下,创建一个名称为bbb的文件夹(目录)
可以看出,已经成功在aaa文件夹(目录)下创建bbb文件夹(目录)。
篇4:Vista 系统中修改Hosts文件
在WindowsVista中修改Hosts文件或Lmhosts文件时,有可能会发生两种错误,
错误消息 1
拒绝访问 C:\\Windows\\System32\\drivers\\etc\\ hosts
错误消息 2
不能创建文件 C:\\Windows\\System32\\drivers\\etc\\hosts。
请确认路径和文件名是否正确,
即使使用拥有管理凭据的帐户登录,也会出现此问题。
替代方法
要解决此问题,请按照下列步骤操作:
1.单击“开始”,单击“所有程序”,单击“附件”,右键单击“记事本”,然后单击“以管理员身份运行”。
如果系统提示您输入管理员密码或进行确认,请键入密码或单击“允许”。
2.打开 Hosts 文件或 Lmhosts 文件,进行必要的更改,然后单击“编辑”菜单上的“保存”。
篇5:在Word文档中插入文件对象
在Word2010文档中,用户可以将整个文件作为对象插入到当前文档中,嵌入到Word2010文档中的文件对象可以使用原始程序进行编辑。以在Word2010文档中插入Excel文件为例,操作步骤如下所述:
第1步,打开Word2010文档窗口,将插入条光标定位到准备插入对象的位置。切换到“插入”功能区,在“文本”分组中单击“对象”按钮,如图1所示。
图1 单击“对象”按钮第2步,在打开的“对象”对话框中切换到“由文件创建”选项卡,然后单击“浏览”按钮,如图2所示。
图2 “由文件创建”选项卡第3步,打开“浏览”对话框,查找并选中需要插入到Word2010文档中的Excel文件,并单击“插入”按钮,如图3所示,
图3 单击“插入”按钮第4步,返回“对象”对话框,单击“确定”按钮,如图4所示。
图4 “对象”对话框返回Word2010文档窗口,用户可以看到插入到当前文档窗口中的Excel文件对象。默认情况下,插入到Word文档窗口中的对象以图片的形式存在。双击对象即可打开该文件的原始程序对其进行编辑,如图5所示。
图5 插入到Word文档中的Excel文件小提示:对于Word2010所支持的Office组件对象,单击对象以外的任意区域即可取消对象的编辑状态。
篇6:在VB中调用HTMLHELP文件VB
在 VB 中调用HTMLHELP文件 湖北省襄樊市劳动保险处 闫东 ---- HTML帮助文件是 WINDOWS 基本帮助系统的一种新标准,在WINDOWS 98中我们到处都可以看到它的身影,作为一种时尚,我们的应用软件自然也不能够落后,于是我就着手将原来的帮助文件重新编译为HTML帮
在VB中调用HTMLHELP文件
湖北省襄樊市劳动保险处
闫东
---- HTML帮助文件是WINDOWS基本帮助系统的一种新标准,在WINDOWS 98中我们到处都可以看到它的身影。作为一种时尚,我们的应用软件自然也不能够落后,于是我就着手将原来的帮助文件重新编译为HTML帮助文件。从VISUAL STUDIO 98中可以找到 HTML HELP WORKSHOP,使用方法不是太难,由于我有自己的个人网站,制作HTML 文件自然也不在话下。很快,一个帮助文件就完成了(MY.CHM)。可是,如何在VB中调用它呢?
---- 试试原来的API 函数WINHELP,提示出错信息“MY.CHM 文件不是WINDOWS帮助文件,或该文件已经损坏”。显然,WINHELP函数不认识这种新的帮助类型。查看HTML HELP WORKSHOP的帮助文件,它提示可以使用API函数HTMLHELP来调用HTML帮助文件,但只是它是按C语言的格式声明的,如下:
HWND HtmlHelp(HWND hwndCaller,
LPCSTR pszFile, UINT uCommand, DWORD
dwData);
---- 按照说明,参数hwndCaller是窗口的句柄,pszFile是HTML帮助文件的路径和名称, uCommand表明执行的操作,dwData是uCommand参数所必需的值,
它包含在哪个文件中,如何将它转为VB的格式呢?仔细对帮助文件进行研究,帮助文件中提到:HTMLHELP函数被包含在hhctrl.ocx文件中。于是就得到了HTMLHELP函数在VB中的声明:
Declare Function htmlhelp Lib
“hhctrl.ocx” Alias “HtmlHelpA”
(ByVal hwndCaller As Long,
ByVal pszFile As String, ByVal
uCommand As Long, ByVal dwData As Long) As Long
---- 现在回到VB中,谈谈实际的应用。首先当然是要在工程中加入上面的声明,然后编辑工程的菜单,在“帮助”菜单的CLICK方法中加入以下的代码:
htmlhelp HWND,“MY.CHM”,0,0
---- 运行工程后,选择“帮助”菜单就可以显示HTML帮助文件了。
原文转自:www.ltesting.net
篇7:去除网盘中的重复文件
现在很多人喜欢通过网盘来专门的存储一些重要的文件,或者将他人分享的文件转存到自己的网盘里面,但是时间一长难免就会出现,一些不同名称但是内容相同的文件,这样就会占用过多的网盘空间。那么如何快速分析出这些重复的文件,并将其从网盘空间里面彻底删除掉呢?
1. 自带功能快速扫描
由于很多网友都有类似的需求,所以有的网盘运营商已经开发出了相应的功能。比如要想去除快盘中的重复文件,那么首先在系统托盘找到快盘的图标,双击它以后进入到快盘的同步目录里面。接着点击右侧面板中的“文件分析”的功能,在弹出的对话框里面点击“开始分析”按钮,这样快盘的客户端就开始对存储的文件进行分析。当分析完成后点击窗口中的“重复文件”命令,客户端就会将重复文件通过列表的形式显示出来。
当用户想要删除其中的某个文件时,点击文件名称后的“查看”按钮(如图1)。这时客户端就会自动跳转到该文件的目录里面,接下来将这个文件进行删除,然后客户端进行同步操作,这样云端的重复文件也被删除掉了。
除了快盘以外,360云盘的客户端也有类似的功能。用户只需要点击360云盘客户端工具栏中的“功能大全”按钮,在弹出的窗口点击“文件去重”命令。操作和快盘类似。小提示:
以上所讲的重复文件,指的是文件的哈希数值相同的文件,
对于名称相同但内容不同的文件,就不能算相同文件了。
2. 云端服务分析判断
当然并不是所有的客户端都有类似的功能,比如115网盘就把类似的功能放到了云端服务器里面。首先登录自己的115网盘,点击功能列表中的“文件”按钮,这样就进入到存放文件的目录。接着点击窗口右上方的“...”按钮,然后在弹出的菜单里面点击“文件排重”命令,这样云端就开始对云盘中的重复文件进行分析。当分析完成以后选择不需要的文件,如果重复文件较多的话可以直接点击“选择重复文件”按钮,这样云端就会自动帮助用户选择重复的文件(如图2)。最后点击“更多操作”按钮,在弹出的菜单里面选择“删除”命令,就可以将重复文件删除掉了。
3. 借第三方软件协助当然也有一些网盘运营商,既没有在客户端也没有在云端提供类似的功能,这个时候只能借助于第三方软件进行协助了。比如我们首先运行“重复文件扫描器”这款软件,接着点击“添加”按钮来选择网盘的同步目录。然后点击“扫描”按钮进行分析操作,分析完成以后既可以手工选择重复文件,也可以点击“自动选择”按钮让软件进行协助操作(如图3)。最后点击“清理文件”按钮就可以将重复文件进行删除,然后再利用客户端进行一次同步操作,就可以将存放在网盘中的重复文件删除掉。不过,这种方法仅限于同步文件夹中的文件排重处理,对于网盘中的其他文件夹则无能为力了。
篇8:Linux中如何恢复删掉的文件
恢复被误删文件的方法
大多数Linux发行版都提供一个debugfs工具,可以用来对Ext2文件系统进行编辑操作,不过在使用这个工具之前,还有一些工作要做。
首先以只读方式重新挂载被误删的文件所在分区。使用如下命令:(假设文件在/usr分区)
mount –r –n –o remount /usr -r表示只读方式挂载;-n表示不写入/etc/mtab,如果是恢复/etc上的文件,就加上这个参数。如果系统说xxx partion busy,可以用fuser命令查看一下是哪些进程使用这个分区上的文件:
fuser –v –m /usr
如果没有什么重要的进程,用以下命令停掉它们:
fuser -k –v –m /usr
然后就可以重新挂载这些文件系统了。
如果是把所有的文件统一安装在一个大的/分区当中,可以在boot提示符下用linux single进入单用户模式,尽量减少系统进程向硬盘写入数据的机会,要不干脆把硬盘挂在别的机器上。另外,恢复出来的数据不要写到/上面,避免破坏那些有用的数据。如果机器上有dos/windows,可以写到这些分区上面:
mount –r –n /dev/hda1 /mnt/had
然后就可以执行debugfs:(假设Linux在 /dev/hda5)
#debugfs /dev/hda5
就会出现debugfs提示符debugfs:
使用lsdel命令可以列出很多被删除的文件的信息:
Word-WRAP: break-word\" bgColor=#f3f3f3> debugfs:lsdel
debugfs: 2692 deleted inodes found.
Inode Owner Mode Size Blocks Time deleted
164821 0 100600 8192 1/ 1 Sun May 13 19:22:46
36137 0 100644 4 1/ 1 Tue Apr 24 10:11:15 2001
196829 0 100644 149500 38/ 38 Mon May 27 13:52:04 2001
列出的文件有很多(这里找到2692个),第一字段是文件节点号,第二字段是文件所有者,第三字段是读写权限,接下来是文件大小,占用块数,删除时间。
然后就可以根据文件大小和删除日期判断那些是我们需要的。比如我们要恢复节点是196829的文件:
可以先看看文件数据状态:
debugfs:stat <196829>
Inode: 196829 Type: regular Mode: 0644 Flags: 0x0 Version: 1
User: 0 Group: 0 Size: 149500
File ACL: 0 Directory ACL: 0
Links: 0 Blockcount: 38
Fragment: Address: 0 Number: 0 Size: 0
ctime: 0x31a9a574 -- Mon May 27 13:52:04 2001
atime: 0x31a21dd1 -- Tue May 21 20:47:29 2001
mtime: 0x313bf4d7 -- Tue Mar 5 08:01:27 2001
dtime: 0x31a9a574 -- Mon May 27 13:52:04 2001
BLOCKS:
594810 594811 594814 594815 594816 594817
TOTAL: 38
然后就可以用dump指令恢复文件:
debugfs:dump <196829>/mnt/hda/01.sav
这样就把文件恢复出来了,
退出debugfs:
debugfs:quit
另一种方法是手工编辑inode:
debugfs:mi <196829>
Mode [0100644]
User ID [0]
Group ID [0]
Size [149500]
Creation time [0x31a9a574]
Modification time [0x31a9a574]
Access time [0x31a21dd1]
Deletion time [0x31a9a574] 0
Link count [0] 1
Block count [38]
File flags [0x0]
Reserved1 [0]
File acl [0]
Directory acl [0]
Fragment address [0]
Fragment number [0]
Fragment size [0]
Direct Block #0 [594810]
Triple Indirect Block [0]
使用mi指令后每次显示一行信息以供编辑,其它行可以直接按回车表示确认,把deletion time改成0(未删除),Link count改成1。改好后退出debugfs:
debugfs:quit
然后用fsck检查/dev/hda5
fsck /dev/hda5
程序会说找到丢失的数据块,放在lost+found里面。这个目录里的文件就是我们要的东东。
篇9:在Word文档中更改链接文件
在Word2010文档中,如果链接文件的名称或位置发生变化,则用户可以根据实际需要更改链接文件的链接地址或数据范围,操作步骤如下所述:
第1步,打开Word2010文档窗口,右键单击链接对象,在打开的快捷菜单中指向“链接的…对象”级联菜单,并在打开的下一级菜单中选择“链接”命令,如图1所示。
图1选择“链接”命令第2步,打开“链接”对话框,在链接列表中选中需要更改链接地址或数据范围的链接,然后单击“更改源”按钮,如图2所示,
图2 单击“更改源”按钮第3步,在打开的“更改源”对话框中,查找并选中更改后的文件链接地址或新文件,单击“打开”按钮。返回“链接”对话框,单击“确定”按钮即可,如图3所示。
图3 “更改源”对话框小提示:如果用户需要更改链接文件的部分内容,则需要在“更改源”对话框中单击“项目”按钮,在打开的“输入文字”对话框中重新输入数据范围,如图4所示。
图4 更改链接数据范围
篇10:3dmax中如何导出lp格式的文件?
lp是什么格式文件?
LP文件叫做准备文件,如果是跑图完成后的文件是LS文件,叫做解决文件,但是LP文件时不可以用来渲染出图的,所以如果需要将lp文件渲染的话,一般是在输出LP格式文件的时候是在摄像机视图里面输出的,也就是输出的时候激活状态的窗口时摄像机视图窗口。
1:打开需要转化的3dmax场景,是激活窗口为摄像机视图,然后选择“文件”---“导出”然后就会跳出导出对话框。
2:在“导出”对话框中从新命名一个文件名,在保存类型选择Lightscape准备(*.LP)就可以了,然后点击保存,
3:在弹出的“Lightscape准备文件”对话框中设置参数,其实这里有很多参数,我们没有必要调整那么多,只要调整“块创建”后面选择“组”,“创建层”后面选择“材质”,在纹理下面选择“平均纹理颜色”。然后确定就可以了。
到这里就在3dmax上面导出成lp格式文件了。当然如果需要操作方便的话可以在LP里面选择面可以加以细化,这样我们就可以直接用Lightscape来打开lp格式的文件了。
- folder.htt的文件问题2023-08-05
- Filemanagement(文件管理)2023-07-20
- 文件保密工作自查报告2024-06-07
- 文件范文写法2023-04-16
- 呈请文件范文2023-09-14
- asp.net文件的方法2022-12-20
- 帮你找回回收站中误删的文件2025-04-23
- 电脑中文件无法复制的问题2025-06-21
- cp复制文件和目录命令2022-12-21
- 如何修改interfaces文件2022-12-12