ASPCMS作为国内流行的ASP.NET内容管理系统,其文件目录结构是网站开发与运维的核心基石,合理的目录规划不仅直接影响开发效率、代码可维护性,更关系到网站性能、安全与用户体验。
如何让python调用C和C++代码
要搞明白如何让python调用C/C++代码(也就是写python的extension),你需要征服手册中的<>厚厚的一章。 在昨天花了一个小时看地头晕脑胀,仍然不知道如何写python的extension后,查阅了一些其他书籍,最终在<>书中找到了教程。 1. 首先要明白的是,所谓的python扩展(也就是你提供给python的c/c++代码,不一定是c/c++代码,可以是其他语言写的代码)是一个dll,并且这个dll放在本机python安装目录下的DLLs目录下(譬如我机器上的路径是:F:/Program Files/Python25/DLLs),假如我们接下来要写的扩展module名为mb,python调用的代码为:import (Pythons really amazing, I kindda love it!) 2. 搭建环境,我们要使用python提供的c头文件和lib库来进行扩展的开发。 在vs 2005下点击菜单 工具->选项, 打开选项对话框,选择项目和解决方案->VC++目录, 然后在右边显示以下内容的目录得comboBox上选择包含文件”,添加python的include目录(我的机器上是F:/Program Files/Python25/include),然后选择库文件,添加python的libs目录(我的机器上是F:/Program Files/Python25/libs)。 既然扩展是一个dll,接下来我们要建立一个“动态链接库”工程,然后开始写代码: #include //python.h是包含python一些定义的头文件,在python的include目录下/*我的python版本是2.5, 因为安装python后它没提供debug下的lib库文件,因此你必须生成release版的dll, 想要生成dll版本的,你要到python官网上自己去下载python源代码,当然你可以继续生成release版本的dll,但dll中包含调试信息*/#pragma comment(lib, )//先不管static PyObject* mb_showMsg(PyObject* self, PyObject *args);/*如果你的扩展是mb,那么必须实现一个initmb函数,并且从dll中导出这个函数,但我们在python中调用import mb时,python会去dll里去调用 extern C __declspec(dllexport) void initmb(){/*当调用(Pythons really amazing, I kindda love it!)时, 相当于你告诉python我有一个showMsg函数,我们怎么告诉python去调用我们dll里的mb_showMsg函数呢?技巧就是下面的方式,定义一个字典数据结构,key => showMsg, value =>mb_showMsg,METH_VARARGS是函数调用方式,仔细查手册吧*/static PyMethodDef mbMethods[] = { {showMsg, mb_showMsg, METH_VARARGS}, {NULL, NULL, NULL} /*sentinel,哨兵,用来标识结束*/};//告诉python我们的模块名叫mb, 模块包含的函数都在mbMethods字典里 PyObject *m = Py_InitModule(mb, mbMethods);}/*接下来实现核心功能showMsg*///第一个self参数我们用不着,具体查手册,第二个参数是python传给我们的参数,它是一个python的参数tuple static PyObject* mb_showMsg(PyObject* self, PyObject *args){//我们的showMsg函数需要的是一个字符串参数 const char* msg = NULL;/*调用特殊参数解码python传递给我们的参数,s是string,我们传递接收参数的变量地址, 如果你的功能函数需要两个参数,在PyArg_parsetuple后面继续添加接受参数的变量地址, 这个函数的原型是类似printf的不定参数的形式 PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...);*/if (!PyArg_ParseTuple(args, s, &msg)) return NULL;//调用MBint r = ::MessageBox(NULL, hello, Caption:Form C module, MB_ICONINFORMATION | MB_OK);//返回值return Py_BuildValue(i, r);}将上面这段混杂着大量注释的代码拷贝到你的编辑器里,然后编译生成,修改后缀成,然后拷贝到python的DLLs目录下,打开idle(python的交互程序),写入代码:import (Pythons really amazing, I kindda love it!)
DNF下载列表失败是怎么回事?
楼主,您好!~ 1.建议从官方完整下载程序。 2.建议你关掉其他的所有程序,卸载原先的,然后重新安装。 3.网络延迟。 ,现 在正是玩的人多的时候,服务器也不算大。 满员时网速慢的排队靠后 解决办法:别人不登陆的时间段你登陆,也就是早10点前,晚12点后。 白天避免吃饭的时间登陆。 4.有时候CPU系统负担不起运行会死机,而且现在玩的人很多,你网速慢就很可能掉线,只要重新登陆,选择网速优秀的区就可以了。 5.有时不能玩是因为键盘不能用:你鼠标没有点到游戏界面,你用鼠标点击一下游戏界面就可以了, 再不行就按NumLock数字键,数字键不亮了就可以了 6.有病毒 公测开始后仍有部分玩家反馈在安装游戏以后,瑞星杀毒软件会提示查找到病毒文件,根据游戏技术部门鉴定,是由于游戏内嵌防沉迷系统造成瑞星 误报,游戏安装文件内并不存在病毒文件,特此声明! 为了保证广大用户能够正常进行游戏,建议安装瑞星杀毒软件的用户在得到瑞星所报病毒指向所安装的文件夹时,不要选择删除或屏蔽(如图,加入白名单,选择放过文件)。 否则将无法进行正常游戏。 如果已经在瑞星提示后删除了部分文件,请看以下本人琢磨实验出的过程: 1:打开瑞星杀毒软件,点操作,然后点历史记录,出来历史记录页面后点主动防御记录,接着点恶意行为检测,这里就是被瑞星隔离的文件。 (这是由于游戏内嵌防沉迷系统造成瑞星 误报,其实游戏安装文件内并不存在病毒文件.)把被隔离的文件名打好复制下来,(拉到右边活动的进程就是) 2:点设置,接着点防御设置,输入验证码后出来防御页面。 把恶意行为检测前面那个勾给去了然后打开下载更新补丁.下载好后安装。 3:安装好后重新打开瑞星杀毒软件,点设置,接着点防御设置,输入验证码后出来防御页面,接着点主动防御名单,出来页面后点击添加,再点浏览,在文件名那一项粘贴先前复制好的被隔离的文件名(隔离的文)输入好后点打开接着点确定。 然后打上帐号密码就不会出现无响应问题了。 4:确定可以进去后,接着把恶意行为检测前面所去掉的那个勾从新勾上点确定就OK了。 腾讯游戏爱好者真诚为您解答.
所见即所得 型 网页制作工具有哪些》?
一、菜鸟级网页制作软件如果你是一个网页制作初学者,那么让下面几种软件带你走进那绚丽多彩的网页制作世界吧!①Microsoft FrontPage如果你曾对Word很熟悉,那么相信你用FrontPage进行网页设计一定会非常顺手。 使用FrontPage制作网页,你能真正体会到“功能强大,简单易用”的含义。 页面制作由FrontPage中的Editor完成,其工作窗口由3个标签页组成,分别是“所见即所得”的编辑页,HTML代码编辑页和预览页。 FrontPage带有图形和GIF动画编辑器,支持CGI和CSS。 向导和模板都能使初学者在编辑网页时感到更加方便。 FrontPage最强大之处是其站点管理功能。 在更新服务器上的站点时,不需要创建更改文件的目录。 FrontPage会为你跟踪文件并拷贝那些新版本文件。 FrontPage是现有网页制作软件中惟一既能在本地计算机上工作,又能通过Internet直接对远程服务器上的文件进行工作的软件。 ②Netscape编辑器Netscape Communicator和Netscape Navigator Gold3.0版本都带有网页编辑器。 如果你喜欢用Netscape浏览器上网,使用Netscape编辑器真是简单方便!当你用Netscape浏览器显示网页时,单击编辑按钮,Netscape就会把网页存储在硬盘中,然后就可以开始编辑了。 你也可以像使用Word那样编辑文字、字体、颜色,改变主页作者、标题、背景颜色或图像,定义描点,插入链接,定义文档编码,插入图像,创建表格等,是不是与FrontPage 2000还有些像?但是,Netscape编辑器对复杂的网页设计就显得功能有限了,它连表单创建、多框架创建都不支持。 Netscape编辑器是网页制作初学者很好的入门工具。 如果你的网页主要是由文本和图片组成的,Netscape编辑器将是一个轻松的选择。 如果你对HTML语言有所了解的话,能够使用Notepad或Ultra Edit等文本编辑器来编写少量的HTML语句,也可以弥补Netscape编辑器的一些不足。 ③Adobe PagemillPagemill功能不算强大,但使用起来很方便,适合初学者制作较为美观、而不是非常复杂的主页。 如果你的主页需要很多框架、表单和Image Map图像,那么Adobe Pagemill的确是你的首选。 Pagemill另一大特色是有一个剪贴板,可以将任意多的文本、图形、表格拖放到里面,需要时再打开,很方便。 ④Claris Home Page如果使用Claris Home Page软件,你可以在几分钟之内创建一个动态网页。 这是因为它有一个很好的创建和编辑Frame(框架)的工具,你不必花费太多的力气就可以增加新的Frame(框架)。 而且Claris Home Page 3.0集成了FileMaker数据库,增强的站点管理特性还允许你检测页面的合法连接。 不过界面设计过于粗糙,对Image Map图像的处理也不完全。 二、中级网页制作软件如果你对网页设计已经有了一定的基础,对HTML语言又有一定的了解,那么你可以选择下面的几种软件来设计你的网页,他们一定会为你的网页添色不少。 ①DreamWeaver自制动态HTML动画的网页DreamWeaver是一个很酷的网页设计软件,它包括可视化编辑、HTML代码编辑的软件包,并支持ActiveX、JavaScript、Java、Flash、ShockWave等特性,而且它还能通过拖拽从头到尾制作动态的HTML动画,支持动态HTML(Dynamic HTML)的设计,使得页面没有plug-in也能够在Netscape和IE 4.0浏览器中正确地显示页面的动画。 同时它还提供了自动更新页面信息的功能。 DreamWeaver还采用了Roundtrip HTML技术。 这项技术使得网页在DreamWeaver和HTML代码编辑器之间进行自由转换,HTML句法及结构不变。 这样,专业设计者可以在不改变原有编辑习惯的同时,充分享受到可视化编辑带来的益处。 DreamWeaver最具挑战性和生命力的是它的开放式设计,这项设计使任何人都可以轻易扩展它的功能。 ②Fireworks第一款彻底为Web制作者们设计的软件Fireworks的来头实在不小,它的出现使Web作图发生了革命性的变化。 Fireworks是专为网络图像设计而开发,内建丰富的支持网络出版功能,比如Fireworks能够自动切图、生成鼠标动态感应的javascript。 而且Fireworks具有十分强大的动画功能和一个几乎完美的网络图像生成器(Export功能)。 它增强了与dreamweaver的联系,可以直接生成dreamweaver的Libaray甚至能够导出为配合CSS式样的网页及图片!③Flash让你的网页动起来Flash是用在互联网上动态的、可互动的shockwave。 它的优点是体积小,可边下载边播放,这样就避免了用户长时间的等待。 #{6FLASH6}#可以用其生成动画,还可在网页中加入声音。 这样你就能生成多媒体的图形和界面,而使文件的体积却很小。 FLASH虽然不可以像一门语言一样进行编程,但用其内置的语句并结合JavaScripe,您也可做出互动性很强的主页来。 有人曾经说过:下个世纪的网络设计人不会用FLASH,必将被淘汰出局!我相信这句话没错!④HotDog Professional制作要加入多种复杂技术的网页HotDog是较早基于代码的网页设计工具,其最具特色的是提供了许多向导工具,能帮助设计者制作页面中的复杂部分。 HotDog的高级HTML支持插入marquee,并能在预览模式中以正常速度观看。 这点非常难得,因为即使首创这种标签的Microsoft在FrontPage中也未提供这样的功能。 HotDog对plug-in的支持也远远超过其他产品,它提供的对话框允许你以手动方式为不同格式的文件选择不同的选项。 但对中文的处理不很方便。 HotDog是个功能强大的软件,对于那些希望在网页中加入CSS、Java、RealVideo等复杂技术的高级设计者,是个很好的选择。 ⑤HomeSite制作可完全控制页面进程的网页AllAire的HomeSite是一个小巧而全能的HTML代码编辑器,有丰富的帮助功能,支持CGI和CSS等等,并且可以直接编辑perl程序。 HomeSite工作界面繁简由人,根据习惯,可以将其设置成像Notepad那样简单的编辑窗口,也可以在复杂的界面下工作。 HomeSite更适合那些比较复杂和精彩页面的设计。 如果你希望能完全控制你制作的页面的进程,HomeSite是你最佳选择。 不过对于生手过于复杂。 ⑥HotMetal Pro制作具有强大数据嵌入能力的网页HotMetal既提供“所见即所得”图形制作方式,又提供代码编辑方式,是个令各层次设计者都不至于失望的软件。 但是初学者需要熟知HTML,才能得心应手地使用这个软件。 HotMetal具有强大的数据嵌入能力,利用它的数据插入向导,可以把外部的Access、Word、Excel以及其他ODBC数据提出来,放入页面中。 而且HotMetal能够把它们自动转换为HTML格式,是不是很棒?此外它还能转换很多老格式的文档(如WordStar等),并能在转换过程中把这些文档里的图片自动转换为GIF格式。 HotMetal为用户提供了“太多”的工具,而且它还可以用网状图或树状图表现整个站点文档的链接状况。 三、高级网页制作软件①Microsoft Visual Studio该系列的版本有:2003、2005、2008和未来的版本;适合开发动态的aspx网页,同时,还能制作无刷新网站、webservice功能等,仅适合高级用户。 ②Jbuilder不论是各种版本,均适合使用其开发出JSP网页,仅适合高级用户。 ③记事本别以为记事本功能非常少,软件很简单;但是,如何想使用它来制作网页,也仅适合高级用户;因为在其内容,没有任何可视化的操作可直接制作网页,而只能编写各种HTML代码、CSS代码、JS代码和各种动态脚本,方能制作出网页来。














发表评论