Аватар для yurembo
10 / 10 / 5
Регистрация: 04.07.2009
Сообщений: 112

Error LNK2019: ссылка на неразрешенный внешний символ...

10.07.2009, 14:20. Показов 7383. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
пишу прогу, которая выводит список файлов в папке и дату их последнего изменения. Но выбивает ошибки:

Ошибка 2 error LNK2019: ссылка на неразрешенный внешний символ "public: char * __thiscall getfileatt::getFilleModification(char const *,char *)" (?getFilleModification@getfileatt@@QAEPA DPBDPAD@Z) в функции "public: int __thiscall find_file::main(int,char * * const)" (?main@find_file@@QAEHHQAPAD@Z) find_file.obj find_file

Ошибка 3 error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall getfileatt::getfileatt(void)" (??0getfileatt@@QAE@XZ) в функции "public: int __thiscall find_file::main(int,char * * const)" (?main@find_file@@QAEHHQAPAD@Z) find_file.obj find_file

Ошибка 4 error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup msvcrtd.lib find_file

вод сам код:

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
#include "stdafx.h"
#include "find_file.h"
#define _AFXDLL
#include <afx.h>
#include <iostream>
#include <conio.h>
#ifdef UNICODE
#define _tcout wcout
#else
#define _tcout cout
#endif
 
int find_file::_tmain(int argc, char *argv[])
{   static const TCHAR szFileToFind[] = _T("C:\\*.*");
        CFileFind m_finder;
        BOOL bWorking = m_finder.FindFile (szFileToFind);     
        while (bWorking)
        {
                bWorking = m_finder.FindNextFile();
                //ищем только файлы
                if (!m_finder.IsDirectory() && !m_finder.IsDots())
                {
            //TCHAR str[] = m_finder.GetFileName();
                    //std::_tcout << str;                   
              getfileatt *fa = new getfileatt();
              char nn[100]; 
                        std::_tcout << m_finder.GetFileName() << "\n";
                        fa->getfileatt::getFilleModification(m_finder.GetFileName().GetString(),nn);
                        std::_tcout<<nn;
                }
        }
        getch();
        return 1;       
}
модуль getfileatt.cpp :

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include "getfileatt.h"
FILE *fFile;
char* pFile; 
getfileatt::getfileatt()
{
}
 
int getfileatt::setFileName(const char *file, char *out_f)
{
return 1;
}
 
char* getfileatt::getFilleModification(const char *file, char *out)
{
    struct _stat st;
    _stat(file, &st);
    char mod[100];
    ctime_s(mod, 100, &st.st_mtime);
return strcpy(out,mod);   
}
подскажите что не так..
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.07.2009, 14:20
Ответы с готовыми решениями:

Error LNK2019: ссылка на неразрешенный внешний символ
Короче перешел я с XP на семерку и тут появилась такая фигня. Те проекты которые нормально работали в XP не хотят компилироваться в...

Error LNK2019: ссылка на неразрешенный внешний символ
Недавно начал учить visual c++, столкнулся с проблемой и незню как исправить, укажите пожалуйста на мою ошибку. Программа должна рисовать...

Error LNK2019: ссылка на неразрешенный внешний символ
Такая ошибка, не знаю как исправить: error LNK2019: ссылка на неразрешенный внешний символ &quot;unsigned int __cdecl discrete(float *...

7
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
10.07.2009, 14:50
ну, как минимум:
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
#include "stdafx.h"
#include "find_file.h"
#define _AFXDLL
#include <afx.h>
#include <iostream>
#include <conio.h>
#include "getfileatt.h"
#ifdef UNICODE
#define _tcout wcout
#else
#define _tcout cout
#endif
 
int _tmain(int argc, char *argv[])
{       static const TCHAR szFileToFind[] = _T("C:\\*.*");
        CFileFind m_finder;
        BOOL bWorking = m_finder.FindFile (szFileToFind);     
                while (bWorking)
        {
                bWorking = m_finder.FindNextFile();
                //ищем только файлы
                if (!m_finder.IsDirectory() && !m_finder.IsDots())
                {
                    //TCHAR str[] = m_finder.GetFileName();
                    //std::_tcout << str;                                       
                  getfileatt *fa = new getfileatt;
                  char nn[100]; 
                        std::_tcout << m_finder.GetFileName() << "\n";
                        fa->getFilleModification(m_finder.GetFileName().GetString(),nn);
                                                std::_tcout<<nn;
                }
        }
                getch();
                return 1;               
}
а вообще, комментировать надо.
простым русским языком.
и как комменты напишешь, так и поймешь, что делаешь фигню какую-то.
1
Maniac
Эксперт С++
 Аватар для ISergey
1465 / 966 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
10.07.2009, 14:56
Упс не успел....
1
 Аватар для yurembo
10 / 10 / 5
Регистрация: 04.07.2009
Сообщений: 112
10.07.2009, 15:17  [ТС]
хм... ничего не изменилось, те же ошибки выдает..
0
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
10.07.2009, 16:15
проверил.
все работает.
единственно, правда, пришлось вставить:
C++
1
2
3
4
5
#include <iostream>
#include <conio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <time.h>
в класс getfileatt.
но скорее всего у тебя это все в "getfileatt.h"

вывод: не то что-то делаешь...
1
Maniac
Эксперт С++
 Аватар для ISergey
1465 / 966 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
10.07.2009, 16:42
Весь проект давай сюда.
1
 Аватар для yurembo
10 / 10 / 5
Регистрация: 04.07.2009
Сообщений: 112
10.07.2009, 16:55  [ТС]
find_file.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
25
26
27
28
29
30
31
32
#include "stdafx.h"
#include "find_file.h"
#define _AFXDLL
#include <afx.h>
#include <iostream>
#include <conio.h>
#ifdef UNICODE
#define _tcout wcout
#else
#define _tcout cout
#endif
int _tmain(int argc, char *argv[])
{   static const TCHAR szFileToFind[] = _T("C:\\*.*");
        CFileFind m_finder;
        BOOL bWorking = m_finder.FindFile (szFileToFind);     
        while (bWorking)
        {
                bWorking = m_finder.FindNextFile();
                //ищем только файлы
                if (!m_finder.IsDirectory() && !m_finder.IsDots())
                {
    getfileatt *fa = new getfileatt();
    char nn[100]; 
                    std::_tcout << m_finder.GetFileName() << "\n";
                    fa->getFilleModification(m_finder.GetFileName().GetString(),nn);
                    std::_tcout<<nn;
                }
        }
        getch();
        return 1;
        
}
getfileatt.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#ifndef GETFILEATT_H
#define GETFILEATT_H
#include <time.h>
#include <sys/stat.h>
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <sys/types.h>
#include <time.h>
class getfileatt
{
public:
    getfileatt();
int setFileName (const char* file, char *out_f);
char* getFilleModification(const char *file, char *out); 
};
#endif
getfileatt.cpp

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include "getfileatt.h"
FILE *fFile;
char* pFile; 
getfileatt::getfileatt()
{
}
 
int getfileatt::setFileName(const char *file, char *out_f)
{
return 1;
}
 
char* getfileatt::getFilleModification(const char *file, char *out)
{
    struct _stat st;
    _stat(file, &st);
    char mod[100];
    ctime_s(mod, 100, &st.st_mtime);
return strcpy(out,mod);   
}
get_file.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
#ifndef FINDFILE_H
#define FINDFILE_H
#include "stdafx.h"
#include "getfileatt.h"
 
class find_file
{
public:
        find_file();
int _tmain(int argc, char *argv[]);
};
#endif
0
Maniac
Эксперт С++
 Аватар для ISergey
1465 / 966 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
10.07.2009, 17:21
get_file.h удали нафик.
find_file.cpp переделай как Patch показал.
только вторую строчку закоментируй и после 30 добавь delete fa
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.07.2009, 17:21
Помогаю со студенческими работами здесь

Error LNK2019: ссылка на неразрешенный внешний символ
Привет всем, я начинающий в этом деле человек так что не серчайте сильно. У меня проблема присоздании toolbar, выдает вот такую ошибку, я...

Error LNK2019: ссылка на неразрешенный внешний символ
Доброго времени суток. Товарищи, начал изучать DirectX 10 по книге Алексея Попова и столкнулся с проблемами. Какие-то сам разобрал...

Error LNK2019: ссылка на неразрешенный внешний символ
Здравствуйте! Пишу приложение на MFC с использованием OpenGL. Возникла такая проблема... При компилляции выдается много ошибок типа: ...

Error LNK2019: ссылка на неразрешенный внешний символ _calc в функции _main
Я пишу програму на язике C--&gt; ASM(в среде Visual Studio 2008) ! Вот код : #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include...

Error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup
1&gt;MSVCRTD.lib(crtexe.obj) : error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup 1&gt;C:\Program...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в конфигурации КА2. Данные берутся из регистра сведений, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru