Diskuze: WPF aplikace se nechce spustit na jiných počítačích
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 18 zpráv z 18.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Musíš si udělat instalačku, samotné .exe ani samo od sebe fungovat
nemá.
project>properties>publish
A neměl bych spíše vytvořit nový Setup projekt v mém solution?
Přesto by měl jít .exe spustit - když má framework nainstalovaný .
Mně se naopak už stalo, že aplikace po instalaci nešla spustit a musel jsem
to řešit právě instalací .NET a spouštěním .exe
Myslím, že by. NET aplikace měly jít spustit na dnešních windowsech, neboť má Windows tento framework již v sobě. To už podle mě musí být problém někde u mě, pokud by měly jít .exe soubory spustit.
Když vytvoříš aplikaci a obsah adresáře Bin/Release někam zkopíruješ (na jakýkoliv PC), tak to musí jít spustit, pokud je tam .NET minimálně stejný jako vyžaduje aplikace.
Tak v tom případě můj problém zůstává nevyřešen.
A co ti přesně nejde? Nepoužíváš v programu nějakou knihovnu třetích stran, kterou jsi zapomněl přidat do release? Nakopíroval jsi celý obsah toho adresáře na cílové PC? Nemáš ho zkompilovaný pouze pro 32bit PC a nesnažíš se ho spustit na 64bit?
Ano, mělo by to teoreticky jít, ale není to způsob, jakým bys chtěl distribuovat tvou appku. Protože:
Jenže když chceš testovat aplikaci na jiném pc, tak jí určitě nechceš pokaždé instalovat, spíš chceš nějakou portable verzi.
Jak jsem psal výše, zkoušel jsem spustit čisté WPF bez ničeho. Takže knihovnami by to být nemělo.
Jinak na jednom počítači mi to spustit jde, na druhém však ne.
Ve VS v Properties projektu v záložce Build jsem zkoušel nastavil cílovou
platformu "Any CPU" i x86, ani jedno nefunguje. Systém na kterém to testuji je
32 bitový, procesor 64 bitový.
Já mám za to, že když je systém 64 bitový, tak rozjede 32 bitový
software, nikoliv naopak.
Zkoušel jsem to i přes instalačku, také nic. Už opravdu nevím, co dělám špatně.
Pokud chceš, aby program fungoval na 64bit stroji, musíš ho zkompilovat na x86. AnyCPU nefunguje.
Však jsem před chvílí psal, že jsem to zkoušel s nastavením AnyCPU a aji x86 a ani jedno nefunguje.
Když jsem zkusil projekt postavit na verzi 64 a spustit ho na testovaném počítači, tak mě OS upozornil, že tato aplikace nemůže být spuštěna na tomto OS, což je pochopitelné, neboť je systém 32 bitový.
Nesmí být konfigurace na x64, ale na x86 - ta funguje i na 32 i na 64
Já vím. Konfigurace na x64 se vyplatí pouze v době, kdy aplikace potřebuje více jak 2 GB RAM paměti. Uvedl jsem to tu zde jen pro informaci.
Také jsem už dvakrát psal, že s konfigurací x86 mi to nefunguje.
Mám pocit, že to s RAM až tak úplně nesouvisí. X64 na 32bitech nejede a
x86 jede na obojím... 64bitové stroje umí využít víc než 4GB RAM,
32bitové umí využít necelé 4GB.
Něco musíš mít asi špatně nastavené ve VS, protože když udělám
jakoukoliv appku s konfigurací x86, můžu ji spustit na čemkoliv, co má
odpovídající .NET.
Zobrazeno 18 zpráv z 18.