Hej! hej, Låter bra Johan! hej, Tack för ditt svar! När du lägger en resursfil som embeded så är den inkompilerad i din dll. Jag har nu tittat runt lite(ex här http://www.codeproject.com/dotnet/embeddedresources.asp?df=100&forumid=13286&exp=0&select=837258) och det ser ju ut som att man måste på förhand känna till namespace och namn, man får alltså ingen intellisense, och detta gör då också att kontroller som man kan använda bilder från resursfiler och liknande kommer inte fungera utan jag måste göra en manuell tilldelning? Precis det finns ingen intelli... Men är du smart kan du bygga en fasad klass i ditt projekt där du har resurserna som ger dig det du vill ha och i dess metoder ange sökvägen eller vad man skall kalla det hårdkodat.. eg.Resurs filer?
Säg att jag vill bygga ett projekt som håller alla resurser(bilder, ljud, text mfl). Detta projekt är tänkt att ingå i flera andra projekt för att levera dessa delade resurserna.
I projectet skapas den del resx(resur) filer, frågan är nu hur jag kan göra dem tillgängliga i mina andra projekt? Det verkar inte räcka med att dra upp en referens till mitt resurs projekt?Sv: Resurs filer?
Du kan skapa ett eget projekt om du vill där du lägger till resurser ex. filer, sen kan du välja att just dessa skall kompileras in som resurs. Därefter kan du lätt dela på dessa resursdll:er mellan flera projekt. Tycker detta är det snyggaste och bästa sättet än blanda in resx...
mvh JohanSv:Resurs filer?
Men kan du förklara lite mer detaljerat?
Jag använder idag resx filer(flera stycken för olika kategorier) i mitt class library, men du menar alltså att jag inte ska använda dessa? Vad är det då jag ska använda och var hittar jag dem?
Kommer filerna att kopileras in till en dll som man sen kan referera till i andra projekt eller kommer det på något vis bli flera dller?Sv: Resurs filer?
Det heter embeded resource om jag inte mins fel.
Ta ett tomt projekt. Lägg in filer i mappar om du vill i ditt projekt precis som du lägger till bilder, filer, klasser. Men i propertyn för bilden kan man välja hur de skall fårhållas till projektet.
Ex compile, embeded etc... Build Action heter propertyn. Detta kommer betyda att alla dina filer kommer att kompileras in i Dllen. dvs just det projektet.
Här är ett kort exempel hur du sedan kan plocka ut saker ur din dll.
OBS! <the assembly> är din dlls instans.
<default namespace.><extended namespace.><filename>
Är hur du skall ange för att få tag i den.
<extended namespace.>
Är typ om den ligger i en mapp då skall det namnet in här.
Här är hur du kan få ut en data stream som du sedan får hantera och konvertera till den
typ det egentligen är..
System.IO.Stream stream = <the assembly>.GetType().Assembly.GetManifestResourceStream(<default namespace.><extended namespace.><filename>)
Mvh JohanSv:Resurs filer?
Jag har nu satt Build Action på samtliga bilder(nästlade i kataloger) i bitt resurs project(myapp.Resources)
Jag har sen refererat till detta project(dll) i min winklient, men när jag skriver myapp.Resources så får jag inte upp något mer? Har jag missförstått hur du menar? jag trodde att jag skulle få upp kataloger här? och sen bilder?Sv: Resurs filer?
Du kan plocka ut resurserna (filerna) via resource klasserna. SOm exemplet jag gav dig.
Det viktiga är att skriva rätt sökväg till den inom ens DLL.
Dvs
har du filen i rooten på ditt projekt så är sökvägen dit bara namespacet har du lagt en fil i en mapp så skall du ha med namspeace o mappens namn.
Du kan nog hitta en del exempel som förklarar allt detta.
mvh JohanSv:Resurs filer?
Stämmer detta? Finns det något vis att bygga in resx filer i en dll och sen komma åt dem från ett annat projekt?Sv: Resurs filer?
image bild = ResourceContainer.GetImage("nisse.jpg");
eller kanke tom:
image bild = ResourceContainer.GetNisseImage();
Mvh Johan