Итак, в моей программе я использую COM Auotmation (AutomationFactory в Silverlight 4) для создания объекта FileSystemObject, в который я записываю строку (theContent). Содержимое в этом случае - это небольшой XML-файл UTF-8, который я сериализовал, используя MemoryStream в строку.
Строка в порядке, но по какой-то причине всякий раз, когда я вызываю метод записи FileSystemObject, я получаю сообщение об ошибке «HRESULT 0x800A0005 (CTL_E_ILLEGALFUNCTIONCALL from google)». Самое странное, что если я передаю еще одну простую строку, например «привет», она работает без проблем.
Есть идеи?
В качестве альтернативы, если есть способ представить файл / текстовый поток с FileSystemObject, к которому я мог бы сериализоваться напрямую, это также было бы хорошо (кажется, я не могу найти ничего, кроме VB).
Заранее спасибо!
string theContent = System.Text.Encoding.UTF8.GetString(content, 0, content.Length);
string hello = "hello";
using (dynamic fsoCom = AutomationFactory.CreateObject("Scripting.FileSystemObject"))
{
dynamic file = fsoCom.CreateTextFile("file.xml", true);
file.Write(theContent);
file.Write(hello);
file.Close();
}