Thread View: alt.pl.comp.lang.csharp
6 messages
6 total messages
Started by Krzysztof
Thu, 15 Jan 2004 16:56
Blokada wykladania sie aplikacji
Author: Krzysztof
Date: Thu, 15 Jan 2004 16:56
Date: Thu, 15 Jan 2004 16:56
22 lines
1802 bytes
1802 bytes
Hi all Mam takie pytania: 1. Jak w kodzie .Net zaszyc sprawdzenie czy .Net jest zainstalowany. Nie chce by aplikacja na wstepie sie wykladala i pisala ze nie ma mscore.dll. Ewentualnie jak juz sie wyklada to jak przechwycic ten wyjatek i go zmianic na komunikat - przyczyne bledu? 2. Czy mozna przechwytywac w jednym miejscu wszystkie wyjatki aplikacji? Oczywiscie te nie przechwytywane w klasach/metodach? Powiedzmy pojawia sie cos niespodziewanego w watkach, warstwie sicei albo cos w tym stylu.... Hm, troszke metne, ale mam nadzieje ze ktos zrozumial. Myslalem o jakims mechanizmie, ktory sygnalizuje dla calosci kodu aplikacji, ze nieprzychwycone wyjatki obslugiwac "ta procedura obslugi wyjatkow". Inaczej, czy mozna dla kazdej klasy zdefiniowac domyslna metode obslugi bledow? 3. Wlasciwie rozwiniecie 2. Jak przechwytywac wyjatki Framework.Net by nie wlaczal sie ekran Debug? Pozdrawiam Krzysztof
Re: Blokada wykladania sie aplikacji
Author: Marcin
Date: Thu, 15 Jan 2004 19:09
Date: Thu, 15 Jan 2004 19:09
33 lines
1984 bytes
1984 bytes
Witam U�ytkownik "Krzysztof" <kkdi...@poczta.onet.pl> napisa� w wiadomo�ci news:bu6glm$l6s$1@news.onet.pl... > Hi all > > Mam takie pytania: > > 1. Jak w kodzie .Net zaszyc sprawdzenie czy .Net jest zainstalowany. Nie znam sie za dobrze na c# ale jak chcesz w apliakcji dzilajacej pod .Net sprawdzic czy jest zainstalowane .Net? Przeciez jak frameworka nie ma to program nie wykona zadnych instrukcji, ktore zaprogramowales.... W pliku EXE powstajacego z kodu c# pierwsza instrukcja (i jedyna zrozumiala dla komputera bez .Net) to wywoalnie DLLa. Jak nie ma zainstalowanego frameworka to nie znajdzie DLLa i koniec. Dalsze instrukcje sa niezrozumiale dla procesora. Rozwiazanie jakie mi przychodzi do glowy. Piszesz program (np. w VC++) kompilowany do kodu natywnego, ktory sprawdzi czy jest zainstalowany .Net i ewentualnie uruchomi wlasciwy program w .Net. Bardzo prawdopodobne, ze juz taki program powstal i wystarczy tylko poszukac ;) Pozdrawiam Marcin kupiesoftware (at) gazeta (dot) pl
Re: Blokada wykladania sie aplikacji
Author: Krzysztof
Date: Thu, 15 Jan 2004 19:23
Date: Thu, 15 Jan 2004 19:23
31 lines
2236 bytes
2236 bytes
> Nie znam sie za dobrze na c# ale jak chcesz w apliakcji dzilajacej pod > .Net sprawdzic czy jest zainstalowane .Net? Przeciez > jak frameworka nie ma to program nie wykona zadnych > instrukcji, ktore zaprogramowales.... > W pliku EXE powstajacego z kodu c# pierwsza instrukcja (i jedyna zrozumiala > dla komputera > bez .Net) to wywoalnie DLLa. Jak nie ma zainstalowanego frameworka > to nie znajdzie DLLa i koniec. Dalsze instrukcje sa niezrozumiale > dla procesora. > > Rozwiazanie jakie mi przychodzi do glowy. Piszesz program (np. w VC++) > kompilowany do kodu natywnego, ktory sprawdzi czy jest zainstalowany > .Net i ewentualnie uruchomi wlasciwy program w .Net. > Bardzo prawdopodobne, ze juz taki program powstal > i wystarczy tylko poszukac ;) > Pozdrawiam > Marcin Moje pytanie nasunelo mi sie przez analogie. Jak prubujesz uruchomic aplikacje windows pod DOS dostajesz komunikat, ze ta aplikacja chodzi tylko pod Windows 32 bit i cos tam dalej... W takim razie by dac taki komunikat musi byc zrobiona albo obsluga bledu, albo wgrany fragment kodu dzialajacy pod DOS. Wiec czy nie mozna do aplikacji .Net wgrac takiego fragmentu? Wiem ze to bardziej gdybanie niz pytanie, ale rozne mysli chodza czasem po glowie .... Pozdrawiam Krzysztof
Re: Blokada wykladania sie aplikacji
Author: Marcin
Date: Thu, 15 Jan 2004 20:43
Date: Thu, 15 Jan 2004 20:43
43 lines
2533 bytes
2533 bytes
Witam U�ytkownik "Krzysztof" <kkdi...@poczta.onet.pl> napisa� w wiadomo�ci news:bu6p8m$8dv$1@news.onet.pl... > > Moje pytanie nasunelo mi sie przez analogie. Jak prubujesz uruchomic > aplikacje windows pod DOS dostajesz komunikat, ze ta aplikacja chodzi > tylko > pod Windows 32 bit i cos tam dalej... Gdy _prObujesz_ ;) Aplikacja pod win32 to tak naprawde dwie aplikacje w jednym pliku exe. Jedna to normalna aplikacja win32 a druga to program dosowy. Polaczenie jest tak sprytne, ze w dosie zostanie uruchomiona aplikacja dla dosa i pokaze komunikat. W win32 wystartuje aplikacja dla win32 a dosowy kawalek nie bedzie wcale uruchamiany. To co zaproponowalem w swoim rozwiazaniu to wlaciwie to samo tylko, ze podane w sposob jawny. Teoretycznie mozna by z .Netem zrobic jak z apliakcjami win32, ale mi sie to nie podoba: - mieszanie kodu rzeczywistego i wirtualnego w jednym pliku. - .Net powinien byc przenosny na inne systemy/procesory (np. opensourcowy projekt mono). Mi sie nie podoba juz samo dodanie wywoalnia DLLa do kodu wirtualnego. Mozna bylo przeciez zrobic tak by programy skompilowane do .Neta dostaly inne rozszerzenie niz exe. Wtedy system widzac taki plik moglby sam wywolac odpowiedni dll. Np. tak jak pliki jar w Javie. Obecnie w mono to pierwsze wywolanie DLLa jest pomijane. Gdyby bylo tego wiecej (i o zmiennej dlugosci) to pewnie by sie pojawily problemy... Pozdrawiam Marcin
Re: Blokada wykladania sie aplikacji
Author: Pawel Zabza
Date: Thu, 15 Jan 2004 22:08
Date: Thu, 15 Jan 2004 22:08
45 lines
2894 bytes
2894 bytes
Witam, > Aplikacja pod win32 to tak naprawde dwie aplikacje w jednym pliku exe. > Jedna to normalna aplikacja win32 a druga to program dosowy. > Polaczenie jest tak sprytne, ze w dosie zostanie uruchomiona > aplikacja dla dosa i pokaze komunikat. > W win32 wystartuje aplikacja dla win32 a dosowy kawalek > nie bedzie wcale uruchamiany. Dokladniej, to tak moze byc ale nie musi. Format pliku EXE nie wymusza zeby w 'dosowej' czesci cokolwiek bylo - mozna zrobic taki EXE, ktory zawiera tylko kod windowsowy. > To co zaproponowalem w swoim rozwiazaniu to wlaciwie > to samo tylko, ze podane w sposob jawny. Zauwaz, ze o tym jak zostanie zrozumiana zawartosc pliku EXE decyduje loader OSa, na ktory to loader nie bardzo mamy wplyw (patrzac na sprawy praktycznie). Twoj pomysl (osobnego programu) jest jak najbardziej realizowalny (i bardzo mozliwe ze, jak przypuszczasz, juz zrealizowany). Dla mnie wic tylko w tym, ze taka czesc sprawdzajaca powinna byc wewnatrz EXE; MSCOREE nalezaloby usunac z sekcji imports zeby loader uruchomil program przy jej braku (zamist krzyczec), i trzebaby dodac kawalek sprawdzajacy istnienie runtime'u, ladujacy MSCOREE i wolajacy odpowiednia funkcje z tejze. Mnie to wyglada na szukanie guza =). [...] > Mi sie nie podoba juz samo dodanie wywoalnia DLLa do kodu wirtualnego. > Mozna bylo przeciez zrobic tak by programy skompilowane do .Neta > dostaly inne rozszerzenie niz exe. Wtedy system widzac taki > plik moglby sam wywolac odpowiedni dll. Np. tak jak pliki jar > w Javie. Dla mnie .NET jest czyms w rodzaju nowoczesnej wersji Win32 API. Nie wydaje mi sie, zeby standaryzacja jego fragmentow byla istotnym watkiem jego rozwoju, raczej pobocznym. Nie zeby mnie to martwilo - jestem windowsowym programista =). Pozdrawiam, Pawel
Re: Blokada wykladania sie aplikacji
Author: Marek Janaszewski USUNTO. z adre...
Date: Fri, 16 Jan 2004 18:58
Date: Fri, 16 Jan 2004 18:58
26 lines
2287 bytes
2287 bytes
W artykule news:bu730f$7h1$1...@news.onet.pl, niejaki(a): Pawel Zabza z adresu <pza...@poczta.onet.pl> napisał(a): [...] > Zauwaz, ze o tym jak zostanie zrozumiana zawartosc pliku EXE decyduje > loader OSa, na ktory to loader nie bardzo mamy wplyw (patrzac na > sprawy praktycznie). Twoj pomysl (osobnego programu) jest jak > najbardziej realizowalny (i bardzo mozliwe ze, jak przypuszczasz, juz > zrealizowany). Dla mnie wic tylko w tym, ze taka czesc sprawdzajaca [...] Witam! Może to rola dla instalatora, który sprawdza czy wszystko jest w systemie. Tylko sam instalator musi być aplikacją niezarządznom. Wydaje mi się, że Microsft ma jakieś rozwiązanie dla tego problemu. O ile pamiętam treść The .NET Show oraz doświadczenia z instalacji Borland C# Builder-a to wywoływany jest jakiś Bootstrap, który załatwia sprawę. Poszukaj: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconusingsetupexebootstrappersamplewithapplication.asp -- Pozdrawiam, Marek Janaszewski [ j_m...@gazeta.pl ]
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads