![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Dimix |
![]()
Сообщение
#1
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Помогите в решении проблемы. Необходимо если есть новая версия программы предложить пользователю скачать ее.
Моя логика мышления такова необходимо задать url для новой версии программы и проверять его на существование. Но при проверке на валидность любой url распознается как валидный. Как быть в этом случае? Проблемма с rand(); Раскрывающийся текст int x; x=rand();//x = 41 |
|
|
![]() |
maint |
![]()
Сообщение
#2
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
Помогите в решении проблемы. Необходимо если есть новая версия программы предложить пользователю скачать ее. Моя логика мышления такова необходимо задать url для новой версии программы и проверять его на существование. Но при проверке на валидность любой url распознается как валидный. Как быть в этом случае? Проблемма с rand(); Раскрывающийся текст int x; x=rand();//x = 41 перед использованием rand необходимо сделать его инициализацию функцией srand(число). Число берется от чего угодно, миллисекунды, UID винта, темпиратура на Марсе в конце концов ![]() Теперь о версии.Мой знакомый делал проверку не на существование программы, а текстового файлика, где указанна новая версия. Файлик забирается и версия из скольки то цифр сверяется с текущей версией. Там же можно указать список URL откуда можно на сегодняшний день вытащить новую версию программы. Т.о нет привязки к одному серверу. Сообщение отредактировал maint - 16.1.2011, 15:02 |
|
|
Litkevich Yuriy |
![]()
Сообщение
#3
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Мой знакомый делал проверку не на существование программы, а текстового файлика, где указанна новая версия. Файлик забирается и версия из скольки то цифр сверяется с текущей версией. Там же можно указать список URL откуда можно на сегодняшний день вытащить новую версию программы. Т.о нет привязки к одному серверу. многие программы используют такой подход. И часто используют XML-файлы на сервере.
|
|
|
Dimix |
![]()
Сообщение
#4
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
DEADHUNT |
![]()
Сообщение
#5
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 430 Регистрация: 15.4.2009 Пользователь №: 686 Спасибо сказали: 26 раз(а) Репутация: ![]() ![]() ![]() |
можно сервер поднять на хостинге и из проги общаться с ним через сокеты.
А почему я делаю int x=rand(); и оно у меня получает только 41 всегда одно и тоже раньше так делал работало. В чем причина? тебе же уже выше написали, ответы не читаешь?
|
|
|
Dimix |
![]()
Сообщение
#6
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
DEADHUNT |
![]()
Сообщение
#7
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 430 Регистрация: 15.4.2009 Пользователь №: 686 Спасибо сказали: 26 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#8
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Dimix |
![]()
Сообщение
#9
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
configure -static а ты смысл этих команд можешь объяснить? И какой результат ты ожидаешь от них?configure -shared http://cyast-cat.blogspot.com/2009/03/qt-windows.html вот сдесь я это увидел. |
|
|
Litkevich Yuriy |
![]()
Сообщение
#10
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
мне не интересно знать где ты это увидел. Ответь на два моих вопроса, неужели это так сложно?
|
|
|
Dimix |
![]()
Сообщение
#11
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Убедится, что Qt собрано статически.
Вернуть в динамическую сборку. Соберет Qt статически, библиотеки будут без номера версии. |
|
|
Litkevich Yuriy |
![]()
Сообщение
#12
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Dimix |
![]()
Сообщение
#13
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Dimix |
![]()
Сообщение
#14
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Вот таким образом сделал проверку новой версии! По поводу rand(); убрал его совсем просто описываю переменную типа int x; и после присвоения кому либо "x" получаю случайное число. Всем спасибо! |
|
|
Rocky |
![]()
Сообщение
#15
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Dimix |
![]()
Сообщение
#16
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата Вот по такому принципу? Если честно сам непойму что случилось до нового года делал так и все работало
Сейчас реализовал так Может быть реализация и очень даже смехотворная но оно работает без багов. |
|
|
maint |
![]()
Сообщение
#17
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
Цитата Вот по такому принципу? Если честно сам непойму что случилось до нового года делал так и все работало
Сейчас реализовал так Может быть реализация и очень даже смехотворная но оно работает без багов.чудовищная реализация. Все же повторю, ПЕРЕД ИСПОЛЬЗОВАНИЕМ ФУНКЦИИ rand, нужно сделать
или
Лучше это сделать один раз в головной программе. Тогда будет действительно псевдо-случайная последовательность.Тогда rand будет выдавать действительно псевдослучайное число. А мусор может привести к редкостной и длинной последовательности нулей, скажем. Это наиболее частый случай Сообщение отредактировал maint - 22.1.2011, 7:49 |
|
|
Dimix |
![]()
Сообщение
#18
|
![]() Студент ![]() Группа: Участник Сообщений: 74 Регистрация: 24.11.2010 Пользователь №: 2215 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Вот таким образом тоже работает maint с использованием srand(getpid()); //pine=31;
|
|
|
maint |
![]()
Сообщение
#19
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
Вот таким образом тоже работает maint с использованием srand(getpid()); //pine=31;Не понял мысли, но функция srand используется ТОЛЬКО ОДИН раз в программе. Это инициализация генератора псевдослучайных чисел. Это если все время выдается одно и то же число |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 5.5.2025, 12:06 |