На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Название темы должно быть информативным !
Прежде чем задать вопрос, воспользуйтесь Поиском. и проверьте в FAQ (ЧАВО) Паскаля
Чтобы получить вразумительный ответ, подробно опишите проблему: что надо сделать, что не получается и номер ошибки (если есть), которую выводит компилятор.
Для вставки кода ваших программ используйте, пожалуйста, кнопку СODE=pas или выпадающий список СODE для других языков (подсветка синтаксиса).
[!] Как правильно задавать вопросы | Руководство по языку B.Pascal 7 & Objects/LR | Borland Pascal. Руководство пользователя
Модераторы: volvo877
  
> BP.EXE 7 паскаля вообще делает проги под винду?
    BP.EXE 7 паскаля вообще делает проги под винду? В настройках есть, а дальше uses дело не движется.
      Цитата Ivanhoe75 @
      BP.EXE 7 паскаля вообще делает проги под винду?

      Нет. Только чистый DOS.
      А тебе зачем это?
        Да мне надо написать прогу вызов функции из винапи. Окна не нужны значит и Делфи не нужен. В с++ я не силён. остаётся паскаль
          >Окна не нужны значит и Делфи не нужен
          Консольные и вообще безоконные приложения можно и на Дельфи делать.
            И как же? По умолчанию в дельфи форма-окно стартует. Я свою прогу изначально в дельфи написал, но у меня ненужное окно присутствует
            Сообщение отредактировано: Ivanhoe75 -
              Проще всего сделать новый проект - консольное приложение (File-New-Other-Console Appplication), а потом удалить из него строку {$APPTYPE CONSOLE}.
              Это можно сделать после того, как программа отлажена, и вывод диагностики больше не нужен
                Это какая версия Делфи?
                  Любая
                    Цитата min@y™ @
                    BP.EXE 7 паскаля вообще делает проги под винду?
                    Нет. Только чистый DOS.
                    А тебе зачем это?

                    Неверно. Переключаем compile\ target = windows и работает. И под protected mode делает
                      Цитата min@y™ @
                      Нет. Только чистый DOS.

                      BP в отличии от TP может. Там даже есть BPW.exe, IDE на окнах в винде.
                        Цитата MBo @
                        Проще всего сделать новый проект - консольное приложение (File-New-Other-Console Appplication), а потом удалить из него строку {$APPTYPE CONSOLE}.Это можно сделать после того, как программа отлажена, и вывод диагностики больше не нужен

                        В 3-м делфи нету Other. Подскажите как консольное приложение сделать.
                          Значит, нужно тщательно проглядеть меню File-New.
                          Возможность создать консольное приложение была всегда.
                          http://code-man.narod.ru/delphi/console_app/
                              На вкладке Projects что есть?
                                На Project1 один элемент Form1
                                  самая правая вкладка
                                    Application Wizard\ включить в меню файл, редактирование, окна, хелп\ уточнить параметры для этих пунктов меню...
                                      Копайся в меню. Мало кто помнит, как оно было в Delphi 3.

                                      Можно вручную создать .dpr файл, потом открыть его в среде и писать в нём программу.
                                        Оригинально. Я удалил из программы форму, её инициализацию, и получил приложение без формы. Забавно. Раньше мне такое не приходило в голову.
                                          Цитата Ivanhoe75 @
                                          Оригинально. Я удалил из программы форму, её инициализацию, и получил приложение без формы.

                                          А если выбросить всякий шлак из "Uses", то можно получить крайне легковесное приложение-каркас на несколько килобайт веса. Правда, импортировать WinAPI-функции придётся в рукопашную (копи-пастом из штатных модулей), но иногда это реальный путь.
                                            Не проходит. Для функции shellexecute первый параметр handle ,по видимому, является указателем на окно его вызвавшее.
                                              Ты читал хелп по функции? Ноль укажи.
                                              https://msdn.microsoft.com/en-us/library/wi...p/bb762153.aspx

                                              A handle to the parent window used for displaying a UI or error messages. This value can be NULL if the operation is not associated with a window.
                                              Сообщение отредактировано: MBo -
                                                Писать проги на паскале под винду одна из форм компьютерного извращения. И если не получается то это очень хорошо, потому как переход к современным способам программирования даст лучшие результаты в работе и моральное удовлетворение программисту.

                                                Добавлено
                                                Если доктор пытается оперировать гланды через задний проход, его нужно вовремя остановить, а не помогать советами. Потому как на опрерационном столе могут оказаться и советчики, а тогда будет поздно.
                                                  В разделе holiwar должна быть соответствующая тема для обсуждения преимуществ и недостатков ряда ЯП.
                                                    Сделал в делфи 3. Что-то ошибка evarianterror invalid variant type conversion.

                                                    Скрытый текст


                                                    program Project1;

                                                    uses

                                                    ShellExec in 'ShellExec.pas' {Form1},
                                                    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
                                                    ShellAPI, StdCtrls, ExtCtrls;


                                                    {$R *.RES}
                                                    Var
                                                    Command, Params,WorkDir : String;

                                                    begin
                                                    Command :='command.com'+ #0;
                                                    Params := #0;
                                                    WorkDir := #0;

                                                    Application.Initialize;
                                                    { Application.CreateForm(TForm1, Form1);}
                                                    Application.Run;
                                                    If ShellExecute(NULL ,'open',@Command[1],@params[1],@WorkDir[1],
                                                    SW_SHOWNORMAL) < 32 THEN
                                                    MessageDlg('Failed to execute ',mtError, [mbOK] , 0);
                                                    end.

                                                      Не надо брать адрес посимвольно через @s[i], лучше просто приводить к PChar(s), где s - типа string.
                                                      Плюс при выходе из Application.Run(), если память не изменяет, приложение считается оконченным.
                                                      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                      0 пользователей:


                                                      Рейтинг@Mail.ru
                                                      [ Script execution time: 0,0445 ]   [ 16 queries used ]   [ Generated: 23.04.24, 10:18 GMT ]