Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/88: Рейтинг темы: голосов - 88, средняя оценка - 4.51
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 22

Сделать exe файл со всеми нужными библиотеками

28.03.2014, 15:32. Показов 18714. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Подскажите, пожалуйста, как в Visual Studio 2010 сделать exe файл, чтобы в нем содержались все нужные библиотеки для выполнения программы, которая в нем написана?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.03.2014, 15:32
Ответы с готовыми решениями:

Создание независимого exe, чтоб запускался и там, где не установлен builder, со всеми библиотеками
Добрый вечер. Как в с++ builder xe 5 создать независимый exe, чтоб запускался и там, где не установлен builder, со всеми библиотеками?

VB6: не могу скомпилировать exe-файл со встроенными библиотеками
Здравствуйте. Я не могу скомпилировать exe-файл со встроенными библиотеками. Это вообще возможно? Ответьте кто-нибудь из умнейших.

Сохранить со всеми библиотеками
Как сохранить программу так, чтобы в ней были все библиотеки и она открывалась на любой системе.... и можно ли так сделать если на другой...

11
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
28.03.2014, 20:32
Использовать статическую компоновку.
Настройки проекта -> C++ -> Code Generaton -> Runtime Library
установить в Multi-Threaded (/MT), конфигурация должна быть Release.

Но это не всегда возможно. Например, могут быть сторонние
компоненты, которые линкуются с библиотеами Visual C++ динамически,
внося зависимости от msvcrXX.dll и msvcpXX.dll (XX - номер версии).
0
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 22
28.03.2014, 20:38  [ТС]
После того как я сделал это: "Настройки проекта -> C++ -> Code Generaton -> Runtime Library
установить в Multi-Threaded (/MT), конфигурация должна быть Release."
Проект перестал запускаться даже у меня на компьютере. Если просто запускаю с exeшника окно зависает и вылазит "Закрыть программу"
А если запускаю в студии от такая ошибка:
ОС Windows инициировала точку останова в opencvtest.exe.

Это может быть вызвано повреждением кучи и указывает на ошибку в opencvtest.exe или в одной из загруженных им DLL.

Возможной причиной так же может быть нажатие пользователем клавиши F12, когда фокус принадлежит opencvtest.exe

Выведенное на экран окно содержит дополнительные данные для диагностики ошибки
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
28.03.2014, 21:14
Ну о чем и речь.
opencvtest - это, судя по названию, связано так или иначе с OpenCV.
А там могут быть свои библиотеки, свои зависимости и т.д.
И это все очень даже может быть несовместимым с режимом
компоновки, который я подсказал. Тут нужно разбираться конкретно,
читать документацию по сторонним библиотекам и т.д.
0
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 22
28.03.2014, 21:23  [ТС]
А что нужно установить на другой компьютер что б там работала моя программа? Свои dll-ки я скину вместе с exe-шником. А что необходимо ещё?
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
28.03.2014, 21:31
Цитата Сообщение от Skeep747 Посмотреть сообщение
А что нужно установить на другой компьютер что б там работала моя программа? Свои dll-ки я скину вместе с exe-шником. А что необходимо ещё?
Это зависит от сторонних компонентов, которые используются в программе.
0
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 22
28.03.2014, 21:38  [ТС]
а как определить?
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
28.03.2014, 21:40
Обычно такие вещи пишутся в документации.
Если нет - значит все настолько тривиально, что в комментариях
не нуждается. В совсем запущенных случаях можно поискать
правильные пути где-нибудь на stackoverflow и т.п., либо взять в
руки dumpbin или dependency walker и выяснять самому.
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
28.03.2014, 21:44
Цитата Сообщение от Skeep747 Посмотреть сообщение
Это может быть вызвано повреждением кучи
так может дело то не в библиотеках а в издевательстве над памятью?
0
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 22
28.03.2014, 21:46  [ТС]
А что с памятью не так?
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
28.03.2014, 21:48
Цитата Сообщение от Skeep747 Посмотреть сообщение
А что с памятью не так?
а я знаю?
я не строчки кода не видел
но
Цитата Сообщение от Skeep747 Посмотреть сообщение
повреждением кучи
как бы намекает что что то не так с new malloc ну и так далее
0
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 22
28.03.2014, 22:49  [ТС]
Цитата Сообщение от ValeryS Посмотреть сообщение
я не строчки кода не видел
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
#include "opencv2/objdetect/objdetect.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <sstream>
#include <string>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
 
using namespace std;
using namespace cv;
const string trackbarWindowName = "Число кадров";
        int MAX = 50;
        int MIN = 0;
void on_trackbar( int, void* ){
}
    void createTrackbars(){
    namedWindow(trackbarWindowName,0);
    createTrackbar( "", trackbarWindowName, &MAX, MAX, on_trackbar );
 
}
 
int main()
{
    bool calibrationMode = true;
    if(calibrationMode){
        createTrackbars();
    }
    CascadeClassifier face_cascade;
    face_cascade.load("haarcascade_frontalface_alt.xml");
    VideoCapture captureDevice;
    captureDevice.open(0);
    Mat captureFrame;
    Mat grayscaleFrame;
    while(true)
    {
        int counter=0;
        char filename[512];
        captureDevice>>captureFrame;
        cvtColor(captureFrame, grayscaleFrame, CV_BGR2GRAY);
        vector<Rect> faces;
        face_cascade.detectMultiScale(grayscaleFrame, faces, 1.1, 3, CV_HAAR_FIND_BIGGEST_OBJECT|CV_HAAR_SCALE_IMAGE, Size(30,30));
        for( size_t i = 0; i < faces.size(); i++ )
                    {
        Point pt1(faces[i].x + faces[i].width, faces[i].y + faces[i].height);
        Point pt2(faces[i].x, faces[i].y);
        rectangle(captureFrame, pt1, pt2, cvScalar(0, 255, 0, 0), 1, 8, 0);
                    }
        char c = cvWaitKey(33);
        if (c == 27) 
        { 
        break;
        }
        else if(c == 13)
            {  
            createTrackbars();
 
        for (int g=0; g<MAX; g++)
                {
        captureDevice>>captureFrame;
        cvtColor(captureFrame, grayscaleFrame, CV_BGR2GRAY);
        vector<Rect> faces;
        face_cascade.detectMultiScale(grayscaleFrame, faces, 1.1, 3, CV_HAAR_FIND_BIGGEST_OBJECT|CV_HAAR_SCALE_IMAGE, Size(30,30));
        for( size_t i = 0; i < faces.size(); i++ )
                    {
        Point pt1(faces[i].x + faces[i].width, faces[i].y + faces[i].height);
        Point pt2(faces[i].x, faces[i].y);
        rectangle(captureFrame, pt1, pt2, cvScalar(0, 255, 0, 0), 1, 8, 0);
        Rect region_of_interest = Rect(pt1,pt2);
        Mat image_roi = grayscaleFrame(region_of_interest);
        sprintf(filename, "Photo/Image%d.jpg", counter);
        imwrite( filename, image_roi );
        counter++;
                    }
                }
        break;
            }
        imshow("outputCapture", captureFrame);
     }
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.03.2014, 22:49
Помогаю со студенческими работами здесь

Компиляция программы со всеми библиотеками
Как компилировать проект со всеми библиотеками в Microsoft Visual Studio 2010 ?

Сборка проекта со всеми библиотеками
Всем привет! Мне нужно собрать проект в Microsoft Visual Studio так, чтобы в exe были включены все необходимые библиотеки, чтобы не...

Компилирование со всеми библиотеками в MFC
Создал проэкт (MFC) но забыл поставить галочку на то чтобы проэкт запускался на других компах(то есть использовать проект в статической...

Необходимо собрать проект со всеми библиотеками в одну папку, чтобы можно было его передавать на другие ПК.
Python 3.4, GUI wxPython. Необходимо собрать проект со всеми библиотеками в одну папку, чтобы можно было его передавать на другие ПК. Мне...

Возможно ли сделать exe файл который будет и программой (exe) и музыкой (mp3) на c#?
Здрастуйте мне нужна программа на c# которую можно будет замаскировать под mp3(или другой формат музыки). Так, чтобы программа работала и...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
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, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru