Передача буфера обмена Windows CRLF / LF неправильно для одного пользователя - PullRequest
0 голосов
/ 26 сентября 2008

У нас есть пара приложений. Один написан на C # и использует что-то вроде:

 string s = "alpha\r\nbeta\r\ngamma\r\ndelta";
 // Actually there's wrapper code here to make sure this works.
 System.Windows.Forms.Clipboard.SetDataObject(s, true);

Поместить список предметов в буфер обмена. Другое приложение (в WinBatch) затем выбирает список с помощью функции ClipGet (). (Мы используем функции буфера обмена, чтобы дать людям возможность редактировать список в блокноте или чем-то подобном, без необходимости каждый раз вырезать и вставить).

В этой конкретной среде у нас много пользователей в одной системе через Citrix. Многие используют эти пары программ.

Просто у одного пользователя возникает проблема, когда разделители строк в тексте переключаются с CRLF на LF где-то между SetDataObject () и CLipGet (). Я мог бы объяснить это в смешанной среде Unix / Windows, но здесь нет Unix. Никаких утилит unix-y рядом с этой системой тоже нет. Другие пользователи на том же сервере, никаких проблем вообще. Как будто что-то в Windows / Citrix «полезно», когда мы действительно этого не хотим, но только для этого парня.

Идеи

Ответы [ 2 ]

1 голос
/ 27 сентября 2008

Среда Environment.NewLine ведет себя по-разному в средах Citrix? Если это так, это может дать вам хороший вариант, который работает для всех пользователей вместо \ r \ n.

1 голос
/ 27 сентября 2008

Вы пытались очистить их профиль в Citrix? Похоже, что это решение многих проблем пользователей Citrix.

...