Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / GUID и контроль над ним / 17 сообщений из 17, страница 1 из 1
17.12.2003, 10:43
    #32354850
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Я обновляю версию своей DLL , которая располагается в локальной сети предприятия для общего ипользования и я вынужден регистрировать ее на всех локальных раб местах, где стоят мои Vb приложения , ее использующие.
Как я понимаю , это необходимо из-за того, что новая версия DLL получает новый GUID , который еще не зарегестрирован на компах сети.Если бы было можно при создании новой версии DLL отставлять старый GUID, эта проблема была бы решена.
В связи с этим возникают вопросы :

1) Можно при создании DLL на Vb задать свой GUID ?
2) Как вообще формируется эта последовательность - почему она не пересекается с другой такой-же? Например при создании моей DLL Vb придумал каки-то образом GUID {320DFAEB-0131-4210-9BAA-911DAB93ABEE}, и что же я могу быть уверен, что такой нет во всем мире?
...
Рейтинг: 0 / 0
17.12.2003, 10:55
    #32354873
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Binary Compatibility поставь
...
Рейтинг: 0 / 0
17.12.2003, 11:34
    #32354965
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Так говорит, что :
Unable to set the version compatible component: '...моя DLL'
и что же делать ?
...
Рейтинг: 0 / 0
17.12.2003, 11:37
    #32354973
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Надо не "моя DLL", а "копия моей DLL в другом месте"
И не менять эту копию никогда (типа эталонной для VB будет)
...
Рейтинг: 0 / 0
17.12.2003, 11:50
    #32355008
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
не понял ...
...
Рейтинг: 0 / 0
17.12.2003, 11:54
    #32355016
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
т.е. '...моя DLL' это путь 'c:\MyApp\DLL\NyVb.dll'
правда прежде я создавал версии этой DLL и в других путях на этом компе и в сетевых путях тоже .
...
Рейтинг: 0 / 0
17.12.2003, 11:56
    #32355018
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
> и что же я могу быть уверен, что такой нет во всем мире?

типа да - можно быть уверенным. Правда ходят слухи, что при создании ГУИДа используеться множество составляющих, одна из которых MAC адрес сетевой платы (который так же уникален в мире, если, не одно "НО": если карточка не эмулируется программно (или типа того) - тогда возможно (но маловероятно) совпадение ГУИДов. Так же на форуме по сиквелу, как-то было сообщение одного чела, что у него ГУИД (формируемый функцией NewID) совпадал с ранее существующими - правда ему не поверили, воспроизвести ситуацию он не смог

Но я бы на твоем месте не заморачивался - если и совпадет, то с ГУИДом какой-нить dll китайского студента-программиста

Теория вероятности, млин :)

==
А если хошь - проверь: создай таблицу (лучше на сиквеле) - впихни в нее пару-тройку миллиардов гуидов - и отлавливай ошибку уникальности.
...
Рейтинг: 0 / 0
17.12.2003, 12:42
    #32355114
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
2 yuniki
не понял ...
Чего ты не понял? Как копию файла сделать? Ctrl-C - Ctrl-V

2 Сенин Виктор
Вот именно из-за MAC-адресов накладки и могут быть. Поддержка уникальности денех стоит, а Дядя Ляо денех жмет.
Да и вообще сетевухи может и не быть. Уже не помню что вместо нее тогда используется.
Но вероятность повторения действительно небольшая.
...
Рейтинг: 0 / 0
17.12.2003, 12:52
    #32355133
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
>Поддержка уникальности денех стоит

Я тут по мотивам прочитанной давеча книжки "Разработка защищенных приложений в VB" выложу (если не забуду и если кому-то будет интересно) функцию CryptoAPI, формирующая случайнное число (буквы) совсем по другому алгоритму (типа, более надежному), чем Rnd
...
Рейтинг: 0 / 0
17.12.2003, 13:12
    #32355182
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
2 Лох Позорный >
Чего ты не понял? Как копию файла сделать? Ctrl-C - Ctrl-V

Нет , все-таки, объяснить можно , что имеется ввиду (мне кажется , что никто не понял)?
Зачем делать какую-то копию? Ну скомпилю я ее в другое место и что ?

Я же говорю - не ставится в Project Properties binary compatibility ;
а сообщения я вообще не понимаю 'Unable to set the version compatible component:' - невозможно установить компонент с версионной совместимостью
Что это значит ?
...
Рейтинг: 0 / 0
17.12.2003, 13:17
    #32355198
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Ну скомпилю я ее в другое место и что ?
И ВСЕ
...
Рейтинг: 0 / 0
17.12.2003, 13:52
    #32355284
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
2 Лох Позорный >
Все Ok. Дело в том , что в окошке для имени файла в выше упомянутом Binary Compatibility стояло имя отсутствующего файла, а на это окошко я и вообще как-то не смотрел - быват ;).
Спасибо за намеки !
...
Рейтинг: 0 / 0
17.12.2003, 13:55
    #32355289
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Вообще-то я думал что ты пытаешься установить совместимость библиотеки с самой собой
Ну да ладно, все хорошо что хорошо кончается.
...
Рейтинг: 0 / 0
17.12.2003, 13:56
    #32355291
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
ну уж и вдогонку - не могу усечь , чем binary от project compatibility отличается ?
...
Рейтинг: 0 / 0
17.12.2003, 14:08
    #32355312
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
В случае binary - проверяется точное совпадение всех инnерфесов всех классов двух dll-ек
В случае project - то, что есть в одной (та, совместимость с которой проверяется), обязано присутствовать в другой (совместимость которой проверяется), обратное неверно (т.е. может быть добавлено еще что-то, класс какой-нибудь или дополнительный интерфейс например)
На пальцах примерно так (вроде бы)
...
Рейтинг: 0 / 0
17.12.2003, 14:58
    #32355437
yuniki
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Спасибо за разъяснения,
Кстати, насчет,'Вообще-то я думал что ты пытаешься установить совместимость библиотеки с самой собой' -
Это тоже нормально работает, Видимо, перед компиляцией вначале проверяется исходный DLL файл на на диске, затем он заменяется обновленным, с таким же GUID. Т.е. получается - не нужна никакая эталонная копия. Проверено после перекомпиляции по приложениям пользователей !
...
Рейтинг: 0 / 0
17.12.2003, 15:02
    #32355453
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GUID и контроль над ним
Это тоже нормально работает
???????????
Точно помню что не работает (не работало сколько-то лет назад в VB6)
Ничто не вечно..
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / GUID и контроль над ним / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]