Как вставить подпись пользователя при создании файла .eml - PullRequest
0 голосов
/ 04 октября 2018

Я создаю файл FileStream .eml, который пользователь может открыть в своем почтовом клиенте по умолчанию (outlook), и я хочу заполнить HTMLBody собственной подписью пользователя.

Это работает при локальном запуске:

private string ReadSignature()
{
    string appDataDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\Microsoft\\Signatures";
    string signature = string.Empty;
    DirectoryInfo diInfo = new DirectoryInfo(appDataDir);

    if(diInfo.Exists)
    {
        FileInfo[] fiSignature = diInfo.GetFiles("*.htm");

        if (fiSignature.Length > 0)
        {
            StreamReader sr = new StreamReader(fiSignature[0].FullName, Encoding.Default);
            signature = sr.ReadToEnd();

            if (!string.IsNullOrEmpty(signature))
            {
                string fileName = fiSignature[0].Name.Replace(fiSignature[0].Extension, string.Empty);
                signature = signature.Replace(fileName + "_files/", appDataDir + "/" + fileName + "_files/");
            }
        }
    }
        return signature;
}

из этого источника: Добавьте подпись outlook по умолчанию в сгенерированном письме

Проблема в том, что

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)

смотрит на C: \ сервера, а не на стороне клиента.Поэтому, когда я развертываю свое приложение на своем веб-сервере, оно не может найти подписи.

Кто-нибудь знает, как я могу получить доступ к подписи пользователей со своего компьютера?Это вообще возможно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...