/ / Vynútiť predpoklad 32 bitov (z balíka, ktorý obsahuje inštalatéry x86 aj x64) na 64 bitovom počítači - vizuálne štúdio-2008, projekt nastavenia, architektúra CPU, predpoklady

Vynútenie 32-bitového predpokladu (z balíka, ktorý zahŕňa inštalatérov x86 aj x64) na 64-bitovom počítači - Visual Studio 2008, setup-project, cpu-architektúra, predpoklady

Pracujem na riešení pozostávajúcom z viacerých projektov (vrátane niektorých externých knižníc tretích strán). Riešenie má setup project, ktorý nainštaluje (nie vlastné) predpoklady, s ktorými je štandardne dodávané x86 a x64 verzie (spolu v 1 predpoklad). Projekty v rámci riešenia majú cieľovú platformu nastavenú na x86 (vo vlastnostiach projektu, nie vo výbere konfigurácie) kvôli BadImageFormatException, z neznámeho zdroja.

Môj problém je, že keď použijem inštalátor na aPri 64bitovom stroji je nainštalovaná 64bitová verzia predpokladov, čo vedie k chybám, že by som mal používať správnu (čo je x86) verziu predpokladov.

Zaujímalo by ma, či dokážem vynútiť konkrétnu verziu predpokladov pomocou projektu nastavenia.

EDIT / UPDATE: Pretože sa zdá, že moja otázka vyvoláva veľa zmätkov, rozhodol som sa uverejniť 2 snímky obrazovky, ktoré, dúfajme, vysvetlia viac.

tu zadajte popis obrázku ==> tu zadajte popis obrázku

Toto zahŕňa oba balíčky a neviem, ako ich oddeliť. Pokiaľ ide o chybu, jedná sa o všeobecnú chybu pri nesúlade verzií softvéru (niečo v riadkoch „Nainštalujte príslušný redistribuovateľný produkt Crystal Reports (CRRedist * .msi) obsahujúci správnu verziu runtime modulu Crystal Reports (x86, x64 alebo Itanium). "). Bohužiaľ, nedokážem snímať chybu, pretože som na chvíľu nemal prístup k „čistému“ počítaču. Dostanem to, ak používam 64 bitový redistribuovateľný balík (pretože projekt, ktorý ho používa, je 32 bitov), ​​nedostanem ho Ak použijem 32 bitový redistribuovateľný balíček, tak efektívne je vyriešený.

odpovede:

0 pre odpoveď č. 1

Táto otázka v podstate zostáva nezodpovedaná.

Svoj problém som vyriešil lokalizáciou 1 knižnicektorý bol zostavený pre 32bitovú platformu (bez zvláštneho dôvodu, ako sa ukazuje) a jej obnovenie s cieľovou platformou nastavenou na „Akýkoľvek procesor“ (rovnako ako zvyšok projektu), čo mi zase umožnilo používať 64bitovú platformu redistribuovateľný balík, ktorý sa vyberie automaticky (namiesto toho, aby som nútil 32bitový, ako som pôvodne zamýšľal).

Odpoveď na táto otázka obsahuje príkaz PowerShell, ktorý kontroluje informácie o montáži (a cieľovú architektúru CPU), čo som použil na kontrolu každej večnej knižnice v mojom projekte a nájdenie toho, ktorý je zostavený ako x86.