Форум программистов, компьютерный форум CyberForum.ru

Динамические библиотеки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ слова в файле http://www.cyberforum.ru/cpp-beginners/thread991587.html
Как считать слова из файла? и как сосчитать кол-во слов в файле?:scratch:
C++ программа с++ про количество слов (работа с файлами) Открыть файл, имя которого задается с клавиатуры. Посчитать и вывести на экран количество слов в этом файле. Первую половину слов записать в другой фаил. Вывести полученный файл на экран. Вот начало, дальше ступор,help товарищи :wall:: #include<iostream> #include<windows.h> #include<iomanip> #include<math.h> #include<conio.h> #include<String.h> #include<ctype.h> #include <stdlib.h> http://www.cyberforum.ru/cpp-beginners/thread991555.html
Не работает программа из книги Герберта Шилдта. C++
Подскажите и мне тоже из этой книги не работает программа. #include<iostream> #include<cstdlib> #include<conio.h> using namespace std; char *fortunes={ "Vskore\n", "phffg\n", "khh\n" };
Expected constructor, destructor, or type conversion before '.' token C++
struct Gf3 { GLfloat x; GLfloat y; GLfloat z; } p1,p2,p3,t; t.x = 0.0; t.y = 0.0; t.z = 1.0; p1.x = 0.0; p1.y = 0.942809; p1.z = -0.333333; p2.x = -0.816497; p2.y = -0.471405; p2.z = -0.333333; p3.x = 0.816497; p3.y = -0.471405; p3.z = -0.333333;
C++ Как добавить стирание символов в программе http://www.cyberforum.ru/cpp-beginners/thread991532.html
Как добавить стирание символов в программе(после запуска ctrl+F5) в visual c++ ? То есть,чтобы я мог писать и стирать символы при запуске программы?O_o
C++ Программа, которая зануляет элементы выше и ниже главной и побочной диагонали Ребята, помогите срочно нужно, как написать программу которая зануляет элементы выше и ниже главной и побочной диагонали, типа такого чтоб получилось : 1 0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 .... пожалуйста) подробнее

Показать сообщение отдельно
bullet0070
2 / 2 / 0
Регистрация: 27.10.2013
Сообщений: 57

Динамические библиотеки - C++

29.10.2013, 15:48. Просмотров 2287. Ответов 11
Метки (Все метки)

Доброго времени суток, программисты!

Я создал эту тему, потому что проблема с запуском своих программ на другом компьютере стоит очень остро. В интернете я не нашёл ресурса, который полностью как можно более полно объяснит решение проблемы. Этой темой я хочу поставить точку в этом вопросе. Приступим.

Где появляется проблема?

Проблема появляется потому, что у человека, которому вы скидываете ваше приложение, нету нужных библиотек. Решений проблемы есть несколько:
- Использовать в своём приложении статическую линковку(статические библиотеки).Для этого в свойствах проекта - Link - надо указать /MT (Multi-Threaded). Однако, такое решение проблемы возможно далеко не всегда, более того, не всегда помогает.
- Прикрепить к своему приложению необходимые для её выполнения DLL (Dynamic Link Library). Это файлы динамический библиотеки и они имеют расширение .dll.Этим способом мы и воспользуемся, потому что в моём случае я использую приложение с использованием Windows Forms. Соответственно, это проект CLR. А проекты CLR не совместимы с статической линковкой(/MT).

1)Для начала нам нужно определиться, какая разрятность Windows нашего друга, которому надо скинуть приложение.

2)Допустим, он сказал, что у него Windows 7 x32. Запомнили, мы ему отсылаем наше приложение .exe. Его он может кинуть куда угодно.

3)Следующий шаг - это скинуть ему нужный .dll. Мы выяснили, что при запуске нашего приложение оно пишет ошибку: Запуск программы невозможен так как на компьютере отсутствует MSVCR110.dll.
Примечание: если ошибка ругается на недостающий MSVCR110D.dll, то это значит что вы закомпилировали программу в Debug. Скомпилируйте её в Release. Определить нежный dll можно установив в виртуальной машине (Virtual Box) винду, в которой вы можете делать кучу эскпериментов, где программа запустится, при каких условиях, какую пишет ошибку, какой файл требует и т.д.

4)Путём тестов, мы определились с нужным .dll. Далее нужно найти этот самый файл. Заходим в папку с Visual Studio, далее в VC\redist\ далее смотрим на разрядонсть системы нашего друга. В моём случае, повторяю, это 32 бита. Значит заходим в папку х86. Если же у него 64 бита - заходим в папку х64. Как только зашли в папку, соответствующей разрядности его системы, заходим в папку Microsoft.VC110.CRT. Название папки может меняться всвязи с версией студии. Внутри этой папки и находится заветный msvcr110.dll. Передаём этот файл другу.

5)Следующий шаг - это настраивание этой DLL. Наш друг должен кинуть этот .dll по этому пути: C:\Windows\System32. Как только он его туда кинул, ему нужно "активировать" этот dll. Как раз по причине того, что люди это забывают, и выскакивае ошибка типа Файл MSVCR110.dll либо не предназначен для выполнения под управлением windows, либо.... Чтобы это исправить, надо нажать Пуск, в поисковике вписать regsvr32 название файла. В моём случае человек должен вписать regsvr32 MSVCR110.dll.

6)Вот и всё, наше приложение легко запускается на другом компьютере.

Несколько советов

Для упрощения жизни вашего друга, можно сделать для своей программы инсталятор, чтобы он автоматически кидал файл DLL в папку System32. Инсталятор можно очень лгко сделать с помощью программы Smart Install Maker. ПОЖАЛУЙСТА, КОММЕНТИРУЙТЕ ЭТУ ТЕМУ, ПОЛУЧИЛОСЬ ЛИ У ВАС, ИЛИ ЧТО НЕ ПОЛУЧИЛОСЬ! МНЕ ЭТО ОЧЕНЬ ВАЖНО!.

Уважаемые модераторы! Если я разместил тему не в том месте, прошу простить! И ещё, если сочтёте нужным, тему можно закрепить! Уверен, поможет многим новичкам, и не только!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru