Co i gdzie trzeba ustawić w opcjach VS2010 żeby aplikacja uruchomiła się także na innym komputerze gdzie nie ma zainstalowanych żadnych .NET Frameworków?
Nie da się.
Są płatne aplikacje, które potrafią stworzyć wirtualne środowisko uruchomieniowe dla danej aplikacji, włącznie z .NET Frameworkiem. Ale mimo wszystko, Framework musi być.
Potwierdzam - nie da się bez frameworków :) Ale przecież nie da się nie mieć żadnych! XP ma .Net 1, Vista .Net 3 a Win7 .Net 3.5; zresztą biblioteki .Net w najnowszej wersji 4 mają około 100MB, więc pobranie ich to nie powinien być żaden problem:)
to chyba źle sie wyrazilem ;P
Nie wiem jak to dokładnie opisać o co mi chodzi ale dawniej jak tworzyłem w VS2008 to po odpaleniu aplikacji na innym kompie pojawił się błąd i program się nie uruchomił. Potem zmieniłem coś w ustawieniach VS2008 i po skompilowaniu plik exe przybrał na wadze no i wtedy już aplikacja poprawnie uruchomiła się na innym kompie. Najwyraźniej coś zostało dołączone do pliku, o ile dobrze sobie przypominam to chodziło o jakieś statyczne biblioteki. Nie znam się na tym czy może ktoś wie o co może chodzić? ;)
Co najwyżej możesz statycznie zlinkować runtime Visual C++, co w tym przypadku jest zupełnie nieistotne. Nie da się zrobić tego, o czym mówisz w taki sposób. NIE DA SIĘ. NIE DA SIĘ.
Wydaje mi się, że chodzi o to, że kompilowałeś w użyciu starszej wersji Frameorka :) Daje to mniejszą funkcjonalność, ale większą kompatybilność :)
Żeby to zrobić w SolutionExplorer klikach na Properties i w otartym oknie zmienić Target Framework na jakiś starszy(załączam linka do zdjęcia co i jak :))
<image> http://img9.imageshack.us/img9/4255/przechwytywaniewu.png</image>
Jesteście wszyscy pewni że się nie da? Wiem że jest do C# jakiś "prekompilator" kompilujący kod do postaci wykonywalnej, ale wiem też że jest w tym jakiś kruczek - którego zawsze zapominam... Za chwilę sprawdzę w książce w której to kiedyś wyczytałem.
Native Image Generator, Ahead Of Time Compilation. Nie ma to nic związanego z wymogiem posiadania Frameworka bądź nie.
Do Javy jest coś takiego: http://www.excelsior-usa.com/jet.html
Wspominając płatne rozwiązanie, które potrafi stworzyć wirtualne środowisko uruchomieniowe dla aplikacji włącznie z .NET Frameworkiem, jedno z nich to: http://spoon.net/Studio/
Mono ma za to narzędzie mkbundle
, który kompilator JIT i wszelkie assembly może umieścić w jednym pliku wykonywalnym. Czyli de facto, to co chcesz, ale działające tylko na Mono.
Visual Studio, ani .NET Framework nie posiadają i (raczej) nie przewidują takich możliwości. Zalecane jest raczej stworzenie instalatora, który ewentualnie (ściągnie i) doinstaluje Framework.
Ewentualnie użyć legendarnego Bartoka. ;)