|  | 
|      | 
|   | 
| Заменить запущенную DLLDelphi , Файловая система , DLL и PlugInsЗаменить запущенную DLL
Оформил: DeeCo 
function SystemErrorMessage: string;
 var
    P: PChar;
 begin
   if FormatMessage(Format_Message_Allocate_Buffer + Format_Message_From_System,
                    nil,
                    GetLastError,
                    0,
                    @P,
                    0,
                    nil) <> 0 then
   begin
     Result := P;
     LocalFree(Integer(P))
   end
    else
      Result := '';
 end;
 // Path to Original File 
procedure TForm1.Button2Click(Sender: TObject);
 begin
   if Opendialog1.Execute then
     edit1.Text := OpenDialog1.FileName;
 end;
 // Path to New File 
procedure TForm1.Button3Click(Sender: TObject);
 begin
   if Opendialog2.Execute then
     edit2.Text := OpenDialog2.FileName;
 end;
 // Replace the File. 
procedure TForm1.Button1Click(Sender: TObject);
 begin
   if (Movefileex(PChar(Edit1.Text), PChar(Edit2.Text), MOVEFILE_DELAY_UNTIL_REBOOT) = False) then
     ShowMessage(SystemErrorMessage)
   else
   begin
     ShowMessage('Please Restart Windows to have these changes take effect');
     halt;
   end;
 end;Программный код на языке Delphi, используемый для замены файла на другой файл. Оригинальный путь к файлу получается с помощью OpenDialog1, а новый путь к файлу - с помощью OpenDialog2. Затем он использует функцию MoveFileEx для перемещения оригинального файла в новое местоположение. Если операция неудачна, отображается сообщение об ошибке. Вот как можно модифицировать этот код для замены запущенного DLL на другой: В этом коде функция MoveFileEx используется с флагом MOVEFILE_REPLACE_EXISTING для замены существующего файла в новом местоположении. Если операция неудачна, отображается сообщение об ошибке с помощью SystemErrorMessage. Обратите внимание: убедитесь, что Edit1.Text и Edit2.Text содержат валидные пути к оригинальному и новому файлам соответственно. Кроме того, обеспечьте, что пользователь имеет необходимые разрешения для выполнения этой операции. Статья описывает программу на языке Delphi, которая позволяет заменить запущенную DLL файлом из другой директории. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш  :: Главная :: DLL и PlugIns :: 
 | ||||
|  ©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||