简介:
AVR/51单片机下载器是一种多功能的编程设备,它能够服务于两种常见的微控制器家族:AVR系列(由Atmel公司生产)和51系列(基于Intel 8051架构)。
这款下载器的核心功能是将编译好的程序代码烧录到目标单片机的闪存中,以便于单片机执行预定的任务。
对于AVR单片机,下载器通常采用ISP(In-System Programming)技术,允许在不移除单片机的情况下进行程序更新。
USBASP(USB Asynchronous Serial Programmer)是常见的AVR编程器,它通过USB接口与计算机连接,提供了简单易用的编程方式。
USBASP支持各种AVR微控制器,包括ATmega、ATtiny和ATxmega系列,且兼容AVR Studio、WinAVR等开发环境。
对于51系列单片机,下载器可能需要配合不同的编程协议,如JTAG或SWD(Serial Wire Debug),但更常见的是使用串行编程方式,如ISP或PDI。
51单片机通常由Atmel(现已被Microchip收购)制造,如AT89C51、AT89S52等型号,它们广泛应用于各种嵌入式系统。
用户可以通过编程工具,如Keil uVision或GCC编译器,生成HEX或BIN格式的程序,然后利用下载器将这些程序烧录到单片机中。
使用这样的下载器,开发者可以进行以下操作:1. **程序开发**:编写C或汇编语言代码,使用对应的IDE进行编译。
2. **烧录固件**:将编译后的二进制文件(如HEX或BIN)通过下载器传输到单片机的闪存中。
3. **调试**:某些下载器还具备调试功能,允许用户在运行时查看变量状态,设置断点,单步执行等,以帮助定位和解决问题。
4. **应用测试**:烧录程序后,测试单片机在实际应用场景中的功能和性能。
在使用USBASP这类下载器时,用户需要注意以下几点:- **驱动安装**:确保计算机已安装相应的USB驱动,如 zadig.exe,以识别并正确通信。
- **正确连接**:根据单片机的引脚定义,正确连接下载器的ISP或SWD引脚到单片机的对应管脚。
- **配置软件**:在编程软件中设置正确的目标芯片型号、波特率和其他相关参数。
- **编程步骤**:按照软件的指导进行操作,如选择要烧录的文件,开始编程,验证程序是否成功写入。
AVR/51单片机下载器是嵌入式系统开发中的关键工具,它简化了程序的部署和调试过程,极大地提高了开发效率。
无论是初学者还是经验丰富的工程师,都能从中受益。
在使用过程中,掌握好下载器的使用方法和注意事项,能确保项目顺利进行。
2025/6/15 20:00:11 2.06MB
1
简介:
DELPHI认证讲义主要涵盖了Delphi编程语言的各个方面,它是为那些希望深入理解和掌握Delphi技术的专业人士设计的一套完整的学习资料。
Delphi是一种基于Object Pascal语言的强大的集成开发环境(IDE),由Embarcadero Technologies公司维护,广泛用于Windows平台上的应用程序开发。
在学习Delphi认证讲义时,你会接触到以下几个核心知识点:1. **Object Pascal语言基础**:Delphi的基础是Object Pascal,这是一种面向对象的编程语言,具有简洁、高效的语法。
学习者需要理解类、对象、继承、多态等面向对象概念,并熟悉基本的语法结构。
2. **VCL框架**:Visual Component Library (VCL)是Delphi的组件库,提供了丰富的用户界面元素。
学习者需要了解如何使用VCL组件创建图形用户界面,如按钮、文本框、表格等,并理解组件之间的事件处理机制。
3. **数据库访问**:Delphi支持多种数据库系统,如InterBase、Firebird、Oracle、SQL Server等,通过ADO或BDE组件进行数据操作。
学习者应掌握如何连接数据库,执行SQL语句,以及使用数据绑定技术实现数据的显示和编辑。
4. **ORM映射**:Delphi的ORM(对象关系映射)工具如dBExpress和DevExpress的XPO可以帮助开发者将数据库对象映射到类,简化数据库操作。
了解ORM的概念和使用方法是提高开发效率的关键。
5. **网络编程**:Delphi提供了一系列的网络组件,如 Indy 和 Socket 支持,使得开发者可以轻松地实现客户端-服务器应用,包括HTTP、FTP、SMTP等协议的处理。
6. **跨平台开发**:随着FireMonkey (FMX) 的引入,Delphi支持多平台开发,包括iOS、Android、macOS和Linux。
学习者需要了解FMX的UI设计原则,以及如何在不同平台上构建和调试应用程序。
7. **单元测试与调试**:Delphi内置了单元测试框架,如DUnit和TestComplete,用于编写和运行测试用例,确保代码质量。
同时,学会使用IDE的调试工具进行代码调试,对于定位和解决问题至关重要。
8. **性能优化**:Delphi以其编译器的高效性著称,学习者应理解内存管理、代码优化技巧,以及如何利用Delphi的特性来提高程序运行速度。
9. **设计模式**:学习并应用设计模式可以提高代码的可读性和可维护性。
理解常见的设计模式如单例、工厂、观察者等,并能灵活运用到实际项目中。
10. **软件工程实践**:除了技术知识,Delphi认证讲义还会涵盖软件开发的最佳实践,如版本控制、文档编写、代码审查和项目管理等。
通过深入学习这些内容,你可以为Delphi认证考试做好准备,同时也能提升自己的Delphi编程技能,成为一名专业的Delphi开发者。
记得实践是检验理论的最好方式,结合实际项目进行学习将有助于更好地理解和掌握这些知识点。
2025/6/15 19:58:42 20.87MB
1
简介:
在编程领域,尤其是使用C++这种面向对象的语言时,"无法实例化抽象类"是一个常见的错误,这通常发生在尝试创建一个声明为抽象的类的实例时。
在C++中,抽象类是通过包含至少一个纯虚函数来定义的。
这些类不能被实例化,因为它们没有具体的实现,而主要是作为基类来使用,为派生类提供接口定义。
标题"无法实例化抽象类"指出的问题可能源于以下几个方面:1. **纯虚函数**:一个类如果包含至少一个纯虚函数(即声明为`virtual void func() = 0;`的函数),那么这个类就会被视为抽象类。
抽象类不能用于创建对象,只能作为其他类的基类。
2. **错误的实例化尝试**:可能是开发者尝试直接使用`new`关键字或在栈上创建抽象类的对象,这是不合法的。
例如,`AbstractClass* ptr = new AbstractClass();` 或 `AbstractClass obj;` 都会导致编译错误。
3. **调用约定**:在标签"VC10.0 C++ Win32 programming"中,提到的调用约定(Calling Convention)可能与问题有关。
不同的调用约定会影响函数参数的传递方式,如果错误地指定调用约定,可能会导致链接错误,但这通常不会直接影响抽象类的实例化问题。
4. **参数匹配**:描述中的"检查调用约定,参数等"暗示可能存在参数类型或数量不匹配的问题。
虽然这不是直接与抽象类实例化相关的错误,但错误的函数签名可能导致编译错误,特别是当涉及到虚函数的重写时。
5. **派生类的实现**:如果一个派生类没有实现其基类的所有纯虚函数,那么这个派生类也会变成抽象类。
确保所有的纯虚函数都有具体实现,否则编译器会报错。
6. **模板和抽象类**:如果抽象类被用作模板的参数,确保在实例化模板时,模板参数满足抽象类的要求,即提供所有纯虚函数的实现。
7. **编译器和版本问题**:VC10.0指的是Visual Studio 2010,不同版本的编译器可能对C++标准的支持程度不同,或者存在一些已知的bug。
确保编译器设置正确,并且更新到最新的服务包和补丁。
解决此类问题通常需要检查代码中抽象类的定义,确保所有纯虚函数在需要的地方得到了实现,同时检查调用的函数签名是否正确,参数类型和数量是否匹配。
此外,查阅编译器的错误信息也能帮助定位问题所在。
对于提供的PDF文件"cannot-instantiate-abstract-class.pdf",可能包含更详细的解释和示例,阅读它将有助于深入理解抽象类和实例化抽象类的限制。
建议结合文档内容,根据具体情况分析和解决问题。
2025/6/15 19:57:52 40KB
1
简介:
《FX3U-ENET-ADP用户手册》是针对三菱FX3U系列PLC(可编程逻辑控制器)中的一款以太网模块——FX3U-ENET-ADP的详细使用指南。
该手册深入浅出地介绍了如何利用此模块进行网络通信、数据交换以及系统配置,对于理解和操作FX3U-ENET-ADP至关重要。
三菱FX3U系列PLC是一款高性能的小型PLC,广泛应用于自动化设备和生产线中。
FX3U-ENET-ADP作为其网络扩展模块,提供了以太网通信功能,使PLC能够与网络中的其他设备进行高效的数据交互,如上位机、HMI(人机界面)、服务器等。
1. **FX3U-ENET-ADP功能介绍**: - **以太网通信**:FX3U-ENET-ADP模块支持TCP/IP和UDP/IP协议,可以实现PLC与各种设备的网络连接。
- **多点通信**:支持最多16个站点的MODBUS TCP通信,适用于构建分布式控制系统。
- **高速数据传输**:具备高速数据传输能力,适合实时控制应用。
- **网络诊断**:提供网络状态监控功能,方便故障排查。
2. **硬件安装与接线**: - **安装位置**:FX3U-ENET-ADP通常安装在FX3U PLC的扩展槽上。
- **接线配置**:包括RJ45接口的网络线连接,以及可能的电源和接地线连接。
3. **软件配置**: - **GX Works3**:使用三菱提供的编程软件进行程序编写和配置,包括网络设置、I/O映射等。
- **通信参数设定**:设置IP地址、子网掩码、网关等网络参数,以及MODBUS通信的相关参数。
4. **通信协议**: - **MODBUS TCP**:FX3U-ENET-ADP支持MODBUS TCP协议,允许与支持此协议的各种设备进行通信。
- **三菱专用协议**:还支持三菱的私有协议,如FINS(Factory Integrated Network System),用于三菱设备间的通信。
5. **应用实例**: - **远程监控**:通过以太网连接,可以在远程位置监控和控制PLC的运行状态。
- **数据采集**:从PLC收集生产数据,上传至服务器进行数据分析和报表生成。
- **联网设备的集成**:如连接变频器、伺服驱动器等,实现设备间的协同工作。
6. **故障排查**: - 手册会提供详细的错误代码和解决方法,帮助用户快速定位并解决问题。
7. **安全注意事项**: - 遵守电气安全规范,避免电击或火灾风险。
- 定期检查网络设备的物理连接和网络状态,确保稳定运行。
通过《FX3U-ENET-ADP用户手册》的学习和实践,用户可以充分利用这一模块的功能,实现高效、稳定的PLC网络通信,提高自动化系统的整体性能。
无论是初学者还是经验丰富的工程师,都能从中获得宝贵的指导。
2025/6/15 19:55:36 5.37MB
1
简介:
【标题与描述解析】"AdminPanel后台管理页面html静态模板.zip" 这个标题表明我们正在处理一个HTML静态模板,特别设计用于构建后台管理界面。
"AdminPanel"可能是该模板的名称,暗示它可能包含一系列专为管理员使用的交互式元素和布局。
"zip"文件格式表明这是一个压缩文件,通常用于集合多个文件或文件夹以便于存储和传输。
描述中的内容与标题相同,进一步确认这是一份HTML静态模板,主要用于构建后台管理系统。
由于没有提供更多的描述性信息,我们将依赖通用的后台管理页面设计知识来展开讨论。
【HTML静态模板】HTML静态模板是预先设计的网页结构,包含了HTML、CSS和JavaScript等基本网页元素,开发者可以在此基础上添加功能和内容。
对于后台管理页面,这些模板通常具有以下特征:1. **布局**:后台管理页面通常有清晰的布局,如侧边导航栏、顶部菜单、内容区域和底部版权信息等,便于用户快速定位和操作。
2. **响应式设计**:考虑到不同设备的使用,模板应具备响应式设计,能适应手机、平板和桌面电脑等不同屏幕尺寸。
3. **表单元素**:后台页面经常涉及数据输入和编辑,因此模板会包含各种表单元素,如输入框、下拉选择、复选框、单选按钮等。
4. **数据展示**:表格、图表和卡片式布局是常见用于展示统计数据和信息的方式。
5. **交互元素**:按钮、提示信息、模态对话框、通知和进度条等元素提供了良好的用户体验。
6. **图标和图形**:使用SVG图标库或者Font Awesome等图标集,可以提高页面的视觉效果。
7. **框架和库**:Bootstrap、Foundation等前端框架常用于构建后台模板,jQuery和其他JavaScript库可以简化交互处理。
【开发与应用】在使用"AdminPanel"这样的HTML静态模板时,开发者需要根据实际项目需求进行定制:1. **内容替换**:将模板中的占位符文本和图片替换为实际内容。
2. **功能添加**:根据业务逻辑添加动态功能,如AJAX请求、表单验证、数据处理等。
3. **API集成**:与后端服务器的API接口进行对接,实现数据的获取和提交。
4. **样式调整**:根据品牌风格指南调整颜色、字体和间距等样式。
5. **性能优化**:减少HTTP请求,合并CSS和JavaScript文件,利用CDN加速资源加载。
总结,"AdminPanel后台管理页面html静态模板.zip"是一个用于创建后台管理界面的基础框架,开发人员可以通过自定义内容和功能,结合后端服务,构建出满足特定业务需求的高效管理平台。
2025/6/15 19:52:51 1.2MB
1
简介:
在IT行业中,日志文件是诊断系统问题、追踪操作历史和优化系统性能的重要工具。
"Centrl Instance Inst.log"是一个特定的日志文件,记录了IDES(可能是集成开发环境或某个特定系统的中央实例)中心实例安装过程中的详细信息。
这个日志文件在安装完成后通常被存档,以便后续的技术支持或问题排查。
我们来理解“中心实例”的概念。
在分布式系统或网络环境中,中心实例通常指的是提供核心服务或协调其他节点工作的组件。
例如,在数据库管理系统中,中心实例可能负责数据的存储、查询处理和集群管理。
在IDES中,中心实例可能扮演着类似的角色,作为整个系统的核心,管理和协调其他组件的运行。
日志文件"Centrl Instance Inst.log"记录了从启动安装到完成的所有步骤,包括但不限于以下内容:1. **环境检查**:在安装开始时,系统会检查硬件配置、操作系统版本、依赖库等是否满足安装要求。
2. **资源分配**:日志中会显示分配给中心实例的内存、CPU资源以及磁盘空间等信息。
3. **安装进度**:每个安装阶段的开始和结束时间,以及阶段状态(成功、失败或警告)。
4. **组件安装**:记录了IDES的各个组件,如数据库服务器、应用服务器、Web服务器等的安装情况。
5. **配置参数**:安装过程中设置的各种配置参数,如端口号、服务账户信息、数据库连接字符串等。
6. **错误和警告**:如果安装过程中出现任何问题,日志会详细记录错误代码、错误描述和可能的原因,这对于定位问题至关重要。
7. **权限设置**:关于用户权限和访问控制的设置信息。
8. **系统注册**:中心实例可能需要在系统中注册,日志会记录相关注册信息。
9. **启动和验证**:安装完成后,中心实例的启动情况以及验证其功能是否正常运行。
分析这个日志文件,我们可以了解到整个安装过程的详细流程,如果遇到安装失败或系统运行异常的情况,可以首先查看此日志,从中获取故障原因。
开发者或IT支持人员可以根据日志内容进行故障排查,定位问题所在,并进行相应的修复措施。
总结来说,"Centrl Instance Inst.log"作为中心实例安装日志,是系统健康状况的见证者,它的重要性在于其记录的丰富信息可以帮助我们更好地理解和维护IDES的中心实例。
通过详细分析这个日志文件,我们可以提升系统运维的效率,确保中心实例的稳定运行。
2025/6/15 19:50:53 3KB
1
一键分析NMEA数据(仅解析RMC),支持简单的过滤后,转成kml文件,自动导入到谷歌地图显示,直观展示定位信息与位置。
2025/6/15 12:18:42 24.74MB nmea GPS 定位 地图
1
图像找茬游戏是时下非常流行的游戏之一,人眼通过对比找出图像中差异较大的位置是一件较为有难度的事情,但是对于计算机来说精确找出图像差异却是一件简单的事情。
本文利用图像之间的灰度差和色彩差寻找图像之间的差异,在图像做差的结果上进行阈值分割形成二值图像,对于二值图像采用形态学处理,首先使用膨胀腐蚀运算去除噪声和填补二值团块,然后利用连通域分析算法对图像中差异较大的位置进行精确的定位。
最后通过多组实验进行算法参数调节,实验证明本文提出的图像找茬算法能有效的定位图像之间的差异。
1
你可以在自己的项目中定义任何一个自定义控件,让他产生拖动,放大缩小,定位,显示数值的功能,只需将本项目生成一下,并引用它就可以实现你想要的功能,无需其他任何操作。
如何引用?其中有Demo。
2025/6/13 15:48:42 803KB 拖动
1
版本修改记录:V2.2.0.2修改:修改了HttpPost相对路径的一些问题。
V2.2.0.0增加:[id(0x00010041),helpstring("GetRevIndex")]HRESULTGetRevCount([out,retval]long*pbool);[id(0x00010042),helpstring("GetRevIndexInfo")]HRESULTGetRevInfo([in]longlIndex,[in]longlType,[out,retval]BSTR*pbool);[id(0x00010043),helpstring("SetDocProp")]HRESULTSetValue([in]BSTRstrValue,[in]BSTRstrName,[out,retval]long*pbool);[id(0x00010044),helpstring("SetDocVariable")]HRESULTSetDocVariable([in]BSTRstrVarName,[in]BSTRstrValue,[in]longlOpt,[out,retval]long*pbool);[id(0x00010045),helpstring("SavepageToDoc")]HRESULTSetPageAs([in]BSTRstrLocalFile,[in]longlPageNum,[in]longlType,[out,retval]long*pbool);----------------------------------------------------------------------------------------------------------------------------------------------------------------------LoadDso.jsvars=""s+=""s+=""document.write(s)----------------------------------------------------------------------------------------------------------------------------------------------------------------------接口文档:/*1.新建*///新建Worddocument.all.FramerControl1.CreateNew("Word.Document");//新建Exceldocument.all.FramerControl1.CreateNew("Excel.Sheet");/*2.打开文件*///打开制定的本地文件document.all.FramerControl1.Open("C:\\TestBook.xls");//制定用Word来打开c:\plain.txt文件document.all.FramerControl1.Open("C:\\Plain.txt",false,"Word.Document");//打开服务器的文件document.all.FramerControl1.Open"https://secureserver/test/mytest.asp?id=123",true,"Excel.Sheet","MyUserAccount","MyPassword");//打开服务器的文件document.all.FramerControl1.Open("http://localhost/1.doc",true);/*3.保存文件*///到本地document.all.FramerControl1.Save("c:\\1.doc",true);//服务器/*增加Http协议Post上传接口,可以Post一个动态页面(jsp,asp,php...),由动态页面负责解析数据boolHttpInit();boolHttpAddPostString(BSTRstrName,BSTRstrValue);boolHttpAddPostCurrFile(BSTRstrFileID,BSTRstrFileName);BSTRHttpPost(BSTRbstr);*///初始化Http引擎document.all.FramerControl1.HttpInit();//增加Post变量document.all.FramerControl1.HttpAddPostString("RecordID","20060102200");document.all.FramerControl1.HttpAddPostString("UserID","李局长");//上传打开的文件document.all.FramerControl1.HttpAddPostCurrFile("FileData","文档名.doc");//执行上传动作document.all.FramerControl1.HttpPost("http://xxxx.com/uploadfile.asp");/*4.修订留痕*///进入留痕状态document.all.FramerControl1.SetTrackRevisions(1);//进入非留痕状态document.all.FramerControl1.SetTrackRevisions(0);//接受当前修订document.all.FramerControl1.SetTrackRevisions(4);/*5.设置当前用户*/document.all.FramerControl1.SetCurrUserName("张三");/*6.设置当前时间(笔迹留痕会显示("Like2006:02:0711:11:11")*/document.all.FramerControl1.SetCurrTime("2006:02:0711:11:11");/*7.设置和创建书签,此功能比较强大,设置书签数据、添加书签和添加红头文件就靠他了SetFieldValue(BSTRstrFieldName,BSTRstrValue,BSTRstrCmdOrSheetName)strFieldName:书签名strValue:要设置的值strCmdOrSheetName:命令::ADDMARK::添加BookMark::DELMARK::删除这个BookMark::GETMARK::定位到这个BookMark::FILE::插入的是文件::JPG::插入的是图片一般来说:WORD中书签是做好的,可以通过此接口把外界数据设置进书签中去。
*///在当前WORD位置插入标签,标签名为"book1",数值为"test"document.all.FramerControl1.SetFieldValue("book1","test","::ADDMARK::");//设置书签"Time",数值为"2006-03-1622:22:22"document.all.FramerControl1.SetFieldValue("Time","2006-03-1622:22:22","");//在书签位置"hongtou",插入红头文件"http://222.222.222.222/hongtou1.doc"这样,红头就自动插进去了document.all.FramerControl1.SetFieldValue("hongtou","http://222.222.222.222/hongtou1.doc","::FILE::");/*8.设置菜单显示情况BOOLSetMenuDisplay(longlMenuFlag)lMenuFlag为以下数值的组合#defineMNU_NEW0x01#defineMNU_OPEN0x02#defineMNU_CLOSE0x04#defineMNU_SAVE0x08#defineMNU_SAVEAS0x16#defineMNU_PGSETUP0x64#defineMNU_PRINT0x256#defineMNU_PROPS0x32#defineMNU_PRINTPV0x126*///只有“新建”菜单可用document.all.FramerControl1..SetMenuDisplay(1);//只有“打开”菜单可用document.all.FramerControl1.SetMenuDisplay(2);//只有“打开”和“新建”菜单可用document.all.FramerControl1.SetMenuDisplay(3);/*9.保护文档和解保护文档lProOrUn:1:保护文档;
0:解除保护lProType:wdNoProtection=-1,wdAllowOnlyRevisions=0,wdAllowOnlyComments=1,wdAllowOnlyFormFields=2strProPWD:密码*///完全保护文档,密码为"pwd"document.all.FramerControl1.ProtectDoc(1,1,"pwd");//解除文档保护document.all.FramerControl1.ProtectDoc(0,1,"pwd");/*10.显示或隐藏修订内容ShowRevisions(longnNewValue)nNewValue=0则隐藏修订=1则显示修订*///显示修订留痕document.all.FramerControl1.ShowRevisions(1);//隐藏修订留痕document.all.FramerControl1.ShowRevisions(0);/*11.插入合并文件,strFieldPath文件路径,可以是http,ftp的路径pPos=0//当前鼠标位置1;文件开头2;文件末尾pPos的第4位为1的时候,代表插入的是图片InSertFile(BSTRstrFieldPath,longlPos)*///文件头部插入文件document.all.FramerControl1.InSertFile("http://XX.com/XX.doc",1);//文件尾部插入文件document.all.FramerControl1.InSertFile("http://XX.com/XX.doc",2);//当前光标位置插入文件document.all.FramerControl1.InSertFile("http://XX.com/XX.doc",0);//文件头部插入图片document.all.FramerControl1.InSertFile("http://XX.com/XX.jpg",9);//文件尾部插入图片document.all.FramerControl1.InSertFile("http://XX.com/XX.jpg",10);//当前光标位置插入图片document.all.FramerControl1.InSertFile("http://XX.com/XX.jpg",8);/*0x31.文档另存为HRESULTSaveAs([in]VARIANTstrFileName,[in]VARIANTdwFileFormat,[out,retval]long*pbool);参数:strFileName:文件本地路径,如c:\\11.docdwFileFormat:文件格式dwFileFormat的数值为:Excel:TypeenumXlFileFormat{xlAddIn=18,xlCSV=6,xlCSVMac=22,xlCSVMSDOS=24,xlCSVWindows=23,xlDBF2=7,xlDBF3=8,xlDBF4=11,xlDIF=9,xlExcel2=16,xlExcel2FarEast=27,xlExcel3=29,xlExcel4=33,xlExcel5=39,xlExcel7=39,xlExcel9795=43,xlExcel4Workbook=35,xlIntlAddIn=26,xlIntlMacro=25,xlWorkbookNormal=-4143,xlSYLK=2,xlTemplate=17,xlCurrentPlatformText=-4158,xlTextMac=19,xlTextMSDOS=21,xlTextPrinter=36,xlTextWindows=20,xlWJ2WD1=14,xlWK1=5,xlWK1ALL=31,xlWK1FMT=30,xlWK3=15,xlWK4=38,xlWK3FM3=32,xlWKS=4,xlWorks2FarEast=28,xlWQ1=34,xlWJ3=40,xlWJ3FJ3=41,xlUnicodeText=42,xlHtml=44};Word:TypeenumWdSaveFormat{wdFormatDocument=0,wdFormatTemplate=1,wdFormatText=2,wdFormatTextLineBreaks=3,wdFormatDOSText=4,wdFormatDOSTextLineBreaks=5,wdFormatRTF=6,wdFormatUnicodeText=7,wdFormatEncodedText=7,wdFormatHTML=8};PPT:enumPpSaveAsFileType{ppSaveAsPresentation=1,ppSaveAsPowerPoint7=2,ppSaveAsPowerPoint4=3,ppSaveAsPowerPoint3=4,ppSaveAsTemplate=5,ppSaveAsRTF=6,ppSaveAsShow=7,ppSaveAsAddIn=8,ppSaveAsPowerPoint4FarEast=10,ppSaveAsDefault=11,ppSaveAsHTML=12,ppSaveAsHTMLv3=13,ppSaveAsHTMLDual=14,ppSaveAsMetaFile=15,ppSaveAsGIF=16,ppSaveAsJPG=17,ppSaveAsPNG=18,ppSaveAsBMP=19};*//*0x32.删除本地文件HRESULTDeleteLocalFile([in]BSTRstrFilePath);参数:strFileName:文件本地路径,如c:\\11.doc*//*0x33.创建临时文件HRESULTGetTempFilePath([out,retval]BSTR*strValue);返回:临时文件的路径地址。
使用完后,用DeleteLocalFile删除*//*0x34.设置文档显示模式HRESULTShowView([in]longdwViewType,[out,retval]long*pbool);dwViewType的可取值为:enumWdViewType{wdNormalView=1,wdOutlineView=2,wdPrintView=3,wdPrintPreview=4,wdMasterView=5,//这个是大纲wdWebView=6};*///大纲模式document.all.FramerControl1.ShowView(5);/*0x39:下载远程文件HRESULTDownloadFile([in]BSTRstrRemoteFile,[in]BSTRstrLocalFile,[out,retval]BSTR*strValue);参数:strRemoteFile:远程路径地址,httporFtpstrLocalFile:本地保存地址,ifstrLocalFile==NULLthenCreateTempFileandreturnTempFile'sPath*//*0x40:增加Http上传时候的,附加其他文件HRESULTHttpAddPostFile([in]BSTRstrFileID,[in]BSTRstrFileName,[out,retval]long*pbool);参数:strFileID:文件的ID,供服务器端页面解析strFileName:本地文件地址*//*0x41,0x42.获取详细的修订信息。
GetRevCount([out,retval]long*pbool);GetRevInfo([in]longlIndex,[in]longlType,[out,retval]BSTR*pbool);例子如下*/varvCount;vCount=document.all.FramerControl1.GetRevCount();alert(vCount);varvOpt=0;varvDate;for(vari=1;i<=vCount;i++){vOpt=document.all.FramerControl1.GetRevInfo(i,2);if("1"==vOpt){vOpt="插入";}elseif("2"==vOpt){vOpt="删除";}else{vOpt="未知操作";}vDate=newString(document.all.FramerControl1.GetRevInfo(i,1));vDate=parseFloat(vDate);alert(vDate);dateObj=newDate(vDate);alert(dateObj.getYear()+"年"+dateObj.getMonth()+1+"月"+dateObj.getDate()+"日"+dateObj.getHours()+"时"+dateObj.getMinutes()+"分"+dateObj.getSeconds()+"秒");alert("用户:"+document.all.FramerControl1.GetRevInfo(i,0)+"\r\n操作:"+vOpt+"\r\n内容:"+document.all.FramerControl1.GetRevInfo(i,3));}/*0x43.设置基本信息:HRESULTSetValue([in]BSTRstrValue,[in]BSTRstrName,[out,retval]long*pbool);1.设置文件只读密码SetValue("password","::DOCPROP:PassWord");2.设置文件修改密码SetValue("password","::DOCPROP:WritePW");返回值:0正确-1:不支持此命令,请确定您的第二个参数没有传错-127:异常*///设置文件只读密码document.all.FramerControl1.SetValue("password","::DOCPROP:PassWord");//设置文件修改密码document.all.FramerControl1.SetValue("password","::DOCPROP:WritePW");/*0x44.设置文档变量,这个很少能用到HRESULTSetDocVariable([in]BSTRstrVarName,[in]BSTRstrValue,[in]longlOpt,[out,retval]long*pbool);strVarName:变量名strVlaue:变量值lOpt:操作类型,按位第一位为1:表示update域关联的第二位为1:表示如果没有这个变量则添加第三位为1:未来支持return:0:OK-127:异常*//*0x45:分页保存HRESULTSetPageAs([in]BSTRstrLocalFile,[in]longlPageNum,[in]longlType,[out,retval]long*pbool);strLocalFile:本地路径lPageNum:页数*/
2025/6/13 12:22:57 139KB web office word 在线
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡