Нарушил, 10 блоков,акка
72 / 72 / 11
Регистрация: 19.07.2013
Сообщений: 250
|
|
1 | |
Релиз программы23.07.2013, 21:08. Показов 3290. Ответов 10
Метки нет (Все метки)
Здравствуйте.
Возник такой вопрос. Так-как я совсем недавно стал изучать шарп, буквально месяц, мне стало интересно как делаются релизы программ? А то я всё в режиме дебага делаю.А нужна версия для пользователей. Я конечно могу тупо все ресурсы перетащить в папку release, но вот тут вопрос как компилятор на это реагирует? Есть ли разница в коде, и не мусорит ли он в режиме дебага, чего лишнего, для релиза?
0
|
23.07.2013, 21:08 | |
Ответы с готовыми решениями:
10
Вывод программы в релиз Релиз программы без зависимости от .NET Релиз приложения Код из System.Diagnostics тоже компилируется в релиз |
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,245
|
|
23.07.2013, 21:21 | 2 |
релиз версию можно сделать, выбрав в комбобоксе строку Release. Комбобокс этот находится рядом с кнопкой которая запускает программу, отладку
0
|
Нарушил, 10 блоков,акка
72 / 72 / 11
Регистрация: 19.07.2013
Сообщений: 250
|
|
23.07.2013, 21:38 [ТС] | 3 |
0
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|
23.07.2013, 21:56 | 4 |
Итори, версия и редакция студии какая? В экспресс версиях нельзя делать релизную версию.
Никак. Почему компилятор должен реагировать на какие-то левые файлы, которые находятся абы где? Разница в том, что в релизной версии сам код оптимизирован и нет отладочной информации. Через студию способ собирания изменяется в настройках решения. Без студии - ключами к компилятору csc.exe. Добавлено через 3 минуты Бывают еще забавные случаи, встречал в WPF, когда релизная версия работает, а отладочная нет.
0
|
Нарушил, 10 блоков,акка
72 / 72 / 11
Регистрация: 19.07.2013
Сообщений: 250
|
|
23.07.2013, 22:54 [ТС] | 5 |
Вы на вопрос не ответили Как работает компилятор
А комбобокса в стандарте у мну нет, VS2010 Добавлено через 56 секунд Ассемблерные выкладки, вот это да , а так будет плохо работать (( Добавлено через 6 минут Проблема вот где) Я на языке ассемблера говорю, вот у меня тут переменная , запиши в стек, я её потом получу, а вот тут другая, давай мне я вызову функцию. Буквально:;********* Установка начальных значений ***** ;----Установка работы АЦП---------- ;Разряды REFS1 и REFS0 регистра ADMUX установлены в 0 т.к к входу AREF подключен источник опорного напряжения. ;mux4..mux0 0000 0111 установлены на PA7 ldi tmp,7 out ADMUX,tmp ;0 В ADTSx для нерерывного преобразования clr tmp out SFIOR,tmp ;Запуск АЦП clr CN1 clr CN2 clr CN3 clr NUMBER clr COUN1 clr COUN2 clr COUN3 ldi Po,$10 ;-------------------------------------------- clr FlagR clr Mn1 clr Mn2 ;****** Вот это понятно, что делает шарп непонятно
0
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|
23.07.2013, 23:01 | 6 |
Такого вопроса не было. Ну ладно, отвечаю:
Компилятор транслирует исходный код на языке высокого уровня в аналог на низком, он же промежуточный код - IL. Компилятор - это такой себе сложный парсер + транслятор, а потому обработку исходного кода можно разбить на этапы: - Парсинг исходного кода (лексический, синтаксический, семантический анализ). - Оптимизация полученного результата. - Трансляция в IL.
1
|
Нарушил, 10 блоков,акка
72 / 72 / 11
Регистрация: 19.07.2013
Сообщений: 250
|
||||||
23.07.2013, 23:03 [ТС] | 7 | |||||
Вот простые операции:
0
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|
23.07.2013, 23:04 | 8 |
Если что-то непонятно, говорят соответствующий учебник помогает.
В чем суть вопроса? Добавлено через 1 минуту Компилятор производит байт-код (он же промежуточный код), а не машинный код, который выполняет виртуальная машина, а не процессор.
0
|
Нарушил, 10 блоков,акка
72 / 72 / 11
Регистрация: 19.07.2013
Сообщений: 250
|
|
23.07.2013, 23:09 [ТС] | 9 |
Что на выходе то? по поводу то что он транслирует в язык .net, я читал, дальше что примеры, и что он делает.
Главный вопрос, есть ли разница? Что компилятор делает? Добавлено через 3 минуты Ну где вскрытия-то? Я знаю как работает 16 разрядный асм , он простой очень , там всё понятно как оно работает?))Шарп как работает , какие машинные коды он отдает? может лишнего много ?
0
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|
23.07.2013, 23:12 | 10 |
Я ведь могу бесконечное число раз повторять, что на выходе IL (Intermediate Language).
"Разница в том, что в релизной версии сам код оптимизирован и нет отладочной информации.". Что там IL, что здесь IL. Компилятор IL делает. И хватит сюда со своим ассемблером лезть. Дальше IL ничего нет. В exe-файле хранится IL. Виртуальная машина хавает этот IL и преобразовывает на лету IL-инструкции в инструкции машинного кода. (JIT)
0
|
Нарушил, 10 блоков,акка
72 / 72 / 11
Регистрация: 19.07.2013
Сообщений: 250
|
|
24.07.2013, 09:27 [ТС] | 11 |
Эхъ,раньше проще было, что так делает компилятор,одному богу известно...
Ну ладно ответ на вопрос я получил
0
|
24.07.2013, 09:27 | |
24.07.2013, 09:27 | |
Помогаю со студенческими работами здесь
11
Включение файлов (картинок) с абсолютным путем в распространяемый релиз Непонятная работа релиз сборки как правильно собрать релиз? Как склеить все файлы при компиляции (релиз)? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |