|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
СторожVisual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro? Не на самом Визуал ФокПро, но с использованием рантайм библиотеки vfp9t.dll / vfp9r.dll в связке с С++ проектом. Главная мысль, FoxPro, начиная с ДОС-овской версии 2.6а (и ранее) и заканчивая графической версией 9.0 (под «Форточки») всегда был чрезвычайно хорош на уровне движка базы данных и весьма и весьма посредственен в части графического интерфейса. ДОС-овская версия была обманута Мелкософтом, который требовал использования графических функций приложения только через БИОС. Фирма Fox (тогда еще независимая от M$) попалась на эту удочку и проиграла. Приложения, которые писали непосредственно в графическую видеопамять, выиграли куда более. Достаточно вспомнить такой продукт, как ДОС-овсий Автокад, версии 10 и 11. Плохая карма не позволила, по-видимому, VFP, уже под Windows, обрести полноценный интерфейс. Достаточно вспомнить «Парус», учетную систему, а-ля «1С77», написанную полностью на Visual FoxPro. По-моему, «семерка» и ныне куда более популярна, чем «Парус». И это притом, что «Парус» полностью декомпилируется на уровне исходных кодов VFP. Но кому он, однако, нужен? Зато движок VFP великолепен! Легкий, шустрый, эффективный, мощный, просто сказка. И весит всего несколько мегабайт. Цепляй его к своему клиенту, написанному на С++ с фреймворками (wxWidgets или Qt) и будет тебе счастье. Единственная загвоздка, не умеет народ правильно использовать runtime библиотеки VFP. Самые продвинутые создают COM-сервер средствами VFP, посредством которого получают доступ из клиента, например, на С++ к рантайму VFP. А затем применяют вариантные массивы для обмена данными в памяти между процессами С++ и VFP (не считая обмен через файлы). Спрашивается, а зачем нужна обёрточная dll, если vfp9t.dll / vfp9r.dll сами являются, официально, COM-серверами? А ответ прост, как стандартные COM-сервера vfp9t.dll / vfp9r.dll использовать невозможно. По крайней мере, Интернет на эту тему молчит как рыба об лёд. По-моему, там стоит или имитация / заглушка на вход как стандартный COM-сервер или задействуются «секретные» GUID'ы. Однако кроме ненастоящего, сувенирного КОМ-входа в рантайм библиотеках VFP используется несколько реальных нестандартных входов. Первый нестандартный вход обеспечивает функция DllWinMain. Она в качестве первого параметра использует имя файла с объектным кодом VFP (т.е. app, fxp или exe-файлы). Второй параметр это флаг отображения, типа SW_SHOWDEFAULT. Для t-версии, может принимать любое значение, т.к., в мультитредовой версии рантайма графика практически не отображается (если не считать MESSAGEBOX'а). Это самый крутой способ, который позволяет перевести VFP в состояние простого сервера (безо всяких КОМов, реестров и гуидов) и общаться с ним из С++ по любому протоколу. Например, runtime VFP можно задействовать как in-proc сервер по протоколу DDE, который может быть эффективнее любого СОМ'овского маршалинга при двустороннем обмене данными. Если не нравиться DDE, например, по «религиозным» причинам, можно использовать любой другой способ межпроцессного взаимодействия. Достаточно просто иметь в виду, что VFP поддерживает WinAPI. Второй нестандартный вход, это пара функций DllOleInit / VFPDllGetClassObject. Первая просто делает ОЛЕ-инициализацию, а вторая (аналог стандартной функции DllGetClassObject) позволяет получить нужный указатель, скармливая ей в качестве CLASID'a гуид обёрточной КОМ-dll'ки, а в качестве IID'а гуид стандартного интерфейса фабрики классов (либо IUnknown). При этом VFPDllGetClassObject обрабатывает объектный модуль VFP обёрточной dll'ки, может быть даже по аналогии с функцией DllWinMain. Хотя, не исключено, что использует «секретные» гуиды и стандартную КОМ-овскую технологию. Этот метод тяжело применять без обёрточной dll'ки, поскольку, информации по его использованию недостаточно. Проще уж задействовать «обёртку» и не париться. Третий нестандартный вход дает Static data OCXAPIInit:: . Однако информации по этому поводу нигде нет, а разбираться самому влом. Скорее всего, это как-то задействует технологию ActiveX. Меня лично привлекает первый вариант, где графика, в т.ч. грид (в виртуальном режиме) берется из wxWidgets (хотя можно и Qt). При этом навигация и модификация по dbf-файлам осуществляется непосредственно средствами С++ с использованием MMF (Memory Mapped Files) технологии. У меня на эту тему есть даже статья на моем сайте и на codeproject.com. А runtime VFP я собираюсь использовать для построения индексов, поиска, выборки данных (select sql) и т.п. Приложение обещает быть интересным, тем более, что его можно, по технологии внешних компонент внедрить в 1С («семерку» или «восьмерку»). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 20:54 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Emery, ИМХУ в скрещивании ужей с ежами ты достиг небывалых высот. Есть SQLite, он заточен как раз на то что ты делаешь. VFP не заточен, отсюда все описанные тобой проблемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 21:09 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Dima TEmery, ИМХУ в скрещивании ужей с ежами ты достиг небывалых высот. Есть SQLite, он заточен как раз на то что ты делаешь. VFP не заточен, отсюда все описанные тобой проблемы. Позвольте с вами не согласиться! «VFP заточен», только нужной информации вы нигде не найдете. Поэтому я и поделился кратко своими соображениями. SQLite ничуть не лучше Visual FoxPro, иначе мы бы спорили в ветке по SQLite. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 21:16 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Emery«VFP заточен», только нужной информации вы нигде не найдете. ИМХУ VFP вещь в себе, т.е. замкнутая самодостаточная среда. Именно этим он хорош. То что к нему можно обратиться через COM это побочный эффект заложенный МС, они везде COM внедряли, 99% разработчиков на фоксе даже не знают об этом, т.к. это ненужные знания. Фишка фокса в том что прога на фоксе запустится после простого копирования, а COM-сервер надо регистрировать под админом. То что ты находишь то что никто никогда не искал - похвально, молодец что нашел, но я бы посоветовал забыть и забить, т.к. тут ничего не отлажено, потому что никто так не использует фокс, можешь запросто наступить на грабли, которые никто никогда уже не исправит, увы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 21:54 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
EmeryТретий нестандартный вход дает Static data OCXAPIInit:: . Однако информации по этому поводу нигде нет, а разбираться самому влом. Скорее всего, это как-то задействует технологию ActiveX.Поможем ... В архиве idl, содержащие данные об интерфейсах предоставляемых VFP9. Проще всего /без всяких извратов/ их можно использовать в 1С 7.7 или 1С 8.x. Также выбирайте на вкус: VB, C# ... /и в том же духе/. Имеется ли у вас документация с описание COM интерфейсов /типа документации к примеру объектной модели Excel для VBA/? Мне любопытно было бы попробовать поработать с VFP9 с использованием OLE. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 22:19 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Владимир2012Имеется ли у вас документация с описание COM интерфейсов /типа документации к примеру объектной модели Excel для VBA/?В dv_foxhelp.chm много чего полезного /как с C++ работать с VFP и использовании ActiveX/ ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 22:57 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Владимир2012В dv_foxhelp.chm много чего полезного /как с C++ работать с VFP и использовании ActiveX/"Чего тут думать? Прыгать надо" Код: sql 1. 2. 3. 4. 5.
Работает! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 23:29 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
PS: "Чем мог, тем помог" ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 23:58 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Рабочий код Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 00:17 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Dima TИМХУ VFP вещь в себе, т.е. замкнутая самодостаточная среда. Именно этим он хорош. Как известно, политика M$ состоит в том, что ни один их продукт не должен быть по настоящему «самодостаточен». По принципу Гоголя: «Вот если бы нос взять от Ивана Петровича, уши от Петра Спиридоновича, глаза от Кондратия Дорминдонтовича, то глядишь и жених был бы что надо». При использовании любой программы от Мелкософта, всегда остается впечатления, что ей для полного счастья не хватает чуть-чуть чего-то еще. В данном случае, для самодостаточности, у VFP маловато графических возможностей. Слишком уж убога его графика по современным меркам. Пример «Паруса» в этом смысле более чем показателен. Зато возможности движка VFP исключительно хороши. Видимо, используемая там технология Rushmore действительно стоящая. Dima TТо что к нему можно обратиться через COM это побочный эффект заложенный МС, они везде COM внедряли, 99% разработчиков на фоксе даже не знают об этом, т.к. это ненужные знания. Фишка фокса в том что прога на фоксе запустится после простого копирования, а COM-сервер надо регистрировать под админом. Естественно, если ограничиваться только средой VFP, то КОМ не нужен. Но если применять ФоксПро в связке с другой программой, предоставляющий нормальный интерфейс (тот же C++ с wxWidgets / Qt и много чего еще), то нужны средства доступа к нему. Для этого официально можно использовать только COM и OLE (посредством истинно КОМовской обёрточной dll, генерируемой средой VFP или саму программу vfp9.exe с опцией /automation либо /regserver). Можно еще задействовать ехе-шник, генерируемый VFP для запуска как внешнее приложение в другой программе. Именно так у меня работает учет зарплаты на 1C77. Из «семерки» вызывается внешнее приложение VFP, которая работает с 1С как с DDE-сервером. А то, что для этого нужно регистрироваться под админом нет никакой проблемы. Я сам админ, поэтому лично меня это совершенно не ограничивает. Другое дело, что COM / OLE / ActiveX слишком изощренная технология и нужна скорее такому монстру как M$, чем простому программисту. Зачем мне использовать окружной путь GUID или ProgId / Реестр / exe или dll, если кроме моей программы никто с КОМ-серверами работать не будет? Мне проще использовать dll-ку непосредственно, статически прилинкованную к моему проекту. Для vfp9t.dll / vfp9r.dll для этих целей удобно использовать не документируемую функцию DllWinMain, что я и делаю. Dima TТо что ты находишь то что никто никогда не искал - похвально, молодец что нашел, но я бы посоветовал забыть и забить, т.к. тут ничего не отлажено, потому что никто так не использует фокс, можешь запросто наступить на грабли, которые никто никогда уже не исправит, увы. На самом деле эту информацию искали многие, но мало кто находил. Я знаю только один открытый источник по примеру использования DllWinMain на каком-то японском или китайском сайте. Мне это было известно еще за два года до них. Многие задавали вопросы на форумах, но не находили удовлетворительных ответов. Я до недавнего времени делал акцент на DllOleInit / VFPDllGetClassObject, в крайнем случае, легкую обёртку для них, пока не пришел к выводу, что если использовать VFP как простой сервер, который можно получить через DllWinMain(SomeObjectVFPFile, SW_HIDE), то смогу решить все свои проблемы. Здесь SomeObjectVFPFile это некоторый app / fxp / exe файл, который переводит VFP в состояние простого DDE-сервера. Также можно использовать VFP для связи через порты, сокеты и т.п., что угодно, на любой вкус. Однако DDE это самый эффективный способ для организации двустороннего обмена данными. Так что я не разделяю твой пессимизм. Мне этот путь нравиться и я попытаюсь довести свою программу до ума. Ну а будут или нет другие использовать рантаймные библиотеки ФоксПро, для меня не слишком актуально. Я ведь никому не навязываю свою мнение, просто делюсь информацией, которую сам долго искал. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 08:11 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Boban5Vik_Fix Как может инструмент устареть? от того что он давно не обновляется, разве стал хуже работать? Время вокруг необновляемого инструмента может уйти вперед. Вместе с запросами клиентов.Это суждение "типичное" и оно часто многими высказывается по разным поводам для разных программных продуктов и операционных системам. В чем же "анатомия" данного типа суждений. А вот в чем. Плохому танцору то левое яйцо мешает, то правое, то оба сразу. В чем проблема прикрутить к VFP хоть QT, хоть .Net /.Net вообще не сложно прикрутить и использовать native код к примеру C# из VFP/ ...? Ответ прост. Яйца мешают. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 08:22 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
EmeryИз «семерки» вызывается внешнее приложение VFP, которая работает с 1С как с DDE-серверомDDE не использовал. Просьба привести исходный код /или часть кода/ демонстрирующий использование DDE из 1С. Гм. Ностальжи. Уже ранее рассказывал про свой подход при разработке проектов с использованием Foxpro. Так вот 90% кода в проектах - код полученный программно на основе мета данных. Надеюсь в 2017 в разрабатываемой мной технологической платформе этот код "оживет" /по крайней мере конвертацию диалоговых форм уже сделал .../. Не забуду в платформе и VFP ... /позже расскажу о чем речь/. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 08:39 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
EmeryДругое дело, что COM / OLE / ActiveX слишком изощренная технология и нужна скорее такому монстру как M$, чем простому программисту. Вы уж извините за резкость суждений. Многие говорят о том что они знают и понимают COM / OLE / ActiveX технологии, а на поверку - увы. И как правило от незнания их рассказывают об супер сложности, запутанности, нецелесообразности ... Ладно предположим на C++ действительно нужно месяца два "попотеть", чтобы разобраться как использовать COM / OLE / ActiveX, но тот же VB /к примеру/ прекрасно прячет все премудрости /правда не на 100%/, которые нужно знать для того, чтобы разрабатывать к примеру ActiveX. Кому нужно тот использует и не придумывает "отмазки". ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 09:00 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
EmeryМне этот путь нравиться и я попытаюсь довести свою программу до ума. Ну а будут или нет другие использовать рантаймные библиотеки ФоксПро, для меня не слишком актуально. Я ведь никому не навязываю свою мнение, просто делюсь информацией, которую сам долго искал.Здесь вам респект. Читал топики в которых вы объясняли как напрямую можно использовать dll-s VFP. Просьба обновить ваши посты и поведать всем об новых ваших изысканиях ... Просьба опубликовать примеры исходников демонстрирующих использование dll-s VFP /желательно с комментариями/. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 09:20 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
EmeryDima TИМХУ VFP вещь в себе, т.е. замкнутая самодостаточная среда. Именно этим он хорош. Как известно, политика M$ состоит в том, что ни один их продукт не должен быть по настоящему «самодостаточен». ИМХУ может МС похоронил фокс именно потому что не вписался он в эту общую концепцию. EmeryВ данном случае, для самодостаточности, у VFP маловато графических возможностей. Слишком уж убога его графика по современным меркам. Кому как. Мне хватает. Правда пришлось наваять ряд самодельных контролов для замены штатных (исключительно средствами фокса). Наверно от решаемых задач зависит. В учете чего-нибудь дизайн не самое главное. Невизуальная часть отлично расширяется написанием собственных DLL на С/С++ и использование их из фокса. EmeryЕстественно, если ограничиваться только средой VFP, то КОМ не нужен. Но если применять ФоксПро в связке с другой программой, предоставляющий нормальный интерфейс (тот же C++ с wxWidgets / Qt и много чего еще), то нужны средства доступа к нему. На фоксе можно СОМ-сервер написать Код: sql 1.
и использовать его извне, из той же 1С Код: sql 1.
Как-то делал для связки 1С с софтом на фоксе. Как делать в книгах расписано, сложностей не возникло. Если код на фоксе запускать не нужно, а только работа с данными в фоксовой БД, то есть VFPOLEDB . EmeryА то, что для этого нужно регистрироваться под админом нет никакой проблемы. Я сам админ, поэтому лично меня это совершенно не ограничивает. У меня админы чужие, поэтому иногда установка может превратиться в гимор с поиском админа. А так закинул папку с прогой, ярлык вытащил и все работает. EmeryЗдесь SomeObjectVFPFile это некоторый app / fxp / exe файл, который переводит VFP в состояние простого DDE-сервера. Также можно использовать VFP для связи через порты, сокеты и т.п., что угодно, на любой вкус. Однако DDE это самый эффективный способ для организации двустороннего обмена данными. DDE ни разу не использовал, а общаться с прогой на фоксе через порты, сокеты и т.п. можно просто запустив эту прогу. Можно обмен вынести в DLL. Вот мой пример через mailslot. Непонятно зачем тут усложнять прямой работой с vfp9t.dll / vfp9r.dll. ИМХУ разобрался - молодец, но какой-то сложный у тебя путь получился. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 09:26 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
"У Mocrosoft давно родилась елочка. С ActiveX она росла. И много, много радости программистам VFP она принесла!" PS: С наступающим Рождеством Христовым! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 11:14 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Владимир2012Поможем ... В архиве idl, содержащие данные об интерфейсах предоставляемых VFP9. Ну, эту и подобную информацию, например, оберточные классы vfp9t.h / vfp9t.cpp получить не проблема средствами Visual C++ v.6 и выше. Только к OCXAPIInit это не имеет никакого отношения. Владимир2012Проще всего /без всяких извратов/ их можно использовать в 1С 7.7 или 1С 8.x. Также выбирайте на вкус: VB, C# ... /и в том же духе/. Я уже выбрал C++ with frameworks wxWidgets / Qt. Для меня этого более, чем достаточно. Владимир2012Имеется ли у вас документация с описание COM интерфейсов /типа документации к примеру объектной модели Excel для VBA/? Документации у меня нет, но генерируемой Visual C++ typelib информации vfp9.tlh / vfp9.tli (например, с помощью директивы #import "vfp9t.dll") либо оберточных классов vfp9t.h / vfp9t.cpp (MFC Class Wizard \ Add Class \ Import from Time Library \ vfp9t.dll \ OK) вполне достаточно. Владимир2012Мне любопытно было бы попробовать поработать с VFP9 с использованием OLE. Для этого регистрируем VFP OLE-сервер, командой vfp9.exe с опцией /automation либо /regserver. Затем, если мы хотим использовать С++, пишем программу: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79.
Причем это далеко не единственный вариант использования. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 12:24 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Здесь представлены исходники примера. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 12:26 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
EmeryМожно еще задействовать ехе-шник, генерируемый VFP для запуска как внешнее приложение в другой программе. Именно так у меня работает учет зарплаты на 1C77. Из «семерки» вызывается внешнее приложение VFP, которая работает с 1С как с DDE-сервером.Вот этот момент не понятен. Зачем их С++ вызывать собранный VFP exe если можно напрямую работать с использование интерфейсов предоставляемых VFP? Все же повторю просьбу о публикации исходного текста с использованием DDE для обмена данными с VFP. За пример работы из C++ по OLE с VFP - спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 12:49 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Владимир2012EmeryИз «семерки» вызывается внешнее приложение VFP, которая работает с 1С как с DDE-серверомDDE не использовал. Просьба привести исходный код /или часть кода/ демонстрирующий использование DDE из 1С. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80.
Здесь LionUZP.exe это внешнее приложение на VisualFoxPro. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 12:52 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Вот пример расчета по одному человеку. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 12:59 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
А вот часть расчета по инициализации DDE в VFP: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 13:05 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
EmeryА вот часть расчета по инициализации DDE в VFP:Спасибо! Получает задача "Учет труда и заработной платы" /моя любимая/ у вас разработана на VFP. Когда ее разработал и внедрял в разного типа предприятий /разве, что рыбсовхозах ее небыло/. Потом 1С подоспела, конкуренты ..., но users говорили, что на Foxpro все было на много удобней ... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 13:21 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Владимир2012EmeryДругое дело, что COM / OLE / ActiveX слишком изощренная технология и нужна скорее такому монстру как M$, чем простому программисту. Вы уж извините за резкость суждений. Многие говорят о том что они знают и понимают COM / OLE / ActiveX технологии, а на поверку - увы. И как правило от незнания их рассказывают об супер сложности, запутанности, нецелесообразности ... Ладно предположим на C++ действительно нужно месяца два "попотеть", чтобы разобраться как использовать COM / OLE / ActiveX, но тот же VB /к примеру/ прекрасно прячет все премудрости /правда не на 100%/, которые нужно знать для того, чтобы разрабатывать к примеру ActiveX. Кому нужно тот использует и не придумывает "отмазки". Еще непонятно у кого больше заблуждений. Вот попробуйте дать определение COM / OLE / ActiveX в одном предложении, тогда и посмотрим. Если использовать мастера в Visual C++, то сгенерировать рабочие примеры для этих технологий не составит никакого труда. С пониманием этого кода трудности будут у многих. Многие авторы толстых книжек по КОМ любят рассказывать, как устроено КОМ, но не любят объяснять, почему оно так устроено и какую конкретно пользу она дает простым программистам. Тем более что сам M$ сплошь и рядом применяет нестандартные вариации КОМ. В мире Линукс прекрасно обходятся без КОМ, используя вместо этого технологию CORBA. Как по мне COM не намного лучше других подобных технологий, но иногда приходится пользоваться ею, чтобы достичь нужных целей. Если этих же целей можно достичь без COM, то тем лучше. Что касается Бейсика, то он может получать доступ только Dispatch-интерфейсам. В С++ мы имеем доступ к дуальному интерфейсу (если он реализован), т.е. и к Dispatch и VTable. А Dispatch гораздо медленнее, чем VTable. Кроме того, Бейсику недоступны HRESULT коды возврата работы интерфейсов, а в С++ доступны. А это большой минус в COM-технологии для Бейсико-подобных языков программирования. И чего вы решили, что речь идет об «отмазках», в данном случае это всего лишь констатация факта. Работаем, не с тем, что хотим, а с тем, что имеем. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 13:36 |
|
Visual Foxpro устарело. Кто нибудь ещё пишет проекты на Visual Foxpro?
|
|||
---|---|---|---|
#18+
Добавить в VFP пяток 1С-их объектов, связанных с бухгалтерий и вот вам супер бухгалтерская платформа. Что касается архитектуры VFP она безусловно лучше 1С /хотя нужно отдать должное 1С - хорошая технологическая платформа/. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2016, 13:37 |
|
|
start [/forum/topic.php?fid=41&msg=39376392&tid=1582008]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
31ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
67ms |
get tp. blocked users: |
1ms |
others: | 262ms |
total: | 404ms |
0 / 0 |