Автор | Сообщение |
|
| |
Пост N: 169
Зарегистрирован: 08.04.06
|
|
Отправлено: 30.01.08 21:51. Заголовок: Недопустимые символы в имени алиаса
Ошибка DBCMD(1010) Недопустимые символы в имени алиаса: L~300108 Вызов из __DBCREATE(152) А Clipper такой алиас хавал на "Ура!" Так что было в какой-то теме - в какой системе больше возможностей - Clipper или Harbour... это вопрос очень интересный и ответ тут может быть совершенно неоднозначным!
|
|
|
Ответов - 13
[только новые]
|
|
|
| Администратор
|
Пост N: 739
Зарегистрирован: 23.05.05
|
|
Отправлено: 31.01.08 09:21. Заголовок: Это такое имя файла ..
Это такое имя файла ?
|
|
|
|
| постоянный участник
|
Пост N: 61
Зарегистрирован: 27.01.07
|
|
Отправлено: 31.01.08 10:05. Заголовок: Pasha пишет: Это та..
Pasha пишет: Временный, наверное...
|
|
|
|
| |
Пост N: 172
Зарегистрирован: 08.04.06
|
|
Отправлено: 31.01.08 23:21. Заголовок: Re: Pasha
Pasha пишет: Да, такое вот имя файла. Формируемый в dbf-файл прайс-лист на 30.10.2008 г. Можно было, конечно, изначально (10 лет назад) не тильду ставить, а "_", но кто бы знал, что Харбор будет так выпендриваться! А теперь и в программе это в пяти местах (ещё может быть, например, P~300108...), и народ привык...
|
|
|
|
| |
Пост N: 40
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.02.08 07:58. Заголовок: Лукашевский пишет: ..
Лукашевский пишет: цитата: | А теперь и в программе это в пяти местах |
| Неужели сложно символ заменить в тексте программы? Лукашевский пишет: Думаю, что им все равно какой символ там стоит.
|
|
|
|
| |
Пост N: 178
Зарегистрирован: 08.04.06
|
|
Отправлено: 03.02.08 09:44. Заголовок: Re: rvu
rvu пишет: цитата: | Думаю, что им все равно какой символ там стоит. |
| Теоретически - да, а на практике стояла задача наиболее быстрого визуального обнаружения файла в большом списке (например, в папке "Мои документы"). Файлов, в которых есть символ "_" много, мягко говоря. А вот файлов, содержащих в начале имени "~" я не встречал вообще! Делайте выводы...
|
|
|
|
| |
Пост N: 179
Зарегистрирован: 08.04.06
|
|
Отправлено: 03.02.08 10:00. Заголовок: Re: rvu
rvu пишет: цитата: | Неужели сложно символ заменить в тексте программы? |
| Когда это один символ в пяти или там десяти местах - несложно. А когда подобных всяких разных замен (и не столько символов, а одной функции на другую) получается пол-тысячи в разных местах 50-ти PRG-модулей программы, уже несколько напряжно, согласитесь? Видите ли, я параллельно веду и Clipper-версии своей программы, и xHarbour-версии (чтобы у пользователя был выбор), причём последние получаю путём вышеупомянутых замен (в основном) из готовых и отлаженных Clipper-версий. Другой вариант - писать новые функции и отлаживать их и в Clipper-версии, и в xHarbour-версии, - кажется мне всё-таки гораздо более трудоёмким и чреватым гораздо большей потерей времени. Поэтому я и мечтаю максимально уменьшить количество подобных замен. Мечтать ведь не вредно? :-)
|
|
|
|
| постоянный участник
|
Пост N: 384
Зарегистрирован: 09.10.06
|
|
Отправлено: 03.02.08 10:22. Заголовок: Лукашевский пишет: ..
Лукашевский пишет: цитата: | Файлов, в которых есть символ "_" много, мягко говоря. А вот файлов, содержащих в начале имени "~" я не встречал вообще! Делайте выводы... |
| Это значит, что создатели Windows не поощряют использование "~" в именах файлов, мягко говоря.. И вот почему, цитата: | ISO 9660 (8+3 characters set) (или ISO 9660 Level 1) Символы, допустимые в именах файлов этого стандарта включают загравные A - Z, цифры 0 - 9 и символ подчеркивания (underscore symbol "_" ). Если Вы хотите записать диск в формате ISO 9660 Level 1 и/или создавать приложения для работы с CD, очень рекомендуется учитывать эти ограничения. Заметим, что для директорий в этом случае нельзя использовать расширения, только имя из 1-8 вышеобозначенных символов. Замечание: формат имен ISO 9660 является наиболее универсальным в плане читаемости под разными ОС (DOS, Windows *, UNIX, MacOS, ...) MS-DOS 8+3 filenames (неограниченный набор символов) Windows 95 позволяет использовать в именах файлов до 255 символов, включая пробелы. Для достижения совместимости с DOS с каждым файлом ассициируется стандартное DOS имя в формате 8+3. Эти имена создаются автоматически и их можно увидеть в закладке "свойства" файла. При использовании формата MS-DOS 8+3 записи файлов записываются на диск именно эти "укороченные" имена, при этом длинные имена будут потеряны. На самом деле, хотя DOS не поддерживат "255 символов, включая пробелы" в именах файлах, использование других, достаточно тривиальных символов, например тильда ("~") вызовет истошные вопли программы для записи, настроенной на формат имен ISO. |
|
|
|
|
|
| постоянный участник
|
Пост N: 385
Зарегистрирован: 09.10.06
|
|
Отправлено: 03.02.08 10:46. Заголовок: Лукашевский пишет: ..
Лукашевский пишет: цитата: | и xHarbour-версии (чтобы у пользователя был выбор), причём последние получаю путём вышеупомянутых замен (в основном) из готовых и отлаженных Clipper-версий. Другой вариант - писать новые функции и отлаживать их и в Clipper-версии, и в xHarbour-версии, - кажется мне всё-таки гораздо более трудоёмким и чреватым гораздо большей потерей времени. Поэтому я и мечтаю максимально уменьшить количество подобных замен. Мечтать ведь не вредно? :-) |
| Активнее используйте возможности препроцессора #ifdef __XHARBOUR__ #xtranslate aaa(<e>) => bbb(<e>) или #xtranslate aaa(<e>) => aaa(<e>); bbb(<e>) или .. #else .. #endif
|
|
|
|
| |
Пост N: 41
Зарегистрирован: 05.11.05
|
|
Отправлено: 03.02.08 12:10. Заголовок: Лукашевский пишет: ..
Лукашевский пишет: цитата: | Видите ли, я параллельно веду и Clipper-версии своей программы, и xHarbour-версии (чтобы у пользователя был выбор), причём последние получаю путём вышеупомянутых замен (в основном) из готовых и отлаженных Clipper-версий. Другой вариант - писать новые функции и отлаживать их и в Clipper-версии, и в xHarbour-версии, - кажется мне всё-таки гораздо более трудоёмким и чреватым гораздо большей потерей времени. |
| Я тоже параллельно веду и Clipper- и xHarbour-версии своей программы. Чтобы минимизировать проблемы, выделил не совпадающие части в отдельные .prg файлы, т.е. есть набор файлов основных и есть еще два файла - один для Clippera, другой для xHarboura. Функции в них носят одинаковые имена, поэтому при компиляции и линковке подцепляется нужные. Конечно пришлось потратить немало времени, чтобы привести программу в такой вид, зато теперь времени не тратится совсем, есть два .bat файла, один выдает Clipperный exeшник, другой xHarbourный.
|
|
|
|
| |
Пост N: 182
Зарегистрирован: 08.04.06
|
|
Отправлено: 04.02.08 01:04. Заголовок: Re: rvu
rvu пишет: цитата: | выделил не совпадающие части в отдельные .prg файлы |
| Да, интересное решение... разумное. Но времени на такую подготовку файлов мне пока жалко (по сути - то же самое перелопачивание программы, супротив которого я и выступаю :-). И нужно ведь ещё батники компиляции/линковки изменять, чтобы OBJ'и от Клиппера и Харбора сыпались в разные места... Но за идею спасибо. Может, в дальнейшем и воспользуюсь.
|
|
|
|
| Администратор
|
Пост N: 768
Зарегистрирован: 23.05.05
|
|
Отправлено: 04.02.08 09:20. Заголовок: У меня другой способ..
У меня другой способ Сырцы одни и теже, хоть для клиппера, хоть для харбора, хоть для CLIP, когда им занимался Ставлю #ifdef __HARBOUR__ #ifdef __CLIP__
|
|
|
|
|
| |
Пост N: 184
Зарегистрирован: 08.04.06
|
|
Отправлено: 04.02.08 10:12. Заголовок: Re: Pasha
Pasha пишет: цитата: | #ifdef __HARBOUR__ #ifdef __CLIP__ |
| Всё интереснее и интереснее... А для клиппера #ifdef __CLIPPER__ ? Надо, потому как есть чисто DOSовские вещи, кот. Харбор не поддерживает. Или используешь #ifndef __HARBOUR__ ?
|
|
|
|
| Администратор
|
Пост N: 772
Зарегистрирован: 23.05.05
|
|
Отправлено: 04.02.08 12:09. Заголовок: Да, #ifndef или #if..
Да, #ifndef или #ifdef __HARBOUR__ для харбора #else для клиппера #endif
|
|
|
|