Tag: vsto

VSTO工具:Office 2010至2013升级

我正在开发一个用于Excel的VSTO工具项目。 我现在正在升级我的机器。 我的“旧”笔记本电脑使用Office 2010和Visual Studio 2012运行Windows 7 x64。我的新机器具有带Office 2013和Visual Studio 2012的Windows 8 x64。 在VS2012上打开我的解决方案时,在新机器中,加载项目时出错: 无法创建项目,因为此计算机上未安装与此项目类型关联的应用程序。 您必须安装与此项目类型关联的Microsoft Office应用程序。 我估计这是由于Office升级。 除非真的有必要,否则我不想回到Office 2010。 你有什么建议吗? 最好的问候,jpsfs

如何将资源文件夹中的图像作为附件添加并嵌入到C#中的Outlook邮件正文中

我有几个图像存储在visual studio项目Resources文件夹中,我必须加载它们并在Outlook邮件正文中显示。 这是代码: Bitmap b = new Bitmap(Properties.Resources.MyImage); ImageConverter ic = new ImageConverter(); Byte[] ba = (Byte[])ic.ConvertTo(b, typeof(Byte[])); MemoryStream logo = new MemoryStream(ba); LinkedResource companyImage = new LinkedResource(logo); companyImage.ContentId = “companyLogo”; mailitem.HTMLBody += “”; 但是,它不能在邮件正文中显示,而是“红色x的空框”。 你能给我一些想法吗?

查找并突出显示单词addin中的问题

我曾经使用这个代码突出显示’word’。它用在’for each’循环中,循环遍历字符串集合。 但问题是在突出显示所有单词之后..如果我们尝试更改文档中的任何一个单词,则所有高亮显示都会自动删除。 word.Find find = rng.Find; find.Wrap = word.WdFindWrap.wdFindContinue; find.Font.UnderlineColor = word.WdColor.wdColorRed; find.HitHighlight( FindText: wd, MatchCase: true, TextColor:word.WdColor.wdColorRed, MatchWholeWord: true, HighlightColor: word.WdColor.wdColorLightYellow );

以编程方式构建访问查询

Microsoft Office Access数据库包含表,查询,表单和报表。 是否可以从C#在Access数据库中构建和保存查询? 例如,我知道我可以使用OLEDB连接到Access数据库并使用SQL命令使用其表和已定义的查询,但是如何构建新查询然后将其保存在数据库中?

消息日期属性的模式名称

我试图通过PropertyAccessor读取和写入消息日期(发送/接收),但无法弄清楚该属性的模式名称是什么,甚至不确定我是否正确传递了模式参数。 什么是正确的架构名称? 如何正确传递GetProperty()和SetProperty() ? 某个地方是否有可用的名称列表? 有没有办法获得/设置没有架构的属性,只需使用属性名称? object prop = item.PropertyAccessor.GetProperty(“http://schemas.microsoft.com/mapi/proptag/0x10130102”); // I know 0x10130102 is not correct but don’t know what the correct one is. item.PropertyAccessor.SetProperty(“http://schemas.microsoft.com/mapi/proptag/0x10130102”, DateTime.Now.ToFileTimeUtc());

VSTO:仅在加载文档时启用function区按钮

如何在加载文档时设置Word加载项中的function区按钮,并在没有加载文档时禁用,就像大多数内置按钮一样? 可以将全局标志绑定到按钮的“Enabled”属性,还是比它更复杂? 我知道我可以创建一个定时循环来检查Application.Documents中的更改,但是如果可能的话,我正在寻找“更干净”的东西。 我已经看过禁用自己的Word 2007加载项如果没有文档加载和其他相关的问题。

ftp上传太大了

我在C#中编写了一个函数,用于在复制到文件共享时无法上传文件。 我注意到任何上传的文件大小都是原始文件的1.5-2倍,并且是无效文件。 这是代码: public bool save_FTPUpload(FileInfo fi_attachment) { bool fileSaved = false; string filename = fi_attachment.Name; while (!fileSaved) { string file_ftpURI = string.Format(“{0}/{1}”, ftpURI, filename); FtpWebRequest file_exist_request = (FtpWebRequest)FtpWebRequest.Create(file_ftpURI); file_exist_request.Credentials = new NetworkCredential(ftp_user, ftp_pass); file_exist_request.Method = WebRequestMethods.Ftp.GetFileSize; try { FtpWebResponse response = (FtpWebResponse)file_exist_request.GetResponse(); } catch (WebException ex) { FtpWebResponse response = (FtpWebResponse)ex.Response; if (response.StatusCode == […]

Word命令行参数空间问题

我想通过使用Environment.GetCommandLineArgs()将参数传递给winword,以便在我的vsto插件中读取它。 如果参数值包含空格我无法转义字符串。 这是有效的: winword.exe /myVar1:C:\folder\whatever1.doc /myVar2:C:\folder\somethingelese.txt C:\example.doc 这不起作用: winword.exe /myVar1:”C:\folder with space\whatever1.doc” /myVar2:”C:\folder with space 2\somethingelese.txt” C:\example.doc

带有C#的VSTO Outlook ItemSend

我正在尝试使用VSTO在Outlook电子邮件的正文末尾添加一个字符串 private void ThisAddIn_Startup(object sender, System.EventArgs e) { this.Application.ItemSend += new Microsoft.Office.Interop.Outlook.ApplicationEvents_11_ItemSendEventHandler(Application_ItemSend); } void Application_ItemSend(object Item, ref bool Cancel) { if (Item is Outlook.MailItem) { Outlook.MailItem mail = (Outlook.MailItem)Item; mail.BodyFormat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatHTML; mail.Body += “My Sample Text”; mail.Save(); } } 当我用V5运行我的代码来自VStudio时, 应用程序没有在我的断点处停止并且电子邮件不包含添加的行 我能做些什么呢? 注意 :我正在使用VS2008和Outlook 2007 提前致谢

如何使用C#将单元格聚焦到Excel VSTO中? 如何在VSTO中使用C#选择第一个单元?

如何使用C#将单元格聚焦到Excel VSTO中? 如何在VSTO中使用C#选择第一个单元? 请帮忙代码……