Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Prokleti resors skriptovi u VC#-u

[es] :: .NET :: .NET Desktop razvoj :: Prokleti resors skriptovi u VC#-u

[ Pregleda: 4834 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Jox

Član broj: 4699
Poruke: 23
*.zre.sezampro.yu



Profil

icon Prokleti resors skriptovi u VC#-u14.08.2002. u 15:02 - pre 212 meseci
Patio sam se i sa .NET Framework SDK dokumentacijom, i sa MSDN-om, ali mi jos uvek nije jasan koncept tih resorsa... Kako da dodam neki proizvolji fajl u resors skripu, ne vezano za Image ili... znaci bilo koji fajl. I naravno kako da mu posle pristupim iz resorsa... i naravno ako je to sve jos moguce spakovati u DLL...
Ima ovde puno pitanja, ako je nego raspolozen moze da napise malo koda, mada bi mi i neki uski tutorial za to dobro dosao....
 
Odgovor na temu

degojs

Član broj: 4716
Poruke: 5096



+51 Profil

icon Re: Prokleti resors skriptovi u VC#-u15.08.2002. u 09:17 - pre 212 meseci
Za editovanje resurs fajlova mozes da koristis npr.
ResEditor - dolazi uz VS.NET (\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\Samples\Tutorials\resourcesandlocalization\reseditor)
.NET Resourcer - http://www.aisto.com/roeder/dotnet

Kada dodas proizvoljne fajlove u resurs, sacuvas citav resurs fajl kao npr. test2.resources, a zatim kasnije to dodas u svoj projekt (desni klik na projekt u Solution Explorer-u->Add->Add Existing Item-> pa pokazes na npr. test2.resources). Onda mozes da odredis kako ce taj resurs fajl biti ugradjen u tvoj projekt pomocu Build Action (na properties panelu): npr. Embedded Resource, vidi MSDN koje su moguce vrednosti za Build Action i sta znace.

Kasnije kada iz svog programa zelis da pristupis nekom fajlu npr:
u test2.resources sam dodao sliku ICSG.JPG (uz ime: icsg) i obicni tekst fajl IPCONFIG.TXT (ime: ipconfig). Kao tip Build Action sam stavio Embedded Resource (iz MSDN-a: "This file is embedded in the main project build output as a DLL or executable. It is typically used for resource files.").

Sada kada zelim da pristupim do slike iz koda:
Code:

Dim x As New System.Resources.ResourceManager("MyRootNSpace.test2", Me.GetType().Assembly)
PictureBox1.Image = CType(x.GetObject("icsg"), System.Drawing.Image)

ili ako zelim da procitam fajl u byte array:
Code:

 Dim s As System.Byte() = New System.Byte() {}
 s = CType(x.GetObject("ipconfig"), System.Byte())


MyRootNSpace je ime mog osnovnog NameSpace-a (desni klik na Project u Solution Explorer-u->Properties->General-> pa u text box-u desno Root Namespace; ovo sam sam izmenio u MyRootNSpace za ovaj primer; po defaultu stoji npr. WindowsApplication1 ili tako nesto - ime projekta i sl.).

pozdrav


P.S.
Mozes i da preskocis upotrebu ResEditor-a / .Net Resourcer-a i da fajlove direktno dodajes u projekt..

Commercial-Free !!!
 
Odgovor na temu

Jox

Član broj: 4699
Poruke: 23
*.zre.sezampro.yu



Profil

icon Re: Prokleti resors skriptovi u VC#-u15.08.2002. u 11:53 - pre 212 meseci
Ček bre stani polako... ovo je OK, ali treba mi nešto treće. Hoću da stavim neki fajl koji nije ni slika ni text u resorse... tj. konkretno hoću da strpam flash animacije u DLL fajl, tako da se baš ne vide u direktoriumu projekta... i da ne može svako da ih gleda... možda ovo i nemora preko resorsa, ali u svakom slučaju, ako imaš rešenje... prosledi ga ovamo...
 
Odgovor na temu

degojs

Član broj: 4716
Poruke: 5096



+51 Profil

icon Re: Prokleti resors skriptovi u VC#-u15.08.2002. u 13:16 - pre 212 meseci
Pa sta te sprecava da dodas neki SWF fajl u resurs fajl? Ja sam stavio gore ipconfig.txt samo kao primer i nigde nisam rekao da mora biti tekst fajl.
E sad, kako postici da flash kontrola pusti film direkt iz resursa (ili iz memorije) to je vec drugo pitanje i zaista nemam pojma kako bi to islo, ako je uopste i moguce.

Kako do izvora vodi vise putica, mozemo da raspakujemo SWF fajl iz resursa, ucitamo ga u memoriju i zatim obrisemo sa diska:

- dodaj SWF fajl u resurs, a resurs dodaj u projekt
- iz programa procitaj isti iz resursa (isto kao onaj gore ipconfig.txt) - imas niz bajtova koji predstavljaju fajl
- na osnovu byte niza kreiraj privremeni SWF fajl na disku.
- fajl ucitaj u memoriju: Me.AxShockwaveFlash1.LoadMovie(0, "x:\temp\flashmovie.swf")
- obrisi privremeni fajl sa diska kako radoznalci ne bi mogli da ga vide :)
- play ( Me.axshockwaveflash1.play() )

ili mozes da ih obrises kada izlazis iz aplikacije i slicno.

Ukoliko raspakivanje i ucitavanje u memoriju raznih resursa oduzima dosta vremena mozes da prilikom podizanja aplikacije prikazes splash screen slicno kao Word, Photoshop, itd. ili da ih raspakujes po potrebi...

pozdrav
Commercial-Free !!!
 
Odgovor na temu

*.net

Član broj: 4660
Poruke: 138
*.69.EUnet.yu



Profil

icon Re: Prokleti resors skriptovi u VC#-u20.08.2002. u 16:42 - pre 212 meseci
Mogu li reci sta bih ja uradio? :)
ja bih taj flashmovie preimenovao u na primer kkp.dll :) i onda bi svi mislili da je to dll i ne bi se sa dvoklikom palio flash, a mislim ali nisam probao da bi taj flash tako preimenovan radio kada ga ubacis u formu kao activeX kontrolu. Da li bi?
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: Prokleti resors skriptovi u VC#-u

[ Pregleda: 4834 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.