Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C# framework 1.0

Zdravim, delam aplikaci a zakaznik chce, aby aplikace sla na vsech PC co maji windows XP. Chtel bych si tedy ujasnit:

1)Aplikace musi byt psana na framework 1.0
2)Muj vyvojarsky program podporuje frameworky 2.0 a vise, jak mam tedy udelat aby podporoval i 1.0

Dekuji

Předmět Autor Datum
*výše
jez 03.05.2009 13:02
jez
Ak to ma ist na vsetkych XP tak NESMIES pouzit ziaden framework. Pokial sa nemylim tak holy WinXP ne…
MM.. 03.05.2009 13:17
MM..
Velmi by mi pomohlo, jak nastavit aby vse bylo integrovane do exe souboru.
jez 03.05.2009 13:22
jez
Pisal som ze MOZNO. Google poznas? Hladaj. C# application run without framework Podla toho co som na…
MM.. 03.05.2009 13:46
MM..
ano jde to, ať googlí dál (z hlavy neřeknu)
programator 03.05.2009 14:40
programator
Ak to ma ist na vsetkych XP tak NESMIES pouzit ziaden framework. Presnejšie by bolo, že nesmie použ…
los 03.05.2009 14:39
los
Ja som to pochopil tak ze to ma ist na vsetkych PC ktore sa mozu vyskytnut kdesi, bez dodatocnych in…
MM.. 03.05.2009 15:00
MM..
Ak porovnávaš experta v C++ s niekým menejcenným, kto v podstate ani nevie programovať, tak potom án…
los 03.05.2009 15:25
los
Zavisi od typu aplikacie. Samozrejme ak to ma byt nejaky velmi zlozity klient-server system apod tak…
MM.. 03.05.2009 15:28
MM..
Prečo by mala byť aplikácia písaná pre .NET Framework 1.0? .NET Framework 2.0 funguje na Windows XP…
los 03.05.2009 14:26
los
Jde o to, ze v Net. frameworku 1.0 nespustis aplikaci psanou pro net. framework >1.0
jez 03.05.2009 14:39
jez
Tak nainštalujem .NET Framework 2.0 - kde je problém?
los 03.05.2009 14:40
los
Prave zakaznik to oduvodnil ze nechce zatezovat uzivatele dalsi instalaci. Proto jestli by se to vse…
jez 03.05.2009 14:56
jez
Inštaláciu .NET Frameworku môžeš zahrnúť do inštalácie svojho programu. To je štandardné riešenie to…
los 03.05.2009 15:00
los
S tym je ale trochu problem. Musel by pouzit iny installer, nie visual studio deployment. http://msd…
MM.. 03.05.2009 15:35
MM..
Na tom prvom odkaze je ešte aj: By default, the user will see a dialog box that gives him the choic…
los 03.05.2009 16:21
los
Takze kdyz si vytvorim (.NET Framework as part of a deployment project.) - Setup project ve visual s… poslední
jez 03.05.2009 17:17
jez
Neviem, o aký typ programu či druh zákazníka ide, ale ak pre teba inštalácia .NET Frameworku 2.0 nep…
los 03.05.2009 16:05
los

Ak to ma ist na vsetkych XP tak NESMIES pouzit ziaden framework. Pokial sa nemylim tak holy WinXP neobsahuju ziaden framework.

Urob exe ktore nepotrebuje k behu nic ine, t.j. idealne je pri takej poziadavke zakaznika pisat to napr. v C++ s pouzitim WinAPI, a nie v C#.
Mozno sa da nastavit aj C# prekladac aby vsetko potrebne integroval do exe, ale moze to exe potom byt hodne velke, netusim ja sa C# nezmyslu uspesne vyhybam. S C++ s pouzitim WinAPI vznikne 10x mensie exe ktore nepotrebuje k behu nic ine. Zakaznik asi velmi dobre vie preco taku poziadavku zadal, a nechapem preco ju zadal tebe kedze to vyzera ze to nie si schopny splnit.

Pisal som ze MOZNO. Google poznas? Hladaj. C# application run without framework
Podla toho co som narychlo nasiel to bez instalacie frameworku nejde (ale prejdi si preistotu vsetky nastavenia projektu ci tam nieco zaujimave neni)
Pouzi C++, nechapem co na tom dementnom C# vidis. Alebo to prenechaj niekomu inemu. Alebo kozultuj so zadavatelom ci je akceptovatelna instalacia 20MB framework 2.0 pred pouzivanim programu (na vacsine PC napr. s ATI CCC net framework instalovany je, inac by neslo ani to ATI CCC)

Ak to ma ist na vsetkych XP tak NESMIES pouzit ziaden framework.

Presnejšie by bolo, že nesmie použiť žiaden framework, ktorý na Windows XP nefunguje, čo nie je prípad .NET Frameworku.

Zakaznik asi velmi dobre vie preco taku poziadavku zadal...

Zákazník vie zrejme iba to, že má Windows XP, tak chce, aby mu to na ňom bežalo. Nejaké hlbšie myšlienkové pochody by som za tou požiadavkou nehľadal.

S C++ s pouzitim WinAPI vznikne 10x mensie exe...

...ktoré vznikne za 10x viac času a bude obsahovať 10x viac chýb. Nemám nič proti písaniu aplikácií v C++, ale rýchlosť a veľkosť programu nie sú vždy to najdôležitejšie. A ak sú, tak bývajú jasnou súčasťou zadania, čo zrejme nie je tento prípad.

Ja som to pochopil tak ze to ma ist na vsetkych PC ktore sa mozu vyskytnut kdesi, bez dodatocnych instalacii. Inac by zakaznik asi nehovoril ze to ma ist na vsetkych PC s WinXP. Ale pisal som potom nech si to overi ci instalacia frameworku pred instalaciou programu je akceptovatelna.

Co sa tyka o tom case a chybach, to VZDY zavisi to od programatora. Ja mozem tvrdit ze v C# programuje kazdy deb (o com svedcia aj podaktore otazky na poradni z minulosti), clovek nevidi co sa deje vo frameworku, a potom ten program aj tak vyzera. Ked robi expert v C++ tak z toho vznikne kvalitnejsia aplikacia, s mensim poctom chyb a rychlejsie ako ked deb robi nieco v C#. A laik si na C++ s WinAPI alebo MFC netrufne, ptz je to nad jeho chapanie. Aj preto ak by som bol zadavatel tak dam podmienku C++ ptz je vacsia pravdepodobnost ze to bude robit expert a ze nedostanem zlepenec od deba.

Ak porovnávaš experta v C++ s niekým menejcenným, kto v podstate ani nevie programovať, tak potom áno, závisí to od programátora. Vo všeobecnosti je ale programátor produktívnejší v C# - inak by sa ten jazyk a platforma .NET asi tak neujali.

Ak by si bol zadávateľ, tak by si sa asi pozeral aj na to, koľko za taký program zaplatíš a ako dlho naň musíš čakať. A takmer každému zadávateľovi je práve kvôli tomu prakticky jedno, v čom je to napísané, ak to funguje.

Zavisi od typu aplikacie. Samozrejme ak to ma byt nejaky velmi zlozity klient-server system apod tak je to ine, a je potom lepsie ked to robi v jave prip. C#, ale nech to robi expert.
Predpokladam ale v tomto konkretnom pripade ze pojde o nejaku malu aplikaciu ktora by bezala bez instalacie. Keby to bol velky zlozity system tak by mal zadavatel na haku nejaky 20MB framework.

Prečo by mala byť aplikácia písaná pre .NET Framework 1.0? .NET Framework 2.0 funguje na Windows XP bez problémov.

Nevidím dôvod obmedzovať sa na 1.0. Keď už nie 2.0, tak minimálne 1.1 (nad verziou 1.0 by som ani nerozmýšľal). Každopádne písať novú .NET aplikáciu v niečom staršom ako .NET 2.0 už príliš nedáva zmysel.

S tym je ale trochu problem. Musel by pouzit iny installer, nie visual studio deployment.
http://msdn.microsoft.com/en-us/library/aa301507(V S.71).aspx

Installers built using Visual Studio deployment also require the .NET Framework; therefore, you cannot install the .NET Framework as part of a deployment project.

a navyse "Although it cannot be distributed" - neviem ci tam nie su nejake licencne zadrhele v tom redistribuovani frameworku..
P.S. ale asi je to mozne redistribuovat
http://msdn.microsoft.com/en-us/library/xak0tsbd.a spx

You can manually launch and install the .NET Framework on a computer, install it across a network using an electronic software distribution tool, or launch and install it as part of the setup program for a .NET Framework application.

ale pozriet si preistotu poriadne EULA a redist.txt u frameworku...

P.S. srat sa s tym to je jak nejaky novodoby C# masochizmus :-)

Na tom prvom odkaze je ešte aj:

By default, the user will see a dialog box that gives him the choice of going to a Microsoft Web site to download the .NET Framework.

Možno to bude stačiť.

Keďže nepoznáme ani cieľovú skupinu a ani zákazníka, tak sa nedá povedať, že aké úsilie bude potrebné pre inštaláciu, ktorá vyhovuje požiadavkám. Niekomu to stačí napísať do inštalačnej príručky a pre sliepky sa to musí spraviť tak, aby stačilo iba nasypať zrno na Enter.

Takze kdyz si vytvorim (.NET Framework as part of a deployment project.) - Setup project ve visual studiu tak bych si tam nekde mel najit, aby si pri sputeni zjistilo jestli je na danem PC netframework. Pokud neni, tak to odkaze uzivatele na stranky microsoftu kde si prislusny framework stahne.

Neviem, o aký typ programu či druh zákazníka ide, ale ak pre teba inštalácia .NET Frameworku 2.0 neprichádza do úvahy ani ako súčasť inštalácie tvojho programu, tak je otázka, či je vhodný .NET Framework 1.0, ktorý je súčasťou Windows XP tuším až od SP1.

Ďalšou otázkou je, čo presne je tvoj vývojarský program. Napríklad Visual Studio 2005 podporuje len .NET Framework 2.0. Aby si mohol preložiť program pre .NET Framework 1.0, budeš potrebovať buď Visual Studio 2002 alebo .NET Framework 1.0 SDK, z ktorého využiješ csc kompilátor (cez príkazový riadok).

Ďalšou možnosťou je zvoliť taký programovací jazyk, ktorý sa dá skompilovať a spustiť bez toho, aby potreboval nainštalované niečo iné - najlepšie asi C++.

Poslednou možnosťou je skompilovať .NET program do klasického exe aj s jeho prostredím tak, ako písal MM.. vyššie. Jedným z takých nástrojov je napríklad Xenocode Postbuild for .NET, ktorý je ale platený. Je síce možné, že výsledný program bude mať cca takú veľkosť ako celý framework, ale možno to bude aj fungovať. Túto možnosť neodporúčam.

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