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

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

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2015, 11:39   #1
vladimir.kartashev
Новичок
Джуниор
 
Регистрация: 08.06.2015
Сообщений: 1
По умолчанию Unresolved external

Здравствуйте.
При таком коде:
Код:
 
#include <vcl.h>
#pragma argsused
#pragma hdrstop
#ifdef _WIN32
#include <tchar.h>
#else
  typedef char _TCHAR;
  #define _tmain main
#endif
 
#include <stdio.h>
 
using namespace System;
 
 int _tmain(int argc, _TCHAR* argv[])
{
    return 0;
}
 
void StopService(AnsiString ServiceName)
{
SC_HANDLE h_manager,h_svc;
SERVICE_STATUS svc_status;
LPSERVICE_STATUS svc_status2 = &svc_status;
long dwCheckPoint;
 
    h_manager = OpenSCManager(NULL,NULL,SC_MANAGER_CONNECT);
   if(h_manager > 0)
     {
      h_svc = OpenServiceA(h_manager,ServiceName.c_str(),SERVICE_STOP);
       if(h_svc > 0)
         {
           if(ControlService(h_svc,SERVICE_CONTROL_STOP,svc_status2))
             {
              if(QueryServiceStatus(h_svc,svc_status2))
               {
                 while(svc_status2->dwCurrentState!=SERVICE_STOPPED)
                  {
                   dwCheckPoint = svc_status2->dwCheckPoint;
                   Sleep(svc_status2->dwWaitHint);
                   if(!QueryServiceStatus(h_svc,&svc_status))
                    {break;}
                   if(svc_status2->dwCheckPoint < dwCheckPoint)
                    {break;}
                  }
                 }
               CloseServiceHandle(h_svc);
              }
             CloseServiceHandle(h_manager);
       }
   }
}
целый список Unresolved external :

Цитата:
Checking project dependencies...
Compiling Project1.cbproj (Debug, Win64)
brcc32 command line for "Project1.vrc"
d:\program files (x86)\embarcadero\studio\16.0\bin\c grc.exe -c65001 "Project1.vrc" -foProject1.res
ilink64 command line
d:\program files (x86)\embarcadero\studio\16.0\bin\i link64.exe -G8 -L.\Win64\Debug;"d:\program files (x86)\embarcadero\studio\16.0\lib\W in64\debug";
"..\Знаки\Обновление файлов знаков\Обновление файлов знаков";"d:\program files (x86)\embarcadero\studio\16.0\lib\w in64\release";"d:\program files
(x86)\embarcadero\studio\16.0\lib\w in64\release\psdk";D:\Users\Public\ Documents\Embarcadero\Studio\16.0\D cp\Win64;
D:\Users\Public\Documents\Embarcade ro\Studio\16.0\DCP\Win64\Debug;D:\U sers\Public\Documents\Embarcadero\S tudio\16.0\Dcp\Win64 -j.\Win64\Debug;
"d:\program files (x86)\embarcadero\studio\16.0\lib\W in64\debug";"..\Знаки\Обновление файлов знаков\Обновление файлов знаков";"d:\program files
(x86)\embarcadero\studio\16.0\lib\w in64\release";"d:\program files (x86)\embarcadero\studio\16.0\lib\w in64\release\psdk";
D:\Users\Public\Documents\Embarcade ro\Studio\16.0\Dcp\Win64;D:\Users\P ublic\Documents\Embarcadero\Studio\ 16.0\DCP\Win64\Debug;
D:\Users\Public\Documents\Embarcade ro\Studio\16.0\Dcp\Win64 -l.\Win64\Debug -v -Gn -Tpe c0x64 .\Win64\Debug\File1.o , .\Win64\Debug\Project1.exe ,
.\Win64\Debug\Project1.map , import64.a cw64.a , , Project1.res
[ilink64 Error] Error: Unresolved external 'vtable for System::Sysutils::ERangeError' referenced from D:\PROGRAM FILES (X86)\EMBARCADERO\STUDIO\16.0\LIB\W IN64\DEBUG\RTLE.A|dstring.o
[ilink64 Error] Error: Unresolved external 'System::Sysconst::_SRangeError' referenced from D:\PROGRAM FILES (X86)\EMBARCADERO\STUDIO\16.0\LIB\W IN64\DEBUG\RTLE.A|dstring.o
[ilink64 Error] Error: Unresolved external 'System::LoadResString(System::TRes StringRec*)' referenced from D:\PROGRAM FILES (X86)\EMBARCADERO\STUDIO\16.0\LIB\W IN64\DEBUG\RTLE.A|syssupp.o
Все не влезли.

Последний раз редактировалось Stilet; 08.06.2015 в 13:07.
vladimir.kartashev вне форума Ответить с цитированием
Старый 08.06.2015, 13:09   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

А проект какой выбран?
Если консольный, то #include <vcl.h> как-то тут не вяжется.

И почему StopService описано ниже главной функции?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.08.2017, 19:18   #3
alone53
Новичок
Джуниор
 
Регистрация: 04.08.2017
Сообщений: 1
По умолчанию

В ваш прожект не включены run-time библиотеки VCL. Это фокусы RAD Studio X8 и последующих для 64-разрядных приложений. Проекты, не содержащие в явном виде форм VCL (DLL, консольные приложения и др.) без ошибок компилируются в win32, но выдают ошибки вида:

[ilink64 error] error: unresolved external 'vcl::forms::application

при компиляции для 64-разрядной платформы.

Попробуйте:
Вариант 1. В файле вашего проекта * .cbproj любым текстовым редактором найдите где-то в начале строчку вида:

<FrameworkType> None L</FrameworkType>

и замените на:

<FrameworkType>VCL</FrameworkType>

После этого компилятор станет считать ваш прожект VCL-ским и включит кнеобходимые библиотеки (rtl.lib)

2. Вариант второй (из области плясок с бубном)
Добавьте в прожект форму, а потом её удалите. Форма удалится, а библиотеки останутся
alone53 вне форума Ответить с цитированием
Старый 04.08.2017, 20:27   #4
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 729
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Если консольный, то #include <vcl.h> как-то тут не вяжется.
- там тоже, по-моему, нужно VCL подключать.
Cuprum5 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Unresolved external __fastcall Silly Student C++ Builder 1 22.10.2011 21:55
Unresolved external Alex54 C++ Builder 0 15.03.2011 00:21
unresolved external symbol Эрин Общие вопросы C/C++ 3 22.03.2010 15:32
unresolved external symbol... LukS Общие вопросы C/C++ 2 16.04.2009 11:41
unresolved external symbol IgorKr Общие вопросы C/C++ 3 20.12.2008 15:01