Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2023, 18:19   #21
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Возможно из-за того, что dll и exe файлы лежать в разных папках после компиляции и он не может найти по указанным путям ни одной подходящей dll с именем Project1.dll
macomics вне форума Ответить с цитированием
Старый 30.01.2023, 19:02   #22
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
По умолчанию

я могу сделать видео = Project1.dll закачал в месте с ехе 64.
я подумал что это write и wite64
leon2009sp вне форума Ответить с цитированием
Старый 30.01.2023, 19:42   #23
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Так вы dll файл переименовали? Тогда надо и в exe файле исправить экспортную строку для функции из этой библиотеки.
macomics вне форума Ответить с цитированием
Старый 30.01.2023, 19:48   #24
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
По умолчанию не

Код:
type TCallBack = procedure (Curr, Max: Cardinal);

var
  Form1: TForm1;   Canceled: Boolean;
  LibHandle: THandle;
  function LoadFile(var MemoryStream: TMemoryStream; const FileName: string; cbProgress: TCallBack):string; external 'Project1.dll' index 1;

implementation

{$R *.dfm}

procedure cbProgress(Curr, Max: Cardinal);
begin
   Form1.ProgressBar1.Position := Curr * 100 div Max;
   Application.ProcessMessages;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  MS: TMemoryStream;
begin
    with OpenDialog1 do
      if Execute then begin
         MS := TMemoryStream.Create;
         LoadFile(MS, FileName, @cbProgress);
         Memo1.Lines.LoadFromStream(MS);
         MS.Free;
      end;
end;
Project1.dll я и так и так пробовал. название одинаковое Project1.dll
Код:
function LoadFile(var MemoryStream: TMemoryStream; const FileName: string; cbProgress: TCallBack):string; external 'Project1.dll' index 1;
leon2009sp вне форума Ответить с цитированием
Старый 31.01.2023, 12:28   #25
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
По умолчанию

не может найти файл на 64б.еще если код стоит в низу:
Код:
Form1.ProgressBar1.Position := Curr * 100 div Max;
   Application.ProcessMessages;
начинает ругаться на
Код:
LoadFile(MS, FileName, @cbProgress);
leon2009sp вне форума Ответить с цитированием
Старый 02.02.2023, 16:46   #26
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Плохо поэтапно

Код:
function LoadFile:string;
var str:string;
  begin
  str:='111111';
   // Result:='HelloFromDLL_leon';
  end;
exports
  LoadFile index 1;
и принимаю:
Код:
 function LoadFile:string; external 'project1.dll';
procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(LoadFile);
end;
почему result передается, а str пустое окно?
leon2009sp вне форума Ответить с цитированием
Старый 02.02.2023, 18:35   #27
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
По умолчанию

понял: LoadFile:='rrrrrrrrrrr';
а три параметра??? string, integer, и поток?
leon2009sp вне форума Ответить с цитированием
Старый 05.02.2023, 17:50   #28
leon2009sp
Форумчанин
 
Регистрация: 22.12.2015
Сообщений: 119
Плохо параметр

Код:
 function LoadFile(const FileName: TFileName; s:TStrings):boolean;
var
 MemStr: TMemoryStream;
 Title: String;  i:integer ;
begin
MemStr:= TMemoryStream.Create;
 try
  MemStr.LoadFromFile(FileName);
  MemStr.Seek(0, soFromBeginning);
 //ReadStreamStr( MemStr );
 s.LoadFromStream(MemStr);
 result:= true;
  finally
   MemStr.Free;
  end;
end;
и
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
LoadFile('test.txt', memo1.Lines);
end;
но получается я два раза загружаю файл
leon2009sp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Упаковать файл в exe rainbow Общие вопросы Delphi 10 30.10.2013 20:50
как упаковать страничку? maxvip HTML и CSS 1 14.04.2011 08:49
Как упаковать прогу (инсталлятор) HAMMAN Софт 5 06.06.2008 18:32
Помогите упаковать БД Евгений_нн БД в Delphi 2 21.02.2007 23:00