Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
2 / 2 / 3
Регистрация: 06.01.2018
Сообщений: 77

Ошибки "ссылка на неразрешенную лексему" и "ссылка на неразрешенный внешний символ"

09.10.2018, 23:31. Показов 2964. Ответов 0

Студворк — интернет-сервис помощи студентам
сделал проект для реализации dll, написал dll с функциями, скомпилировал
как результат:

1>------ Сборка начата: проект: app, Конфигурация: Debug Win32 ------
1>MyForm.cpp
1>MyForm.obj : обнаружен модуль MSIL; для MSIL последовательная компоновка отключена; выполняется полная компоновка
1>MyForm.obj : error LNK2028: ёё√ыър эр эхЁрчЁх°хээє■ ыхъёхьє (0A000518) "extern "C" double __cdecl Leng(char const *,unsigned int &)" (?Leng@@$$J0YANPBDAAI@Z) т ЇєэъЎшш "private: void __clrcall Project1::MyForm::button1_Click(class System::Object ^,class System::EventArgs ^)" (?button1_Click@MyForm@Project1@@$$FA$AA MXP$AAVObject@System@@P$AAVEventArgs@4@@ Z)
1>MyForm.obj : error LNK2028: ёё√ыър эр эхЁрчЁх°хээє■ ыхъёхьє (0A000555) "extern "C" void __cdecl Space(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?Space@@$$J0YAXAAV?$basic_string@DU?$ch ar_traits@D@std@@V?$allocator@D@2@@std@@ @Z) т ЇєэъЎшш "private: void __clrcall Project1::MyForm::spaceplus_Click(class System::Object ^,class System::EventArgs ^)" (?spaceplus_Click@MyForm@Project1@@$$FA$ AAMXP$AAVObject@System@@P$AAVEventArgs@4 @@Z)
1>MyForm.obj : error LNK2019: ёё√ыър эр эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы "extern "C" double __cdecl Leng(char const *,unsigned int &)" (?Leng@@$$J0YANPBDAAI@Z) т ЇєэъЎшш "private: void __clrcall Project1::MyForm::button1_Click(class System::Object ^,class System::EventArgs ^)" (?button1_Click@MyForm@Project1@@$$FA$AA MXP$AAVObject@System@@P$AAVEventArgs@4@@ Z)
1>MyForm.obj : error LNK2019: ёё√ыър эр эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы "extern "C" void __cdecl Space(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?Space@@$$J0YAXAAV?$basic_string@DU?$ch ar_traits@D@std@@V?$allocator@D@2@@std@@ @Z) т ЇєэъЎшш "private: void __clrcall Project1::MyForm::spaceplus_Click(class System::Object ^,class System::EventArgs ^)" (?spaceplus_Click@MyForm@Project1@@$$FA$ AAMXP$AAVObject@System@@P$AAVEventArgs@4 @@Z)
1>C:\Users\Dave\Desktop\dlltest+WinForms +CRLDLL\dlltest\Debug\app.exe : fatal error LNK1120: эхЁрчЁх°хээ√ї тэх°эшї ¤ыхьхэЄют: 4
1>Сборка проекта "app.vcxproj" завершена с ошибкой.
========== Сборка: успешно: 0, с ошибками: 1, без изменений: 1, пропущено: 0 ==========


DLLPROJECT:

header.h

C++
1
2
3
4
5
6
7
8
9
10
11
#ifndef __HEADER_H
#define __HEADER_H
 
#include "stdafx.h"
#include <string>
 
using namespace std;
 
extern "C" __declspec(dllexport) double Leng(const char *s, unsigned& sum);
extern "C" __declspec(dllexport) void Space(string& nstr);
#endif
source.cpp

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "header.h"
 
using namespace std;
 
double Leng(const char *s, unsigned& sum) {
    unsigned i = 0, n = 0;
    sum = 0;
    do {
        if (isalpha(*s) || (*s == '-'))
            ++i;
        else if (i > 0) {
            sum += i;
            ++n;
            i = 0;
        }
    } while (*s++ != '\0');
    return n;
}
 
void Space(string &nstr) {
    for (size_t i = 0; i < nstr.size(); ++i) {
        nstr.insert(nstr.begin() + ++i, ' ');
    }
}


APPLICATIONPROJECT:

MyForm.cpp (main)

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include "MyForm.h"
 
using namespace System;
using namespace System::Windows::Forms;
 
[STAThreadAttribute]
void Main(cli::array < String^> ^ args){
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);
    Project1::MyForm form;
    Application::Run(%form);
}
MyForm.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#pragma once
 
#include "header.h"
#include <string>
#include <msclr\marshal_cppstd.h>
 
namespace Project1 {
 
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
    using namespace std;
    using namespace msclr::interop;
 
    /// <summary>
    /// Сводка для MyForm
    /// </summary>
    public ref class MyForm : public System::Windows::Forms::Form
    {
    public:
        MyForm(void)
        {
            InitializeComponent();
            
        }
    private: 
    protected:
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        ~MyForm()
        {
            if (components)
            {
                delete components;
            }
        }
    private: System::Windows::Forms::TextBox^  textBox1;
    private: System::Windows::Forms::Button^  btn_avg;
    protected:
 
    private: System::Windows::Forms::DomainUpDown^  fontsize;
 
    private: System::Windows::Forms::Label^  label1;
    private: System::Windows::Forms::Label^  lbl_avg;
    private: System::Windows::Forms::Button^  spaceplus;
 
 
 
    protected:
 
    private:
        /// <summary>
        /// Обязательная переменная конструктора.
        /// </summary>
        System::ComponentModel::Container ^components;
 
#pragma region Windows Form Designer generated code
#pragma endregion
        
        System::String ^first;
        bool isspace = false;
public: char* SystemStringToChar(System::String^ stri)
    {
        return (char*)(void*)System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(stri);
    }
 
            System::String^ CharToSystemString(char* ch)
            {
                return gcnew String(ch);
            }
 
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
        double average;
        char *s = SystemStringToChar(textBox1->Text);
        unsigned sum;
        double cnt = Leng(s, sum);
        average = round(static_cast<double>(sum) / cnt * 1000) / 1000;
        lbl_avg->Text = Convert::ToString(average);
    }
    private: System::Void fontsize_SelectedItemChanged(System::Object^  sender, System::EventArgs^  e) {
        double size = Convert::ToDouble(fontsize->Text);
        textBox1->Font = (gcnew System::Drawing::Font(L"Arial", (float)size, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point,
            static_cast<System::Byte>(204)));
    }
private: System::Void spaceplus_Click(System::Object^  sender, System::EventArgs^  e) {
    if (isspace == false) 
    {
        first = textBox1->Text;
        std::string nstr = marshal_as<std::string>(textBox1->Text);
        Space(nstr);
        String ^str2 = gcnew String(nstr.c_str());
        textBox1->Text = Convert::ToString(str2);
        spaceplus->Text = "Уменьшить межсимвольный интервал";
        textBox1->ReadOnly = true;
        isspace = true;
    }
    else
    {
        textBox1->Text = Convert::ToString(first);
        spaceplus->Text = "Увеличить межсимвольный интервал";
        textBox1->ReadOnly = false;
    }
}
 
};
};

Что делать? Сначала ругался на string в мэйне

C++
1
void Main(< String^> ^ args)
добавил, перестал ругаться

C++
1
void Main(cli::array < String^> ^ args)
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.10.2018, 23:31
Ответы с готовыми решениями:

Ссылка на неразрешенный внешний символ c++
Выбивает ошибку на неразрешенные внешний символ на 2,3,4. Если убрать символ &quot;&amp;&quot;, то выдаст ошибку нестандартный синтаксис, и скажет...

Ошибка LNK2019 ссылка на неразрешенный внешний символ
Здравствуйте помогите исправить ошибки Ошибка LNK1120 неразрешенных внешних элементов:1 Ошибка LNK2019 ссылка на неразрешенный...

student.obj : error LNK2028: ссылка на неразрешенную лексему (0A00001A)
&gt;ResourceCompile: 1&gt; Для всех выходных данных обновления не требуется. 1&gt;student.obj : error LNK2028: ссылка на неразрешенную лексему...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.10.2018, 23:31
Помогаю со студенческими работами здесь

! ____error LNK2028: ссылка на неразрешенную лексему + error LNK2019: ссылка на неразрешенный внешний символ
закинул self made библиотеку в winforms вот тут: #pragma endregion private: System::Void Form1_Load(System::Object^ sender,...

Ошибки - ссылка на неразрешенный внешний символ
Тема-разработка собственных функций, а условие -найти кратчайшее расстояние между точкой и функцией y=15log(x)-x...на промежутке...

Ссылка на неразрешенный внешний символ и другие ошибки
пытаюсь создать jui приложению но даже &quot;пробный код с объяснением принципа работы&quot; запустить не выходит // Anything after // is a...

Ошибки LKN2019 и LKN1120: ссылка на неразрешенный внешний символ
я только недавно начал разбираться в классах, поэтому не очень понимаю как исправить следующие ошибки. Сами ошибки: ...

<error LNK2019: ссылка на неразрешенный внешний символ>- в чём причина ошибки?
Доброй ночи! подскажите пожалуйста, свежим взглядом, где мог ошибиться. Заранее благодарен! #include &lt;iostream&gt; #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru