[ shpiki @ 18.05.2005. 16:42 ] @
Potrebna mi je komanda koje ce pokrenuti neki video fajl (avi, mpg, mgep...) u Windows Media Player-u. |
[ shpiki @ 18.05.2005. 16:42 ] @
[ mladenovicz @ 18.05.2005. 17:48 ] @
Code: Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _ (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _ ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Const SW_SHOWNORMAL = 1 Private Sub Form_Load() ShellExecute Me.hwnd, vbNullString, "C:\SomeFile.avi", vbNullString, "C:\", SW_SHOWNORMAL End Sub [ shpiki @ 19.05.2005. 11:56 ] @
Meni je potrebno da program sam pronadje video fajl (avi, mpeg, mpg...)
Pravim nesto kao AutoRun za CD-ove i potrebno je da klikom na odredjeno dugme krene video (koji je definisan za to dugme) [ nsofft @ 19.05.2005. 20:13 ] @
Koristi kod koji ti je mladenovicz dao samo umesto ovog :
Code: Private Sub Form_Load() ShellExecute Me.hwnd, vbNullString, "C:\SomeFile.avi", vbNullString, "C:\", SW_SHOWNORMAL End Sub Stavi : Code: Private Sub command1_Click() ShellExecute Me.hwnd, vbNullString, "C:\SomeFile.avi", vbNullString, "C:\", SW_SHOWNORMAL End Sub Ili vec kako ti je dugme definisano. [ shpiki @ 20.05.2005. 09:49 ] @
OK, a da li moze umesto ovog
Code: ShellExecute Me.hwnd, vbNullString, "C:\SomeFile.avi", vbNullString, "C:\", SW_SHOWNORMAL da stoji: Code: ShellExecute Me.hwnd, vbNullString, App.Path & "\Video\SomeFile.avi", vbNullString, "C:\", SW_SHOWNORMAL I da li mora da bude *.avi, ili moze i neka druga extenzija (npr. MPG, MPEG...)??? [ nsofft @ 20.05.2005. 10:28 ] @
Trebalo bi da moze mada nisam siguran
Probaj pa ces videti:) [ shpiki @ 20.05.2005. 10:35 ] @
OK, Moze sa App.Path, Probao sam...
![]() P.S. Još mi je bitno da se taj video fajl pokrene u WindowsMedia Player-u! (kao što određeni Autorun-ovi filmove pokreću u, recimo, MicroDVD Player-u, ja bih hteo da se video fajlovi pokrenuti pomocu mog Autorun-a pokrenu u WinMedia Player-u) ![]() [ shpiki @ 20.05.2005. 16:08 ] @
Ljudi, treba mi pomoć da napravim My Own AutoRun progy!!!
Hteo sam da ga napravim, ali pošto sam početnik u VB, maaalooo(!) mi ne ide. ![]() Problem je u tome što ne znam kako da napravim da progy izčitava podatke iz ini-ja (video sam na forumu nekoliko pitanja na ovu temu, ali mi nikako nije jasno kako to da napravim). Drugi problem je što bih ja da napravim AutoRun koji će video fajlove pokretati u WinMediaPlayer-u... (ideja je da progy koristi to što svaki Windows ima instaliran WinMediaPlayer, pa da tako pokreće fajlove...PROBLEM!) Znači, trebaju mi kodovi za: 1) Izčitavanje podataka iz ini-ja; 2) Pokretanje video fajlova (imam neke kodove od Mladenovic_ Z-a, ali to nije ono mi treba); 3)Video fajl mora(!) biti pokrenut u WinMediaPlayer-u *** Kao što ostali AutoRun programi pokreću video fajl (film, najčešće) u npr. MicroDVD Player-u (kod njih se player nalazi direktno na CD-u), ja bih da moj program pokrene video fajlove u WinMediaPlayer-u (koji je instaliran na compu) Ako neko zna kako ovo da uradim (i hoće da mi kaže i pomogne) molim ga da mi to objavi na ovom forumu!!! HVALA!!! ![]() ![]() [ shpiki @ 20.05.2005. 16:12 ] @
Da, još nešto...
Što se tiče koda koji su mi da li MladenovicZ i nsofft ::> Code: ShellExecute Me.hwnd, vbNullString, "C:\SomeFile.avi", vbNullString, "C:\", SW_SHOWNORMAL to je OK i funkcioniše (probao sam da ubacim App.Path & "\SomeFile.avi"), ali interesuje me da li je moguće da ovo Code: "C:\SomeFile.avi" program sam izvuče iz ini-ja?? Ako je moguće, KAKO GLASI CODE?? [ Marko_L @ 20.05.2005. 17:45 ] @
1.) Za pisanje i čitanje iz ini fajla, pogledaj ovo
http://www.elitesecurity.org/tema/9629/ http://www.elitesecurity.org/tema/85101/ http://www.elitesecurity.org/tema/26410/ 2.) i 3.) Za puštanje u Media Playeru Code: Shell "C:\Program Files\Windows Media Player\wmplayer.exe /Play C:\SomeFile.avi" Naravno, putanja do WMPlayera mora biti ta koja je napisana, pa to može predstavljati problem.Trebao bi da pogledaš funkcije za pronalaženje putanje Program Files foldera.O tome i još nekim stvarima u vezi putanja imaš ovde http://www.elitesecurity.org/tema/60048/ Onaj kod koji ti je mladenovicz ostavio otvara fajl u default playeru što ti je možda i najbolja solucija. [ shpiki @ 20.05.2005. 19:10 ] @
Putanja do WMPlayera nije problem, frka nastaje kada progy treba da otvori fajl...
Hocu da ga napravim tako da se samo editovanjem ini-ja menja i funkcija programa (promenom vrednosti za svaki Button, menja se i njegova uloga) Dakle, potrebno mi je da program cita putanju do fajla iz ini-ja, znači da ono Code: "C:\someFile.avi" ShellExecute Me.hwnd, vbNullString, < OVO ČITA IZ INI-ja >, vbNullString, "C:\", SW_SHOWNORMAL program sam procita iz ini-ja (za to cu mu odrediti posebno koja linija je za fajl) [ Marko_L @ 20.05.2005. 20:20 ] @
Pa, ja ti dadoh 3 teme na kojima imaš detaljno objašnjenje kako upisati ili pročitati nešto iz ini fajla.Jesi li ih barem pogledao ?
[ Shadowed @ 20.05.2005. 20:24 ] @
I sta je tu problem? Napravi promenljivu tipa String i u nju procitaj iz .ini fajla putanju. Posle samo umesto putanje u ShellExecute napisi ime promenljive.
[ shpiki @ 21.05.2005. 10:50 ] @
E ljudi, daj da malo olakšamo stvar... Neću da koristim .ini, koristiću neki .txt fajl.
Probao sam sa promenljivom (definisao sam promenljivu sa FILM) i samo mi pokrene WMPlayer, UOPŠTE NE UČITAVA FAJL!!! Može li neko da da najprostiji primer kako da pročitam red iz txt fajla(i da je definišem nekom promenljivom) i da u Shell ubacim tu promeljivu... Ja sam probao ovako: Code: Private Sub Command1_Click() Dim FILM As String Open App.Path & "\test.txt" For Input As #1 Do While Not EOF(1) Line Input #1, FILM Shell "C:\Program Files\Windows Media Player\wmplayer.exe /Play FILM", vbNormalFocus Loop Close #1 End Sub Pogrešio sam, to je sigurno(čim neće da otvori fajl) samo ne zne gde? [ Aleksandar Ružičić @ 21.05.2005. 11:43 ] @
pokusaj ovako:
Code: Private Sub Command1_Click() Dim FILM As String Open App.Path & "\test.txt" For Input As #1 Do While Not EOF(1) Line Input #1, FILM Shell "C:\Program Files\Windows Media Player\wmplayer.exe /Play " & FILM, vbNormalFocus Loop Close #1 End Sub [ shpiki @ 21.05.2005. 12:14 ] @
OK, To je TO!! RADI!
[ shpiki @ 21.05.2005. 19:46 ] @
Dobro, sad ćete reći da ni sam ne znam šta hoću...
1) Probao sam sa *.txt fajlom, i radi kada upišem kompletan PATH (C:\Video\NekiFajl.mpg), ali NEĆE da radi kada koristim App.Path (App.Path & "\Video\NekiFajl.mpg")! Kako ovo da napravim??? 2) Malo sam experimentisao sa *.ini-jem i svidelo mi se kako radi... [ ![]() Probao sam ovako: Code: Private Sub Form_Load() Fajl$ = "C:\INI\Player.ini" WriteProfile "Dugme1", "Naziv", "Pusti film", Fajl$ WriteProfile "Dugme1", "Film", "C:\Autorun\Video\Killer.avi", Fajl$ Command1.Caption = GetProfile("Dugme1", "Naziv", "No Data", Fajl$) End Sub Private Sub Command1_Click() Dim Film As String Film = GetProfile("Dugme1", "Film", "No Data", Fajl$) Shell "C:\Program Files\Windows Media Player\wmplayer.exe /Play " & Film, vbMaximizedFocus End Sub INI fajl mi izgleda ovako: [Dugme1] Naziv=Pusti film Film=C:\Video\Killer.avi VIDI li neko problem, i ako vidi (a i ako ne vidi ![]() ![]() P.S. da li može ovo "C:\Video\NekiFajl.mpg" da se zameni sa App.Path & "\Video\NekiFajl.mpg"??? [ Aleksandar Ružičić @ 21.05.2005. 22:52 ] @
ovako, napravi ovakav ini:
Code: [Dugme1] Naziv=Pusti Film Film=\Video\Killer.avi i isprobaj ovaj kod: Code: Dim Fajl As String Private Sub Form_Load() Fajl = App.Path & "\Player.ini" Command1.Caption = GetProfile("Dugme1", "Naziv", "No Data", Fajl) End Sub Private Sub Command1_Click() Dim Film As String Film = App.Path & GetProfile("Dugme1", "Film", "No Data", Fajl) Shell "C:\Program Files\Windows Media Player\wmplayer.exe /Play " & Film, vbMaximizedFocus End Sub Player.ini mora da ti se nalazi u istom folderu sa tvojim programom i taj folder (u kome se oni nalaze) mora da ima podfolder "Video" koji ima fajl "Killer.avi" :p uostalom snacices se... poz [ shpiki @ 22.05.2005. 21:33 ] @
Vec sam provalio u čemu je stvar, ali u svakom slučaju HVALA TI!!!
![]() Ja sam napravio ovako: Code: Private Sub Command1_Click() Fajl$ = App.Path & "\Player.ini" Shell "C:\Program Files\Windows Media Player\wmplayer.exe /Play" _ & App.Path & "\" & GetProfile("Dugme1", "Pokreni", "No Data", Fajl$), vbMaximizedFocus End Sub Private Sub Form_Load() Fajl$ = App.Path & "\Player.ini" Me.Caption = GetProfile("Opšte", "Naslov", "No Data", Fajl$) Command1.Caption = GetProfile("Dugme1", "Naziv", "No Data", Fajl$) End Sub Sad imam drugi problem (bilo bi čudno da nemam)... Namestio sam: Code: Private Sub Form_Load() Image1.Picture = LoadPicture(App.Path & "\" & GetProfile("Opšte", "Slika", "", Fajl$)) End Sub Problem je što mi prikazuje grešku kada je mesto pored slike prazno(Slika= <nema ništa> u ini-ju)... Prikazuje Path not found! ![]() Kako da namestim da kada putanja(i fajl) kod slike nisu upisani, u Image1 ne bude slika? [ Marko_L @ 22.05.2005. 22:06 ] @
Pa logično da ti vraća Path not found, kad mu daješ App.Path + "\" + prazan string, pa dobiješ nešto tipa "C:\Player\" i naravno nigde fajla :)
Stavi jednu prostu proveru ima li nečega u ini-ju pa ako ima onda učitaj.Nešto ovako Code: Private Sub Form_Load() If GetProfile("Opšte", "Slika", "", Fajl$) = "" Then Image1.Picture = LoadPicture(None) Else Image1.Picture = LoadPicture(App.Path & "\" & GetProfile("Opšte", "Slika", "", Fajl$)) End If End Sub [ shpiki @ 22.05.2005. 23:16 ] @
OK, shvatio...
![]() Imam još jedan problem... Kako bih mogao da namestim da se klikom na određeno dugme(Command Button) pojavi određena (ista forma za svako dugme samo sa različitim Captionom) forma i da Caption te forme bude ime (name) kliknutog dugmeta??? Znam kako se prikazuje forma: Code: 'Recimo za Dugme1 Private Sub Dugme1_Click() Form4.Show, Me 'e sad bi trebao da se prikaže Caption forme kao ime kliknutog dugmeta Form4.Caption = Dugme1.Name End Sub Da li moram za svako Dugme da pravim posebno na Click Event da se Caption forme menja ili je moguće napraviti uopšteno za svako Dugme npr. BILO koje Dugme (na Click event) da Caption forme bude ime tog dugmeta Code: Private Sub BiloKojeDugme_Click() Form4.Caption = <kliknuto dugme.Name> End Sub P.S. Inače, imam 10 takvih Dugmića(zovu se Dugme1, Dugme2... Dugme10) i glupo je da za svako dugme definišem da na Click Event caption forme bude ime samog dugmeta... [ Aleksandar Ružičić @ 23.05.2005. 00:05 ] @
zasto je glupo? :D
samo da vidis kod programa koji sad pravim... mozes da napravis control array: postavi na formu jedno dugme (recimo Command1), onda ga kopiraj (desni klik pa Copy) i pastuj na formu (opet desni klik, al sad na formu, pa Paste) i kad te bude pitao oces li da napravis control array ti kazi yes, klikni dvaput na bilo koje dugme, otvorice ti se Code window, e sad samo treba da otkucas ovaj kod: Code: Private Sub Command1_Click(Index As Integer) Form4.Show Form4.Caption = Command1(Index).Caption End Sub [ shpiki @ 23.05.2005. 14:58 ] @
Umesto CAPTION:
Code: Private Sub Command1_Click(Index As Integer) Form4.Show Form4.Caption = Command1(Index).Caption End Sub meni treba NAME ::> Code: Private Sub Command1_Click(Index As Integer) Form4.Show Form4.Caption = Command1(Index).Name End Sub Hoću NAME da bih mogao da ga iskoristim za INI: Code: Private Sub Command1_Click() Fajl$ = App.Path & "\Player.ini" Form4.Show Form4.Caption = Command1.Name WriteProfile Form4.Caption, "Naslov","ništa",Fajl$ 'sad dolazi dalje kod ':) . . . End Sub Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|