Язык программирования Перфолента.Net - Официальный сайт

 Язык программирования Перфолента.Net - Официальный сайт.

Поиск   
Главная :: О проекте :: Контакты :: Обратная связь :: Благодарности :: ВходГость

   >   >   > 


Пример «Модуль ЭтаПрограмма»

Файлы:

  • Модуль ЭтаПрограмма.пфл

Пример программы на языке программирования Перфолента.Net:



//Этот пример написан на языке программирования Перфолента.Net

//Пример демонстрирует использование модуля ЭтаПрограмма стандартной библиотеки Перфоленты.

#ТипСборки КонсольноеПриложение
#ИспользоватьСтандартнуюБиблиотеку
ИмпортИмён Промкод.Перфолента.Консоль

//******************************
Программа ТестМодуляЭтаПрограмма

    //--------------------------
    Процедура Старт

        // Возвращает текущий процесс в котором выполняется программа.
        Перем ТекПроц тип Процесс = ЭтаПрограмма.ТекущийПроцесс 

        // Возвращает текущий программный поток из которого вызвано получение этого свойства.
        Перем ТекПоток тип ПрограммныйПоток = ЭтаПрограмма.ТекущийПрограммныйПоток

        // Событие, которое случается, когда процесс программы завершается. 
        // В NetFramework на обработку этого события у вас есть не более 2-х секунд. 
        // В Net Core время обработки не ограничено. 
        // Вы можете в обработчике этого события закрыть файлы, разорвать соединения, освободить ресурсы, записать лог и т.д. 
        // Т.к. это событие общее для класса, не забудьте удалить все связанные с ним обработчики до завершения приложения, во избежание утечки памяти.
        // Внимание! В случае аварийного завершения программы обработчик этого события не вызывается!  
        
        //Public Shared Custom Event ПриЗавершении As ОбработчикСобытия

        // Событие, которое случается, когда в процессе выполнения программы происходит исключение вне оператора Попытка,
        // из-за чего программа будет аварийно завершена сразу после выполнения обработчика этого события. 
        // Свойство СвязанныеДанные в параметрах события возвращает объект типа Ошибка, который представляет не перехваченную ошибку. 
        // Т.к. это событие общее для класса, не забудьте удалить все связанные с ним обработчики до завершения приложения, во избежание утечки памяти.  
        
        //Public Shared Custom Event ПриАварийномЗавершении As ОбработчикСобытия

        // Приостанавливает процесс выполнения текущей программы на указанное число миллисекунд.
        ЭтаПрограмма.Пауза(500)

        // Проверяет, запущена ли программа с правами администратора, и если нет, 
        // то перезапускает её, позволяя пользователю ввести пароль администратора.
        // Этот метод желательно вызывать в начале программы, до того, 
        // как программа начнет взаимодействовать с пользователем.
        // В том случае, если пользователь в диалоге UAC откажется от запуска программы, будет вызвано исключение.
        // Внимание: Этот метод можно использовать только в программах запускаемых в виде EXE файла.
        // При запуске скрипта с расширением .пфлс из редактора кода этот метод не сработает.
        // -------- раскомментируйте, если хотите проверить -----------
        //ЭтаПрограмма.ПерезапуститьСПравамиАдминистратора()

        // Позволяет немедленно завершить работу программы и передать внешнему процессу код выхода. Код выхода позволяет сообщить вызвавшей программе успешно ли отработала программа или случилась какая-то ошибка, номер которой возвращается.
        // Этим методом рекомендуется завершать только консольные приложения. Оконные приложения лучше закрывать методом ЗакрытьГлавноеОкно. 
        // При вызове этого метода будут так же закрыты все дочерние процессы, которые были запущены программой.
        // -------- раскомментируйте, если хотите проверить -----------
        //ЭтаПрограмма.Завершить(0)

        // В оконных приложениях позволяет закрыть главное окно программы, после чего программа скорее всего будет завершена. 
        // Метод посылает главному окну сообщение о необходимости завершения. 
        // При получении сообщения в главном окне отработают все обработчики событий, имеющие отношение к завершению работы. 
        // При выполнении обработчиков событий возможно будет отказано в закрытии приложения.
        // В классах ОбычноеПриложение и Планшет имеются собственные методы для завершения приложения, 
        // которые являются предпочтительными в случае использования в приложении этих классов.
        // -------- раскомментируйте, если хотите проверить -----------
        О = ЭтаПрограмма.ЗакрытьГлавноеОкно() As Boolean

        // Позволяет получить один из аргументов командной строки по указанному индексу. 
        О = ЭтаПрограмма.ПолучитьАргументКоманднойСтроки(ByVal Индекс As Integer) As String

        // Позволяет получить один из аргументов командной строки по имени ключа. Именем ключа считаются первые символы аргумента командной строки.
        // </summary>
        О = ЭтаПрограмма.ПолучитьАргументКоманднойСтроки(ByVal Ключ As String) As String

        // Позволяет получить массив аргументов командной строки.
        О = ЭтаПрограмма.АргументыКоманднойСтроки() As String()



        // Возвращает количество аргументов командной строки переданной приложению при запуске. Только чтение. 
        О = ЭтаПрограмма.КоличествоАргументовКоманднойСтроки As Integer

        // Возвращает каталог из которого запущена программа. Только чтение.
        О = ЭтаПрограмма.Каталог As Каталог

        // Возвращает полное имя файла программы или полное имя с другим расширением, если оно задано.
        О = ЭтаПрограмма.ПолноеИмя(Optional НовоеРасширение As String = Nothing) As String

        // Возвращает каталог данных программы в перемещаемом профиле пользователя. Если каталог не существует, то будет сделана попытка создать его. Если найти или создать каталог не удалось, то возвращается Неопределено. Только чтение.
        О = ЭтаПрограмма.КаталогДанныхПеремещаемогоПрофиля As Каталог

        // Возвращает каталог данных программы в локальном профиле пользователя. Если каталог не существует, то будет сделана попытка создать его. Если найти или создать каталог не удалось, то возвращается Неопределено. Только чтение.
        О = ЭтаПрограмма.КаталогДанныхЛокальногоПрофиля As Каталог

        // Позволяет получить или установить код локализации программы.
        О = ЭтаПрограмма.КодЛокализации As String

        // Позволяет получить или установить код локализации ресурсов программы.
        О = ЭтаПрограмма.КодЛокализацииРесурсов As String

        // Позволяет получить значение переменной среды (окружения) по заданному имени.
        О = ЭтаПрограмма.ПолучитьПеременнуюСреды(ByVal Имя As String) As String

        // Позволяет установить значение переменной среды (окружения) по заданному имени.
        ЭтаПрограмма.УстановитьПеременнуюСреды(ByVal Имя As String, ByVal Значение As String)

        // Возвращает соответствие в котором находятся пары Имя/Значение для всех переменных среды.
        О = ЭтаПрограмма.ПеременныеСреды() As Соответствие(Of String, String)

        // Возвращает массив загруженных в домен приложения сборок.
        О = ЭтаПрограмма.ЗагруженныеСборки() As Assembly()

        // Возвращает имя сборки программы. Только чтение.
        О = ЭтаПрограмма.ИмяСборки As String

        // Возвращает разрядность программы. Обычно это 32 или 64 бита.
        О = ЭтаПрограмма.Разрядность() As Integer

        // Возвращает строгое имя сборки. Строгое имя сборки содержит имя сборки, версию, культуру и публичный ключ подписи. Только чтение.
        О = ЭтаПрограмма.СтрогоеИмяСборки As String

        // Возвращает версию программы. Только чтение.
        О = ЭтаПрограмма.Версия As String

        // Возвращает используемую версию библиотеки Перфоленты. Только чтение.
        О = ЭтаПрограмма.ВерсияБиблиотеки As String

        // Определяет запущен ли в данный момент другой экземпляр программы. Это свойство имеет смысл проверить один раз в начале программы, если вам необходимо, что бы пользователь не мог использовать несколько экземпляров программы одновременно. Только чтение.
        О = ЭтаПрограмма.УжеЗапущена //As Boolean




        // Получить текстовое представление стека вызовов программы.
        О = ЭтаПрограмма.ПолучитьСтекВызововСтр(Optional ТекущаяОшибка As Exception = Nothing) As String

        // Получить массив элементов стека вызовов программы.
        // Класс ЭлементСтекаВызовов предоставляет информацию об элементе стека вызовов. 
        О = ЭтаПрограмма.ПолучитьСтекВызовов(Optional ТекущаяОшибка As Exception = Nothing) As ЭлементСтекаВызовов()
        

    КонецПроцедуры
КонецПрограммы    
        

К началу статьи


Вернуться в раздел:
Примеры по стандартной библиотеке

Перейти в раздел:
Примеры
  Поддержи проект!

Вы можете поддержать разработку Перфоленты, перечислив любую удобную сумму, которая пойдет на развитие языка и поддержку инфраструктуры сайта.

  Новости:
      21.01.2026 На сайт добавлена статья "Конструируем класс. События"
      20.01.2026 Опубликован новый релиз 0.4.18.0_NY языка программирования Перфолента.Net
      29.12.2025 Анонс: Новая возможность - разрабатываем веб-сайты, веб-приложения и веб-API на Перфоленте!
      07.06.2025 Небольшие дополнения к документации на сайте - описание атрибута поля &Атомарное
      09.05.2025 На сайте опубликован релиз 0.4.16.0_SE дистрибутива языка программирования Перфолента.Net
      27.04.2025 Дополнена статья про циклы
      04.01.2025 Опубликован новый релиз дистрибутива языка программирования Перфолента.Net версии 0.4.15.0_CE
      23.09.2024 Опубликована новая статья: "Конструируем класс. Делегаты."
      30.08.2024 Опубликован новый релиз дистрибутива языка программирования Перфолента.Net версии 0.4.14.0
      24.05.2024 Обновлён справочный раздел сайта
      01.07.2023 Новая версия 0.4.13.0 языка программирования Перфолента.Net
       Все новости