Версия программы build что это
Группа: Модератор
Сообщений: 874
Группа: Участник
Сообщений: 5
Группа: Модератор
Сообщений: 110
Группа: Модератор
Сообщений: 550
НЕ работает — понятие растяжимое
Что конкретно не работает, как это проявляется?
Группа: Модератор
Сообщений: 110
А он кричит:
Improper use of typedef ‘AnsiString’ -> показывает на строку AnsiString GetProgramVersion(void)
Statement missing ; -> сюда же
Группа: Модератор
Сообщений: 550
Все правильно. Ругается, будет ругаться и ДОЛЖНА РУГАТЬСЯ.
В том варианте что привел Георгий это ФУНКЦИЯ.
ЧТО ОНА ДЕЛАЕТ ВНУТРИ конструктора формы.
Группа: Модератор
Сообщений: 110
Группа: Модератор
Сообщений: 874
Dmitri
значит что-то не то скопировали.
офирмил как отдельный файл.
инструкции по использованию:
1. Project->add to project — выбираем файл GetProgramVersion.cpp
2. жмём File->Include unit hdr и выбирает GetProgramVersion
3. вызываем
CODE |
Application->MessageBox(GetProgramVersion().c_str(),»Как бы версия программы»,MB_OK); |
Скачать файл |
GetProgramVersion.rar |
Группа: Модератор
Сообщений: 110
Группа: Модератор
Сообщений: 874
т.н. «версия» — это полная версия — версия программы.ревизия.релиз.сборка — у меня моя же функция пишет 1.7.22.168
Группа: Модератор
Сообщений: 110
Группа: Администратор
Сообщений: 1190
А у меня в C++Builder6 это называется
Include version information in Project
Группа: Модератор
Сообщений: 110
OK, последняя цифра в версии 1.0.0.0 меняется, когда я нажимаю Build, но затем нужно заходить в Project -> Options, иначе эта цифра не обновится При этом затем я все равно компилирую проект, т.к. exe запустить надо же. Как-то криво получается
Группа: Модератор
Сообщений: 874
остальные меняются руками причём действует такое правило:
первым пишется версия програмного пакета частью которого является эта программа
2-м пишется ревизия — изменется на +1 при наличии средних изменений и на +5 при существенных изменениях (но только для тех, которые не изменяют № версии)
3-м пишется число т.н. выпусков программы — это когда процесс исправления ошибок и/или добавления новых функций завершён и есть работоспособная версия программы
4-м — № сборки — фактически единственный линейный параметр — означает число полных перекомпиляций проекта, которые были выполнены из-за изменений исходных текстов.
как видно значения параметров с 1 по 3-й определается на более высоком уровне абстракций, чем те, на которых работает BCB и поэтому это приходится изменять руками.
возможно некоторые WorkFlow позволяют автоматизировать этот процесс, но я о таких не слышал.
Группа: Модератор
Сообщений: 110
Источник: rxlib.ru
Нумерация версий программного обеспечения
Известно достаточно много разработчиков, которые не могут понять как же нумеруются версии.
Иногда нужно просто сесть и разобраться, конечно в сети есть куча информации, но иногда ее слишком много, а где-то наоборот. Хочу поделиться как обстоят дела с нумерацией программного обеспечения, манера изложения понятна и доступна даже простому пользователю, которому так же не плохо знать, что же обозначают эти странные циферки после названия программы.
Формат номера версии
Формат номера версии A.B.C.D[r], где:
- A – главный номер версии (major version number).
- B – вспомогательный номер версии (minor version number).
- C – номер сборки, номер логической итерации по работе над функционалом версии A.B (build number).
- D – Номер ревизии, сквозной номер назначаемый автоматически программным обеспечением хранения версий (SVN). Номер ревизии SVN должен синхронизироваться с номером ревизии в AssemblyInfo при каждой сборке релиза (revision number).
- [r] – условное обозначение релиза.
A.B
Совокупность главного и вспомогательного номеров версии (A.B) дают информацию о функционале приложения. Главный номер версии увеличивается только при очень серьёзном изменении функционала. Пользователи, купившие продукт и оплатившие техническую поддержку получают новые версии только в рамках постоянного главного номера версии, соответственно при выпуске новой главной версии пользователи не смогут получить её в рамках технической поддержки и будут вынуждены оплачивать её покупку заново.
C
Номер сборки (билда) (С) должен увеличиваться (зачастую) руководителем проекта по разработке всякий раз, когда продукт передаётся на тестирование.
D
Номер ревизии (D) увеличивается системой контроля версий (SVN) автоматически при работе с ней. Задача руководите проекта по разработке синхронизировать номер ревизии, генерируемый SVN, с номером указанным в AssemblyInfo в модулях проекта. Выполнять эту операцию нужно одновременно с увеличением номера билда (С).
[r]
Обозначение релиза соответствует этапу работы над проектом в рамках жизненного разработки. Выделяют следующие релизы:
• Pre-alpha (pa) – соответствует этапу начала работ над версией. Характеризуется большими изменениями в функционале и большим количеством ошибок. Pre-alpha релизы не покидают отдела разработки ПО.
• Alpha(a) – соответствует этапу завершения разработки нового функционала. Начиная с alpha версии новый функционал не разрабатывается, а все заявки на новый функционал уходят в план работ по следующей версии. Этап характеризуется высокой активностью по тестированию внутри подразделения разработки ПО и устранению ошибок.
• Beta (b) – соответствует этапу публичного тестирования. Это первый релиз, который выходит за пределы отдела разработки ПО. На этом этапе принимаются замечания от пользователей по интерфейсу продукта и прочим найденным пользователями ошибкам и неточностям.
• Release Candidate (rc) – весь функционал реализован и полностью оттестирован, все найденные на предыдущих этапах ошибки исправлены. На этом этапе могут вноситься изменения в документацию и конфигурации продукта.
• Release to manufacturing или Release to marketing (rtm) – служит для индикации того, что ПО соответствует всем требованиям качества, и готово для массового распространения. RTM не определяет способа доставки релиза (сеть или носитель) и служит лишь для индикации того, что качество достаточно для массового распространения.
• General availability (ga) – финальный релиз, соответствующий завершению всех работ по коммерциализации продукта, продукт полностью готов к продажам через веб или на физических носителях.
• End of life (eol) – работы по развитию и поддержке продукта завершены.
В скобках указаны сокращения, используемые для формирования номера релиза. Если в номере не указано ни одного сокращения, то считается что это релиз General availability (ga).
Помимо сокращённого обозначения в наименовании версии обозначение релиза должно указываться в исходных файлах проекта через атрибут:
[AssemblyConfiguration]
В случае большого количества проектов в решении рекомендуется использовать один файл GlobalAssemblyInfo.cs (или GlobalAssemblyInfo.vb) с указанием ссылки на него во всех проектах решения и именно в нём проставлять вид релиза.
Пример С#:
using System.Reflection; [assembly: AssemblyConfiguration(«Beta»)]
Источник: it-enginer.ru
Build, или как разобраться в версиях программы
привет, пишу программу когда вношу изменения в код новый создаю, в итоге десятки файлов, в каких то впедыдущая лучше последующей, как лучше разбираться в этой куче файлов, как их именовать и как пользоваться билдами версии программы?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
Лучшие ответы ( 2 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Как работают VB программы на старых версиях Windows?
Я слышал, что на Windows 95 и 98 программы созданные в Visual Basic просто не работают, а требуют.
Как узнать build программы
Приветствую всех. В настройках Project->Options->Version info есть возможность настроить.
Win 8.1 build 9600 распознаётся как Windows 8 build 9200
Проблема с версией. Win 8.1 build 9600 распознаётся как Windows 8 build 9200 . Проверил ток что .
Поясните о версиях программы
Ребята поясните пожалуйсто как происходит автоматическая смена нумерации версий программы, если я.
1386 / 1016 / 323
Регистрация: 28.07.2012
Сообщений: 2,804
Сообщение было отмечено gru74ik как решение
Решение
в итоге десятки файлов, в каких то впедыдущая лучше последующей
Пользуйся репозиторием для контроля версий, например GitHub.
Регистрация: 25.04.2013
Сообщений: 195
Пользуйся репозиторием для контроля версий, например GitHub.
так я буржуйского языка не понимать, мне б по русски
Ушел с форума
16453 / 7417 / 1186
Регистрация: 02.05.2013
Сообщений: 11,617
Записей в блоге: 1
Сообщение было отмечено gru74ik как решение
Решение
пишу программу когда вношу изменения в код новый создаю, в итоге десятки файлов, в каких то впедыдущая лучше последующей, как лучше разбираться в этой куче файлов, как их именовать и как пользоваться билдами версии программы?
Для начала открой для себя системы управления версиями — Git, Mercurial, Subversion и т.д.
Для новичка, наверное, стоит попробовать Subversion, она по своей концепции самая простая.
Системы контроля версий позволяют, при условии соблюдения определенной «гигиены»,
превратить весь этот бардак в стройную систему и заставить ее подчиняться определенным
правилам разработки.
5090 / 2275 / 332
Регистрация: 20.02.2013
Сообщений: 5,598
Записей в блоге: 19
kuza84, всё по-русски: раз и два.
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
всё по-русски: раз и два.
Главное по сылкам не тыкать :rofl:
ТС у учите язык, без него не куда, потому что большинство мануалов на англиском
Регистрация: 25.04.2013
Сообщений: 195
ТС у учите язык, без него не куда, потому что большинство мануалов на англиском
эту мантру слышу в 100500 раз из-за этого поклал хреном на сертификаты от Макрософта, ну немецкий я в школе учил и учить английский времени нет
Добавлено через 21 секунду
что такое ТС
1386 / 1016 / 323
Регистрация: 28.07.2012
Сообщений: 2,804
что такое ТС
Транслит с латинского на кириллицу абревиатуры topic starter.
Короче, ТС — это обращение к тому, кто создал данную тему.
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
kuza84, тут вопрос не времени а желания, у меня коллега вообще французский учил в школе (другая группа языков) 4 часа в неделю с репетитором и говорит за год вполне не плохо
5090 / 2275 / 332
Регистрация: 20.02.2013
Сообщений: 5,598
Записей в блоге: 19
kuza84, я тоже немецкий в школе учил. И что?
Хочешь быть хорошим программистом, учи английский. Тут без вариантов.
я тоже немецкий в школе учил. И что?
а я учил английский в школе. только вот не выучил :rofl: я нуб
Меню пользователя Croessmah |
Читать блог |
1378 / 405 / 144
Регистрация: 22.10.2014
Сообщений: 872
Бонусный вопрос знатокам гита.
В гите есть стабильный способ получить номер коммита, как в свн’е?
т.е. инкрементирующийся int хеш не предлагать.
Ибо из-за автоматической билд версии я всё ни как на гит не перелезу, а-то свн нынче не в почёте, пацаны засмеивают
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
В гите есть стабильный способ получить номер коммита, как в свн’е?
т.е. инкрементирующийся int
Тэги + git describe.
Регистрация: 25.04.2013
Сообщений: 195
Хочешь быть хорошим программистом, учи английский. Тут без вариантов.
да чем мне кажется что программисты копейки получают, по крайней мере софт, который клепают для всяких контор типа БТИ казначейства, Медстрахования, Соц. защита и т.д. сильно баговатый и кривые программисты у них видимо денег платят мало и программисты криворукие если эксплуатировать их софт обычный бухгалтер не может без эникейщика.
Добавлено через 2 минуты
помню как бухгалтер просил допилить расчет зарплаты, формулы допилить, а импорт электронных выписок Казначейства вообще мрак был особенно настройки, но были хорошие программисты сами софт допиливали на который Миллионы выделяют с откатами. такие дела.
Источник: www.cyberforum.ru
Build в телефоне: что это такое
Система Android имеет один текстовый файл с именем «build.prop» , который определяет множество различных параметров всей системы на гаджете.
Для редактирования этого файла необходим доступ с правами суперпользователя, поскольку он хранится в системном разделе, но различные строки кода, которые он содержит, на самом деле легко интерпретировать и изменять. Это будет работать, если у вас есть рутированный (с наличием рут-прав) Android. Каждый человек может сделать редактирование.
Но во время внесения изменений вы должны убедиться, что вы делаете правильное редактирование, иначе это приведет к тому, что ваш телефон станет неработоспособным кирпичом.
Android является системой с открытым исходным кодом, поэтому есть много специфических для него правок, которые вы можете внести в свой «build.prop», чтобы изменить внешний вид и поведение операционной системы, но с широким спектром Android там было бы невозможно перечислить все. В статье будут перечислены некоторые универсальные правки «build.prop», которые по-прежнему содержат множество полезных настроек, и которые должны работать практически на любом Android.
Предположим, вы используете устройство Android. И, к сожалению, на этом нем навигационной панели. Предположим, вы уронили его и теперь кнопки навигации не работают. С помощью «build.prop» вы можете легко добавить стильную панель навигации непосредственно на экран вашего гаджета.
Также редактированием этого файла можно изменить коренные настройки гаджета, улучшив некоторые его параметры, такие как: скорость интернета, экономию энергии, общую производительность, отключение отчета об ошибках, улучшение качества видео или аудиозаписи, изменение разрешения экрана, добавление панелей навигации и многое другое.
Редактируемые параметры легко можно найти в интернете по запросу «build.prop коды» или «build.prop твики»
Как отредактировать файл build.prop
После загрузки приложения «Root Explorer» на свое устройство, нажмите «Установить» и откройте это приложение.
Перейдите в «/system/folder», и вы увидите там «Some Files https://list-name.ru/phone/build.html» target=»_blank»]list-name.ru[/mask_link]
Следи за проектом: номер версии и билда в Visual Studio
Всем хорош Visual Studio (хоть и не все так думают), но порядка в нем нет. Нет порядка с номерами версий и билдов, вот и изгаляются несчастные программисты создавая папки типа 08_02_2004_12_47_56 или смотрят напрягая натруженные глаза на дату создания файла. А ведь иногда хочется, чтобы и в заголовке окна любимой программы было написано V2.0 Build 2600 SP2 или что-то типа того.
В этой статье я расскажу как это сделать. Мой способ не претендует на рулезность, но работает и я им давно пользуюсь.
Мы используем возможность сборщика Visual Studio выполнять так называемый Pre-Build step. Обычно такие вещи используются для регистрации COM компонентов, но мы вдохнем в него новую жизнь.
Идея такая: будем в тех местах, где нам нужен номер версии или билда, использовать макросы, определенные в специальном заголовочном файле, а этот файл у нас будет генерировать/обновлять специальная прога, которую мы сейчас напишем.
Итак, создаем новый проект, Win32 console project под названием version, ставим поддержку для ATL и MFC и редактируем файл чтобы получилось что-то типа (если не в лом, прочитайте комментарии – сразу все ясно станет):
#include «stdafx.h»
#include «version.h»
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// The one and only application object
using namespace std;
// Функция печатает синтаксис командной строки
void Usage()
// Первый параметр — имя файла заголовка
// Потом — название приложения
// Номер версии (по умолчанию — 1.0.0.1)
std::cout Если программе передано неверное количество параметров, показать синтаксис и выйти
if ((argc 4))
Usage();
return -1;
>
// Определить наличие файла заголовка
HANDLE hFile=CreateFile(argv[1],GENERIC_READ, 0,NULL, OPEN_EXISTING,0, NULL);
if (hFile==INVALID_HANDLE_VALUE)
// Файла нет, создать новый
CFile file(argv[1], CFile::modeWrite|CFile::modeCreate);
CArchive arOut(
// Добавить макрос APPNAME
CString sFormat;
sFormat.Format(«#define APPNAME «%s»rn»,argv[2]);
arOut.WriteString(sFormat);
// Добавить макрос VERSION
// Если не указан номер версии
if (argc==3)
// Использовать версию по умолчанию
sFormat.Format(«#define VERSION «%s»rn»,»1.0.0.1″);
else
// Использовать указанную версию
sFormat.Format(«#define VERSION «%s»rn»,argv[3]);
arOut.WriteString(sFormat);
// добавить макрос BUILD
sFormat.Format(«#define BUILD «%d»rn»,1);
arOut.WriteString(sFormat);
// Добавить макрос TIME
CTime time=CTime::GetCurrentTime();
sFormat.Format(«#define TIME «%02d.%02d.%4d %02d:%02d:%02d»»,
time.GetDay(),time.GetMonth(), time.GetYear(),time.GetHour(), time.GetMinute(),time.GetSecond());
arOut.WriteString(sFormat);
// Закрыть файл
arOut.Close();
file.Close();
>
else
// Файл существует
// Прочитать и разобрать его
CloseHandle(hFile);
CFile fileIn(argv[1],CFile::modeRead);
CArchive arIn(
CString sLine;
// Разобрать макрос APPNAME
arIn.ReadString(sLine);
int i=0;
sLine.Tokenize(«»»,i);
CString sAppName=sLine.Tokenize(«»»,i);
// Разобрать макрос VERSION
arIn.ReadString(sLine);
i=0;
sLine.Tokenize(«»»,i);
int nVersion1=atoi(sLine.Tokenize(«.»,i));
int nVersion2=atoi(sLine.Tokenize(«.»,i));
int nVersion3=atoi(sLine.Tokenize(«.»,i));
int nVersion4=atoi(sLine.Tokenize(«»»,i));
// Разобрать макрос BUILD
arIn.ReadString(sLine);
i=0;
sLine.Tokenize(«»»,i);
int nBuild=atoi(sLine.Tokenize(«»»,i));
// Теперь обработка — увеличим номер билда
// И младший номер версии
nVersion4++;
nBuild++;
// Переоткроем файл на запись
arIn.Close();
fileIn.Close();
// И запишем то, что получилось в результате
CFile file(argv[1], CFile::modeWrite|CFile::modeCreate);
CArchive arOut(
CString sFormat;
// Макрос APPNAME
sFormat.Format(«#define APPNAME «%s»rn»,argv[2]);
arOut.WriteString(sFormat);
// Макрос VERSION
sFormat.Format(«#define VERSION «%d.%d.%d.%d»rn»,
nVersion1, nVersion2, nVersion3, nVersion4);
arOut.WriteString(sFormat);
// Макрос BUILD
sFormat.Format(«#define BUILD «%d»rn»,nBuild);
arOut.WriteString(sFormat);
// Макрос TIME
CTime time=CTime::GetCurrentTime();
sFormat.Format(«#define TIME «%02d.%02d.%4d %02d:%02d:%02d»»,time.GetDay(),
time.GetMonth(),time.GetYear(), time.GetHour(),time.GetMinute(),
time.GetSecond());
arOut.WriteString(sFormat);
// Закроем файл
arOut.Close();
file.Close();
>
>
Компилируем, полученный файл version.exe (9728 байт у меня) кладем в папку с бинарниками Visual Studio (у меня C:Program FilesMicrosoft Visual Studio.NET
2003Vc7bin). Теперь посмотрим как использовать эту вещь. Создаем новый проект, к примеру под названием test, Console application, поддержку ATL и MFC не надо. VS генерит файл типа
int _tmain(int argc, _TCHAR* argv[])
return 0;
>
Подписываем под stdafx.h что-то типа #include “versioninfo.h” и в свойствах проекта Build Events/Pre-Build Event/Command Line пишем version versioninfo.h Megacooltest. Теперь в теле функции _tmain пишем что-то типа
std::cout #include «stdafx.h»
#include «versioninfo.h»
int _tmain(int argc, _TCHAR* argv[])
std::cout
D:andrewProjectstest1Debug>test1
Megacooltest Version 1.0.0.1 Build 1 compiled 07.09.2004 14:08:53
А теперь компилируем еще раз и опять запускаем, только выберем Rebuild solution, иначе VS подумает, что раз ничего не изменилось, то и делать ничего не надо:
D:andrewProjectstest1Debug>test1
Megacooltest Version 1.0.0.2 Build 2 compiled 07.09.2004 14:10:29
Вуаля! Теперь заказчик будет видеть сколько раз вы компилировали несчастную прогу пока добились результата. А еще он увидит во сколько времени несчастный программист
этого добился. Если надо сбросить номер билда, то просто сотрите файл versioninfo.h и он будет создан заново с номером билда 1. Или измените в файле versioninfo.h номер билда, и нумерация пойдет дальше с этого номера.
Источник: xakep.ru