Okna.  Wirusy.  Notatniki.  Internet.  biuro.  Narzędzia.  Kierowcy

rozważymy tworzenie.exe przy użyciu biblioteki modułu py2exe. Wymaga to Pythona 3.4 i poniżej.

Jeśli masz zainstalowaną wyższą wersję Pythona, spróbuj użyć (poniżej)

W tym przykładzie przyjrzymy się tworzeniu pliku .exe z przykładem Python3.4.

Przede wszystkim musisz stworzyć wirtualne środowisko dla Python3.4. W tym przykładzie nazwiemy myenv, możesz wybrać dowolną inną nazwę, ale nie zapomnij wprowadzić odpowiednich zmian.

Wpisz następujące polecenia w terminalu:

>py -3.4 -m venv myenv > myenv\Scripts\activate.bat

W wiersz poleceń pojawi się prefiks myenv, co oznacza, że ​​ładowane jest środowisko wirtualne o nazwie myenv. Wszystkie drużyny Pyton będzie teraz korzystać z nowego środowiska wirtualnego.

Teraz zainstalujmy py2exe(https://pypi.python.org/pypi/py2exe~~HEAD=dobj) w naszym środowisku wirtualnym:

> pip zainstaluj py2exe

I wreszcie, aby utworzyć pojedynczy plik EXE, w naszym wirtualnym środowisku wykonujemy polecenie:

>python -m py2exe.build_exe hello.py -c --bundle-files 0

(zastępować cześć.py do nazwy twojego skryptu. Jeśli skrypt znajduje się w innym folderze, musisz podać pełną ścieżkę do skryptu, na przykład C:\Projects\Python\hello.py). Spowoduje to utworzenie folderu DIST zawierającego plik wykonywalny. Dla szybki dostęp do niego wpisz w terminalu:

> dystrykt odkrywcy

Zobaczysz ścieżkę do folderu, w którym znajduje się plik EXE.

Notatka: Po wykonaniu okno otworzy się i zniknie tak szybko, jak się pojawiło.
Dzieje się tak, ponieważ system operacyjny automatycznie zamyka terminal, w którym program konsoli skończone.
Aby zmienić tę sytuację, możesz dodać linię

> wejście („Naciśnij, aby wyjść…”)

na końcu pliku Pyton. Interpreter będzie czekał na wprowadzenie danych przez użytkownika, a okno pozostanie otwarte, dopóki użytkownik nie naciśnie klawisza Enter.

Możesz szczegółowo przestudiować użycie py2exe w dokumentacji na stronie modułu: https://pypi.python.org/pypi/py2exe
Wyjście ze środowiska wirtualnego odbywa się za pomocą polecenia

> dezaktywować

Metoda 2

Poprzez komendę Linia okien zainstaluj pyinstaller:

> pip zainstaluj pyinstaller

W wierszu polecenia przejdź do folderu, w którym znajduje się plik

CDC:\...

Następnie w wierszu poleceń wpisujemy polecenie

Pyinstaller --onefile example.py

Zamiast przykład.py użyj nazwy pliku, z którego chcesz utworzyć plik exe.

Za kilka minut wszystko jest gotowe! Najprawdopodobniej plik exe będzie znajdować się w utworzonym podfolderze dyst

Treść
1. Jak skompilować EXE
1.1 Technologia kompilacji
1.2 Pliki powiązane
2. Co należy zawrzeć w pliku EXE

1. Jak skompilować EXE
1.1 Technologia kompilacji
Epigraf:
„O tak Puszkin, o tak…”
AS Puszkin

Technologia kompilacji EXE w Visual FoxPro jest dość prosta. Nie będą nas rozpraszać tak ekstremalne metody, jak wpisywanie w oknie poleceń poleceń typu ZBUDUJ PROJEKT, ZBUDUJ APLIKACJĘ, ZBUDUJ EXE , ale ograniczymy się do udogodnień, jakie zapewnia interfejs graficzny VFP.
Tak więc, aby utworzyć plik EXE, musimy nacisnąć przycisk w menedżerze projektu "ZBUDOWAĆ...". Wybranie opcji w oknie dialogowym, które zostanie otwarte Plik wykonywalny Win32 / serwer COM (EXE) naciskamy OK. WSZYSTKO. ;-)
„Jak wszyscy?” - pytasz - „I podaj pod jaką nazwą zapisać plik?”
Zgadzam się... Trzeba to sprecyzować, inaczej wszystko pójdzie w błoto.
Nawiasem mówiąc, myślę, że warto przypomnieć, że aby proces kompilacji przebiegł pomyślnie, należy wypełnić menedżera projektu plikami programów, z których jeden musi być jako główny (w menedżerze projektu nazwa tego pliku jest pogrubiona), tj. plik do wykonania jako pierwszy. Domyślnie jako program główny ustawiany jest pierwszy plik programu (*.prg) lub plik formularza (*.scx) zawarty w projekcie.
Ogólnie rzecz biorąc, wszystko jest dość proste! Tylko..?
A teraz smutne...

1.2 Pliki powiązane
Epigraf:
"...i włączasz - nie działa!"
M. Żvanetsky

Wszystkie zakręty etapu kompilacji aplikacji już za nami, a Ty, dumny ze świadomości własnej wyższości nad zwykłymi śmiertelnikami, gnasz do klienta skokami, instalujesz swoją aplikację, jednocześnie opisując mu (klientowi) jak teraz wszystko będzie fajnie i licząc w myślach jaką śrubę kupić, co zostałoby do piwa, nagle natykasz się na fakt, że twój super-duper program nie robi zamieszania. Smutny. Szkoda. A co najważniejsze, nie będziesz miał nowego winchestera ani tego, co planowałeś tam kupić dla siebie za opłatą ...

Rzecz w tym, że skompilowany przez nas .exe nie jest samowystarczalnym plikiem wykonywalnym. Ten pseudo-plik wykonywalny wymaga do poprawnego działania bibliotek pomocniczych (.dll). Nie będę wdawał się w dyskusję na ten temat, ale po prostu podam nazwy plików niezbędnych do normalnego działania aplikacji.
W zasadzie do wersji 6 włącznie można korzystać ze standardu Kreator konfiguracji, który przepisuje wszystko sam, a następnie - InstallShield(lub inny instalator).
Wszystkie poniższe pliki to minimalny wymagany zestaw plików dla różne wersje VFP (wg):

VFP 8.0 msvcr70.dll, vfp8r.dll, vfp8rrus.dll, gdiplus.dll 0.dll, vfpodbc .dll, vfp500.dll, vfp5rus.dll, Foxpro.int
Powyższy zestaw bibliotek należy umieścić w katalogu programu lub w katalogu systemu Windows. Dla różnych Wersje Windowsa te katalogi są różne:

Win9x, WinMe c:\Windows\SYSTEM WinNT,Win2000,WinXP c:\Windows\SYSTEM32

2. Co należy zawrzeć w pliku EXE
Epigraf:
„Uwzględniać czy nie uwzględniać?”
pijany elektryk

Wszystkie poniższe są osobistą opinią autora, którą można zlekceważyć. Ale robiąc to po swojemu, pamiętaj: walenie głową w betonową ścianę jest o wiele bardziej bolesne niż wykorzystywanie wyłomu dokonanego przed tobą.
Domyślnie gotowy plik .exe zawiera wszystkie pliki niezbędne do działania aplikacji - programy, formularze, menu, biblioteki, klasy itp. z wyjątkiem plików bazy danych i tabel (takie pliki można rozpoznać po przekreślonym kółku obok nazwy pliku w menedżerze projektów). Po kompilacji wszystkie pliki zawarte w pliku .exe staną się niemodyfikowalne (tylko do odczytu). Oczywiste jest, że nie należy dołączać plików tabelarycznych (*.dbf), ponieważ podlegają one ciągłym operacjom modyfikacji i dodawania danych, ale czasami zdarzają się przypadki, gdy konieczne jest ukrycie niektórych danych statycznych przed użytkownikiem, ale zapewnienie do nich dostępu przez sam program. Nie ma lepszego miejsca niż „wnętrze” pliku exe.
Jest to również dość powszechne, gdy trzeba „odszukać” lub tymczasowo zmienić plik raportu, lub gdy mamy cały zestaw raportów, które są unikalne dla każdego użytkownika. Cóż, naprawdę wyobraź sobie: dziesięciu operatorów i dziesięć raportów każdy, a wszystko to w *.exe. jedynym wyjściem w tej sytuacji jest wyłączenie tych raportów z akt końcowych i przesłanie ich wraz z wnioskiem.
W każdym razie decyzja o tym, które pliki wykluczyć, a które pozostawić, należy do Ciebie.

Wszystko, piwo się skończyło, musimy iść do delikatesów.

Z poważaniem Władysław Kułak

Treść:

W tym artykule dowiesz się, jak utworzyć prosty plik EXE na komputerze z systemem Windows, a także jak utworzyć kontener exe, którego można użyć do uruchomienia pliku wykonywalnego na innym komputerze. Pliki EXE służą do instalowania programów lub dodawania plików do komputera pod Sterowanie Windowsem. Aby utworzyć plik EXE, musisz użyć narzędzia systemowego IExpress.

Kroki

Część 1 Jak utworzyć plik EXE

  1. 1 Otwórz menu Start.
  2. 2 W pasku wyszukiwania menu Start wpisz notatnik. Więc znajdziesz program Notatnik.
  3. 3 Kliknij ikonę Notatnika. Wygląda jak niebieski notatnik i znajduje się na górze menu Start.
  4. 4 Wprowadź kod programu dla pliku. Wprowadź kod linia po linii lub skopiuj i wklej do Notatnika (jeśli masz już gotowy kod).
    • Jeśli nie wiesz jak, poproś o to kogoś innego.
    • Również kody programów najprostszych plików EXE można znaleźć w Internecie.
  5. 5 Kliknij Plik. To menu znajduje się w lewym górnym rogu okna Notatnika. Otworzy się menu rozwijane.
  6. 6 Kliknij Zapisz jako. Ta opcja znajduje się w menu rozwijanym „Plik”.
  7. 7 Otwórz menu rozwijane „Typ pliku”. Znajdziesz go w dolnej części okna.
    • Bieżąca opcja menu „Typ pliku” powinna mieć postać „ Dokumenty tekstowe(*.tekst)".
  8. 8 Kliknij Wszystkie pliki. Ta opcja znajduje się w menu rozwijanym.
  9. 9 Wprowadź nazwę pliku EXE. W polu „Nazwa pliku” wpisz nazwę, a następnie wpisz rozszerzenie .exe . Spowoduje to zapisanie pliku jako pliku EXE.
    • Na przykład, jeśli nazwa pliku to „banany” (banany), wprowadź bananas.exe .
  10. 10 Wybierz folder, w którym będzie przechowywany plik EXE. W tym celu kliknij odpowiedni folder w lewej części okna.
  11. 11 Kliknij Zapisz. Przycisk ten znajduje się w prawym dolnym rogu ekranu. Spowoduje to zapisanie pliku EXE w wybranym folderze.

Część 2 Jak utworzyć plik instalacyjny EXE

  1. 1 Otwórz menu Start. Aby to zrobić, kliknij logo Windows w lewym dolnym rogu ekranu.
  2. 2 W pasku wyszukiwania menu Start wpisz iexpress . W ten sposób znajdziesz to narzędzie.
    • Wpisz iexpress w całości.
  3. 3 Kliknij ikonę narzędzia iexpress. Wygląda jak szara szafka i znajduje się na górze menu Start.
  4. 4 Zaznacz opcję „Utwórz nowy plik dyrektywy samodzielnego wyodrębniania”. Znajduje się na środku strony. Opcja ta powinna być domyślnie zaznaczona; w przeciwnym razie wybierz go.
  5. 5 Kliknij Następny. Przycisk ten znajduje się w prawym dolnym rogu okna.
  6. 6 Zaznacz opcję „Wyodrębnij tylko pliki”. Znajduje się na środku strony.
  7. 7 Kliknij Następny.
  8. 8 Wprowadź nazwę pliku EXE. Zrób to w polu tekstowym na środku okna, a następnie kliknij Dalej.
  9. 9 Pomyśl o oknie z prośbą. Jeśli chcesz, aby użytkownik potwierdził, że chce uruchomić plik EXE, zaznacz opcję „Pytaj użytkownika za pomocą” i wprowadź tekst monitu o potwierdzenie. W przeciwnym razie kliknij Dalej.
    • Gdy użytkownik uruchomi plik EXE, otworzy się okno z wprowadzonym tekstem (jeśli wybrałeś opcję zachęty).
  10. 10 Pomyśl o oknie z umową licencyjną. Jeśli chcesz, aby tekst był wyświetlany na ekranie umowa licencyjna, zaznacz pole wyboru „Wyświetl licencję”, następnie kliknij „Przeglądaj”, aby wybrać dokument z treścią umowy licencyjnej, a następnie kliknij „Otwórz”. W przeciwnym razie kliknij Dalej.
  11. 11 Kliknij Dodaj. Ten przycisk znajduje się w dolnej środkowej części okna. Otworzy się nowe okno Eksploratora, w którym możesz wybrać pliki, które mają zostać uwzględnione w instalacyjnym pliku EXE.
    • Pliki zawarte w instalacyjnym pliku EXE zostaną zainstalowane, gdy użytkownik uruchomi plik EXE.
  12. 12 Wybierz pliki, które mają być zawarte w pliku EXE. Kliknij folder z plikami po lewej stronie okna Eksploratora, a następnie wybierz żądane pliki; aby to zrobić, naciśnij lewy klawisz myszy i przeciągnij kursor nad żądanymi plikami.
    • Możesz także wybierać pliki pojedynczo; w tym celu przytrzymaj ^ Ctrl i kliknij każdy żądany plik.
  13. 13 Kliknij Otwórz. Przycisk ten znajduje się w prawym dolnym rogu okna. Spowoduje to dodanie plików do instalacyjnego pliku EXE.
    • Jeśli chcesz dodać więcej plików, ponownie kliknij „Dodaj” i powtórz proces.
  14. 14 Kliknij Następny.
  15. 15 Zaznacz pole „Domyślne”, a następnie kliknij Dalej. Znajduje się w górnej części okna.
  16. 16 Pomyśl o oknie z komunikatem zamykającym. Ten komunikat pojawia się na ekranie po zakończeniu procesu instalacji pliku EXE. Zaznacz pole „Wyświetl wiadomość”, następnie wprowadź treść wiadomości, a następnie kliknij „Dalej”.
    • Jeśli nie chcesz, aby ostatnia wiadomość była wyświetlana na ekranie, po prostu kliknij dalej.
  17. 17 Dodaj program do zainstalowania. Jest to program w pliku EXE, który został utworzony wcześniej. Kliknij Przeglądaj, otwórz folder plików, kliknij go i kliknij Zapisz.
    • Jeśli chcesz, zaznacz pole wyboru „Ukryj animację procesu wyodrębniania plików przed użytkownikiem”, aby plik instalacyjny działał bez zbędnych efektów wizualnych.
  18. 18 Kliknij przycisk Dalej trzy razy. Zostanie utworzony plik instalacyjny EXE. Czas trwania tego procesu zależy od liczby plików zawartych w instalacyjnym pliku EXE.
  19. 19 Kliknij Gotowe. Przycisk ten znajduje się w dolnej części okna. Plik instalacyjny EXE zostanie zapisany i będzie gotowy do użycia.
  • Nie potrzebujesz instalatora EXE, aby uruchomić plik EXE, ale instalator EXE zainstaluje plik EXE i wszelkie elementy pomocnicze (takie jak plik „ReadMe”, foldery itd.).

Ostrzeżenia

  • Jeśli nie wiesz, jak zakodować plik EXE, poproś o to kogoś, kto wie, jak programować.

Z pewnością wielu z was przynajmniej raz w życiu spotkało archiwum z rozszerzeniem .exe, nie rar ani nawet zip, ale exe. Piękno tego archiwum polega na tym, że jest samorozpakowujące i nie wymaga instalacji dodatkowych programów. Wielu osobom wydaje się, że do stworzenia tego rodzaju archiwum potrzebna jest konkretna wiedza lub programy, ale ośmielę się zapewnić, że tak nie jest. Archiwa EXE są tworzone przy użyciu jednego z kilku najpopularniejszych archiwizatorów: WinRar i WinZip.

Prawdopodobnie masz jeden z tych dwóch archiwizatorów zainstalowany na swoim komputerze, więc możesz od razu bezpiecznie zacząć ćwiczyć. Jeśli w ogóle nie ma archiwizatora, możesz bezpiecznie zainstalować 7-zip, ponieważ jest bezpłatny i swobodnie dystrybuowany w Internecie. Zaczniemy od tego archiwizatora.

I tak przygotowujemy folder z plikami, które należy zarchiwizować i klikamy w niego kliknij prawym przyciskiem myszy myszy. Znalezienie przedmiotu takiego jak 7-Zip

Pojawia się kolejne podmenu, z którego musimy wybrać element "Dodaj do archiwum..."

Otwiera się u nas okno, szukamy sekcji „Opcje” w elemencie opcji „Utwórz archiwum SFX” postawiliśmy przed nim ptaka. Teraz zwracamy uwagę na najwyższe pole, w którym znajduje się nazwa naszego przyszłego archiwum. Dodaliśmy rozszerzenie .exe. Nawiasem mówiąc, nazwę archiwum można zmienić. Możesz także określić lokalizację, w której chcesz go zapisać. Zasadniczo możesz bawić się innymi opcjami, ale nie wpływają one na typ archiwum. Możesz ustawić maksymalny poziom kompresji, aby rozmiar archiwum był jak najmniejszy.

Teraz możesz kliknąć przycisk „OK”.

To jest plik, który mam na pulpicie:

Teraz zastanówmy się, jak stworzyć dokładnie to samo archiwum, ale z pomocą WinRar.

W ten sam sposób kliknij folder prawym przyciskiem myszy i wybierz element "Dodaj do archiwum":

W oknie, które zostanie otwarte, w zakładce „Ogólne” potrzebujesz w sekcji „Opcje kopii zapasowych” umieść ptaka przed przedmiotem „Utwórz archiwum SFX”. Kładziemy dowolną metodę kompresji. Wybrałem Dobry.

Kliknij przycisk „OK”.

To jest wynikowe archiwum:

Tutaj rozważyliśmy kilka sposobów jak utworzyć samorozpakowujące się archiwum exe.

A także obejrzyj wideo na ten temat:

Oceń artykuł:

szelest(przynajmniej w proponowanej wersji) nie jest w stanie skompilować kodu Lispa do instrukcji mikroprocesora. Dlatego do tworzenia samodzielnych plików wykonywalnych używana jest technologia, którą można wstępnie nazwać pseudo-exe.

Istota tej technologii jest następująca.

w dostawie szelest zawiera plik wykonywalny, który zawiera jądro szelest. Rozmiar tego pliku wynosi około dwustu kilobajtów. Podczas tworzenia pliku EXE najpierw tworzona jest kopia pliku pośredniczącego z nazwą określoną przez programistę. Wszystkie dalsze manipulacje są wykonywane na utworzonej kopii, którą będziemy dalej nazywać cel plik.

Załóżmy, że programista napisał i przesłał zestaw funkcji, które razem tworzą aplikacja. Podczas tworzenia pliku EXE wszystkie funkcje wybrane przez programistę są dodawane do „ogona” pliku docelowego. Oprócz tych funkcji, „ogon” pliku docelowego jest zapisywany tzw. rozpocznij S-ekspresję, a także ustawienia środowiska zdefiniowane przez użytkownika szelest(rozmiary stosów wewnętrznych, liczba obiektów dynamicznych itp.)

Kiedy plik docelowy jest uruchamiany, kontrola jest najpierw odbierana przez program inicjujący jądro szelest, który następnie odczytuje wszystkie funkcje zapisane przez użytkownika z pliku i ładuje je do środowiska Lisp. Następnie sterowanie otrzymuje blok rozpoczęcie S-wyrażenia, a program dostarczony przez programistę zaczyna być wykonywany.

Rozważmy proces tworzenia pliku EXE na prostym praktycznym przykładzie: stworzymy program dialogowy, który będzie obliczał Największy wspólny dzielnik dwie liczby całkowite za pomocą algorytmu Euclid. Ten przykład nie jest taki bezużyteczny: od szelest działa z liczbami całkowitymi o nieograniczonej bitowości, napisanie podobnego przykładu w dowolnym popularnym środowisku programistycznym (VB, C++, Delphi) wymagałoby zauważalnego wysiłku...

Funkcjonować *GCD ma następującą postać:

(defun *gcd (x y) (cond ((eq x y) x) ((większa rp y x) (*gcd y x)) ((eq (reszta x y) 0) y) (T (*gcd y (reszta x y))) )) ==> *gcd (*gcd 655 72) ==> 1 (*gcd 655 75) ==> 5 (*gcd 65536 4096) ==> 4096

Przykłady wywołań pokazują funkcjonalność funkcji. Następnie musisz utworzyć powłokę okna dialogowego, aby wywołać tę funkcję. W najprostszym przypadku powłoka ta może być zorganizowana w następujący sposób:

Żądanie (przez funkcję ZAPYTAĆ) pierwszy argument;

Żądanie drugiego operandu;

Obliczanie wyniku;

Wyświetlanie wyniku za pomocą funkcji MOWIĆ ;

Napiszmy wyrażenie definiujące funkcję GCD-1, który zaimplementuje powyższy algorytm:

(defun GCD-1 nil (prog (a1 a2) (setq a1 (str2fix (Zapytaj „Wprowadź pierwszy argument”))) (setq a2 (str2fix (Zapytaj „Wprowadź drugi argument”))) (TRY (say (fix2str (* gcd a1 a2))) Z WYJĄTKIEM (powiedz „Błąd!”))))

Zauważ, że wynik połączenia ZAPYTAĆ ma typ STRUNOWY i funkcja *GCD wymaga operandów typu NAPRAWIŁ. Dlatego przed przypisaniem wartości dostarczonych przez użytkownika do zmiennych lokalnych, a1 I a2, wartości te należy przekonwertować na typ NAPRAWIŁ(do czego służą wywołania funkcji? STR2FIX).

Ponadto, ponieważ przygotowywany jest interaktywny program przeznaczony dla użytkownika końcowego, należy przewidzieć możliwe błędy. Dlatego oblicza się największy wspólny dzielnik krytyczna sekcja kodu z wywołaniem funkcji PRÓBOWAĆ Jeśli obliczenie się nie powiedzie, program nie ulegnie awarii, ale zostanie wyświetlony komunikat „Błąd!”.

Jeśli wykonasz funkcję GCD-1 ze środowiska programistycznego, to najpierw zostanie wyświetlone okno zapytania dla pierwszego operandu:


Użytkownik wprowadza pierwszy operand i naciska przycisk OK; pojawia się drugie okno zapytania operandowego:


Użytkownik wprowadza drugi operand, naciska przycisk OK i otrzymuje wynik:


Teraz skompilujmy w oparciu o debugowaną funkcję GCD-1 wykonywalny. Aby to zrobić, będąc w środowisku programistycznym, wybierz pozycję menu głównego plik EXE lub kliknij przycisk na pasku narzędzi z następującą ikoną:


W obu przypadkach otworzy się okno kompilacji EXE:



Aby utworzyć plik EXE, wykonaj następujące kroki:

Ustaw nazwę pliku EXE. Nazwa (i ścieżka) przyszłego pliku EXE jest określona w połączonym polu wprowadzania w lewym górnym rogu formularza tworzenia pliku EXE. Nazwę i ścieżkę można ustawić ręcznie lub kliknąć przycisk „…” i wybrać katalog i nazwę za pomocą standardowego okna dialogowego Zapisz jako. Plik jest tworzony domyślnie. noname.exe w bieżącym katalogu.

W obszarze wejściowym „Uruchamianie wyrażenia S” musisz podać kod, od którego rozpocznie się wykonywanie przyszłej aplikacji. Początkowym wyrażeniem S może być wywołanie funkcji. Jeśli chcesz określić początkowe wyrażenie S składające się z kilku wywołań, wywołania te powinny być „załączone”. WAŁÓWKA- projekt.

Powyższe kroki to wymagane minimum. Dodatkowo użytkownik może dodatkowo wykonać następujące czynności:

Na liście zatytułowanej „Funkcje, stałe, zmienne” odznacz pola wyboru dla obiektów, które nie są wymagane do uruchomienia aplikacji. To zdarzenie nieznacznie zwiększy szybkość wykonywania aplikacji;

Zmień wartości ustawień na liście znajdującej się w prawym górnym rogu. Sekwencja działań podczas zastępowania wartości parametrów zostanie opisana poniżej;

Odznacz pole „Pokaż formularz dyspozytora przy starcie”. Jeśli to pole wyboru pozostanie zaznaczone, po uruchomieniu aplikacji zostanie wyświetlony komunikat specjalny sterownia formularz. Formularzowi można nadać tytuł (w odpowiednim polu wprowadzania). Korzystanie z formularza wysyłki jest przydatne podczas debugowania.

Zaznacz lub odznacz „Powiadom mnie po zakończeniu”. Jeśli to pole jest zaznaczone, przed zakończeniem działania aplikacji zostanie wyświetlony komunikat.

Okno tworzenia pliku EXE z minimalnym wymaganym zestawem parametrów może wyglądać następująco:



Następnie musisz kliknąć przycisk z zielonym znacznikiem wyboru. Jeżeli zamówiony plik EXE już istnieje, szelest Zostaniesz poproszony o potwierdzenie, że plik zostanie nadpisany lub ustaw nową nazwę. Następnie o godz pomyślne wyświetlany jest następujący komunikat:


Możesz upewnić się, że plik EXE pojawił się w bieżącym katalogu gcd-1.exe, na początku którego następuje opisany dialog z użytkownikiem.

Jeżeli podczas tworzenia pliku EXE zaznacz pole „Wyświetl formularz dyspozytora przy starcie” i ustaw tytuł formularza:


Następnie, gdy wykonywany jest wynikowy plik EXE, w prawym górnym rogu ekranu wyświetlany jest formularz dyspozytora o następującej postaci:


Po wybraniu pozycji menu Start (lub naciśnięciu odpowiedniego przycisku poniżej) aplikacja zostanie uruchomiona. Po zamknięciu aplikacji formularz dyspozytora pozostaje na ekranie, co pozwala na wielokrotne uruchamianie aplikacji. Aby zakończyć aplikację, wybierz pozycję menu „Wyjdź” (lub naciśnij przycisk poniżej).

Jeżeli podczas wykonywania aplikacji z formatką dyspozytora wystąpi błąd, to informacja o błędzie wyświetlana jest w obszarze wyjściowym, który normalnie jest ukryty. Na przykład, jeśli ustawisz początkowe wyrażenie S jako wywołanie nieistniejącej funkcji (nieznany), po wykonaniu pojawi się następujący obraz:


Korzystanie z formularza dyspozytorskiego umożliwia wymuszone zatrzymanie realizacji wniosku. W tym celu należy skorzystać z pozycji menu „Stop” oraz przycisku znajdującego się poniżej (zarówno pozycja menu, jak i przycisk są aktywne tylko podczas działania aplikacji). Jeśli ustawisz na przykład obliczenie silni wystarczająco dużej liczby jako wyrażenie początkowe, zobaczysz pozycję menu i przycisk stop:


Jeśli podczas wykonywania naciśniesz „Stop”, wykonywanie programu zostanie przerwane:


Pozycja menu głównego „Okna” formatki wysyłki (i odpowiadający jej przycisk komendy) będzie aktywna, jeśli podczas wykonywania aplikacji zostanie utworzone co najmniej jedno okno graficzne. Po wybraniu „Windows” (lub kliknięciu przycisku poniżej) wywoływany jest graficzny menedżer okien.

Tryb budowania plików EXE z formularzem dyspozytora ma na celu ułatwienie debugowania aplikacji. Jeśli nie skorzystasz z formularza dyspozytora, wówczas sam programista będzie musiał zarządzać oknami graficznymi, aw przypadku „zawieszenia się” aplikacji, aby ją usunąć, będziesz musiał użyć menedżera zadań systemu operacyjnego.

Jeśli chcesz zmienić wartość dowolnego parametru ustawienia (wielkość stosu, ilość żetonów itp.), musisz kliknąć żądaną linię na liście „Parametry”. Wartość liczbowa odpowiedniego parametru zostanie przeniesiona do obszaru wprowadzania pod listą:



Jak drugi przykład tworzenia pliku EXE, rozważ poprzedni problem (obliczanie GCD), ale z graficznym interfejsem użytkownika w oknie. W tym celu utworzymy okno dialogowe (zgodnie z opisem), na formularzu którego umieścimy trzy etykiety, trzy pola wprowadzania i dwa przyciski. Przypiszmy do jednego z przycisków procedurę obsługi, w której obliczamy NWD liczb wprowadzonych w pierwszym i drugim polu wejściowym i wpisujemy wyliczony NWD w pole wynikowe. Drugi moduł obsługi kliknięcia przycisku zamknie i zniszczy okno dialogowe. Okno dialogowe z kontrolkami może wyglądać następująco:


Kod wygenerowany przez projektanta może wyglądać następująco:

(prog nil (dlgCreate "_Dlg_ 419 233 "Największy wspólny dzielnik:") (dlgAddControl "_Dlg_ "_LBL_1 _LABEL 14 15 100 21 "("Tahoma" 14,25 1 0 0) "Pierwszy:" 0 &H80000012 &H8000000F) ( dlgAdd Kontrola" _Dlg_ " _TXT_1 _TEXT 155 13 248 31 "("Tahoma" 14 1 0 0) "" 0 &H80000008 &H80000005) (dlgAddControl "_Dlg_ "_LBL_2 _LABEL 12 59 133 26 "("Tahoma" 14.25 1 0 0) " Drugi: „0 &H80000012 &H8000000F ) (dlgAddControl "_Dlg_ "_TXT_2 _TEXT 156 56 247 31 "("Tahoma" 14 1 0 0) "" 0 &H80000008 &H80000005) (dlgAddControl "_Dlg_ "_LBL_3 _LABEL 13 101 127 27"("Tahoma" 14, 25 1 0 0) "Н.О.Д." 0 &HFF &H8000000F) (dlgAddControl "_Dlg_ "_TXT_3 _TEXT 157 98 247 31 "("Tahoma" 14 1 0 0) "" 0 &HFF &H80000005) (dlgAddControl "_Dlg_ "_BUT_1 _BUTTON 24 148 180 50 "("Tahoma" 8.25 1 0 0) "Oblicz") (dlgPutPicture "_BUT_1 7) (dlgAddControl "_Dlg_ "_BUT_2 _BUTTON 213 149 180 50 "("Tahoma" 8.25 1 0 0) "Zamknij") (dlgPutPicture " _BUT_2 36) // // Obsługa zdarzenia CLICK dla przycisku _BUT_2 // (defun _BUT_2_Click Nil (prog Nil (dlgHide "_DLG_) (dlgDestroy "_DLG_) (gc))) // // Cel procedury -events _BUT_2_Click to control _BUT_2 // (dlgSetEvent "_BUT_2 "_BUT_2_Click) // // Obsługa zdarzenia CLICK dla przycisku _BUT_1 // (defun _BUT_1_Click Nil (prog (a1 a2) (setq a1 (str2fix (dlgGetText "_TXT_1)))) (setq a2 (str2fix (dlgGetText) "_TXT_2))) (TRY (dlgPutText "_TXT_3 (fix2str (*gcd a1 a2))) EXCEPT (dlgPutText "_TXT_3 "Błąd!!!")))) // // Miejsce docelowe kontroli procedury zdarzenia _BUT_1_Click _BUT_1 // (dlgSetEvent "_BUT_1 "_BUT_1_Click) // // Wyświetl okno dialogowe _Dlg_ // (dlgShow "_Dlg_))

Aby zbudować plik EXE, musisz załadować funkcję do środowiska Lisp i napisać wyrażenie startowe, aby wyświetlić okno dialogowe. Najprostszym sposobem jest „załadowanie” powyższego WAŁÓWKA-konstrukcja do funkcji GŁÓWNY bez parametrów. Wtedy początkowym wyrażeniem S do uruchomienia pliku EXE będzie wywołanie (główny). Tak więc, jeśli załadujesz następujące funkcje do środowiska Lisp:
// // Znajdowanie największego wspólnego dzielnika // (defun *gcd (x y) (cond ((eq x y) x) ((większa rp y x) (*gcd y x)) ((eq (reszta x y) 0) y) ( T (*gcd y (reszta x y))))) // // Program wyświetlania dialogu _Dlg_ // (defun main nil (prog nil (dlgCreate "_Dlg_ 419 233 "Greatest Common Divisor:") (dlgAddControl "_Dlg_ "_LBL_1 _LABEL 14 15 100 21 "("Tahoma" 14.25 1 0 0) "Pierwszy:" 0 &H80000012 &H8000000F) (dlgAddControl "_Dlg_ "_TXT_1 _TEXT 155 13 248 31 "("Tahoma" 14 1 0 0) "" 0 &H80 000 008&H80000005) ( dlgAddControl "_Dlg_ "_LBL_2 _LABEL 12 59 133 26 "("Tahoma" 14.25 1 0 0) "Druga: "0 &H80000012 &H8000000F) (dlgAddControl "_Dlg_ "_TXT_2 _TEXT 156 56 247 31"("Taho ma" 14 1 0 0) " " 0 &H80000008 &H80000005) (dlgAddControl "_Dlg_ "_LBL_3 _LABEL 13 101 127 27 "("Tahoma" 14.25 1 0 0) "NOD" 0 &HFF &H8000000F) (dlgAddControl "_Dlg_ "_ TXT_3_TEX T 157 98 247 31 "("Tahoma" 14 1 0 0) "" 0 &HFF &H80000005) (dlgAddControl "_Dlg_ "_BUT_1 _BUTTON 24 148 180 50 "("Tahoma" 8.25 1 0 0) "Compute") (dlgPutPicture " _BUT_1 7) (dlgAddControl "_Dlg_ "_BUT_2 _B UTTON 213 149 180 50 "("Tahoma" 8,25 1 0 0) "Zamknij") (dlgPutPicture "_BUT_2 36) // // Obsługa zdarzenia CLICK dla przycisku _BUT_2 // (defun _BUT_2_Click Nil (prog Nil (dlgHide "_DLG_) (dlgDestroy "_DLG_) (gc))) // // Przypisanie procedury zdarzenia _BUT_2_Click do kontrolki _BUT_2 // (dlgSetEvent "_BUT_2 "_BUT_2_Click) // // Obsługa zdarzenia CLICK dla przycisku _BUT_1 // (defun _BUT_1_Click Nil (prog (a1 a2) (setq a1 (str2fix (dlgGetText "_TXT_1))) (setq a2 (str2fix (dlgGetText "_TXT_2))) (TRY (dlgPutText "_TXT_3 (fix2str (*gcd a1 a2)))) EXCEPT (dlgPutText "_TXT_3" Błąd !!!")))) // // Przypisanie procedury zdarzenia _BUT_1_Click do kontrolki _BUT_1 // (dlgSetEvent "_BUT_1 "_BUT_1_Click) // // Wyświetlenie okna dialogowego _Dlg_ // (dlgShow "_Dlg_ )))

a następnie skompiluj plik exe gcd-2.exe ustawiając następujące parametry:


To zadziała w pełni funkcjonalny plik EXE. Możesz go uruchomić i upewnić się, że GCD uznane za prawidłowe:

Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl + Enter
UDZIAŁ: