Gana dažna problema tarp vartotojų Operacinė sistema„Windows“ bet kurios versijos - msi klaida diegiant programas iš failo su plėtiniu .msi. Šiame straipsnyje aprašysiu įprastas „Windows 7/10/XP“ diegimo programos problemas ir jų sprendimus, taip pat sukursiu vaizdo įrašą apie dabartinę problemą.
Failai su plėtiniu .msi yra įprasti diegimo paketai (platinimai), iš kurių įdiegiama programa. Skirtingai nuo įprasto „setup.exe“, sistema naudoja „Windows Installer“ paslaugą (msiexec.exe procesą), kad paleistų msi failą. Kalbėdamas paprastais žodžiais, „Windows Installer“ išpakuosis ir paleis failus iš platinimo. Kai „Windows Installer“ neveikia, atsiranda įvairių klaidų.
Apskritai tai mane tikrai siutina, nes... Po kvailo klaidos pranešimo visiškai neaišku, ką daryti toliau. „Microsoft“ specialiai sukūrė „Windows Installer“, kad išplėstų programų diegimo galimybes (daugiausia skirtoms sistemos administratoriai), tačiau tinkamai nepasirūpino, kad paslauga veiktų sklandžiai ar net tinkamai praneštų apie problemas. Dabar turime sutvarkyti :)
Problemos gali kilti dėl pačios paslaugos veikimo arba gali kilti diegiant programas, kai viskas sukonfigūruota iš esmės teisingai. Pirmuoju atveju turite susitvarkyti su diegimo paslauga, o antruoju - išspręsti problemą konkretus failas. Apsvarstykime abu variantus, bet pirmiausia antrą.
msi failo klaidos
Labai dažnai klaidos atsiranda dėl nepakankamų sistemos teisių į failus ar aplankus. Tai nereiškia, kad „Windows Installer“ neveikia; šiuo atveju tereikia pridėti reikiamas teises ir viskas veiks. Dar vakar susidūriau su tuo, kad atsisiųstas distributorius kit.msi nenorėjo diegti, sėkmingai paleidžiamas diegimo vedlys, pasirenkami parametrai, bet tada sistema kelias sekundes pagalvoja ir pateikia klaidą:
„Klaida skaitant iš failo „failo pavadinimas“ patikrinkite, ar failas egzistuoja ir ar galite jį pasiekti“ (1305 klaida). Išversta: „Klaida skaitant iš failo... patikrinkite, ar failas egzistuoja ir ar turite prieigą prie jo“. Na, negi tu kvailas? Natūralu, kad mygtukas „Iš naujo“ nepadeda, o atšaukus sustabdomas visas diegimas. Žinutė taip pat neturi ypatingos reikšmės, nes failas tikrai egzistuoja ir aš turiu prieigą prie jo, kitaip aš tiesiog negalėčiau jo paleisti ir gauti šio pranešimo ir dėl kokių nors priežasčių Anglų kalba 🙂
Ir klaida ta, kad prieigą prie failo turėčiau turėti ne aš, o „Windows“ diegimo programa, tiksliau – pati Sistema. Sprendimas labai paprastas:
![](https://i0.wp.com/it-like.ru/wp-content/uploads/2013/10/bezopasnost.jpg)
Dabar diegimo klaida nepasirodys! Galite pridėti prieigą prie viso aplanko, iš kurio paprastai diegiate programas, pavyzdžiui, į aplanką „Atsisiuntimai“, kaip ir mano. Žiūrėkite vaizdo įrašą apie prieigos teisių problemų sprendimą:
„Windows XP“ skirtukas „Sauga“ nebus rodomas, jei tai paprasta bendra prieiga prie failų. Norėdami jį išjungti, turite eiti į "Pradėti -> Valdymo skydas -> Aplanko parinktys -> Rodinys" ir išjunkite parinktį „Naudoti paprastą failų bendrinimą“. Sumažėjusiose „Windows 7/10“ ir „XP“ versijose iš viso nėra skirtuko „Sauga“. Norėdami jį pamatyti, turite prisijungti kaip administratorius.
Daugiau problemos sprendimo būdų
![](https://i0.wp.com/it-like.ru/wp-content/uploads/2013/10/rezhim_sovmestimosti.jpg)
Aprašytas metodas padės įvairiems pranešimams, su skirtingi skaičiai. Pavyzdžiui, galite matyti tokias msi failo klaidas:
- Klaida 1723
- Vidinė klaida 2203
- Sistemos klaida 2147287035
- Klaida: "Šio diegimo paketo negalima atidaryti"
- 1603 klaida: diegimo metu įvyko mirtina klaida
Visais šiais atvejais nustatant teises į failą ir (arba) kai kuriuos sistemos aplankus. Patikrinkite, ar „sistema“ turi prieigą prie laikinųjų failų aplanko (galite gauti klaidą „Sistema negali atidaryti nurodyto įrenginio ar failo“). Už tai:
Paspaudus „Enter“, kelias pasikeis į „normalų“ ir būsite perkelti į tikrąjį laikinąjį aplanką. Reikia patikrinti teises į jį. Taip pat rekomenduoju išvalyti laikinuosius aplankus nuo visko, kas ten susikaupė, arba dar geriau – ištrinti ir sukurti naujus tokiais pačiais pavadinimais. Jei negalite ištrinti aplanko, skaitykite, bet tai nėra būtina.
Jei „Windows Installer“ paslauga vis tiek nenori veikti, patikrinkite aplanko teises "C:\Config.Msi", čia „sistema“ taip pat turi turėti visišką prieigą. Tokiu atveju galbūt matėte klaidą „Klaida 1310“. Tik tuo atveju įsitikinkite, kad aplankas, KUR diegiate programinę įrangą, taip pat turi visas teises.
Registro ir paslaugų nustatymai
Kitas būdas išspręsti klaidą yra atkurti veikimo parametrus registre „Windows“ diegimo programa Montuotojas.
Norėdami tai padaryti, atsisiųskite archyvą ir iš ten paleiskite du reg failus pagal savo Windows versijos. Sutikite importuoti nustatymus.
Svarbu! Prieš paskutinis veiksmas pageidautina! Jei metodas nepadeda arba pablogėja, galite susigrąžinti ankstesnę būseną.
Įdiekite „Windows XP“ arba „Windows Server 2000“. Naujausia versija montuotojas 4.5.
Jei tai nepadeda, iš naujo užregistruokite komponentus:
- Paspauskite „Win + R“ ir įveskite „ cmd". Tada juodame lange iš eilės įveskite šias komandas:
MSIExec /išregistruoti
MSIExec / regserver - Atsakymas turi būti tuščias, be klaidų. Jei problema neišspręsta, įveskite kitą komandą
regsvr32 msi.dll - Uždarykite juodą langą
Jei sakoma, kad neturite pakankamai teisių, turite paleisti .
Jei komandos buvo įvykdytos, bet nepadėjo, paleiskite msi_error.bat iš archyvo ir patikrinkite rezultatą.
Paskutinė galimybė yra atsisiųsti Kerish Doctor programą, ji turi diegimo paslaugos taisymo funkciją ir daugelį kitų bendrų problemų Windows.
Be to, daugelis programų naudoja .NET Framework, todėl būtų naudinga įdiegti naujausią šio paketo versiją. Ir galiausiai dar vienas patarimas: jei paskirstymo failo kelyje yra bent vienas aplankas su tarpu pavadinimo pradžioje, pašalinkite tarpą. Šis paprastas triukas išspręs jūsų problemą :)
Apibendrinant
„Windows“ diegimo programos klaidos yra labai nemalonios, jų yra daug ir iš karto neaišku, kur ieškoti. Aišku viena – sistema sugedo ir ją reikia atstatyti į darbinę būklę. Kartais niekas nepadeda ir reikia. Tačiau neskubėkite to daryti, pabandykite paprašyti pagalbos šiame forume. Tiksliai apibūdinkite savo problemą, pasakykite ką jau padarėte, kokias žinutes gavote ir galbūt jie jums padės! Juk pasaulyje nėra gerų žmonių :)
Skaitytojo laiškas:
Programa negali būti pašalinta iš kompiuterio per meniu Add/Remove Programs ir jokiu būdu neištrynė visų su programa susijusių aplankų, naudojo visokias komunalines priemones, kurios išvalo registrą nuo nereikalingų raktų, tai nenaudinga. Faktas yra tas, kad aš noriu jį įdiegti iš naujo, jis yra licencijuotas ir pirktas už pinigus, tačiau pastaruoju metu jis veikia su klaidomis. Diegimo programa sako: programa jau įdiegta ir tuo ji baigiasi. Forumas pasiūlė ko ieškoti krūmuose (registre). Tai pokštas? Pagalba.
Edvardas
Kito skaitytojo laiškas:
Žaidimas nepašalinamas iš kompiuterio Call of Duty 4: Modern Warfare, noriu is naujo instaliuoti, bet visada gaunu klaidą, tiesiog ištryniau žaidimo aplanką, bet nepavyko jo ištrinti iš meniu Add or Remove Programs, gal žinote kaip ištrinti ir įdiekite iš naujo, pasakykite man.
Bazilikas
Programa negali būti pašalinta iš kompiuterio
Ir, žinoma, programos ar žaidimo vėl įdiegti negalima, nes gali būti nenaudingos paslaugos Unlocker, CCleaner, Revo Uninstaller ir panašiai. Vienoje svetainėje perskaičiau, kaip naudodamiesi viena iš šių programų galite ištrinti antivirusinė programa, juokiausi ilgai, realybėje, žinoma, viskas taip nebus, kartais šių programų veikimo principai pasirodo neveiksmingi. Pagalvokime, ką darysime, jei visos minėtos programos mums nepadėjo.
Mūsų straipsnyje pateikta informacija taikoma „Windows 7“ ir „Windows 8“. 1.
- Pastaba: draugai, jei šis straipsnis jums nepadeda, pabandykite
Daugelis nesėkmės atveju su programos pašalinimas iš kompiuterio jie netgi iš naujo įdiegia operacinę sistemą, kai kalbama apie mėgstamą žaidimą. Patikėkite, daugeliu atvejų tai nėra būtina. Beje, tai taip pat apie šiukšlių kaupimąsi Windows, nes programos likučiai kažkur yra ir žinoma užima vietą kietajame diske, visa tai yra gana nemalonu ir, žinoma, noriu sužinoti kur tiksliai yra likusi programa failai yra. Tokios problemos kyla, nes dėl tam tikrų priežasčių nutrūksta ryšys tarp programos ir jos raktų registre. Tam yra daug priežasčių, pradedant neteisingais vartotojo veiksmais ir klaidomis pačioje programoje; mes apie tai nekalbėsime. Norėdami išspręsti tokias problemas, turėsime rankiniu būdu atlikti registro pakeitimus ir mūsų programa bus visiškai pašalinta. Kaip tai padaryti?
![](https://i0.wp.com/remontcompa.ru/uploads/posts/2011-09/1317195656_33.jpg)
Ar programa, kurią norite pašalinti, nebenaudojama? Jei žinote su juo susijusį procesą, taip pat turite jį užbaigti įrenginių tvarkyklėje.
Geriausias dalykas yra išjungti programos paslaugą kompiuterių valdyme.
Dabar ištrinkite visus su programa susijusius failus iš savo kompiuterio, pradėkite nuo asmeninio aplanko, esančio Programų failuose, tada paleiskite iš naujo; jei programa neištrinta ir jos vėl nepavyks įdiegti, turėsite ištrinti jos įrašus registre.
![](https://i1.wp.com/remontcompa.ru/uploads/posts/2011-09/1317201390_3.jpg)
Patartina peržiūrėti visą registrą arba filialus HKEY_LOCAL_MACHINE (yra informacija apie techninę ir programinę įrangą) ir HKEY_CURRENT_USER\Software, kur yra visa informacija apie įdiegtas programas.
Ką dar galite padaryti, jei kyla problemų pašalinant programas?
- Pabandyk apsilankyti programos gamintojo tinklalapyje, ten yra didele tikimybe, kad ten galima atsisiusti deinstaller, pvz., Nero programos svetaineje, kuri ne taip paprasta isinstaliuoti, yra tokia programa.
- Jei nepavyko pašalinti žaidimo ar programos, pašalinimo programa gali būti įdiegimo diske, turėtumėte ją paleisti ir pamatysite parinktį Ištrinti, jei disko neturite, skaitykite toliau.
- Ypač sunkių atvejų, turėsite prisijungti prie savo operacinės sistemos Saugus režimas, tik bus galima išjungti paslaugą ir ištrinti visus likusius failus bei registro raktus.
- Kartais negalėsite ištrinti programos failų net ir saugiuoju režimu, tačiau galėsite juos pervardyti ir ištrinti po perkrovimo.
- Verta pabandyti iš naujo įdiegti programą, tada ji bus sėkmingai pašalinta.
Kad būtų aiškumo, pabandykime iš naujo įdiegti žaidimą Call of Duty 4: Modern Warfare, kurio mano sūnaus kovos draugas negali iš naujo įdiegti kelias dienas iš eilės.
Taikykite msi.dll
Norint įdiegti „Microsoft Installer“ (MSI) paketus, reikia „Aile msi.dll“. Jei šis failas bus ištrintas, „Windows Installer“ neveiks.
Šiame straipsnyje aptarsime msi.dll klaidos atvejį kompiuteryje su Windows sistema ir jos sprendimas.
Msi.dll klaida sistemoje Windows
Kai bandote įdiegti bet kurią „Windows Installer“ programą „Windows“ kompiuteryje, galite gauti klaidos pranešimą, panašų į čia parodytą:
"MSIEXEC.EXE failas yra susietas su trūkstamu eksportu MSI.DLL:222."
Paspaudus mygtuką Gerai, pasirodo kitas klaidos pranešimas, panašus į minėtąjį toliau:
„Negaliu paleisti C:\Windows\System\MSIEXEC.EXE įrenginio, prijungto prie neveikiančios sistemos.
Klaidos priežastis
Ši problema kyla, jei jūsų kompiuteryje esantys „Windows Installer“ failai bando atnaujinti „Windows Installer“ failus.
Leidimas
Iškilus aukščiau nurodytai problemai, pirmiausia reikia iš naujo paleisti kompiuterį ir dar kartą pabandyti įdiegti „Windows Office“ programą. Jei „Windows Installer“ reklamavo failus arba failai nėra nukopijuoti į tinkamą vietą. Vietoj to, jie pirmiausia nukopijuojami į laikiną aplanką. Tik iš naujo paleidus kompiuterį failai nukopijuojami į atitinkamą aplanką. Norėdami išspręsti šį klaidos pranešimą, atlikite šiuos veiksmus.
1 užduotis – atsisiųskite „Windows Update Installer“.
- Spustelėkite nuorodos mygtuką ir spustelėkite mygtuką parsisiųsti esantis šalia InstMsiA.exe.
- Sutaupyti failą darbalaukyje.
2 užduotis – pervardyti Windows failai Montuotojas
- Eikite į meniu Pradėti ir pasirinkite Išjunkite kompiuterį.
- Tada spustelėkite mygtuką Iš naujo paleiskite kompiuterį MS-DOS režimu ir tada spustelėkite mygtuką Gerai .
- Įveskite šias komandas komandinė eilutė ir paspauskite Enter po kiekvienos komandos, kad jas įvykdytumėte. cd sistema
ren msi.dll msi.old
ren msihnd.dll msihnd.old
ren msiexec.exe msiexec.old
išeiti - Iš naujo paleiskite „Windows“.
3 užduotis – paleiskite „Windows“ saugiuoju režimu
- Spustelėkite mygtuką Pradėti ir pasirinkite Išjunkite kompiuterį.
- Tada spustelėkite mygtuką Perkraukite ir paspauskite mygtuką Gerai.
- Paspauskite ir palaikykite mygtuką SHIFT kai langas perkraunamas.
4 užduotis – „Windows“ naujinimo diegimo programos, skirtos „Windows“, įdiegimas
- Dukart spustelėkite failą InstMsiA.exe, išsaugotas darbalaukyje.
- Tada vykdykite ekrane pateikiamas instrukcijas, kad užbaigtumėte diegimo procesą.
- Galiausiai iš naujo paleiskite kompiuterį.
Jei registras užduoda klausimų apie kokių DLL klaidų priežastis, pvz., msi.dll klaidas?
Taip, jie tai daro, nes registras iš tikrųjų yra sugadintas arba pažeistas, o tai dažnai yra dažno reiškinio priežastis DLL klaidos. Su DLL failais susiję įrašai saugomi registre. Galite gauti pasikartojančių DLL klaidų, jei su DLL failais susiję įrašai yra sugadinti arba jų trūksta. Ištaiso DLL klaidas, pvz., msi.dll klaidas, kurios sukelia registro problemas. Nuskaitykite registrą naudodami veiksmingą registro valymo priemonę, pvz., RegGenie. Tai galingas įrankis, leidžiantis atlikti pasirinktinius registro nuskaitymus, kad ištaisytumėte DLL klaidas.
MSI.DLL – ar tai saugos failas?
Taip, tiesa msi.dll yra saugos failas iš Microsoft. Tačiau keli kenkėjiškų programų atvejai naudoja failą msi.dll. Norėdami nustatyti, kad msi.dll kompiuteryje nekelia grėsmės sistemai, nuskaitykite visą Windows kompiuterį naudodami patikimus ir efektyvius saugos įrankius.
Galite naudoti komandą msiexec su komandinės eilutės parinktimis, kad iškviestumėte diegimo arba pašalinimo procedūrą. Komandos msiexec parametrai perduoda informaciją, kuri paprastai būtų nurodyta interaktyvaus diegimo metu naudojant WebSphere MQ diegimo plokštės. Norėdami tai padaryti, komandų eilutėje įveskite šią komandą kartu su reikiamais parametrais: msiexec [parinktys]
Kai paleidžiate WebSphere MQ sistemoje Windows® Vista arba Windows Server 2008, kai įgalintas vartotojo abonemento valdymas (UAC), tylus diegimas arba pašalinimas turi būti vykdomas iš padidintos komandų eilutės. Norėdami tai padaryti, dešiniuoju pelės mygtuku spustelėkite, kad paleistumėte komandų eilutę ir pasirinkite Vykdykite kaip administratorius. Jei bandysite paleisti tylųjį diegimą arba pašalinti be padidintų vartotojo teisių, diegimo žurnale pamatysite klaidą AMQ4353.
Komanda msiexec palaiko dviejų tipų komandų eilutės parinktis:
Pirmiausia turite nurodyti komandų eilutės parinktis komandoje msiexec, o po to - property=value poras.
Jei parametras nurodytas ir komandinėje eilutėje, ir atsakymo faile, pirmenybė teikiama komandų eilutės reikšmei.
Komandos msiexec naudojimo pavyzdys: msiexec /i "" /l*v c:\install.log /m file-mif TRANSFORMS="1033.mst" AGREETOLICENSE="yes" ADDLOCAL="Serveris" kur: /i "kelias \MSI\IBM WebSphere MQ.msi" Įdiekite produktą naudodami nurodytą .msi failą. /l*v c:\install.log Sukuria žurnalo failą install.log su informacija apie diegimą. /mmiffile Sukuria Microsoft® sistemos valdymo serverio (SMS) būsenos failą, .mif: miffile. TRANSFORMS="1033.mst" Nurodo, kad įdiegta JAV anglų kalba. Norėdami gauti daugiau informacijos apie kitas kalbas, žr. msiexec komandos konversijų naudojimas. AGREETOLICENSE="yes" Sutikite su licencijos sąlygomis. ADDLOCAL="Serveris" Įdiekite serverio komponentą vietoje.
Parametras | Galimybės | apibūdinimas |
---|---|---|
/a | Plastikinis maišelis | Administracinis gaminio diegimas per tinklą, t.y. Programos šaltinio vaizdo įdiegimas, panašus į vaizdą kompaktiniame diske. |
/i | plastikinis maišelis|prekės kodas | Įdiekite arba sukonfigūruokite gaminį naudodami nurodytą failą.msi. WebSphere MQ Windows diegimo programos paketas: IBM WebSphere MQ.msi. |
/j | Paketas| |
Produkto įspėjimas. Ši parinktis nepaiso visų komandinėje eilutėje nurodytų savybių reikšmių. u Pranešti dabartiniam vartotojui m Pranešti visiems šios sistemos vartotojams g Kalbos ID t Taikyti paketo transformaciją |
/l | protokolo failą |
Nurodomas kelias į žurnalo failą, taip pat vėliavėlės, nurodančios informaciją, kurią reikia įvesti į žurnalą. i Būsenos pranešimai w Atkuriami įspėjimai e Visi klaidų pranešimai a Vykdomi veiksmai r Veiksmų įrašai u Pasirinktinės užklausos c Pradiniai vartotojo sąsajos nustatymai m Mažai atminties arba mirtino išėjimo informacija o Pranešimai apie mažai vietos diske p Terminalo ypatybės v Detali produkcija+ Informacija pridedama prie esamo failo! Kiekviena eilutė įkeliama į protokolą * Visa informacija, išskyrus parinktį v, įvedama į protokolą. Norėdami užregistruoti visą informaciją, įskaitant v parinktį, nurodykite „/l*v“ |
/q | n|b|r|f | Lygis vartotojo sąsaja rodomas diegimo metu. q, qn Nėra vartotojo sąsajos. Neinteraktyvus diegimas be vartotojo sąsajos. qb Pagrindinė vartotojo sąsaja. Rodomi integruoti dialogo langai su būsenos pranešimais qr Sutrumpinta vartotojo sąsaja, diegimo pabaigoje rodomas modalinis dialogo langas. qf Pilna vartotojo sąsaja, diegimo pabaigoje rodomas modalinis dialogo langas. qn+ Nėra vartotojo sąsajos, diegimo pabaigoje rodomas modalinis dialogo langas. qb+ Pagrindinė vartotojo sąsaja, diegimo pabaigoje rodomas modalinis dialogo langas. Modalinis langas nerodomas, jei vartotojas atšaukia diegimą. qb – pagrindinė vartotojo sąsaja be modalinių langų. Atkreipkite dėmesį: /qb+- UI sluoksnis nepalaikomas. |
/x | plastikinis maišelis|prekės kodas | Produkto pašalinimas. |
|
Lentelėse Atsakymo failo naudojimas su komanda msiexec.
"". Tęskite diegimą ir atnaujinkite tikslinę sistemą (numatytasis).
- Pamoka
Laba diena, Habr! Norėčiau pristatyti įdomų, mano nuomone, bet kokios programinės įrangos msi diegimo programų kūrimo būdą ir dėl to jas diegti naudojant GPO. Norėčiau pabrėžti, kad aprašytas metodas nereiškia sistemos „momentinių nuotraukų“ kūrimo, o naudoja vietines programinės įrangos diegimo programas, o msi kūrimui naudojami tik nemokami produktai, skirti komerciniam naudojimui.
Įvadas, pora nuorodų ir atsakomybės atsisakymas
Kiekvienas įprastas programinės įrangos diegimo programa turi galimybę automatiškai įdiegti tam tikrus arba numatytuosius parametrus. Mano metodo esmė yra paprasta ir susideda iš vietinės diegimo programos supakavimo į msi „konteinerį“ ir paleidimą su reikalingais komandinės eilutės parametrais. Internete yra daug informacijos apie automatinį tos ar kitos programos įdiegimą, ir aš į tai nesutelksiu dėmesio. Kartoju, mūsų tikslas yra įdiegti programinę įrangą naudojant grupės politiką. Beje, kai kurie iš jūsų gali ginčytis, kad diegti galima per ZAW, bet, deja, šis metodas taikomas tik diegiant su dabartinio vartotojo teisėmis ir negali būti naudojamas centralizuotai. automatinis montavimas programos.Įdomi straipsnių serija apie programinės įrangos diegimą per GPU. Pradedantiesiems rekomenduoju perskaityti viską, kad vėliau nekiltų klausimų, kuo skiriasi „priskirtas“ ir „viešasis“ diegimo tipas.
Reikalinga programinė įranga. Exe to MSI Converter nemokama programinė įranga ir gerai žinoma orca Pirmasis reikalingas norint sukurti msi iš exe, o antrasis reikalingas, kad gautą msi slapyvardį būtų galima įdiegti naudojant grupės politiką.
Metodas nepretenduoja į visiškai unikalų ir kai kuriose vietose gali būti pertekliaus, kurių būtų galima išvengti, tačiau taip yra dėl noro stokos ir poreikio per daug įsigilinti į msi paketo lentelių parametrus. Pradinis tikslas buvo greitai rasti nemokamą būdą sukurti msi ir po kelių valandų, praleistų skaitant užsienio forumus ir nesibaigiančius virtualios mašinos perkrovimus, metodas buvo rastas. Be to, straipsnis nėra programos sąsajos apžvalga ir ekrano kopijų nematysite.
Pakuotės sukūrimas ir paruošimas
Bus sukurtas „Mozilla Firefox“ diegimo pavyzdys, nes tai yra gerai žinomas produktas, kuriame kūrėjų nėra „msi“ diegimo programos.- Paleiskite exe į msi ir nurodykite kelią į firefox exe diegimo programą. Remiantis anksčiau tinkle rasta informacija, tampa aišku, kad galite ramiai įdiegti "Firefox" su parametrais -ms -ira. Mes nurodome juos antrame lauke exe į msi ir spustelėkite „Sukurti MSI“.
- Atrodytų, kad viskas paruošta.Msi paketas paruoštas. Iš tiesų, paleidę gautą rezultatą, sistemoje įdiegsime „Firefox“ ir galėtume nutraukti straipsnį. Deja, tai nėra taip paprasta. Dabartinis diegimo paketas netinkamas diegti per GPO ir paleidus kompiuterį gausite visiškai beprasmias klaidas žurnaluose "įvyko nepataisoma klaida..." O visa esmė ta, kad exe į msi kūrėjai irgi nori valgyti ir jų nemokamas produktas generuoja msi "ne pagal taisykles".
- Na, paimkime orką ir atidarykime joje savo emsianiką.
- Pirmiausia kairiajame sąraše raskite lentelę Nuosavybė ir atkreipkite dėmesį į dvi sritis - Prekės kodas Ir Atnaujinimo kodas. Šie du laukai turi būti unikalūs kiekvienam produktui, tačiau mūsų exe į msi visada generuoja tuos pačius laukus. Na, ne problema, spustelėkite viršutinį meniu Peržiūrėti -> Suvestinė informacija, surask lauką Paketo kodas ir spustelėkite Naujas GUID. Nukopijuokite gautą rezultatą į mainų sritį ir įklijuokite Prekės kodas. Pakartokite už Atnaujinimo kodas ir galiausiai sau Paketo kodas. Čia pat Suvestinė informacija redaguoti lauką Pavadinimasįjungta Mozilla Firefox, likusi dalis yra neprivaloma. Tiesą sakant, tai nieko nedaro.
- Vėl lentelėje Nuosavybė aš Produkto pavadinimas„Mozilla Firefox“ (keičiu daug daugiau ARPCONTACT Ir Gamintojas). Taip pat galite nustatyti teisingą reikšmę Produkto versija.
- Atrodo, kad GUID ir kiti „ID“ buvo pakeisti, tačiau, kaip rodo praktika, to nepakanka. Spustelėkite orca Įrankiai -> Patvirtinti, pašalinkite paukštį Rodyti INFO pranešimus ir paspauskite Eik.
- Kaip matote, atsirado daugybė klaidų, susijusių su kai kurių lentelių ir verčių buvimu / nebuvimu. Aš nesivarginau ir tiesiog paėmiau pirmą pasitaikiusią mažą MSI (7zip x64 9.20) ir nukopijavau iš ten 4 trūkstamas lenteles (žinoma, per Export-Import): _Patvirtinimas, AdminExecuteSequence, AdminUISequence ir AdvtExecuteSequence. Tiesą sakant, esu tikras, kad galima sukurti „teisingą“ msi diegimo programą be nereikalingų šiukšlių, tačiau nepamirškite, kad mūsų tikslas yra tiesiog tyliai paleisti vietinę programos sąranką.
- Pridėję lenteles dar kartą peržiūrėkite Įrankiai -> Patvirtinti(beje, jums nereikia iš viso tikrinti pirmą kartą ir tiesiog importuoti lenteles iš karto). Jei taip pat paėmėte msi iš 7zip, rezultatas bus šešios klaidos, kurias reikia pašalinti. Spustelėkite Uždaryti, ištrinkite nereikalingus laukus, pažymėtus raudonai.
- Pabaigoje galite dar kartą patikrinti patvirtinimą ir įsitikinti, kad liko tik niekam netrukdantys įspėjimai. Išsaugoti msi.
- Iš esmės viskas, belieka pridėti msi prie GPU ir priskirti reikiamas savybes.
Niuansai
- Įdiegę aukščiau aprašytu būdu, turėsite dvi programinės įrangos kopijas. Pirmoji yra tikroji programa, kurios jums reikia, o antrasis yra originalus msi slapyvardis, nes mes jį tarsi įdiegėme. Iš esmės tai neturi įtakos niekam, išskyrus jo rodymą „Pridėti arba šalinti programas“, o tada tik „Windows XP“ (jei nepakeitėte nieko, išskyrus tai, ką nurodžiau). Neigiamas aspektas gali būti nereikalingų programų atsiradimas automatinio programinės įrangos inventorizavimo metu, jei ją naudojate.
- Negalėsite automatiškai pašalinti programos naudodami tuos pačius diegimo įrankius. Tai pavyks tiksliau, bet bus ištrintas tik nereikalingas msi konteineris. Na, o kurdami galite padirbėti su msi savybėmis, kad ji taip pat tyliai pasiimtų anksčiau įdiegtą programą. Tokios užduoties nekėliau.
- Diegdami programinės įrangos naujinimus, programos GP ypatybėse turite nurodyti, kad ji pakeistų ankstesnę, tai yra, pirmiausia ji turi pašalinti seną. Tai garantuoja, kad „įdiekite ir pašalinkite programas“ neturėsite tų pačių kairiarankių pasikartojančių programų, kurios niekam nepasidavė.
- Norėdami įdiegti programą, kurioje yra kelių failų platinimo paketas, pirmiausia turėsite supakuoti ją į exe, kuri paleista pati išsipakuoja ir duos tyliojo diegimo komandą. Rekomenduoju sukurti sfx archyvus naudojant tą patį 7 ZIP.
- Niekas netrukdo jums įdiegti programinės įrangos per paleisties scenarijus. Be to, šis metodas yra lankstesnis, ir aš ilgą laiką jį naudoju savo scenarijuose. Tačiau naudoti vietinius GPU įrankius yra daug greičiau, nes tiesiog sukurti msi iš exe užtrunka keletą minučių.
- Dėl tam tikrų priežasčių „Windows 7“ nesako „Įdiegti“ valdoma programa...“, bet tiesiog sako „prašau palaukti“. Pirmą kartą diegiant visą krūvą programinės įrangos iš karto arba diegiant sudėtingą programą, vartotojas gali paraginti paskambinti administratoriui arba paspausti nustatymo iš naujo mygtuką.
Klaidos diegiant programas iš failų su plėtiniu .msi yra vienas iš „Windows Installer“ paslaugos (rusiškoje versijoje „Windows Installer“) problemų. Visų šios OS versijų vartotojai, išskyrus seniausias, susiduria su panašiu reiškiniu. Kol kas diegimo programos problema yra viena iš bendrų priežasčių, pagal kuriuos vartotojai nusprendžia iš naujo įdiegti sistemą. Pabandykime išsiaiškinti, kaip to išvengti. Priežastis, kodėl „Windows Installer“ neveikia, gali būti tokia:
- virusinė infekcija, o viruso pašalinimas ne visada išsprendžia problemą;
- neteisingas montavimas Windows naujinimai;
- saugos programinės įrangos gedimas, kai užuot blokavęs vieną įtartiną msi failą, visiškai užblokuojama diegimo paslauga;
- kompiuterių saugumo politikos pakeitimai;
- žalą sistemos failai arba registrą dėl priežasčių, nesusijusių su virusais (diegimo programos komponentų pašalinimas, nekvalifikuotas registro redagavimas, kreiva programinė įranga, gedimas kietasis diskas ir taip toliau.).
„Windows Installer“ struktūros vientisumo tikrinimas
„Windows Installer“ sudaro šie komponentai:- failas C:\Windows\System32\Msiexec.exe - tiesiogiai pačios diegimo programos;
- failas C:\Windows\System32\msi.dll - Windows biblioteka Montuotojas;
- Msiserver paslauga, kurios nustatymai saugomi registro rakte.
![](https://i2.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_1.3.png)
![](https://i2.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_1.4.png)
![](https://i2.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_1.5.png)
![](https://i1.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_1.6.png)
![](https://i1.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_1.7.png)
Tikrinami saugos nustatymai ir prieigos teisės
„Windows Installer“ gali neveikti, nes ją blokuoja saugos programinė įranga arba operacinė sistema neturi reikiamų teisių. Pirmiausia pažvelkime į programinę įrangą. Jei turite įdiegtą antivirusinę programą, laikinai ją išjunkite. Kiekvienas produktas turi savo išjungimo būdus, tačiau dažniausiai tai daroma naudojant antivirusinės piktogramos kontekstinį meniu sistemos dėkle. Dabar pasirūpinkime teisėmis. Atidarykite Msiexec.exe kontekstinį meniu ir išplėskite jo savybes.![](https://i0.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_1.8.png)
![](https://i1.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_1.9.png)
![](https://i1.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_2.1.png)
![](https://i2.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_2.2.png)
![](https://i0.wp.com/it-dix.ru/sites/default/files/styles/mini-img/public/windows_installer_2.3.png)
- sistemos diskas (dažniausiai C diskas);
- laikinieji aplankai (tai yra C:\Windows\Temp ir C:\Users\Current_User\AppData\Temp);
- aplankas C:\Config.Msi;
- aplankas, kuriame yra msi failas, iš kurio bandote įdiegti programą.
Kas yra Msi.dll? Yra žinoma, kad Msi.dll Windows Installer failas diegdamas programą generuoja klaidų pranešimus, kurie gali atsirasti, jei kompiuteryje esantys Windows Installer failai nesutampa arba dėl registro sugadinimo ar sugadinimo.
Pašalinkite msi.dll klaidą sistemoje Windows
Taikykite msi.dll
Diegimui reikalingas Aile msi.dll Microsoft paketai Diegimo programa (MSI) Jei šis failas bus ištrintas, „Windows Installer“ neveiks.
Šiame straipsnyje aptarsime msi.dll klaidos atvejį „Windows“ kompiuteryje ir jo sprendimą.
Msi.dll klaida sistemoje Windows
Kai bandote įdiegti bet kurią „Windows Installer“ programą „Windows“ kompiuteryje, galite gauti klaidos pranešimą, panašų į čia parodytą:
"MSIEXEC.EXE failas yra susietas su trūkstamu eksportu MSI.DLL:222."
Paspaudus mygtuką Gerai, pasirodo kitas klaidos pranešimas, panašus į minėtąjį toliau:
„Negaliu paleisti C:\Windows\System\MSIEXEC.EXE įrenginio, prijungto prie neveikiančios sistemos.
Klaidos priežastis
Ši problema kyla, jei jūsų kompiuteryje esantys „Windows Installer“ failai bando atnaujinti „Windows Installer“ failus.
Leidimas
Iškilus aukščiau nurodytai problemai, pirmas dalykas, kurį reikia padaryti, yra iš naujo paleisti kompiuterį ir pabandyti įdiegti dar kartą Windows programa Biuras. Jei „Windows Installer“ reklamavo failus arba failai nėra nukopijuoti į tinkamą vietą. Vietoj to, jie pirmiausia nukopijuojami į laikiną aplanką. Tik iš naujo paleidus kompiuterį failai nukopijuojami į atitinkamą aplanką. Norėdami išspręsti šį klaidos pranešimą, atlikite šiuos veiksmus.
1 užduotis – atsisiųskite diegimo programą Windows "naujinimo
- Spustelėkite nuorodos mygtuką ir spustelėkite mygtuką parsisiųsti esantis šalia InstMsiA.exe.
- Sutaupyti failą darbalaukyje.
2 užduotis – pervardykite „Windows Installer“ failus
- Eikite į meniu Pradėti ir pasirinkite Išjunkite kompiuterį.
- Tada spustelėkite mygtuką Iš naujo paleiskite kompiuterį MS-DOS režimu ir tada spustelėkite mygtuką Gerai .
- Į komandų eilutę įveskite šias komandas ir po kiekvienos komandos paspauskite Enter, kad jas įvykdytumėte. cd sistema
ren msi.dll msi.old
ren msihnd.dll msihnd.old
ren msiexec.exe msiexec.old
išeiti - Iš naujo paleiskite „Windows“.
3 užduotis – paleiskite „Windows“ saugiuoju režimu
- Spustelėkite mygtuką Pradėti ir pasirinkite Išjunkite kompiuterį.
- Tada spustelėkite mygtuką Perkraukite ir paspauskite mygtuką Gerai.
- Paspauskite ir palaikykite mygtuką SHIFT kai langas perkraunamas.
4 užduotis – „Windows“ naujinimo diegimo programos, skirtos „Windows“, įdiegimas
- Dukart spustelėkite failą InstMsiA.exe, išsaugotas darbalaukyje.
- Tada vykdykite ekrane pateikiamas instrukcijas, kad užbaigtumėte diegimo procesą.
- Galiausiai iš naujo paleiskite kompiuterį.
Jei registras užduoda klausimų apie kokių DLL klaidų priežastis, pvz., msi.dll klaidas?
Taip, jie tai daro, nes registras iš tikrųjų yra sugadintas arba pažeistas, o tai dažnai yra dažnos DLL klaidos priežastis. Įrašai, susiję su DLL failus yra saugomi registre. Galite gauti pasikartojančių DLL klaidų, jei su DLL failais susiję įrašai yra sugadinti arba jų trūksta. Ištaiso DLL klaidas, pvz., msi.dll klaidas, kurios sukelia registro problemas. Nuskaitykite registrą naudodami veiksmingą registro valymo priemonę, pvz., RegGenie. Tai galingas įrankis, kuri leidžia atlikti pasirinktinį registro nuskaitymą, kad ištaisytumėte DLL klaidas.
MSI.DLL – ar tai saugos failas?
Taip, tiesa msi.dll yra saugos failas iš Microsoft. Tačiau kelios kopijos kenkėjiška programa, naudokite failą msi.dll. Norėdami nustatyti, kad msi.dll kompiuteryje nekelia grėsmės sistemai, nuskaitykite visą Windows kompiuterį naudodami patikimus ir efektyvius saugos įrankius.