Вопрос

В настоящее время я создаю надстройку Excel 2007 с использованием VSTO (последняя версия + sp1) и .Net 3.5

Код просто берет положение диаграммы, используя свойства Top и Left, и сохраняет его в файле XML.

Проблема, с которой я сталкиваюсь, заключается в том, что при создании xml с использованием среды Vista Ultimate + Excel 2007 + на английском языке код работает отлично. Когда я перемещаю это в среду Windows Server 2003 + Excel 2007 + French, происходит сбой при попытке установить свойства Top и Left. Более того, он всегда возвращает 4 для обоих значений на сервере.

Я пытался поиграть с настройками региона и языка, но пока ничего не изменилось.

Я также попытался сохранить значения в виде целых чисел вместо значений с плавающей точкой, возвращаемых объектами VSTO.

Если у кого-то есть какая-то идея, что может быть не так, пожалуйста, укажите мне правильное направление.

Я отредактирую, как только прослежу еще немного ...

Это было полезно?

Решение

Я не уверен, поможет ли это или нет, но вы можете проверить класс System.Xml.XmlConvert. Этот класс позволит вам сериализовать типы данных в строковое значение, которое не зависит от локали. Когда вы извлекаете XML на другом компьютере, вы можете преобразовать значение обратно в соответствующий тип данных, используя тот же класс, и он примет Культуру текущей среды.

Другие советы

Вам необходимо опубликовать дополнительную информацию о том, что именно вы делаете и какую ошибку вы видите. Возможно, вам нужно форматировать / анализировать числовые значения с помощью CultureInfo.InvariantCulture, а не по умолчанию CultureInfo.CurrentCulture.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top