Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

1

19.08.2009, 19:13

[.Net] Resourcenassembly und Visual Studio 2005 Designer

Ich bin gerade dabei zu prüfen, ob ich in meinem aktuellen .Net Projekt ein Großteil der Resourcen (hauptsächlich Bilder) in eine eigene DLL auslagern kann. Das würde es mir bei meiner Plugin Architektur halt erleichtern, immer auf den gleichen Grundstock zurückzugreifen.

Eine "Resource Only" Assembly zu erstellen ist dabei kein Problem. Das Problem ist es dem Visual Studio klarzumachen, dass es in dieser DLL tolle Bilder findet :?

Ich steh dabei vor dem folgenden Dialog:

(Link)


Hier kann ich jetzt entweder eine Datei extra Laden oder auf die Projektweite .resx Datei zugreifen. Nur auf eine externe Assembly scheine ich nicht zugreifen zu können.

Natürlich könnte ich die Bilder auch ganz "normal" über den ResourcenManager aus der DLL laden und dann von Hand zuweisen ... Aber auf den Aufwand hab ich keinen Nerv.

Ich hab die Hoffnung ja eigentlich schon aufgegeben, aber vielleicht hat ja hier noch jemand eine Idee? Ist diese Funktion vielleicht sogar ins VS2008 oder 2010 integriert worden?

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

2

19.08.2009, 19:29

Was spricht dagegen das Assembly in der Solution zu haben?

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

3

19.08.2009, 19:41

Oh, hatte ich mich da falsch ausgedrückt? Das "Assemblyprojekt" ist natürlich teil der Solution. Und das Projekt, das auf die Resourcen zugreifen möchte, hat das Resourcenprojekt natürlich auch als Verweis eingetragen.

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

4

19.08.2009, 20:53

Dann seh ich nich ganz das Problem das du hast.

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

5

19.08.2009, 21:39

In dem Dialog im Screenshot gibt es keine Möglichkeit, auf die Resourcen in der Resourcen Assembly zuzugreifen. Der Dialog ist quasi im eigenen Projekt "gefangen".

Und ich frag mich halt ob es doch eine Möglichkeit gibt, auf Resourcen in anderen Projekten über den Visual Studio Designer zuzugreifen. Also z.B. für die Image Property eines Buttons über das Visual Studio GUI ein Bild in der Resourcen DLL auszuwählen.

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

6

20.08.2009, 14:19

ich will ja nichts falsches sagen, aber ich glaube das geht nur bei den Versionen wo man was bezahlen muss, jedenfalls habe ich so was ähnliches mal bei heise gelesen. Es kann auch sein, dass dies nur in der prof. Version geht.

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

7

20.08.2009, 15:14

Stimmt, das wäre natürlich möglich.

Zuhause hab ich die Standard Version, die werd ich dann wohl mal dahingehend testen. Und sonst muss ich eben noch warten, bis die Editionen seitens meiner FH für mich bereitgestellt werden =)

Als Workaround funktioniert folgendes mehr oder weniger gut:
1) In der Resource.Designer.cs der jeweiligen resx Datei nach jeder Änderung an der resx Datei alle "internal" Modifizierer durch public ersetzen. Oder halt mit friend Assemblies arbeiten. Sonst hat man, naheliegenderweise, keinen Zugriff auf die Resourcen.

2) Im visuellen Designer für das betreffende Bild ein Dummybild auswählen.

3) In der .Designer.cs Datei der in 2) editierten Klasse die Referenz zum Dummybild umbiegen auf die in 1) public gemachte Resourceneigenschaft.

Hoffe das ist verständlich, umständlich ist es auf jeden Fall.

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

8

20.08.2009, 15:29

Zitat von »"Das Gurke"«


Zuhause hab ich die Standard Version, die werd ich dann wohl mal dahingehend testen. Und sonst muss ich eben noch warten, bis die Editionen seitens meiner FH für mich bereitgestellt werden =)


Ich freue mich auch.. :
http://msdn40.e-academy.com/elms/Storefront/Storefront.aspx?campus=ethz_depart&np1=112

*lecker*. :D - Wenn da noch Adobe drinn wäre... 8)

Werbeanzeige