Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C++CLI / VB .Net / .Net-Framework » Framework Security Settings?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
16.10.2006, 23:57 Uhr
Wauschi



Hallo Kollegas,

ich habe mein erstes Projekt mit VS8 (.NET 2005) in C# fertiggestellt und leider festgestellt, dass die Applikation nur auf meinem Rechner funktioniert!

Sind jetzt zwei Monate Arbeit umsonst?

Auf dem 2. Testrechner habe ich auch XP und Framework 1.1 bzw. 2.0 installiert, trotzdem läuft nichts.

Kann es sein, dass das and den "Security Settings" liegt?
Bzw. wie kann ich im VS8 festlegen, dass ich jetzt ein Projekt kompilieren möchte das auf jedem Rechner (mit Framework 2.0) funktioniert?

Danke,
Lg,
Wauschi

P.S.: Ich sehne mich nach den guten alten Zeiten von VS6 wo man ein Programm geschrieben hat das einfach überall gelaufen ist...

P.P.S.: Da fällt mir ein: Wo ist der Vorteil wenn man Applikationen entwickelt die nirgends ausführbar sind? Oder fällt das nicht ins Gewicht wenn man eine Macht besitzt?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.10.2006, 10:36 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Sie funktioniert ziemlich sicher wonanderst, weil das Binary das du verteilst aus Code besteht, das ähnlich wie bei Java von einer Virtual Machine (Common Language Runtime (CLR)) ausgefürt wird. Diese muss aber eben installiert sein auf dem Zielrechner. Dann funktioniert das auch. Es geht aber eben nicht, das .NET2.0 Code auf einer 1.1 Machine ausgeführt wird ...
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
17.10.2006, 11:09 Uhr
ao

(Operator)



Zitat von Wauschi:
Auf dem 2. Testrechner habe ich auch XP und Framework 1.1 bzw. 2.0 installiert, trotzdem läuft nichts.

Na welches Framework denn, 1.1 oder 2.0? Und was heißt das, es läuft nichts? Gehts etwas genauer?

Zitat:
Kann es sein, dass das and den "Security Settings" liegt?

Hast du was verstellt?

Zitat:
Bzw. wie kann ich im VS8 festlegen, dass ich jetzt ein Projekt kompilieren möchte das auf jedem Rechner (mit Framework 2.0) funktioniert?

Du bist aufm Holzweg, so ne Einstellung gibts nicht. Wenn das nicht geht, hast du was falsch gemacht.

Woraus besteht dein Projekt, aus einer einzigen Exe oder gehören auch DLLs dazu? Schau mal ins Verzeichnis <MeinProjekt>\bin\Debug oder <MeinProjekt>\bin\Release, im Prinzip musst du alles, was da liegt, auf den Zielrechner kopieren.

Zitat:
P.S.: Ich sehne mich nach den guten alten Zeiten von VS6 wo man ein Programm geschrieben hat das einfach überall gelaufen ist...

Du hast über mehrere Monate den aufrechten Gang geprobt (Studio 2005, C# und .NET), und jetzt willst du wieder auf alle Viere, weil du mal gestolpert bist?

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
17.10.2006, 11:29 Uhr
~Wauschi
Gast


@ J-jyzz-Z: Es sind beide Frameworks installiert 1.1 und 2.0. Die Applikation wurde mit VS8 erstellt, daher nehme ich an, dass auf jeden Fall 2.0 am Zielrechner installiert sein muss.

@ao: An den Security Settings habe ich nichts verstellt.
Es freut mich zu hören, dass man da nichts einstellen muss. Ich würde gerne eine genauere Fehlerbeschreibung liefern, ab er die Applikation startet einfach nicht, keine Fehlermeldung, nichts....

Ich habe das Programm erstellt (mit F5 und F6) und die benötigten .dlls in den /Release u. /Debug Ordner kopiert. Beide, Release u. Debug laufen auf meinem und einen weiteren Rechner auf dem VS8 installiert ist einwandfrei. Der Zielrechner hat jedoch nur XP mit Framework 2.0 installiert. Wenn ich auf diesen die .exe mit dlls kopierte und versuche die Applikation mit Doppel-Klick zu starten rührt sich nichts. Auch im Task-Manager ist nichts vom Programm zu finden.

Danke für die ersten Hinweise!

Lg,
Wauschi
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
17.10.2006, 11:46 Uhr
ao

(Operator)


Guck mal, ob im Event Viewer was zu sehen ist.
Start -> Einstellungen -> Systemsteuerung -> Administrative Tools -> Event Viewer.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
17.10.2006, 12:54 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)



Zitat von ~Wauschi:
@ J-jyzz-Z: Es sind beide Frameworks installiert 1.1 und 2.0. Die Applikation wurde mit VS8 erstellt, daher nehme ich an, dass auf jeden Fall 2.0 am Zielrechner installiert sein muss.

Daran wird es liegen. Woher soll der Rechner wissen, welche CLR er nutzen soll ?

btw.: Ich heiße J-jayz-Z
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
17.10.2006, 13:22 Uhr
~Wauschi
Gast


@ ao: Danke für den wertvollen Hinweis mit dem Event Viewer. Ich bekomme 3 Arten von Errors:

Event Viewer -> System:

Dependent Assembly Microsoft.VC80.DebugCRT could not be found and Last Error was The referenced assembly is not installed on your system.

Generate Activation Context failed for FRelease\AS5243.dll. Reference error message: The operation completed successfully.

Resolve Partial Assembly failed for Microsoft.VC80.DebugCRT. Reference error message: The referenced assembly is not installed on your system.

Offenbar habe ich das Programm nicht richtig compiliert, oder auf dem Zielrechner fehlt was.

Habt ihr eine Idee?

@ J-jayz-z: Ja, das ist eine gute Frage. Wie legt man sowas fest?

Ich sehe schon ein Licht am Ende des Tunnels
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
17.10.2006, 13:31 Uhr
ao

(Operator)



Zitat von ~Wauschi:
Dependent Assembly Microsoft.VC80.DebugCRT could not be found and Last Error was The referenced assembly is not installed on your system.

Das ist es.

Du hast die Debug-Version deines Programms auf den Testrechner kopiert (aus <MeinProjekt>\bin\Debug). Auf dem Testrechner ist aber nur die .NET 2.0 Runtime installiert, und die enthält nur die Releaseversionen des Laufzeitsystems, und die passen nicht dazu. Du musst eine Release-Version bauen und auf den Testrechner bringen.

Auf dem dritten Rechner (dem mit VS8) funktionierte es deshalb, weil zum VS8 auch das .NET Framework SDK gehört, und das bringt die Debug-Version der Runtime mit.

Dieser Post wurde am 17.10.2006 um 13:31 Uhr von ao editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
17.10.2006, 13:49 Uhr
~Wauschi
Gast


Ich compiliere ein "Release" durch drücken von F6. Dann kopiere ich die Dateien aus dem /Release Ordner auf den Zielrechner.

Was habe ich da vergessen einzustellen?

Ich habe auch schon versucht alles aus dem /Release zu löschen, neu zu compilieren und auf dem Zielrechner auszuführen. Irgenwas mache ich anscheinend beim erstellen eines Releases falsch.

Lg,
Wauschi
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
17.10.2006, 13:49 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Jo, es hat schon einen Grund, das es einmal ein Release und einmal ein Debug Verzeichniss in jedem Projekt hat. Die Debug verhällt sich etwas anders wie die Release. Die Debug Version verhällt sich Entwicklerfreundlicher - wozu man natürlich eine andere CLR benötigt. Die wird normalerweise von VS zur Verfügung gestellt. Die Release Version nutzt die normale CLR von .NET
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C++CLI / VB .Net / .Net-Framework ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: