vb中怎么才能在我指定路径下新建一个WORD文档?
实现思路1、既要实现程序遥控幻灯片我需要先获幻灯片应用程序PowerPoint象模型Microsoft.Office.Interop.PowerPoint.Application代表Powerpoint应用程序点Word、ExcelOutlook都2、获幻灯片应用程序象我需要获幻灯片象我遥控幻灯片PowerPoint象模型提供幻灯片象即Microsoft.Office.Interop.PowerPoint.Slide由于幻灯片存于演示文稿所我要想获幻灯片象需要先获演示文稿象Microsoft.Office.Interop.PowerPoint.Presentation 代表演示文稿象3、获幻灯片象我利用幻灯片象Select进行幻灯片切换,阅读模式情况能用Select进行翻页需要另种式实现即调用 Microsoft.Office.Interop.PowerPoint.SlideShowView象FirstNext,Last,Previous进行幻灯片翻页面张阅读模式程序实现翻页功能与幻灯片应关系:遥控幻灯片程序实现面解释我再看面实现代码相信家肯定觉任何难道面直接贴部实现代码/// /// 检查否打幻灯片程序/// /// /// privatevoid btnCheck_Click(object sender, EventArgs e) { // 必须先运行幻灯片面才能获PowerPoint应用程序否则现异// 获运行PowerPoint应用程序try{ pptApplication = Marshal.GetActiveObject("PowerPoint.Application") as PPt.Application; // 功获取PowerPoint程序使UI按钮用this.btnFirst.Enabled = true; this.btnNext.Enabled = true; this.btnPrev.Enabled = true; this.btnLast.Enabled = true; } catch{ MessageBox.Show("请先启遥控幻灯片", "Error", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); } if (pptApplication != null) { //获演示文稿象presentation = pptApplication.ActivePresentation; // 获幻灯片象集合slides = presentation.Slides; // 获幻灯片数量slidescount = slides.Count; // 获前选幻灯片try{ // 普通视图种式获前选幻灯片象// 阅读模式种式现异slide = slides[pptApplication.ActiveWindow.Selection.SlideRange.SlideNumber]; } catch{ // 阅读模式现异通面式获前选幻灯片象slide = pptApplication.SlideShowWindows[1].View.Slide; } } } // 第页事件privatevoid btnFirst_Click(object sender, EventArgs e) { try{ // 普通视图调用Select选第张幻灯片slides[1].Select(); slide = slides[1]; } catch{ // 阅读模式使用面式切换第张幻灯片pptApplication.SlideShowWindows[1].View.First(); slide = pptApplication.SlideShowWindows[1].View.Slide; } } 面看看该遥控程序运行效何:
我的office2010 关掉word是 出现下图 怎么解决
Word 20071、Word选项→加载项→管理【com加载项】,转到→把“稿纸向导、书法加载项、office special symbol input add-in”三项取消→确定即可。
2、工具→宏->;安全性→可靠发行商,将下方的选择框中的钩清空,再将宏安全性改为最高。
3、可能是初次安装Office时共享里的VBA没安装,可以重新再安装一下VBA和信任证书。
4、Word选项→加载项→转到→把里面的5项内容都删除,然后确定→Word选项→信任中心→信任中心设置→选择 “启用所有宏”和“信任对 VBA 工程对象模型的访问”→确定,最后重新启动Word2007即可。
Word 2003打开word,不打开任何文档,进入菜单:工具→选项→安全性→宏安全性→安全级(或:工具→宏→安全性),选择“非常高”;可靠发行商里的“颁发对象”都删除,复选框也都不选,确定。
如果设定后不能关闭word,从进程中关闭再开启就没有了。
word2010总是显示:您正试图运行的函数包含有宏或需要宏语言支持...
方法一、Word选项-->加载项-->管理【com加载项】,转到-->把“稿纸向导、书法加载项、office special symbol input add-in”三项取消-->确定即可。
方法二、工具-->宏->安全性-->可靠发行商,将下方的选择框中的钩清空,再将宏安全性改为最高。
方法三、可能是初次安装Office时共享里的VBA没安装,可以重新再安装一下VBA和信任证书。
方法四、Word选项-->加载项-->转到-->把里面的5项内容都删除,然后确定-->Word选项-->信任中心-->信任中心设置-->选择 “启用所有宏”和“信任对 VBA 工程对象模型的访问”-->确定,最后重新启动Word2007即可。
关于VC如何操作word2003
下面是从CSDN上摘抄过来的,主要是今天调试VC操作Word2003的时候,网上下载的是操作Word 2000,但是参数已经有一些不同了。
下面的代码可以在2003中运行,记录在这里便于以后复习用。
感谢您使用微软产品。
对于您所提的问题,确实可以使用OLE Automation在VC++中对Word Object Model进行操作。
下面这篇知识库文章中给出了如何在VC_++中引入Office TypeLib,并通过程序启动MS Excel.参照这篇文章可以使您建立起程序的框架Q178749 HOWTO: Create Automation Project Using MFC and a Type Libraryhttp://support.microsoft.com/support/kb/articles/q178/7/49.asp以下两篇知识库文章给出了具体的样例,如何操作Word和Excel. 您可以使用其中的方法来完成你自己的操作。
具体的对象模型的操作,您需要参见对应产品的VBA帮助文档。
Q178784 HOWTO: Use Automation to Open and Print a Word Documenthttp://support.microsoft.com/support/kb/articles/q178/7/84.aspQ179706 HOWTO: Use MFC to Automate Excel and Create/Format a New Workboohttp://support.microsoft.com/support/kb/articles/q179/7/06.asp这两篇是介绍一些基础的知识以及Office 产品在Automation 上的一些支持以及常见问题。
您可以用作参考。
Q238972 INFO: Using Visual C++ to Automate Officehttp://support.microsoft.com/support/kb/articles/q238/9/72.aspQ196776 FAQ: Office Automation Using Visual C++http://support.microsoft.com/support/kb/articles/q196/7/76.asp此外,我在以下列出了Q178784中的样例代码,并添加了一些中文注释。
Steps to Create the Project---------------------------1. In Microsoft Word, create a new document, add some text to the document, and save it as Test.doc. Close the document and exit Word.2. Follow steps 1 through 12 in the following Microsoft Knowledge Base article to create a sample project that uses the IDispatch interfaces and member functions defined in the MSWord8.olb type library: Q178749 HOWTO: Create an Automation Project Using MFC and a Type Library请先按照Q178749的步骤建立一个框架程序,并引入Word typelib.3. At the top of the AutoProjectDlg.cpp, add the following line: #include "msword8.h" // msword9.h for Word 2000, msword.h for Word 20024. Add the following code to CAutoProjectDlg::OnRun() in the AutoProjectDLG.cpp file.当以上步骤完成后,你会看到项目中有很多新的类,那些类就对应着Word的对象模型。
Sample Code----------- _Application objWord; //定义Word应用程序对象(Word.application) // Convenient values declared as ColeVariants. COleVariant covTrue((short)TRUE), covFalse((short)FALSE), covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);// Get the IDispatch pointer and attach it to the objWord object. if (!objWord.CreateDispatch("Word.Application")) { AfxMessageBox("Couldn't get Word object."); return; } objWord.SetVisible(TRUE); //This shows the application. Documents docs(objWord.GetDocuments());//定义Word Documents对象(Word.Documents) _Document testDoc; //定义Word Document对象(Word.Document) testDoc.AttachDispatch(docs.Open( //可看成VB语句set testDoc = Word.documents.Open(…) COleVariant("C:\\Test.doc",VT_BSTR), covFalse, // Confirm Conversion. covFalse, // ReadOnly. covFalse, // AddToRecentFiles. covOptional, // PasswordDocument. covOptional, // PasswordTemplate. covFalse, // Revert. covOptional, // WritePasswordDocument. covOptional, // WritePasswordTemplate. covOptional) // Format. // Last argument for Word 97 covOptional, // Encoding // New for Word 2000/2002 covTrue, // Visible covOptional, // OpenConflictDocument covOptional, // OpenAndRepair (long)0, // DocumentDirection wdDocumentDirection LeftToRight covOptional // NoEncodingDialog ) // Close Open parameters ); // Close AttachDispatch(?) AfxMessageBox("Now printing 2 copies on the active printer"); testDoc.PrintOut(covFalse, // Background. //可看成VB语句testDoc.PrintOut(…) covOptional, // Append. covOptional, // Range. covOptional, // OutputFileName. covOptional, // From. covOptional, // To. covOptional, // Item. COleVariant((long)2), // Copies. covOptional, // Pages. covOptional, // PageType. covOptional, // PrintToFile. covOptional, // Collate. covOptional, // ActivePrinterMacGX. covOptional // ManualDuplexPrint. covOptional, // PrintZoomColumn New with Word 2002 covOptional, // PrintZoomRow ditto covOptional, // PrintZoomPaperWidth ditto covOptional); // PrintZoomPaperHeight ditto // If you wish to Print Preview the document rather than print it, // you can use the PrintPreview member function instead of the // PrintOut member function: // testDoc.PrintPreview. objWord.Quit(covFalse, // ...
C# 怎么处理Word文件的乱码
Word文件本身是二进制数据,不能用读取文本文件的方式去处理。
可以考虑的解决思路:* 将Word的Interop库(Microsoft.Office.Interop.Word.dll)加入你项目的引用,利用Word的对象模型来获取你想要的图文内容。
优点是开发简单,缺点是程序运行效率低(Word的对象模型比较慢)。
* 如果Word是97及之前版本,可以通过分析Word文档的二进制文件格式(网上可以找到)来获取需要的信息。
优点是程序效率高,缺点是开发难度相当大。
* 如果Word是2007及之后版本,可以通过分析Word的OpenXML(网上有标准)来获取需要的信息。
程序效率中等,开发难度中等偏大。
地理信息系统专业
考研吧,本科学不到啥东西 需要掌握的技能 认真看完下面的,相信你知道该做些什么了。
(一) 打好编程基础 这篇文章仅给那些GIS专业的,想学GIS开发的,但现在还没怎么入门不知道该从哪学起的在校生参考的。
这篇文章不是讨论GIS开发是否有前途的,也不是讨论做GIS是不是就一定应该做开发的帖子。
先就几个大家在学生时代都很迷茫,我也曾经迷茫过的问题,说一下自己的观点: 1、 现在开始学习编程,是不是晚了? 如果以大四毕业找到一份GIS开发方面的工作,并对得起3K左右的月薪为目标的话, 从大四开学开始努力就不晚。
2、 学校不教编程,怎么办? 大学里学校教不教只是指个方向,学习都靠自己,既然已经决定要做GIS开发,方向已经有了,学校教不教又有什么关系? 3、 GIS学生编程不如计算机的,搞测绘不如学测绘的,搞地理不如学地理的,我现在开始学习编程再怎么学也赶不上学计算机的怎么办? 这个问题简单,如果现在去睡觉能赶上他们的话,完全可以去睡觉嘛。
如果你是一名大二的学生,能意识到自己以后打算做开发,并开始努力,那是再好不过了。
这个时候大部分学生还处在比较迷茫的时期,或者还在享受幸福的大学生活。
这个时候开始努力,你就比别人起步早,自然会比别人更有优势。
这时候学校一般都会有一些计算机相关的课程,计算机基础啊,VB啊、C啊什么的,对于不想从事这一行业的学生来说,应付过去就是了,但对于已经有想法的学生,这时候就要抓住机会,把这些课程学好,除了老师布置的作业,要尽量的去多编程,多敲代码,多学一些东西。
学计算机不要局限老师教的内容,要自己去拓宽学习范围。
下面细说一下这些计算机基础课程应该怎么去拓宽知识面。
学计算机基础的时候,除了把word, excel的基本操作弄熟,去学一学高级应用,比如说用excel做一些漂亮的报表、做一些数据的处理,筛选啊、统计图啊等,用VBA的做一些小应用,用Access做一些常用的数据库管理程序,像学生信息管理系统啊之类的。
不要觉得这些东西没有,我去浙江地理信息中心,笔试上机题目,有一道就是excel相关的,要求用编程和不编程两种方法实现。
我没做出来。
。
。
囧 如果学校开了C语言的课程,不要只会做个从1加到100的程序。
像C语言中比较难的部分,非计算机专业在教的时候都会回避。
这个时候你就不能回避了。
哪些部分呢?文件读写操作,位操作,内存操作,指针的操作,这些都学一学,很有用的东西。
还有数据结构要多了解一些, 除了那些大家乱熟于耳的冒泡排序等算法,像什么链表、二叉树,图什么的都去了解了解。
最后有和C语言去实现这些数据结构,可以去买一些数据结构的书来参考。
如果学校开了VB的课程,那就要多去做点小应用。
VB是一个很容易上手的语言,通过很短时间的学习,就能做出像模像样的东西,这对于学习GIS二次开发来说是个很不错的工具,编程的难度降低了,可以把重心放在怎么设计开发GIS功能上面去。
所以,在学习VB的时候,如果你听说过MO,尝试着用一用,并做一些小程序。
你还可以去用VB写一些程序来操作word,excel,cad等,这些东西都没什么,就是个对象模型,熟悉它的对象模型了,就好操作了。
另外,在用VB编程的时候,应该融入一些面向对象的编程思想,虽然VB不能算是面向对象的语言,但这也除低了学习面向对象的门槛,尝试着把一些常用的功能,算法写成函数或封装类。
不要把代码复制来复制去的,搞的整个程序到处是重复的代码还沾沾自喜。
还可以用VB尝试一下连接数据库,做一些数据库管理程序。
还可以做一些控件,做一些dll,然后自己去调用,体会一下组件式编程带来的优势,等等。
。
。
这些学校上VB课的时候,都不会教,都要靠自己去学。
(二) 目标明确,有选择的学习 上面说的那些基本上都是大二的课程,什么大学生计算机基础啊,VB啊,C啊,如果能在大二时做到上面的全部,那就是非常非常牛的人了,我大二一年都贡献给war3了,还挂了好几科,VB学到变量那一章就直接废掉了。
考试完全靠突击,才突击了个中。
那大三的时候做什么呢?大三的时候一般会开各种专业课,说实话,编程是一个很费时间的事情,如果你已经决毕业后做GIS开发,那么,一些不相关的专业课,完全可以放弃,考试能过就行了,不要太花时间。
拿我的课表来说,像什么人文地理啊,土地经济啊,自然地理啊,都是没用的课。
有很多人以经济爱好者自居,看到带经济的课就两眼放光,其实这些课真的是很没意思,不是看了本什么地理经济你就算搞经济的了,看了本地籍管理,以为自己可以去房地局管地籍了,什么都想学,往往最后什么也没学好。
所以,该放弃的课,是一定要放弃的,把有限的时间用在刀刃上。
还有另外一些专业课,和GIS相关的,像GIS概论,遥感,GPS,数字图像处理,摄影测量,GIS地图设计,GIS项目管理,空间数据库原理及应用。
。
。
等等(我只是根据我的课表列举一些,各个学校专业背景不同,具体课程也不同),这些课程都是要用心去学的。
在这些课程中会碰到一些需要编程来解决的问题,不要偷懒。
另外,这个时候会接触到...
转载请注明出处51数据库 » word 对象模型参考
还有谁-我就问一下