Windows API 函数 for Visual Basic
类别
控件与消息函数 共91个函数
硬件与系统函数 共98个函数
设备场景函数 共73个函数
绘图函数 共105个函数
位图、图标和光栅运算函数 共39个函数
菜单函数 共37个函数
文本和字体函数 共41个函数
打印函数 共66个函数
文件处理函数 共118个函数
进程和线程函数 共40个函数
Windows消息函数 共11个函数
网络函数 共14个函数
类别
控件与消息函数 共91个函数
硬件与系统函数 共98个函数
设备场景函数 共73个函数
绘图函数 共105个函数
位图、图标和光栅运算函数 共39个函数
菜单函数 共37个函数
文本和字体函数 共41个函数
打印函数 共66个函数
文件处理函数 共118个函数
进程和线程函数 共40个函数
Windows消息函数 共11个函数
网络函数 共14个函数
系统平均负载被定义为在特定时间间隔内运行队列中(在CPU上运行或者等待运行多少进程)的平均进程树。如果一个进程满足以下条件则其就会位于运行队列中:
- 它没有在等待I/O操作的结果
- 它没有主动进入等待状态(也就是没有调用’wait’)
- 没有被停止(例如:等待终止)
例如:
# uptime
7:51pm up 2 days, 5:43, 2 users, load average: 8.13, 5.90, 4.94
命令输出的最后内容表示在过去的1、5、15分钟内运行队列中的平均进程数量。
一般来说只要每个CPU的当前活动进程数不大于3那么系统的性能就是良好的,如果每个CPU的任务数大于5,那么就表示这台机器的性能有严重问题。对于上面的例子来说,假设系统有两个CPU,那么其每个CPU的当前任务数为:8.13/2=4.065。这表示该系统的性能是可以接受的。
在Linux系统中,uptime、w、top等命令都会有系统平均负载load average的输出。
[Mark Allen Weiss]数据结构与算法分析(C语言版)课本部分源代码
Source Code for Data Structures and Algorithm Analysis in C (Second Edition)
资源原始地址如下,有时候可能访问不到,需要通过代理访问.
http://www.cs.fiu.edu/~weiss/dsaa_c2e/files.html
背景
Google的开源项目大多使用C++开发。每一个C++程序员也都知道,C++具有很多强大的语言特性,但这种强大不可避免的导致它的复杂,这种复杂会使得代码更易于出现bug、难于阅读和维护。
本指南的目的是通过详细阐述在C++编码时要怎样写、不要怎样写来规避其复杂性。这些规则可在允许代码有效使用C++语言特性的同时使其易于管理。
风格,也被视为可读性,主要指称管理C++代码的习惯。使用术语风格有点用词不当,因为这些习惯远不止源代码文件格式这么简单。
使代码易于管理的方法之一是增强代码一致性,让别人可以读懂你的代码是很重要的,保持统一编程风格意味着可以轻松根据“模式匹配”规则推断各种符号的含义。创建通用的、必需的习惯用语和模式可以使代码更加容易理解,在某些情况下改变一些编程风格可能会是好的选择,但我们还是应该遵循一致性原则,尽量不这样去做。
本指南的另一个观点是C++特性的臃肿。C++是一门包含大量高级特性的巨型语言,某些情况下,我们会限制甚至禁止使用某些特性使代码简化,避免可能导致的各种问题,指南中列举了这类特性,并解释说为什么这些特性是被限制使用的。
由Google开发的开源项目将遵照本指南约定。
注意:本指南并非C++教程,我们假定读者已经对C++非常熟悉。
下载Google C++编程风格指南 (27)
时间简史 ——从大爆炸到黑洞
史蒂芬·霍金 著 许明贤、吴忠超 译
图书相关信息:
第一章 我们的宇宙图像
大部分人会觉得,把我们的宇宙喻为一个无限的乌龟塔相当荒谬,可是为什么我们自以为知道得更多一些
呢?我们对宇宙了解了多少?而我们又是怎样才知道的呢?……
第二章 时间和空间
在以后的几十年中,对空间和时间的新的理解是对我们的宇宙观的变革。古老的关于基本上不变的、已经存
在并将继续存在无限久的宇宙的观念,已为运动的、膨胀的并且看来是从一个有限的过去开始并将在有限的将来
终结的宇宙的观念所取代。……
第三章 膨胀的宇宙
宇宙不可能像原先人们所想像的那样处于静态,而实际上是在膨胀;不同星系之间的距离一直在增加着。宇
宙膨胀的发现是20 世纪最伟大的智慧革命之一。事后想起来,何以过去从来没有人想到这一点?!……
第四章 不确定性原理
人们会以为,每个电子只穿过其中的一条缝,这样它的行为正如同另一个狭缝不存在时一样——屏幕会给出
一个均匀的分布。然而,实际上即使电子是一个一个地发出,条纹仍然出现,所以每个电子必须在同一时刻通过
两个小缝! ……
第五章 基本粒子和自然的力
携带力的粒子按照其携带力的强度以及与其相互作用的粒子可以分成四种。必须强调指出,将力划分成四种
是种人为的方法;它仅仅是为了便于建立部分理论,而并不别具深意。大部分物理学家希望最终找到一个统一理
论,该理论将四种力解释为一个单独的力的不同方面。……
第六章 黑洞
事件视界,也就是空间——时间中不可逃逸区域的边界,正如同围绕着黑洞的单向膜:物体,譬如不谨慎的
航天员,能通过事件视界落到黑洞里去,但是没有任何东西可以通过事件视界而逃离黑洞。……
第七章 黑洞不是这么黑的
我们知道,任何东西都不能从黑洞的事件视界之内逃逸出来,何以黑洞会发射粒子呢?量子理论给我们的回
答是,粒子不是从黑洞里面出来的,而是从紧靠黑洞的事件视界的外面的“空”的空间来的!……
第八章 宇宙的起源和命运
为了解释我和其他人关于量子力学如何影响宇宙的起源和命运的思想,必须首先按照“热大爆炸模型”来理解
为大家所接受的宇宙历史。……
第九章 时间箭头
所以,我们对时间方向的主观感觉或心理学时间箭头,是在我们头脑中由热力学时间箭头所决定的。正像一
个计算机,我们必须在熵增加的顺序上将事物记住。这几乎使热力学定律变成为无聊的东西。……
第十章 虫洞和时间旅行
这样看来,快速空间旅行和往时间过去旅行似乎都不可行了。然而,还可能有办法。人们也许可以把时空卷
曲起来,使得A 和B 之间有一近路。在A 和B 之间创造一个虫洞就是一个法子。……
第十一章 物理学的统一
如果我们确实发现了宇宙的终极理论,这意味着什么?正如第一章所解释的,我们将永远不能肯定我们是否
确实找到了正确的理论,因为理论不能被证明。……
第十二章 结论
然而,如果我们确实发现了一套完整的理论,它应该在一般的原理上及时让所有人(而不仅仅是少数科学家)
所理解。那时,我们所有人,包括哲学家、科学家以及普普通通的人,都能参加为何我们和宇宙存在的问题的讨
论。如果我们对此找到了答案,则将是人类理智的最终极的胜利——因为那时我们知道了上帝的精神。
时间简史 (22)
安装好Python环境,然后下载 http://peak.telecommunity.com/dist/ez_setup.py ,执行之,搞定。这下安装某些软件便不会出现找不到setuptools了,当然还有更高级的用途,多用多发现。
SQLite是个好东东,厌恶Access的好用,喜欢开源实惠的也好用。偶准备开始入门了哈,学习学习先。
墙外的朋友看这里http://program-think.blogspot.com/2009/03/opensource-review-sqlite-database.html
墙里的朋友看这里http://blog.csdn.net/program_think/archive/2009/03/13/3985829.aspx
.NET环境下玩的看这里http://www.cnblogs.com/terryfeng/archive/2009/03/08/1406121.html
Visual Basic是全球最受欢迎的编程语言,拥有最大的用户群。作为Visual Studio .NET主体语言之一的VB.NET已被更新,包括许多新的和改进的语言功能,使VB.NET成为功能强大的面向对象的编程语言,不仅可以开发Windows应用程序,而且可以开发Web应用程序及企业级分布式应用程序。本章的主要目的是使读者了解VB.NET的主要特点,熟悉Visual Studio.NET的集成开发环境,能够编写简单的VB.NET程序,掌握简单的界面设计及几个常用控件的简单使用,为后续章节的学习打下良好的基础。
Visual Basic .NET应用程序 (26)
本书章节内容的组织
第1章,正则表达式匹配器,作者Brian Kernighan,介绍了对一种语言和一个问题的深入分析以及由此产生的简洁而优雅的解决方案。
第2章,我编写过的最漂亮代码,作者Jon Bentley,介绍了如何在无需执行函数的情况下测试函数的性能。
第3章,美丽的测试,作者Alberto Savoia,介绍了一种全新的测试方法,不仅能够消除bug,还可以使你成为一个更优秀的程序员。
第4章,NASA火星漫步者任务中的高可靠企业系统,作者Ronald Mak,介绍了如何使用工业标准,最佳实践和Java技术来满足NASA探险任务的高可靠性需求。
第5章,美丽的并发,作者Simon Peyton Jones,通过软件事务内存(Software Transactional Memory)来消除大多数并发程序中的困难,在本章中使用Haskell语言来说明。
第6章,以REST方式集成业务伙伴,作者Andrew Patzer,通过根据需求来设计一个B2B Web Service从而表现出设计者对程序开发人员的尊重。
我想把上传的文件保存到数据库,还真不容易,于是自己写了个类先忽悠下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 | <% Option Explicit Dim Request_Data Class SimpleUpload Private int_ClassName Private int_Version Private int_LastUpdate Private int_Author Private int_Homepage Public dic_Form,dic_File Private int_FileLen Private Sub Class_Initialize() Dim m_strError,Crlf,Data_Start,Data_End m_strError = "" int_ClassName = "SimpleUpload" int_Version = "0.1" int_LastUpdate = "2009-05-17" int_Author = "coco" int_Homepage = "http://www.ioio.name/" Crlf = chrB(13) & chrB(10) Set dic_Form=Server.CreateObject("Scripting.Dictionary") Set dic_File=Server.CreateObject("Scripting.Dictionary") If Request.TotalBytes < 1 Then Exit Sub Request_Data = Request.BinaryRead(Request.TotalBytes) Data_Start = 1 Data_End = LenB(Request_Data) Dim pos_InStrB,sStart,iStart,iInfoEnd,sInfo,iFindStart,iFindEnd,sFormName,sFormValue,sFileName pos_InStrB = InStrB(Data_Start,Request_Data,Crlf) sStart = MidB(Request_Data,1, pos_InStrB-1) iStart = LenB(sStart) Data_Start = Data_Start + iStart + 1 while (Data_Start + iStart) < Data_End iInfoEnd = InStrB(Data_Start,Request_Data,Crlf & Crlf) sInfo = BinaryToString(MidB(Request_Data,Data_Start,iInfoEnd-Data_Start)) Data_Start = InStrB(iInfoEnd,Request_Data,sStart) iFindStart = InStr(22,sInfo,"name=""",1)+6 iFindEnd = InStr(iFindStart,sInfo,"""",1) sFormName = lcase(Mid(sinfo,iFindStart,iFindEnd-iFindStart)) If InStr (45,sInfo,"filename=""",1) > 0 Then iFindStart = InStr(iFindEnd,sInfo,"filename=""",1)+10 iFindEnd = InStr(iFindStart,sInfo,"""",1) sFileName = Mid (sinfo,iFindStart,iFindEnd-iFindStart) Dim theFile Set theFile = new FileInfo theFile.FileName = getFileName(sFileName) theFile.FilePath = getFilePath(sFileName) theFile.FileStart = iInfoEnd+3 theFile.FileSize = Data_Start - iInfoEnd-6 theFile.FormName= sFormName if not dic_File.Exists(sFormName) then dic_File.add sFormName,theFile end if Else sFormValue = BinaryToString(MidB(Request_Data,iInfoEnd+4,Data_Start - iInfoEnd-4)) if dic_Form.Exists(sFormName) then dic_Form(sFormName)=dic_Form(sFormName)&", "&sFormValue else dic_Form.Add sFormName,sFormValue end if End If Data_Start = Data_Start + iStart + 1 wend End Sub Private Sub Class_Terminate() m_strError = "" int_Version = "" Set dic_Form=Nothing Set dic_File=Nothing End Sub Public Property Get ClassName ClassName = int_ClassName End Property Public Property Get Version Version = int_Version End Property Public Property Get LastUpdate LastUpdate = int_LastUpdate End Property Public Property Get Author Author = int_Author End Property Public Property Get Homepage Homepage = int_Homepage End Property Public Property Get FileLen FileLen = int_FileLen End Property Public Function PrintInfo() Response.Write("Class Name: "+ClassName()+"<br/>") Response.Write("Version: "+Version()+"<br/>") Response.Write("LastUpdate: "+LastUpdate()+"<br/>") Response.Write("Author: "+Author()+"<br/>") Response.Write("Homepage: "+Homepage()+"<br/>") End Function Function BinaryToString(Binary) Dim I, S For I = 1 To LenB(Binary) S = S & Chr(AscB(MidB(Binary, I, 1))) Next BinaryToString = S End Function Private function GetFilePath(FullPath) If FullPath <> "" Then GetFilePath = left(FullPath,InStrRev(FullPath, "\")) Else GetFilePath = "" End If End function Private function GetFileName(FullPath) If FullPath <> "" Then GetFileName = mid(FullPath,InStrRev(FullPath, "\")+1) Else GetFileName = "" End If End function Public function Form(strForm) strForm=lcase(strForm) if not dic_Form.exists(strForm) then Form="" else Form=dic_Form(strForm) end if end function Public function File(strFile) strFile=lcase(strFile) if not dic_File.exists(strFile) then set File=new FileInfo else set File=dic_File(strFile) end if End function End Class Class FileInfo dim FormName,FileName,FilePath,FileSize,FileType,FileStart Private Sub Class_Initialize FileName = "" FilePath = "" FileSize = 0 FileStart= 0 FormName = "" FileType = "" End Sub Public Function GetBinary Dim tStream,bb set bb=CreateObject("Adodb.Stream") bb.Type=1 bb.Open bb.Write Request_Data bb.position=FileStart Set tStream = Server.CreateObject("ADODB.Stream") tStream.Type = 1 tStream.Open bb.copyto tStream,FileSize bb.Close tStream.Position=0 GetBinary = tStream.Read tStream.Close set bb=nothing set tStream=nothing End Function Public function SaveAs(FullPath) dim dr,ErrorChar,i,bb SaveAs=true if trim(fullpath)="" or FileStart=0 or FileName="" or right(fullpath,1)="/" then exit function set dr=CreateObject("Adodb.Stream") set bb=CreateObject("Adodb.Stream") bb.Mode=3 bb.Type=1 bb.Open bb.Write Request_Data dr.Mode=3 dr.Type=1 dr.Open bb.position=FileStart bb.copyto dr,FileSize bb.Close dr.SaveToFile FullPath,2 dr.Close set bb=nothing set dr=nothing SaveAs=false end function End Class %> |
使用样例,数据库就几个字段,自己搞一下好了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <!--#include file="simpleupload.asp"--> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>aaa</title> </head> <body> <% Dim conn,connstr,accessdb,rs accessdb="images.mdb" Set conn=Server.CreateObject("ADODB.Connection") connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(accessdb) Dim upload,filet,filename Set upload=new simpleupload if upload.Form("sub")<>"submit" then Response.Write("添加成功") set filet=upload.file("img") conn.Open connstr Set Rs = Server.CreateObject("ADODB.Recordset") Rs.Open "Select * from file where id=0",conn,1,3 'If Rs.BOF or Rs.EOF Then Rs.AddNew Rs("upload_date")=Now() Rs("title")=Trim(upload.Form("title")) Rs("content")=Trim(upload.Form("con")) Rs("pdf").appendchunk filet.GetBinary Rs.update 'End If Rs.Close Set Rs=Nothing conn.Close Response.Write("添加成功") Response.Write(upload.Form("abc")) end if %> <form action="" method="post" enctype="multipart/form-data"> <input name="title" type="text" value="" /><br /> <textarea name="con" cols="" rows=""></textarea> <br /> <input name="img" type="file" /> <input name="sub" type="submit" value="submit" /> </form> </body> </html> |