Dll и проблемы
Модераторы: m0p3e, edward_K, Модераторы
Dll и проблемы
Сделали свою dll-ку (первый опыт!), положили в EXE,
в проекте прописано:
procedure fontReplace(String); external 'changeFont.dll';
в фейсе вызывается:
fontReplace(path_to_file+'badge.rtf');
при попытке запуска выходят два сообщения
"Приложению не удалось запуститься, поскольку borlnmdmm.dll не был найден. Повторная установка приложения может исправить эту проблему. "
и
"Не загрузилась динамическая библиотека changeFont.dll: не найден указанный модуль"
Где искать решение проблемы?
			
			
									
						
										
						в проекте прописано:
procedure fontReplace(String); external 'changeFont.dll';
в фейсе вызывается:
fontReplace(path_to_file+'badge.rtf');
при попытке запуска выходят два сообщения
"Приложению не удалось запуститься, поскольку borlnmdmm.dll не был найден. Повторная установка приложения может исправить эту проблему. "
и
"Не загрузилась динамическая библиотека changeFont.dll: не найден указанный модуль"
Где искать решение проблемы?
- 
				Goblin
 - Местный житель
 - Сообщения: 474
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: Сибирь-матушка
 - Контактная информация:
 
Проверьте галочки линкера при сборке DLL ...
В частности , вкладка Packages - убрать галку Build with runtime packages
еще мастер там вставляет комментарий
To avoid using BORLNDMM.DLL, pass string information
using PChar or ShortString parameters
в самой DLL как описана функция , в частности какой тип параметра ?
			
			
									
						
							В частности , вкладка Packages - убрать галку Build with runtime packages
еще мастер там вставляет комментарий
To avoid using BORLNDMM.DLL, pass string information
using PChar or ShortString parameters
в самой DLL как описана функция , в частности какой тип параметра ?
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
			
						Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
- 
				Goblin
 - Местный житель
 - Сообщения: 474
 - Зарегистрирован: 29 мар 2005, 17:49
 - Откуда: Сибирь-матушка
 - Контактная информация:
 
Моя DLL, работает 100 % не первый уже год, параметры ShortString'ом передаю
			
			
									
						
							Код: Выделить всё
library UserFunc;
uses
  SysUtils,
  Windows,
  Classes,
  NMSMTP;
procedure SendMList(FileName,Addr,TabNum:shortstring);forward;
exports SendMList name 'SENDMLIST'{Отсылка расчетных листов};
{$R *.res}
procedure SendMList(FileName,Addr,TabNum:ShortString);
var
    Mail:TNMSMTP;
    UserName:array [0..33] of char;
    NameLength:DWord;
begin
    NameLength:=32;
    GetUserName(UserName,NameLength);
    Mail:=TNMSMTP.Create(Nil);
    with Mail do
    begin
        Host:='BPMail1';
        PostMessage.FromName:='Расчетная группа бухгалтерии';
        UserID:=UserName;
        Charset:='Windows-1251';
        PostMessage.Subject:='Расчетный листок по зарплате(для таб. № '+TabNum+')';
        PostMessage.Attachments.Add(FileName);
        PostMessage.FromAddress:=UserName+'@blablabla.ru';
        PostMessage.ToAddress.Add(Addr);
        PostMessage.Body.Add('Согласно действующему трудовому кодексу');
        PostMessage.Body.Add('предоставляем Ваш расчетный лист.');
        PostMessage.Body.Add('По всем вопросам обращаться по телефону.');
        PostMessage.Body.Add('79-29-31(59-31) - расчетная группа.');
    end;
    try
        begin
            Mail.Connect;
            Mail.SendMail;
        end;
    finally
        begin
            if(Mail.Connected) then Mail.Disconnect;
            Mail.Free;
        end;
    end;
end;
end.
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
			
						Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !