Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Visual C++ 9.0 и C++Builder 2007 - программы на голой винде (без .NET и тд) (http://forum.oszone.net/showthread.php?t=135316)

crashtuak 20-03-2009 19:51 1069639

Visual C++ 9.0 и C++Builder 2007 - программы на голой винде (без .NET и тд)
 
Ну начал учить С++. Работаю в висуал студио 2008 експрес едишн. Надо сделать прогу, чтоб работала на голой винде, без .NETа и прочего, ну тоесть надо чтоб прога работала даже на Т40 этапе установки Виндовс ХП. Как так можно сделать? Я слышал что такое возможно.

ПЫСЫ: Visual C++ 9.0 непонравился, качнул C++Builder 2007. Вопрос тот самый. Но C++Builder 2007 вместо .NETа требует уже кучу своей дребедени.

lxa85 20-03-2009 20:51 1069694

crashtuak, честно сказать не понял что именно требуется, но рискну предположить, что это консольное приложение.

Admiral 20-03-2009 22:10 1069784

crashtuak, такое возможно, если тип проекта Win32. Но есть одно но, по умолчанию Visual C++ 2005\2008 при линковании, компиляции добавляет в приложение зависимость на использования файлов из соответственного "Распространяемого пакета Microsoft Visual C++" (Microsoft Visual C++ Redistributable Package). Выход: искать настройки по отключению добавления данных зависимостей или использовать другую среду разработки.
Например, более раннюю (тоже бесплатную, но уже не поддерживаемую MS так что скачать поможет гугля, но без GUI оболочки) - Visua C++2003 ToolKit выдвинутое требование (запуск на Т40) данный компилятор удовлетворяет
Цитата:

Цитата hasherfrog
Q. Как компилить?
A. Я использую Visual C++ Toolkit. >>

Цитата:

Цитата Vadikan
На MSFN утилиту же протестировали на Т-39 (за 39 минут до окончания установки виндовс, самый ранний этап на котором пользователь может запускать исполняеме файлы) - все работает. >>

lxa85, в этой среде консольные приложения можно писать и используя .NET FrameWork.

crashtuak 21-03-2009 20:00 1070539

Admiral, есле бы я знал что таке "линкование" :) ...

Admiral 22-03-2009 03:50 1070779

crashtuak, на данном этапе изучения пускай это означает всего лишь один из шагов среды разработки по переводу из исходного кода в выполняемый бинарный.

crashtuak 22-03-2009 08:18 1070839

Admiral, кароч непонравился мне Visual C++, качнул C++Builder 2007 :) (каждому свое). Ну сделал пару меленьких прог, но в чистой винде неработают :( . Памаги :)

Drongo 22-03-2009 15:00 1071017

Цитата:

Цитата crashtuak
качнул C++Builder 2007 (каждому свое). Ну сделал пару меленьких прог, но в чистой винде неработают »

Я не знаю как в С++ Builder 2007, но в C++ Builder 6 можно прочесть в этой теме - С++Builder: создание ехе файла, возможно настройки не отличаются кардинально.

Требует вроде бы пять файлов

1. borlndmm.dll
2. cc3260mt.dll
3. stlpmt45.dll
4. rtl60.bpl
5. vcl60.bpl


Попробуй их найти и положить рядом к исполнимому файлу, который получился в результате компиляции. Если запустится, хорошо, нет, значит другие нужны.

crashtuak 23-03-2009 08:11 1071649

Цитата:

Цитата Drongo
Может действительно при запуске на другом компе требует *.bpl и *.dll'ки, так это отключается следующим образом:
Проэкт -> Опции -> Вкладка "Компилятор" -> Нажать на кнопку "Выпуск" -> Перейти на вкладку "Компоновщик" -> Убрать галку с пункта "Использовать динамический RTL" -> Перейти на вкладку "Пакеты" -> Снять там внизу галку с пункта "Создавать с пакетами во время компиляции". После таких "процедур", полученный ехе-файл лёгко выполняется на других машинах...
Ну, а если не это имелось в ввиду, то не знаю... Предыдущий человек прав... Добавить больше нечего...

Так работает, токо в с++ 2007 все на инглише и в настройках проекта нада менять:
- закладка packages: убрать галочку Build with runtimes packages
- закладка Linking > linker: убрать галочку Use dinamyc RTL
Взято тут:http://www.cyberforum.ru/cpp-builder/thread15180.html
ПЫСЫ: незнаю как прога скомпилена таким образом будет работать на Т39, у кого есть время и желание проверить, буду благодарный.

Drongo 28-08-2009 12:48 1205391

На всякий случай напишу, что нужно сделать чтобы скомпилированое приложение не требовало DLL при запуске для C++ Builder 2009.

1. Выбираем Project -> Options... или жмём комбинацию клавиш < Shift + Ctrl + 11 >
2. Слева выбираем пункт C++ Compiler и в правой части окна из списка Build Configuration выбираем Release.
3. Переходим в левое окно и выбираем пункт C++ Linker, после чего в правой части щёлкаем раскрывающуюся стрелку напротив пункта Dynamic RTL и в раскрывшейся структуре ставим значения False напротив обоих значений: Dynamic RTL и Value from *Base*
4. Переходим в левое окно и выбираем пункт Packages, после выбора в правой части снимаем галочку с пункта Build with runtimes packages.

Если немного запутано написал, можно сориентироваться по скриншотам.


.Земляк. 10-09-2009 22:25 1216117

попробуйте wxDev там вроде без NET и тд...


Время: 11:18.

Время: 11:18.
© OSzone.net 2001-