Перейти к содержанию
Fire Monkey от А до Я

леля рачок

Пользователи
  • Постов

    3
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные леля рачок

  1. В 25.01.2019 в 21:46, Akad сказал:

    Во-первых запускать из-под винды программыв надо через CreateProcess, а не ShellExecute. Во вторых зачем label? У него даже hwnd нет. Проще создавать mutex. Он живёт пока живо приложение. Соответственно если создать не получилось, значит его создал кто-то другой.
     

    ShellExecute  работает а 
     
    CreateProcess подчеркивается красным и ошибку дает.
  2. Я написала несколько отдельных программ в RAD Studio 10.1 Berlin. Одну программу в виде меню которая запускает эти программы. Необходимо идентифицировать эти программы как программы написанные мной. Проверка посходит путем считывания label если он соответствует ожиданиям, то программа-меню записывает в label другой текст и форма на которой находится label считывает его и если все верно показывает компоненты которые содержит. Программа-меню свое свойство visible:=false; Как только программа которая была вызвана исчезает из памяти свойство программа-меню visible:=true

     

     

    идентифицирует и запускает вот эта: 

    Код:
    
    unit Unit1;
    
    interface
    
    uses
      System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
      FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,ShellAPI,
      FMX.Edit, FMX.Controls.Presentation, FMX.StdCtrls,ShellAPI;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Edit1: TEdit;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    
    implementation
    
    {$R *.fmx}
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    ShellExecute(1, nil, PChar(Edit1.Text), nil, nil, 0)
    end;
    
    end.
    
    

    Но пока она только умеет только запускать, а инфицировать не может

    вторая тоже самое только без вызывающей функции

    Код:
    
    unit Unit1;
    
    interface
    
    uses
      System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
      FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,ShellAPI,
      FMX.Edit, FMX.Controls.Presentation, FMX.StdCtrls,ShellAPI;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Edit1: TEdit;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    
    implementation
    
    {$R *.fmx}
    
    
    
    end.
    

     

×
×
  • Создать...