На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> rtl60.bpl не найден
    Возможно опять эта проблема ANSI-Уникод. Попробуйте въявную написать ShowMessageW или ...A и др. такие функции и испытать. Дистрибутив, скорее всего, нормальный. Не в нём дело.
      Славян
      закоментировал ShowMessage..но остальные 2 ошибки? какаято проблема в объекте при линковке...что может быть?
        Цитата test4me @
        но тоже самое..но может проблема в операционной системе?

        Возможно, если че на хр-32 и 7-32 точно работает, правда на семерке не без глюков.
          доброго времени суток! создал другой проект..на форму кинул кнопку и при нажатии на нее ShowMessage("")...все скомпилировалось прекрсно и работает на машине где нет библиотек...но это была апликация...а как создаю dll компилится все если галочка стоит..как убираю вылазит эта ошибка
          [Linker Error] Unresolved external '__fastcall Dialogs::ShowMessage(const System::AnsiString)' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\PROJECTS\PRIMER.OBJ
          [Linker Error] Unresolved external 'Forms::Application' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\PROJECTS\PRIMER.OBJ
          [Linker Error] Unresolved external '__fastcall Forms::TApplication::MessageBox(const char *, const char *, int)' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\LIB\RELEASE\VCLE.LIB|_t_Forms

          Добавлено
          Цитата
          Возможно, если че на хр-32 и 7-32 точно работает, правда на семерке не без глюков.
          такчто это исключается...чтото происходит при линковке dll..
            Если есть кирилица в пути проекта, то измени на латынь.
            пример
            C:\бла\бла\myproekt
            измени на
            C:\bla\bla\myproekt

            Бывает путь до проекта в кириллице не обрабатывает.
              Цитата test4me @
              закоментировал ShowMessage..но остальные 2 ошибки? какаято проблема в объекте при линковке...что может быть?
              Так, так! Поподробнее! Т.е. одна ошибка пропала? Тогда - Ура! И пробуем написать ShowMessageW и смотрим рождает она ошибку или нет. Кстати, MessageBoxW такая же. Так что и с ней испытываем оба варианта. А дальше будем смотреть!
                Aibolit
                Цитата
                Если есть кирилица в пути проекта, то измени на латынь.

                нет там как раз видны пути все на ангельском...C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\PROJECTS\
                Славян
                Цитата
                ShowMessageW

                E2268 Call to undefined function 'ShowMessageW'
                  Цитата test4me @
                  E2268 Call to undefined function 'ShowMessageW'
                  Тьфу, ты! ;) Это я думал вы вызываете оную, а это ж диалог вызывает!
                  Давайте поэтапно! :
                  1. Напишите свой WinAPI-вызов ::ShowMessage, скажем с WM_SETTEXT.
                  2. Посмотрите какой текст будет на заголовке окна.
                  3. Так мы точно узнаем с ANSI или уникодом работает=собирается ваша программа/проект.
                    Славян

                    Цитата
                    1. Напишите свой WinAPI-вызов ::ShowMessage, скажем с WM_SETTEXT.

                    не совсем понял.. ShowMessage ведь просто выводит сообщение в окне так?

                    Добавлено
                    сам код проще простого..не использует юникод..
                    ExpandedWrap disabled
                      //---------------------------------------------------------------------------
                       
                      #include <vcl.h>
                      #include <windows.h>
                      #pragma hdrstop
                      //---------------------------------------------------------------------------
                      //   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)
                      {
                              //ShowMessage("");
                              ShowMessageW("");
                              return 1;
                      }
                      //---------------------------------------------------------------------------
                      extern "C" void __export primer()
                      {
                       Application->MessageBoxA("Test","From DLL",IDOK);
                      }


                    Добавлено
                    The syntax of the ShowMessage() function is
                    void __fastcall ShowMessage(const AnsiString Message);

                    A message box created with the ShowMessage() function uses the name of the project as its caption. The message to display is a string that can be provided by the developer.
                      Цитата test4me @
                      не совсем понял.. ShowMessage ведь просто выводит сообщение в окне так?
                      Как бы да. Подразумевалось, что вы напишете:
                      ExpandedWrap disabled
                        ::ShowMessage( Application->Handle, WM_SETTEXT, 0, (long)L"тра-ля-ля");
                      и посмотрите на текст кнопки внизу. Если там только буква 'т', то уникод не работает (система(bcb) перевела ShowMessage аки ShowMessageA), иначе - работает.
                        Библоотеку нужную подключить к проекту надо, а не трахаться тут с какой-то "не работой уникода".
                        Либо вообще перейти на системную MessageBox

                        Добавлено
                        И уж тем более не писать глупость вроде такой:
                        Цитата Славян @
                        Как бы да. Подразумевалось, что вы напишете:

                        ::ShowMessage( Application->Handle, WM_SETTEXT, 0, (long)L"тра-ля-ля");

                        и посмотрите на текст кнопки внизу. Если там только буква 'т', то уникод не работает (система(bcb) перевела ShowMessage аки ShowMessageA), иначе - работает.
                          trainer
                          Цитата
                          Библоотеку нужную подключить к проекту надо

                          согласен на 100%..может в этом случае точно проблема с библиотекой...как узнать какая библиотека не подключена при такой ошибке
                          ExpandedWrap disabled
                            [Linker Error] Unresolved external '__fastcall Dialogs::ShowMessage(const System::AnsiString)' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\PROJECTS\PRIMER.OBJ
                            [Linker Error] Unresolved external 'Forms::Application' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\PROJECTS\PRIMER.OBJ
                            [Linker Error] Unresolved external '__fastcall Forms::TApplication::MessageBox(const char *, const char *, int)' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\LIB\RELEASE\VCLE.LIB|_t_Forms

                          , тем более что при компиляции апликации все нормально и соединяется и компилируется...что же такое а???

                          Добавлено
                          Славян
                          ведь даже не в юникодах дело...застрял на самой простой вещи...это был просто тест чтобы использовать потом эту dll в чужой программе...неужели так сложно на билдере раньше никогда еще не делал в основном на c#...

                          Добавлено
                          ураа решение найдено...как и предпологалось...соединил библиотеки..
                          ExpandedWrap disabled
                            #pragma link "d:\\borland\\lib\\vcl.lib"
                            #pragma link "d:\\borland\\lib\\rtl.lib"

                          примите мою благодарность
                          спасибо всем кто ответил и хоть както принимал участие!!!
                          с уважением test4me
                            Цитата test4me @
                            сам код проще простого.

                            Ты поди при создании проекта не указал "Use VCL", а используешь его.
                              shm
                              естественно включил...

                              Добавлено
                              Цитата
                              Ты поди при создании проекта не указал "Use VCL", а используешь его.
                              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                              0 пользователей:


                              Рейтинг@Mail.ru
                              [ Script execution time: 0.0954 ]   [ 16 queries used ]   [ Generated: 13.05.26, 20:00 GMT ]