Появилась нужда определить знак разделения дробной части, установленный в операционной системе. В принципе сделать это не проблема:
NumberFormatInfo numberFormatInfo;
string decimalSeparator;
numberFormatInfo = CultureInfo.CurrentCulture.NumberFormat;
decimalSeparator = numberFormatInfo.NumberDecimalSeparator;
А проблема возникает при вызове этого кода из C3D (в обычном Автокаде не проверял, у меня его нет) - вместо "," он выдает ".". Я даже делал "чистую" проверку - создал отдельную DLL, которая как раз и выводит значение знака разделителя. При подключении этой DLL в какой-нибудь экзешник получаю ожидаемую ",", а вот при подключении этой же DLL в приложение, вызываемое из C3D - получаю неведомую ".". Во время отладки вижу имя "ru-RU" и все знаки разделения дробной части - точки, вместо запятых, которые установлены у меня в системе.