Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Проблема при подключении С-ной DLL.   Найти похожие ветки 

 
Natalia   (2004-05-23 11:16) [0]

Господа программисты, подскажите. При подключени С-ной DLL   (С Builder)выдает ошибку "Библиотека DLL 3260.dll не найдена по указанному пути"? Может что-то в настройках Delphi поменять нужно?
И почему при компиляции дельфовской Длл выдает Run\Parameters?
**********************
var
 Form1: TForm1;
 procedure _SayHello; external "Project1.dll"
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
 _SayHello;
end;
end.
********************
код С-ной длл:

#include <windows.h>
#include <f2c.h>
//---------------------------------------------------------------------------
//   Important note about DLL memory management when your DLL uses the
//   static version of the RunTime Library:
//
//   If your DLL exports any functions that pass String objects (or structs/
//   classes containing nested Strings) as parameter or function results,
//   you will need to add the library MEMMGR.LIB to both the DLL project and
//   any other projects that use the DLL.  You will also need to use MEMMGR.LIB
//   if any other projects which use the DLL will be performing new or delete
//   operations on any non-TObject-derived classes which are exported from the
//   DLL. Adding MEMMGR.LIB to your project will change the DLL and its calling
//   EXE"s to use the BORLNDMM.DLL as their memory manager.  In these cases,
//   the file BORLNDMM.DLL should be deployed along with your DLL.
//
//   To avoid using BORLNDMM.DLL, pass string information using "char *" or
//   ShortString parameters.
//
//   If your DLL uses the dynamic version of the RTL, you do not need to
//   explicitly add MEMMGR.LIB as this will be done implicitly for you
//---------------------------------------------------------------------------

#pragma argsused
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
      return 1;
}
     void _export SayHello ()
       {
MessageBox(NULL, "Hello", "Hello", MB_OK);

       }


 
Mim1 ©   (2004-05-23 11:42) [1]

А на си пробывали эту библиотеку?

вообще пр помощи tdump посмотрите кто связан с 3260.dll. ваш exe или Project1.dll. ищите в исходниках место где она подключается ...


 
Cobalt ©   (2004-05-23 11:48) [2]

Путь к ДЛЛ лучше указывать полный (если подключаете динамически), а если подключаете статически - то см. примечание к функции LoadLibrary - где она ищет (в каких папках) необходимую длл. Соответственно, её (длл) надо поместить в соответствующую папку.

Насчёт "Run\Parameters" - не нажимайте кнопку ">" - она называется "Run", а вам нужно Alt+P,B - "Build Project".


 
Natalia   (2004-05-23 12:18) [3]

Насчет Run\Parameters спасибо.
А как при помощи tdump посмотреть, кто связан с 3260.dll?
Кроме того, как это ни странно на дельфи6 моего знакомого проект запускается без ошибки, правда этот дельфи в другом городе..


 
Cobalt ©   (2004-05-23 12:24) [4]

Насчёт "запускается" - это зависит отместа расположения библиотеки, приложения и переменной среды окружения PATH.(См. справку к вышеуказанной функции)
C:\Program Files\Borland\Delphi6\Bin\tdump.exe
запускаете и он выводит все свои параметры командной строки.


 
Natalia   (2004-05-23 12:40) [5]

Спасибо, проблема решена. Нашла библиотеку 3260.dll и поместила \Delphi6\Bin\, тогда заработало.А все таки tdump.exe запускается и сразу исчезает, как его просмотреть?


 
Mim1 ©   (2004-05-23 13:42) [6]

Запускайте из командной строки.



Страницы: 1 вся ветка

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.056 c
4-1082231415
Shopot
2004-04-17 23:50
2004.06.06
Сообщения Windows.


14-1084564681
Piter
2004-05-14 23:58
2004.06.06
Ни у кого нету заготовок СЧЕТОВ-ФАКТУР?


1-1085140488
yozhik
2004-05-21 15:54
2004.06.06
Запрет вставки из буфера в TEdit


14-1084958483
ИМХО
2004-05-19 13:21
2004.06.06
Посоветуйте проверенный компонент


9-1076423031
Aika
2004-02-10 17:23
2004.06.06
Искусственный интеллект - Тетрис !