[ Pazarac @ 26.04.2004. 11:10 ] @
Da li neko ima otvoren kod u C++ za program koji bi pokretao neki fajl (npr *.swf)
koji nije *.EXE a nalazi se na CD-u.

Hvala unaprijed.

Za moderatore

Zamolio bih moderatore foruma da mi objasne zasto se moje poruke brisu.

Ovu poruku postavljam drugi put samo zato sto moderatoru passengeru nije bilo jasno sljedece:

"Kakav fajl? Format (elf, a.out...) ili tip (zip, doc, pdf, ps...)?"

Razumijem da sam bio nejasan (pocetnik sam), ali mi nije jasno zasto je poruka morala biti obrisana samo zbog toga.

Posto se ovo ne desava prvi put, volio bih da znam da li su moje poruke iz nekog razloga nepozeljne na ovom forumu.
[ Milan Aksic @ 26.04.2004. 15:34 ] @
Naravno, da tvoje poruke nisu nepozeljne na ovom forumu, sto se mene tice. Medjutim, kako veoma mali broj clanova foruma (u stvari mogu se izbrojati na prstima jedne ruke) poseduju sposobnost telepatije, odnosno citanja misli, morao si da nevedes vise detalja umesto da ocekujes da se ti clanovi, sa pomenutom sposobnoscu, jave i umesto tebe dopisu pitanje (u obrisanoj poruci nisi naveo "*swf"). Forma pitanja, nema veze s tim da li si pocetnik ili nisi (u kojoj god oblasti da si mislio). Usput, koliko ja znam, tebi sam obrisao samo jednu poruku.
Sto se tice ove rasprave na ovom forumu, ona se ovde se ovde zavrsava. Zamolio bih te da ako imas bilo kakvo pitanje u vezi sa istom, napises privatnu poruku. Hvala.
[ Milan Aksic @ 27.04.2004. 00:01 ] @
S obzirom na "pitanje". Na primer za "pokretanje" *.swf fajlova, postoje programi koji su "otvorenog kooda", npr. "Mozilla" (grubo). Mada je potreban "flash plugin", bez problema otvara sve *.swf fajlove na CD-u, a takodje (za ne verovati) "pokrece" i *.html fajlove, koji su takodje, na CD-u.
[ leka @ 06.05.2004. 12:18 ] @
Khm i na Windows-u i na GNU/Linux-u je situacija maltene ista. Ako je taj tip fajlova registrovan MIME tip onda se pokrece tzv. default viewer kad se pokusa otvaranje fajla. Dovoljno je u autorun.inf (na Linux-u postoji vise "resenja") stavis "open" tog fajla i on ce se pokrenuti.

Slazem se u potpunosti sa gospodinom "passenger" u vezi kritika. Nisi nam dao dovoljno podataka, ovo gore sto sam rekao sam samo nagadjao.
Evo sta konkretno nisi rekao - da li zelis fajlove da "otvoris"/pokrenes iz neke svoje C/C++ aplikacije? Ako je odgovor DA, onda ovo gore resenje se pretvara u neko drugo - tada koristis ShellEx ili *exec*() ili system() da bi "pokrenu" fajl...
[ Pazarac @ 13.05.2004. 18:18 ] @
Citat:
leka:
Khm i na Windows-u i na GNU/Linux-u je situacija maltene ista. Ako je taj tip fajlova registrovan MIME tip onda se pokrece tzv. default viewer kad se pokusa otvaranje fajla. Dovoljno je u autorun.inf (na Linux-u postoji vise "resenja") stavis "open" tog fajla i on ce se pokrenuti.

Slazem se u potpunosti sa gospodinom "passenger" u vezi kritika. Nisi nam dao dovoljno podataka, ovo gore sto sam rekao sam samo nagadjao.
Evo sta konkretno nisi rekao - da li zelis fajlove da "otvoris"/pokrenes iz neke svoje C/C++ aplikacije? Ako je odgovor DA, onda ovo gore resenje se pretvara u neko drugo - tada koristis ShellEx ili *exec*() ili system() da bi "pokrenu" fajl...


Obzirom da autorun.info u Windowsu može da pokrene samo neki *.exe fajl (valjda ne grešim), a meni je potrebno da se samim ubacivanjem CD-a pokrene *.swf datoteka, pretpostavljam da treba napisati programčić koji treba da pokrene *.swf datoteku.

Znači:

- autorun.inf pokreće *.exe fajl
- *.exe fajl pokreće *.swf datoteku.

Sad mene interesuje kako u C++ napisati pomenuti programčić, tj. kako ću koristiti "ShellEx ili *exec*() ili system() da bi "pokrenuo" fajl"?

Hvala unapred.
[ filmil @ 13.05.2004. 19:05 ] @
Zar nije dovoljno napraviti autorun.inf u kome stoji ime nekog .exe programa dok datoteka o kojoj je reč stoji kao parametar:

run=program.exe datoteka.swf

Ne razumem se u windowse pa ne znam kako tačno treba da izgleda linija, ali deluje logično...

f
[ slavkot @ 13.05.2004. 21:53 ] @
Probaj sa :
ShellExecute(NULL, "open", " *.swf ",0," E:\\staza do fajla\\ ",SW_SHOW);
[ Pazarac @ 15.05.2004. 09:01 ] @
Citat:
slavkot:
Probaj sa :
ShellExecute(NULL, "open", " *.swf ",0," E:\\staza do fajla\\ ",SW_SHOW);


ne ide
[ leka @ 15.05.2004. 18:33 ] @
Gresis - mozes otvoriti bilo sta cija je ekstenzija registrovana - otvaranjem .html fajla na primer startuje se DEFAULT HTML viewer, uglavnom Internet Exploder...

Citat:
Pazarac:
Obzirom da autorun.info u Windowsu može da pokrene samo neki *.exe fajl (valjda ne grešim)

[ MilošV @ 17.05.2004. 09:31 ] @
Leka je u pravu, mozes pokrenuti bilo koji registrovani fajl.

A cini mi se da u "Standalone flash player"-u postoji opcija File->Make executable tj. nesto sto ce ti od *.swf napraviti *.exe...
[ Pazarac @ 17.05.2004. 09:36 ] @
Citat:
leka:
Gresis - mozes otvoriti bilo sta cija je ekstenzija registrovana - otvaranjem .html fajla na primer startuje se DEFAULT HTML viewer, uglavnom Internet Exploder...




Probah... ako u autorun.inf stavim bilo sta osim exe fajla dobijam samo poruku:

E:\ is not valid Win32 application.
[ filmil @ 17.05.2004. 10:26 ] @
Ovaj... a šta ako kod mene CD-ROM nije na slovu E?

f
[ MilošV @ 17.05.2004. 11:03 ] @
nemoj stavljati cijelu putanju, samo ime_fajla.swf (ili relativnu putanju, dakle: folder_na_cdu\ime_fajla.swf) jer se autorun.inf vec nalazi na cd-u :)
[ Pazarac @ 20.05.2004. 12:16 ] @
Pa tako sam bio i uradio.
[ blaza @ 20.05.2004. 16:59 ] @
Posto ti niko nije konkretno pomogao pokusacu ja.
Pogledaj .ISO file unutar .ZIP arhive u attachment-u.
Naci ces preradjen VS6.0 C++ Win32 "Hello World" project - start.exe, autorun.inf koji pokrece isti pri ubacivanju CDa, default ikonu za CD koja se prikazuje u Explorer-u, .SWF film i source od start.exe spakovan u .ZIP file.
Da bi bio u mogucnosti da prikazes .SWF file, nije obavezno da postoji registrovana
aplikacija za otvaranje .SWF file-ova, dovoljno je da postoji aplikacija koja moze da
otvori .SWF file - iniciranje otvaranja .SWF fajla se moze postici prosledjivanjem
odgovarajucih command line parametara. U primeru .SWF file otvara Internet Explorer (iexplore.exe), kome se kao command line parametri prosledjuje params = "-k file://path_do_swf_file_a\swffile.swf".
-k je switch za kiosk mode - fullscreen.
( ShellExecute(NULL, "open", "iexplore", params, NULL, SW_SHOW); )

Sve ovo moze da radi ako je instaliran Macromedia-in Flash plugin.
Start.exe je budzevina ali radi.

Ako ne zelis da zavisis od mogucnosti IE da otvori .SWF, ja strongly suggest da,

ako si u mogucnosti, otvoris .SWF file jednim od Flash Player-a, i konvertujes ga u
.EXE file sa ugradjenim Flash Projector-om. Jedino sto ti je potrebno tada je autorun.inf file sa sledecim sadrzajem:

[autorun]
open = swffile.exe
[ blaza @ 20.05.2004. 17:56 ] @
Jedna zanimljivost:
Ubacite u obican "Hello World" projekat, na pocetku WinMain() :
MessageBox(NULL, GetCommandLine(), "Test", MB_OK);
Ako startujete dobijenu aplikaciju (hello.exe npr.), komandna linija koja ce biti prikazana je uokvirena znacima navoda: "D:\Kesa\hello.exe";
Ako sad taj (hello.exe) fajl, zajedno sa autorun.inf fajlom:

[autorun]
open = hello.exe

snimite na CD, ili pak namestite image file (UltraISO) koji cete ubaciti u neki virtual CD program (Daemon Tools), nakon autostarta komandna linija koja ce biti prikazana u MessageBox-u NECE biti enkapsulirana znacima navoda M:\hello.exe.

Da li neko moze da objasni zbog cega dolazi do ovog fenomena?
Primer iz proslog posta (code - dole) je "podesen" da radi kada se ucitava sa CDa pri autostartu.
Za prikaz .SWF fajla startom sa HDD mora se odstraniti vodeci znak navoda ".

Code:

    #define PARAMS "-k file://"
    #define SWFNAME "film.swf"
    ...

    char path[MAX_PATH];
    char params[MAX_PATH*2];
    
    strcpy(path, GetCommandLine());
    for(int j = strlen(path); j>0; j--)
        if(path[j] == '\\')
            break;
    path[j+1] = 0;
    sprintf(params, "%s%s%s", PARAMS, path, SWFNAME);
    ShellExecute(NULL, "open", "iexplore", params, NULL, SW_SHOW);



Ispravka: Mozda je bolje:
for(int j = strlen(path) - 1; j > 1 ; j--) i sl. ; efektivno se ne dobija na nicemu
[ Pazarac @ 03.06.2004. 08:59 ] @
Blazo, hvala ti puno na pomoci.

Za one kojima treba autorun html fajla evo programcica u atacmentu (nasao sam ga u medjuvremenu).

Sada me jos samo interesuje kako bi se run.exe mogao napisati u c++.