Běh aplikace na serveru   zodpovězená otázka

VB.NET, Bezpečnost

Dobrý den,

mám historické prográmky z Visual Basic 5, které všechny jdou bez problému spouštět z počítačů v síti, ať je aplikace na stanici nebo na serveru . Ale aplikace udělané ve VB .NET však spustit nejdou.

Konkrétní případ: aplikace je na serveru s V2K, na něm spustit jde, při pokusu o spuštění ze stanice se nic neděje, ani žádná hláška, ani spuštění. Podobná aplikace udělaná ve VB 6 jde bez problému.

Poradíte?

Dík. V.R.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Máte nainstalovanou na stanicích správnou verzi .NET Frameworku? Popřípadě zkoušel jste tam pustit například jen prázdnou formulářovou aplikaci?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ano, všude jsou instalované verze 2 .NET Framework a jiná aplikace, konkrétně had ze zdejšího "Začínáme", šlape.

Je divné, že nedostanu žádné echo. Hádám to na nějaké omezení práv ve Famework, ale nevím které a kým. Práva k aplikaci jsem dal i pro Everyone a přidal SYSTEM, bez úspěchu. Aplikace, o kterou jde zejména, nedělá při spuštění nic víc, než otevře formulář s text a picture boxy, radio a normálními tlačítky a nabídkou a a čeká na volbu uživatele. Jsou tam ale i dialogy pro práci se složkami a soubory a fonty. Použijí se však až po volbě uživatele.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Je to hodně zvláštní, já to zkoušel u serveru 2k3 a vše bylo bez problémů.

A když takto nasdílený program přesunete pomocí tohoto sdílení na lokální disk stanice, pak funguje?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Přístupy k datům jsou přes uživatelská práva, ne sdílení, kopírování aplikace ze stanice na server nebo naopak nic nezmění. Lokálně aplikaci vždy spustit lze a pracuje bez chyby, po síti ne.

Jsem nyní jinde, ale odpoledne zkusím prázdný formulář a postupně přidávat jednotlivé komponenty.

Ještě upřesnění:

Na žádné z předmětných stanic ani na serveru není Visual Basic .NET 2005 Express Edition ani jiná součást VS, ani .NET Framework SDK, pouze .NET Framework Version 2.0 Redistributable Package. Musím také prověřit, zda mají SP1 (vyšší snad není).

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Redistributable package by stačit měl. Zkuste ještě v aplikaci dvakrát kliknout na vlastnosti projektu (My Project v seznamu sobuorů projektu) a na záložce Security zaškrtnout Enable ClickOnce Security a vybrat This is a full trust application. Je možné, že politiky na serveru toto vyžadují.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Díky za spolupráci (všem).

Vámi navrhované nastavení již aplikace měla a naopak "Hungry Snake" a "NetBoard" ono nastavení nemají a běží.

Vyzkoušel jsem, že na "tiché nespuštění" mají vliv dialogy pro práci se soubory (OpenFileDialog a SaveFileDialog). Zkusil jsem je přidat do "NetBoard" a applikace nejde spustit. I bez úprav, tedy originální program "NetBoard" při ukončení z nabídky hlásí chybu, při ukončení křížkem nikoliv. Zkusil jsem ukončovací End vyměnit za Application.Exit, výsledek je stejná chyba. Mám detailní výpis, ale má 87 řádků, tak zde je jen začátek:

"************** Exception Text **************

System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.

at System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)

at System.Security.CodeAccessPermission.Demand()

at System.Windows.Forms.Application.Exit(CancelEventArgs e)

at System.Windows.Forms.Application.Exit()

................"

Chyba se vyskytuje jen při spuštění po síti, lokálně ne.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zkoušel jsem googlit, hledat na msdn a podobnou chybu jsem nikde nezaznamenal.

Napadá mě, že může být chyba v ukládání konfigurace do XML souborů. To se ukládá při ukončování programu a dialogy tam přidávají poslední adresáře.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Není to zase tak neznámý problém a na internetu se dají najít variace potíží s mscorlib v ASP, C#, při práci s cerifikáty a pod. Ke změně práv slouží program C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CasPol.exe - ale moc mu nerozumím a navíc na serveru není - verze 1.1... nebyla instalována, rovnou verze 2 a navíc nejsem správce serveru a ten odmítá nastavení měnit.

Děkuji tedy za spolupráci. Aplikace poběží tedy na stanicích a teprve výstupy půjdou na server.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Možná bych doporučoval napsal na MSDN. Tam často poradí i s takto hlubokými problémy.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback