Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Instalátor vs. problém s registrací souborů u Windows Vista

Vytvářím si instalátor s instalačním menu několika freeware programů a narazil jsem na problém u OS Vista. Jde o to, že je potřeba po nakopírování několika systémových souborů do adresáře system32 ještě provést údajně jejich ruční registraci příkazem
regsvr32 C:\Windows\System32\COMDLG32.OCX
regsvr32 C:\Windows\System32\MSCOMCTL.OCX

Tohle požaduje totiž pouze Vista, u starších Win tohle není potřeba.

S Vistou nemám tady v tom osobní zkušenosti, protože tenhle OS nepoužívám, ale mám pocit, že pokud uživatel nebude mít admin práva se registrace stejně neuskuteční, nebo se pletu? Freeware instalátor Install Creator, který dokáže tyto soubory do systémového adresáře system32 nakopírovat to provádí pod admin. právy, ale jak pořešit i tu registraci souborů, to netuším, protože starší verze Windows tohle nepožadují. Netuší někdo jak by se to dalo vyřešit? Nestačil by i u Visty na to třeba nějaký baťák?

Předmět Autor Datum
Vista je šmejd.. to se ví všeobecně :-) radši používej fakt ty XPčka.. bohužel ale neporadim :-)
rychlik91 11.07.2009 00:05
rychlik91
Osobně mám sice XP, ale potřebuji aby tohle šlapalo i na Vistě, protože je dost lidí, co jej mají a…
Craft 11.07.2009 00:13
Craft
odbornik prehovoril...
mkmt 11.07.2009 02:05
mkmt
píšu snad jako odborník?! aspoň přiznám že nevim o čem je řeč.. 8-)
rychlik91 11.07.2009 02:22
rychlik91
Ale to, že je Vista šmejd, a on má používat XP mu nepmůže, když to potřebuje i pro jiný lidi ...
Gazzy 11.07.2009 14:14
Gazzy
smejd mas ty v hlave. kvoli tomu ze si neschopny s vistami pracovat a oprostit sa od 5r starych navy…
shiro 11.07.2009 07:49
shiro
Nač něco dělat jednoduše, když to jde složitě, viz. Vista ;-) Tak si to tak neber :-D
Craft 11.07.2009 10:45
Craft
shiro, za 3 měsíce sem musel vistu 4x přeistalovat, jednou dokonce 10 minut po čerstvý reistalaci..… poslední
rychlik91 11.07.2009 15:19
rychlik91
A ještě tu o Karkulce...:))
shark.jd 11.07.2009 13:00
shark.jd
Tento thread není flame Vista vs. Windows old, díky za pochopení ;-)
Craft 11.07.2009 13:08
Craft
Pravda, omlouvám se.
shark.jd 11.07.2009 13:30
shark.jd
OCX je ActiveX control a registracia je samozreme potrebna, na takuto operaciu samozrejme potrebujes…
mkmt 11.07.2009 02:04
mkmt
Bohužel tvůrce jednoho z free programu, které budou součástí toho instalátoru toto jaksi opomněl a j…
Craft 11.07.2009 02:44
Craft
OCX sa musia vzdy registrovat, ak si to na XP nemusel robit, znamena to ze uz boli niekde zaregistro…
mkmt 11.07.2009 10:15
mkmt
teraz sa divam a tieto subory podla http://msdn.microsoft.com/en-us/vbrun/ms788708.asp x nie su dist…
mkmt 11.07.2009 11:20
mkmt
Tady trochu nesouhlasím s tou nutnou registrací u XP. Je sice pravdou, že některé soubory už mé XP o…
Craft 11.07.2009 11:45
Craft
Tady trochu nesouhlasím s tou nutnou registrací u XP programy robene pomocou COM technologie sa reg…
mkmt 11.07.2009 12:02
mkmt
Tak jsem se díval, jak je to s registrací u starších Win a zjistil jsem, že tam se ta registrace děl…
Craft 11.07.2009 12:05
Craft
Takže předpokládám, že takhle by to mohlo postačovat, viz. install_creator.png
Craft 11.07.2009 12:16
Craft
to je OK
mkmt 11.07.2009 12:19
mkmt
že tam se ta registrace dělá údajně automaticky při nakopírování souborů do systémového adresáře sys…
mkmt 11.07.2009 12:18
mkmt
U Vist ano, ale právě, že u starších Win ta ruční registrace odpadá. Jak mi potom ale vysvětlíš, že…
Craft 11.07.2009 12:27
Craft
pretoze s najvacsou pravdepodobnostou uz boli zaregistrovane v inom adresari, prave registraciou sa…
mkmt 11.07.2009 12:36
mkmt
To by mohlo vysvětlovat :-) Ten program se nemusí instalovat, je to spustitelný exe ze složky, odka…
Craft 11.07.2009 12:46
Craft
odskusane na cistych systemoch XP SP3 a Vista SP1 Visual Basic 6.0 run-time, je sucastou systemu, ne…
mkmt 11.07.2009 13:27
mkmt
Tomu říkám rychlost otestování :-) Takže na všech starších Windows je instalace VBRun-Time 6.0 teda…
Craft 11.07.2009 13:45
Craft
Takže na všech starších Windows je instalace VBRun-Time 6.0 teda potřeba, XPSP2 nevyjímaje, chápu to…
mkmt 11.07.2009 14:04
mkmt
Tak si tak říkám, že to asi bude nejrozumnější udělat takto: Windows 95, 98, 98SE, ME, NT: Nainstal…
Craft 11.07.2009 14:14
Craft
to bude OK, len Me mozes presunut do druhej skupiny, tam je tiez built-in podpora
mkmt 11.07.2009 14:18
mkmt
Super, konečně to bude bez problémů chodit i na Vistě a mám v tom konečně jasno :-) Díky moc mkmt z…
Craft 11.07.2009 14:41
Craft

shiro, za 3 měsíce sem musel vistu 4x přeistalovat, jednou dokonce 10 minut po čerstvý reistalaci.. pří instalaci jednoho prográmku naskočila modrá smrt a už sem to nerozběhal..
40% programů a her co mi tam něšlo, ani s nastavením podpory pro starší OS.. naštěstí programy se mi povedlo nahradit jinými..
Je teda fakt že za ty 3 měsíce sem měl jenom jeden vir, co mam XP, (taky cca 3 měsíce) sem měl už dva..

a spousta lidí co mají vistu se vrací na XP, to snad ví každej.. sou i lidi co si vistu oblíbili ale je jich daleko méně než u XP..

Craft: sry za tuhle odpověď :-)

OCX je ActiveX control a registracia je samozreme potrebna, na takuto operaciu samozrejme potrebujes admin prava, over si ci, ci taketo nieco naozaj potrebujes, pretoze zapisovanie do system32 pri instalacii nie je prave "najstastnejsia" operacia
nerozumiem iba otazke ci na to nestaci nejaky batak(samozrejme staci), pretoze je to uplne jedno, staci mat dostatocne prava...

Bohužel tvůrce jednoho z free programu, které budou součástí toho instalátoru toto jaksi opomněl a je nutné tyto soubory ručně nejdříve do adresáře system32 nakopírovat, jinak je ten program nefunkční a končí to chybovou zprávou o absenci těchto souborů. U Win XP a starších Win pouhé nakopírování souborů do adresáře system32 stačí, ale u Visty ne, protože ta se dožaduje ještě ruční registrace těchto souborů. Proto to musím řešit poněkud složitě oklikou. Asi bude nejrozumnější varianta po nakopírování potřebných souborů pomocí instalátoru (to funguje i u Visty kupodivu bez problémů) a pak dát ještě do instalačního menu tlačítko, to spustí baťák, který následně zajistí zaregistrování souborů do systému za předpokladu, že bude uživatel mít dostatečná práva, fakt vyvedený OS ta Vista.
Je tady ještě nějaká specialita ala Vista, co se použití baťáků týče? Třeba jestli automaticky nezakazuje jejich spouštění z důvodu bezpečnosti a jiné výstřelky od MS, ať vím, co mohu ještě očekávat.

OCX sa musia vzdy registrovat, ak si to na XP nemusel robit, znamena to ze uz boli niekde zaregistrovane, da sa to sice obist pouzitim vhodne vytvoreneho manifestu ale toto je naozaj velmi zriedkave a nemyslim, ze je to tvoj pripad

neviem aky instalator pouzivas ale kazdy slusnejsi COM registraciu umoznuje, pripadne tie lepsie maju pre tento pripad hotovy merge modul

v tvojom pripade by som ziadny batak nepouzival(to by bol absolutne nestandardny postup) ale stiahol by som Microsoft Visual Basic 6.0 Common Controlsa nainstaloval by som to v priebehu instalacie, kedze nepredpokladam, ze pouzivas instalator s podporou merge modulov

instalaciami sa zaoberam uz hodne dlho, takze v pripade nejakych nejasnosti sa kludne pytaj

Tady trochu nesouhlasím s tou nutnou registrací u XP. Je sice pravdou, že některé soubory už mé XP obsahovali, ale některé ne a stačilo je pouze nakopírovat do adresáře system32. Stačilo si pouze stáhnout potřebné soubory z netu. To je pro mě ale důležitá onformace, že tyto soubory jsou přímo součástí balíčku VBRun-Time.
Mám sice VBRun-Time v instalátoru obsažený, ale starší verzi vbrun60sp5.exe a koukám, že už je vbrun60sp6.exe :-) Nicméně z toho odkazu jsem poněkud nepochopil jestli stačí naistalovat pouze tento balíček, nebo se musí nejdříve nainstalovat vbrun60sp6.exe a pak teprve tebou uvedený. Nicméně tohle by problém v pohodě vyřešilo za předpokladu, že Visty zase nebudou požadovat i po instalaci balíčku VBRun-Time zase nějakou registraci.

Mezitím jsem si přečetl tvůj další příspěvek a zrovna jsem chtěl napsat, že tam není Vista uvedena, takže jak píšeš tu registraci to asi stejně neřeší. No a pak tady budou někteří tvrdit, že Vista je naprosto fajn :-D
Každopádně používám instalátory dva, Instalační průvodce, ten je ale dobrej na jednoduchší instalace a tady jaksi neuspěji, ale druhý Install Creator by to mohl zvládnout. Nicméně netuším, jak správně vyplnit tuto předvolbu pro zápis do registru. Dávám sem obrázek, ať máš o tom lepší představu install_creator.png

Tady trochu nesouhlasím s tou nutnou registrací u XP

programy robene pomocou COM technologie sa registrovat z principu musia, toto zarucene nie je problem XP vs Vista

toto sa nerobi priamym zapisom do registra, v install creatore mas predsa podporu registracii:

Register OCX control, DLL, .REG file, .TLB file
- calls the DllRegisterServer function of a DLL or an OCX control
- calls regsvr32 to register a .REG file
- calls regtlib to register a .TLB file

Tak jsem se díval, jak je to s registrací u starších Win a zjistil jsem, že tam se ta registrace dělá údajně automaticky při nakopírování souborů do systémového adresáře system32. Jenomže Vista, co by rádoby blbuvzdorný systém pro běžné uživatele a ve snaze zabránit havěti měnit systémové soubory si tohle hlídá a dělá tak problémy navíc, proto je u ní nutná ještě ruční registrace pomocí příkazu regsvr32. Tak si tak říkám, kde až půjde MS ve snaze ochránit uživatele před sebou samým :-D

že tam se ta registrace dělá údajně automaticky při nakopírování souborů do systémového adresáře system32

urcite nie

registracia pri instalacii je absolutne bezna vec, prave preto kazdy slusny instalator ma pre tuto operaciu zabudovanu podporu, takze nie je potrebne externe volat regsvr32

U Vist ano, ale právě, že u starších Win ta ruční registrace odpadá. Jak mi potom ale vysvětlíš, že jsem nikdy u starších Win nemusel provádět žádnou ruční registraci těchto systémových souborů při ručním nakopírování do systémového adresáře system32 a vše bez problému fungovalo?

Ještě netuším zda má teď smysl aby součástí instalátoru byl nadále i samotný instalační balíček vbrun60sp6.exe nebo jej můžu teď už vypustit?

pretoze s najvacsou pravdepodobnostou uz boli zaregistrovane v inom adresari, prave registraciou sa urci z ktoreho adresara sa bude komponenta pouzivat, vobec to nemusi byt adresar system32

Ještě netuším zda má teď smysl aby součástí instalátoru byl nadále i samotný instalační balíček vbrun60sp6.exe nebo jej můžu teď už vypustit?

to naozaj neviem, kedze som ten program nepisal a neviem co a akym sposobom pouziva, najlepsie bude odskusat to
ak das nan odkaz, nebude problem zistit to

odskusane na cistych systemoch XP SP3 a Vista SP1
Visual Basic 6.0 run-time, je sucastou systemu, netreba instalovat

co sa tyka debaty o registracii XP vs Vista:
skusany program sa pokusa sam registrovat potrebne subory vo vybranych adresaroch
minimalne sa jedna o adresare Windows, System32 a lokalny adresar, preto nie je nutna explicitna registracia, vo Viste z pochopitelnych dovodov nemoze mat standardne na takuto operaciu prava ak je zapnuty UAC

Tomu říkám rychlost otestování :-)

Takže na všech starších Windows je instalace VBRun-Time 6.0 teda potřeba, XPSP2 nevyjímaje, chápu to správně? Pokud má uživatel starší verzi VBRun-Time budou připsány nové.

Windows old do XP SP2:
Musí se nejdříve nainstalovat VBRun-Time 6.0sp6 a dodatečná instalace souborů COMDLG32.DLL, COMDLG32.OCX, MSCOMCTL.OCX do systémového adresáře system32 již není předpokládám potřeba.
Nicméně tahle verze VBRun-Time 6.0 zrejmě neobsahuje ještě soubor MSCOMCTL.OCX
http://www.microsoft.com/downloads/details.aspx?di splaylang=en&FamilyID=7b9ba261-7a9c-43e7-9117-f673 077ffb3c

A je potřeba naistalovat poté i tento doplněk:
http://www.microsoft.com/downloads/details.aspx?Fa milyId=25437D98-51D0-41C1-BB14-64662F5F62FE&displa ylang=en

Windows XP SP3 a Vista:
Stačí pouze instalace souborů COMDLG32.DLL, COMDLG32.OCX, MSCOMCTL.OCX do systémového adresáře system32 s jejich automatickým zaregistrováním do systému a samotná instalace VBRun-Time 6.0 odpadá, díky již přítomnosti v čisté instalaci OS.

Takže na všech starších Windows je instalace VBRun-Time 6.0 teda potřeba, XPSP2 nevyjímaje, chápu to správně? Pokud má uživatel starší verzi VBRun-Time budou připsány nové.

Visual Basic 6.0 run-time je zahrnuty v systeme od Windows 2000 a Windows Me, rozdiely mozu byt len vo verzii

A je potřeba naistalovat poté i tento doplněk:

tento update riesi specifcke problemy ako popisuje KB896559, ak take problemy nemas, tak neinstaluj

Tak si tak říkám, že to asi bude nejrozumnější udělat takto:

Windows 95, 98, 98SE, ME, NT:
Nainstalovat VBRun-Time 6.0 a poté doinstalit vlastní instalační doplněk ze souborů COMDLG32.DLL, COMDLG32.OCX, MSCOMCTL.OCX do systémového adresáře system32 s jejich automatickým zaregistrováním do systému.

Windows 2000, XP, Vista (nehledě na SP):
Doinstalit pouze vlastní instalační doplněk ze souborů COMDLG32.DLL, COMDLG32.OCX, MSCOMCTL.OCX do systémového adresáře system32 s jejich automatickým zaregistrováním do systému.

Tohle bude asi nejrozumnější řešení, co ty na to?

Zpět do poradny Odpovědět na původní otázku Nahoru