小编Lar*_*sky的帖子

_MailAutoSig缺少书签(Outlook 2010)

我为Outlook写了一段时间,在outlook消息中添加/删除签名下面的可选标语.此加载项无任何问题.

我正在编写第二个加载项,需要在下面添加信息(无论是否存在可选签名),并再次引用Word编辑器中的_MailAutoSig书签.我遇到的问题是这个书签似乎不再出现,我的其他加载项的书签也没有出现.

下面两段代码中的一个区别是第一个代码是从ItemSend传递的对象转换的MailItem,而第二个代码是在ItemSend事件之前处理的.

这是我目前正在编写的代码:

            Word.Document toMsg = msg.GetInspector.WordEditor as Word.Document;

        foreach (Word.Bookmark b in toMsg.Bookmarks)
            Debug.Print(b.ToString());

        Word.Range r_toMsg;

        try
        {
            string oBookmark = "_MailAutoSig";  // Outlook internal bookmark for location of the e-mail signature`
            object oBookmarkObj = oBookmark;
            if (toMsg.Bookmarks.Exists(oBookmark) == true)
                Debug.Print("sigbookmark");
            r_toMsg = toMsg.Bookmarks.get_Item(ref oBookmarkObj).Range;
        }
        catch
        {
            string oOffsiteBookmark = "OffsiteBookmark";
            object oOffsiteBookmarkObj = oOffsiteBookmark;

            if (toMsg.Bookmarks.Exists(oOffsiteBookmark) == true)  // if the custom bookmark exists, remove it
                Debug.Print("offsite bookmark");
        }
        finally
        { 
            r_toMsg = toMsg.Range(missing,missing);
        }
Run Code Online (Sandbox Code Playgroud)

这是来自我的工作加载项的代码: …

.net c# outlook ms-word outlook-addin

15
推荐指数
1
解决办法
1485
查看次数

无法从程序集中加载"ADODB.FieldsToInternalFieldsMarshaler"类型

我有以下代码:

MAPITable mt = rStores.MAPITable;

        Recordset rs = new Recordset();
        rs = mt.ExecSQL(@"SELECT EntryID, ""http://schemas.microsoft.com/mapi/proptag/0x0FF60102"" As PR_INSTANCE_KEY from Name");

        while (!rs.EOF)
        {
            var fields = ((dynamic)rs.Fields);
            for (int f = 0; f < fields.Count; f++)
            {
                var field = fields[f];
                var name = field.Name;
                var value = field.Value;
            }
            Debug.Print(rs.Fields["EntryID"].Value);
            Debug.Print(rs.Fields["PR_INSTANCE_KEY"].Value);
            rs.MoveNext();
Run Code Online (Sandbox Code Playgroud)

当我尝试访问记录集字段时,我在主题中得到上述错误.我在这里看到了问题,但这对我没有帮助.

更新:没关系 - 此处列出的解决方法

.net c# adodb

7
推荐指数
1
解决办法
1万
查看次数

如何为VSTO加载项显示我的GUID

我已经尝试将以下代码添加到我的加载项代码的开头:

Namespace NS
    [Guid("211B3945-E2AE-48DD-8A9A-77ADB40EC6D5")]
    [ComVisible(true)]
    public partial class Classname
    {
Run Code Online (Sandbox Code Playgroud)

但是当我列出COMAddins(名称没有,但不是GUID)时它不会出现.

我也尝试在程序集信息下的编译设置中设置它,但没有运气.

BTW - 我正在尝试解决的问题是通过搜索其GUID来加载COM Addin.该加载项的描述显示,当我检查ComAddIns的名单,但GUID仍然显示零无论我如何按照这些指示.我正在尝试使用以下代码查看可见内容:

olApp = this.Application;
Office.COMAddIns CAIs = olApp.COMAddIns;
foreach (Office.COMAddIn CAI in CAIs)
{
    StringBuilder sb = new StringBuilder();
    sb.AppendLine(CAI.Description);
    sb.AppendLine(CAI.Guid);
    sb.AppendLine("****");
    Debug.Print(sb.ToString());
}
Run Code Online (Sandbox Code Playgroud)

c# vsto guid outlook-addin

6
推荐指数
1
解决办法
1121
查看次数

动态更改功能区标签

我已经为 Outlook 2010 加载项创建了 VSTO 功能区。当我以前使用设计器时,我能够动态更改功能区按钮的标签。我现在正在手动编码(XML/C#),并且似乎无法确定如何完成同样的事情。XML 中的“标签”项似乎是静态的。

仅供参考 - 其背后的目的是为用户识别图库中的项目数量。

谢谢。

c# vsto

4
推荐指数
1
解决办法
4250
查看次数

ISO 8859-1文件名无法解码

我正在使用python milter从MIME消息中提取文件,并且遇到了以这样命名的文件的问题:

=?ISO-8859-1 Q + CERTIFICADO = 5FZonificaci = F3N = 5F2010 = 2Epdf?=

我似乎无法将此名称解码为UTF.为了解决先前的ISO-8859-1问题,我开始将所有文件名传递给此函数:

def unicodeConvert(self, fname):
    normalized = False

    while normalized == False:
        try:
            fname  = unicodedata.normalize('NFKD', unicode(fname, 'utf-8')).encode('ascii', 'ignore')
            normalized = True
        except UnicodeDecodeError:
            fname = fname.decode('iso-8859-1')#.encode('utf-8')
            normalized = True
        except UnicodeError:
            fname = unicode(fname.content.strip(codecs.BOM_UTF8), 'utf-8')
            normalized = True
        except TypeError:
            fname = fname.encode('utf-8')

    return fname
Run Code Online (Sandbox Code Playgroud)

哪个工作,直到我得到这个文件名.

想法一如既往地受到赞赏.

python unicode mime iso latin1

4
推荐指数
1
解决办法
1389
查看次数

Outlook中的XML功能区 - 使其显示在特定窗口中

我正在尝试使用XML在Outlook中创建功能区,并且无法找到具体说明如何告诉我的加载项我只希望功能区出现在Explorer窗口中.

建议吗?

谢谢.

我的Ribbon1.XML文件:

    <?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
  <ribbon>
    <tabs>
      <tab idMso="TabAddIns">
        <group id="MyGroup"
               label="My Group">
          <button idMso="Delete"/>
        </group>
      </tab>
      <tab idMso="TabMail">
        <group idMso="GroupMoveActions"
               visible="false">
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>
Run Code Online (Sandbox Code Playgroud)

弹出的神奇错误框说:

testingOLaddin2中的CustomUI运行时错误

Error found in CustomUI XML of "testingOLaddin2"

Line: 3
Column: 10
Error Code 0x80004005
Failed to find Office control by ID
ID: TabMail
Run Code Online (Sandbox Code Playgroud)

每个请求,我的功能区生成代码:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Text;
using Office = Microsoft.Office.Core;

using System.Diagnostics;

namespace testingOLaddin2 …
Run Code Online (Sandbox Code Playgroud)

.net c# outlook ribbon

3
推荐指数
1
解决办法
7731
查看次数

C#中的卷影复制(VSS)示例?

我在这里看到了这个问题,但是我很难理解如何实现一个系统来从我的系统中读取现有的卷影副本.

有人可以提供一个简短的代码示例,让我可以使用MS API或Alpha浏览现有的卷影副本吗?

仅供参考 - 这是较旧的代码,不易适应(或至少不是从我的角度来看)

.net c# api volume-shadow-service

3
推荐指数
1
解决办法
1万
查看次数

将电子邮件附件保存到UNC路径

我在为Outlook编写的VSTO加载项中有以下代码:

        savefolder = Regex.Replace(Guid.NewGuid().ToString(), @"[- ]", String.Empty);

        savepathfull = string.Format(@"{0}{1}", netloc, savefolder);
        DirectoryInfo di = new DirectoryInfo(@savepathfull);
        if (!(di.Exists))
            Directory.CreateDirectory(@savepathfull);



        removedFiles = new List<string>();

        for (int d = attachs.Count; d > 0; d--)
        {
            if (attachs[d].Size > smallAttachment)
            {
                removedFiles.Add(attachs[d].FileName);
                attachs[d].SaveAsFile(savepathfull);
            }
        }
Run Code Online (Sandbox Code Playgroud)

一切正常,直到我尝试保存附件,此时我收到UnauthorizedAccessException.我知道我的测试用户拥有该文件夹的完全权限,但我仍然收到此错误.

想法?

谢谢.

.net c# outlook vsto outlook-addin

2
推荐指数
1
解决办法
766
查看次数

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 ==
                FtpStatusCode.ActionNotTakenFileUnavailable)
            {
                FtpWebRequest upload_request = (FtpWebRequest)FtpWebRequest.Create(file_ftpURI);
                upload_request.Credentials = new NetworkCredential(ftp_user, ftp_pass);

                upload_request.Method = WebRequestMethods.Ftp.UploadFile;
                upload_request.UsePassive = true;
                upload_request.UseBinary = true;
                upload_request.KeepAlive = false;

                StreamReader attachment = new …
Run Code Online (Sandbox Code Playgroud)

.net c# ftp vsto network-programming

2
推荐指数
1
解决办法
1137
查看次数

身份不明的javascript功能

我已经获得了管理SharePoint网站的角色,以下自定义代码位于其中一个页面上:

<script type="text/javascript">
 $(document).ready(function() {
      $("#pgtitle").html("Customer Service Feedback");
       });

</script
Run Code Online (Sandbox Code Playgroud)

我不是一个javascript的家伙,所以我在解释这个问题时遇到了麻烦.代码是由不再和我公司合作的人写的,在我到达之前就离开了.

javascript sharepoint sharepoint-2007

-7
推荐指数
1
解决办法
100
查看次数