Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Package Wizard Добавлено: 12.01.04 22:56  

Автор вопроса:  LeZZvie | ICQ: 300785402 

Столкнулся с проблемой, когда контрол ActiveX не зареган на чужом компе. Как я понял, эту проблему решает Package Wizard, но нет ли более простого способа? Скажем, программа весит 50 Кб+WinSock или Inet Transfer, а при создании Setup.exe через Package Wizard вес становится 5Мб.

Возможно ли регистрировать компанент на ходу или другим способом сократить исходный вес Setup.exe. Ну и вообще, какие правила существуют при компиляции и создании Setup'a?

Или может быть есть более удобные Package Wizard'ы, нежели прилагаемые с VB 6.5?

Ответить

  Ответы Всего ответов: 22  

Номер ответа: 1
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #1
Добавлено: 13.01.04 00:41

Не юзай WinSock, юзай "Тягу" made by DaSharm. Юзай везде вместо контролов API и все будет хорошо. PW до того кривая вещь, что юзать ее нет смысла, хватает нормальных инсталляторов (CreateInstall, Wise, Nullsoft etc).

Ответить

Номер ответа: 2
Автор ответа:
 LeZZvie



ICQ: 300785402 

Вопросов: 2
Ответов: 9
 Профиль | | #2 Добавлено: 13.01.04 22:27

Спасибо! Насчет API ты прав - мне энто тоже очень нравится (просто иногда нужную функцию можно быстрее реализовать через OCX). Но вот как бороться с тем, что почти все проги, написанные на VB, не прут при отстутствии msvb60.dll или ей подобных?

Ответить

Номер ответа: 3
Автор ответа:
 LeZZvie



ICQ: 300785402 

Вопросов: 2
Ответов: 9
 Профиль | | #3 Добавлено: 13.01.04 22:28

Спасибо! Насчет API ты прав - мне энто тоже очень нравится (просто иногда нужную функцию можно быстрее реализовать через OCX). Но вот как бороться с тем, что почти все проги, написанные на VB, не прут при отстутствии msvb60.dll или ей подобных?

Ответить

Номер ответа: 4
Автор ответа:
 LeZZvie



ICQ: 300785402 

Вопросов: 2
Ответов: 9
 Профиль | | #4 Добавлено: 13.01.04 22:29

Спасибо! Насчет API ты прав - мне энто тоже очень нравится (просто иногда нужную функцию можно быстрее реализовать через OCX). Но вот как бороться с тем, что почти все проги, написанные на VB, не прут при отстутствии msvb60.dll или ей подобных?

Ответить

Номер ответа: 5
Автор ответа:
 LeZZvie



ICQ: 300785402 

Вопросов: 2
Ответов: 9
 Профиль | | #5 Добавлено: 13.01.04 22:31

Sorry за повторы. Инет шалит...

Ответить

Номер ответа: 6
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #6
Добавлено: 14.01.04 01:32
В первый раз слышу, чтобы НЕКОТОРЫЕ VB-проги шли без msvbvm60.dll. Может, поделишься секретами?

Ответить

Номер ответа: 7
Автор ответа:
 Volchonock



ICQ: 163879423 

Вопросов: 0
Ответов: 3
 Профиль | | #7 Добавлено: 14.01.04 15:38

Ребята, пожалуйста, если не лень, можно поподробней! Api это API Viewer? Как это вместо контролов юзать- создавать их програмно? (если я правильно понял -контролы это Command Button и т.д.?) И где замену этому гнусному PW, а то у меня его Setup'ы вобще не ставятся - Setup.LIST абсолютно кривой!

ПОЖАЛУЙСТА, ответьте ламеру хотя бы вкратце! Буду навек благодарен!

Ответить

Номер ответа: 8
Автор ответа:
 cresta



Вопросов: 117
Ответов: 1538
 Профиль | | #8 Добавлено: 14.01.04 16:32

To Sharp  Некоторые проги действительно работают без msvbvm60, и вообще без какого-либо сетапа. Я например, делал плеер, (в ХР) а он работал и в 98 и в Ме без Setup'a. Никаких проблем, тем более что msdxm.ocx есть в любой Винде. Просто принес на дискетке ехе файл и запустил. И всё.

То Volchonock  Контролы бывают стандартные для VB (те, которые ты видишь при запуске IDE,  в т.ч. и командная кнопка) и сторонние, подключаемые через правую мышь на панели Tools>Компоненты>Cotrols. Стандартные регистрировать на чужом компе не надо, а подключаемые надо. Так вот эти сторонние контролы(осх) в некоторых случаях можно создавать программно, функциями API, используя те или иные библиотеки Windows, при этом их не надо тащить с собой и регистрировать. Например, чтобы использовать в проге RichTextBox, надо подключить к проекту RICHTX32.ocx. Затем его нужно включать в Setup и регистрировать на чужом компе.  А можно создать RichTextBox программно, используя стандартную библиотеку Windows riched20.dll, которую не надо с собой тащить и регистрировать. RICHTX32.ocx весит ок.200 кБ, а если создать программно этот контрол, то прога увеличится в размерах на 10-15 кБ. Единственно, создавать сложнее, чем использовать готовый RICHTX32. Здесь на сайте есть пример создания RichTextBox'a программно, http://www.vbnet.ru/default.asp скачай да посмотри. А что касается PW, то необязательно использовать его для создания Setup, можно использовать другие инсталляторы CreateInstall, EazyInstaller, SetupGenerator, SGPro и т.п. Я использую SGPro. А PW использую чтобы посмотреть, какие компоненты он предлагает включить в Setup (см.в папке Package). И далее уже решаю, какие компоненты включать в Setup, создаваемый при помощи SGPro, а какие нет. Примерно так.  Setup.LIST  сколько не исправляй, все равно не будет нормально работать.

Ответить

Номер ответа: 9
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #9
Добавлено: 14.01.04 18:16
2cresta: Не надо, понимаешь ли, путать теплое с мягким. Если твоя VB-программа запустилась без установки msvbvm60.dll на другом компе, то это значит не больше и не меньше, что он там был, но никак не то, что программа его не требует.

Ответить

Номер ответа: 10
Автор ответа:
 cresta



Вопросов: 117
Ответов: 1538
 Профиль | | #10 Добавлено: 14.01.04 21:10

To Sharp:

Не поверишь, но я заглядывал в Windows\System\  и не было там msvbvm60.dll. Проверял на трех компах, где нет VB.  А вот msvbvm50.dll присутствовала, но она есть на всех Виндах от 98 и выше. Может поэтому работала программа, не знаю.

Ответить

Номер ответа: 11
Автор ответа:
 LeZZvie



ICQ: 300785402 

Вопросов: 2
Ответов: 9
 Профиль | | #11 Добавлено: 14.01.04 22:14

Re Sharp:

Может я ошибаюсь, но если прога содержит в себе лишь форму с какой-либо надписью, без контролов, то msvb60.dll не нужен... Во всяком случае, даже при запуске проги на 95-й винде (где её запуск в принципе сложноват), прога может не работать, но сообщение об ошибке будет выдаваться, причем то, которое ты пропишешь в Form_Load или Form_Activate... Хотя если брать все тот-же Win' 98 - некоторые версии содержат msvb60.dll, некоторые нет. Но большинство всё-же содержат. Есть ли смысл прикладывать к проге энту библиотеку? Ведь Win'95 щас почти никто не юзает, - во всяком случае не выходят через эту винду в инет...

Ответить

Номер ответа: 12
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #12
Добавлено: 14.01.04 22:21
Даже если прога содержит одну форму, она имеет вызовы __vbaFreeObj и т.п.
Поставлять msvbvm60.dll со своей прогой в Инете не имеет никакого смысла, хотя ссылку на мелкомягкий сайт давать все-таки желательно.
2cresta: может, плохо искал? Поищи по всему харду, наверняка найдешь.

Ответить

Номер ответа: 13
Автор ответа:
 LeZZvie



ICQ: 300785402 

Вопросов: 2
Ответов: 9
 Профиль | | #13 Добавлено: 14.01.04 22:38

Re Sharp:

Да, ты прав. Так оно и есть.
Ну а вообще, насколько большая вероятность того, что у юзера , будет более-менее нормальная винда, со всеми библиотечками и т.п.?
Просто если не ставить на винду софт типа Office, Adobe или еще что-то в этом духе, то и нечего надеяться, что VB-прога будет работать, ведь необходимые dll-шки юзвери не качают и их принадлежность им абсолютно до лампочки :)

Ответить

Номер ответа: 14
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #14
Добавлено: 15.01.04 00:10
Если юзеру не нужна твя прога, она ему не нужна ни с библиотекой, ни без библиотеки. Вероятность того, что у юзера нет библиотеки МЕНЬШЕ вероятности того, что он будет качать твою программу с библиотекой в одном архиве

Ответить

Номер ответа: 15
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #15
Добавлено: 15.01.04 01:30

Ну не будет програ на VB без MSVBVM60.DLL работать хоть ты тресни. Правда объявлялся тут один Hidden Warrior, обещавший золотые горы и воздушные замки. Но, видно не судьба.
А вообще для новичков могу дать более подробные разъяснения.
Существуют два типа программ - Интерпритаторы и Компиляторы.
Интерпритаторы бывают нескольких видов:
1. Программа работает только в среде разработки (к примеру VBA)
2. Интерпритатор вшивается в исполняемы файл (под Винду и не вспомню популярных)
3. Исполняемый файл, требующий интерпритатор в дополнительном модуле (VB6, VB.NET, VC6(контролы по выбору)).
Где "интерпритатор" является переименованной(если говорить грубо) средой разработки(см. 1)

Самым удобным из всего этого барахла считаю VBA из за широкой распространённости MS Office.

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам