Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Не те буквы? / 13 сообщений из 13, страница 1 из 1
29.06.2004, 09:09
    #32580287
ArDo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
VFP8
Внутри программного кода есть такой фрагмент:
автор...
REPLACE aaa WITH "Без определения..."
...

Результат:
"Aез опЬеделения"

Под VFP6 это работало нормально
...
Рейтинг: 0 / 0
29.06.2004, 09:35
    #32580317
Pavel_t
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
B < CONFIG.FPW >
CODEPAGE = 1251
РЯДОМ С ЕХЕ ПОЛОЖИТЬ файл <FOXPRO.INT>
...
Рейтинг: 0 / 0
29.06.2004, 09:53
    #32580347
ArDo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
авторB < CONFIG.FPW >
CODEPAGE = 1251
РЯДОМ С ЕХЕ ПОЛОЖИТЬ файл <FOXPRO.INT>
1. Сделал - не помогло
2. Все настройки (CODEPAGE = 1251 в том числе) уже лежат в ЕХЕшнике и устанавливаются при его запуске
3. Этот эффект проявляется когда просто запускается ЕХЕ - если сначала открыть fox , а из него приложение, все работает как надо

Сервис пак на fox установлен, WinXP
...
Рейтинг: 0 / 0
29.06.2004, 10:02
    #32580365
Burn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
2Pavel_t
Для 8-ки FOXPRO.INT уже не нужен (он не нужен уже для 6-ки)

2ArDo
Ну раз ты точно уверен что конфиге CODEPAGE присуствует и твой EXE-шник подхватывает нужный конфиг, тогда смотри кодовую страницу своей формы - у нее тоже должна быть 1251 и если отличается - исправь
...
Рейтинг: 0 / 0
29.06.2004, 10:06
    #32580375
karly™
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
Означает это только одно - в определении кодовой страницы есть орфографические ошибки.
Либо слово "Codepage" начинается с русской "С", либо такая же фигня с "config.fpw",
либо еще что. Но в итоге команда ?Codepage() должна выдавать 1251 .
...
Рейтинг: 0 / 0
29.06.2004, 10:10
    #32580382
Соня_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
Раз у тебя при запуске фокса все нормально, фокс видит config.fpw и импользует нужную кодировку.
При запуске экзешника этого не происходит - значит экзешник этот файл найти не может или не использует его.
...
Рейтинг: 0 / 0
29.06.2004, 10:13
    #32580394
ArDo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
2 karly™
Codepage() у меня не работает! Пишет нет такого prg файла

2 Burn
А где увидеть кодовую страницу формы?
...
Рейтинг: 0 / 0
29.06.2004, 10:17
    #32580405
ArDo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
2 Соня
Из под Фокса все работает и в том случае если в config.fpw кодовая страница не указана.
...
Рейтинг: 0 / 0
29.06.2004, 10:22
    #32580422
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
Не CODEPAGE(), CPCURRENT() ;-)
...
Рейтинг: 0 / 0
29.06.2004, 10:27
    #32580435
Burn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
>А где увидеть кодовую страницу формы?
Project->Prodject Info->Files

Хотя я наверное поторопился - в среде то все нормально... Согласен с karly™ - ищи баги в конфиге - или неправильно написано Codepage или не тот конфиг подхватывается...
...
Рейтинг: 0 / 0
29.06.2004, 10:58
    #32580528
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
Как правило, используют 2 файла конфигурации - один на этапе создания и отладки проекта и другой - на этапе исполнения собственно готового EXE у клиента. Тот файл конфигурации, который поставляется клиенту можно включить внутрь EXE, но лучше этого не делать. В этом случае он позволяет производить некоторую внешнюю настройку среды FoxPro даже в готовом EXE.

Определить, какой именно файл конфигурации был использован при загрузке среды FoxPro, можно используя функцию

?SYS(2019)

Определить текущую кодовую страницу можно, используя функцию

?CPCURRENT()

Без параметра она как раз и вернет используемую в FoxPro по умолчанию кодовую страницу
...
Рейтинг: 0 / 0
29.06.2004, 11:57
    #32580701
ArDo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
Всем огромное спасибо! Определился:
Строка CODEPAGE = 1251 помещенная в программный код, игнорируется.
SET CODEPAGE TO 1251 вызывает ошибку при сборке ЕХЕшника.
Тот Config.fpw, единственный, который лежит под Фоксом (\Program Files\Microsoft Visual FoxPro 8\Samples\Servers\Foxisapi) тоже игнорируется, есть мысль что это чисто пример - SYS(2019) не показывает ничего.
Кодовая страница формы - 1251
Фоксовая страница по умолчанию - 1251
Если запущен один ЕХЕшник - 1252

Если потребный Config положить рядом с исполняемым модулем то все работает.
Хотелось бы определиться со строкой в коде
...
Рейтинг: 0 / 0
29.06.2004, 12:38
    #32580857
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не те буквы?
Это же надо... Твою бы энергию, да в мирных целях

Строка CODEPAGE = 1251 помещенная в программный код, игнорируется.
SET CODEPAGE TO 1251 вызывает ошибку при сборке ЕХЕшника.

Конечно, почитать Help и убедится, что таких команд просто не существует в FoxPro сил уже не осталось. Все ушли на эксперименты со сборкой (разборкой) EXE

Тот Config.fpw, единственный, который лежит под Фоксом (\Program Files\Microsoft Visual FoxPro 8\Samples\Servers\Foxisapi) тоже игнорируется, есть мысль что это чисто пример - SYS(2019) не показывает ничего.

Надеюсь, ты в курсе, что файл Config.fpw подключается в момент загрузки среды FoxPro? Это значит, что в этот момент не имеют смысла никакие настройки внутри собственно файла Config.fpw. Поэтому путь доступа к файлу конфигурации задается другими средствами:

-) Включить файл config.fpw внутрь EXE
-) Положить файл config.fpw в ту же директорию, что и основной EXE
-) Использовать явное указание пути доступа к файлу конфигурации через параметр с ключем "-C" примерно так:

MyProg.exe -C"C:\Program Files\Microsoft Visual FoxPro 8\Samples\Servers\Foxisapi\config.fpw"

-) Использовать системную (ОС) переменную окружения FOXPROWCFG (не рекомендуется)

Хотелось бы определиться со строкой в коде

Для указания кодовой страницы этого нет и быть не может. Назначение кодовой страницы определяет работу собственно среды FoxPro. Значит и настриваться должна в момент открытия этой среды и никак иначе. Как следствие, это невозможно сделать ПОСЛЕ открытия среды (в коде). Только через файл конфигурации.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Не те буквы? / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]