 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.03.2007, 14:20 Titel: [gelöst] Videos in fb anzeigen?? |
|
|
weiß jemand wie man Windows Media Video 8/9 (Pro) anzeigen kann? oder geht nur avi?
welche videotypen kann man überhaupt in fb anzeigen/abspielen lassen, die sound unterstützen?? _________________ If hilfreicher_Beitrag then klick(location.here)
Klick
Zuletzt bearbeitet von csde_rats am 03.03.2007, 17:51, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Build0815

Anmeldungsdatum: 30.09.2006 Beiträge: 51
|
Verfasst am: 02.03.2007, 15:23 Titel: |
|
|
Hallo,
Du könntest versuchen die AVI-Funktionen der WinApi (avifil32.dll) zu benutzen, damit solltest du eigentlich dann alle Formate abspielen können die du willst, vorrausgesetzt, es ist der passende Codec installiert.
VB Beispielcode findet sich zB im Programm "API-Guide 3.7". (Im Prog. zB. bei: Groups-AVI-AviFileOpen-Examples)
(Irgendwie scheint die alte Herstellerseite von dem Programm nur noch aus Werbung zu bestehen, aber google findet bestimmt das richtige ) |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
Build0815

Anmeldungsdatum: 30.09.2006 Beiträge: 51
|
Verfasst am: 02.03.2007, 15:42 Titel: |
|
|
Also mit dem Code der unten folgt, kann man ein Avi file öffnen allerdings fehlt noch irgendwas, weil er nur schön die Dimensionen des avi files anzeigt es aber nicht abspielt.
Zitat: |
The AVIFileOpen function opens an AVI file and returns the address of a file interface used to access it. The AVIFile library maintains a count of the number of times a file is opened, but not the number of times it was released. Use the AVIFileRelease function to release the file and decrement the count. |
Code: |
Const OF_SHARE_DENY_WRITE As Long = &H20
Type AVIFILEINFO
dwMaxBytesPerSec As Long
dwFlags As Long
dwCaps As Long
dwStreams As Long
dwSuggestedBufferSize As Long
dwWidth As Long
dwHeight As Long
dwScale As Long
dwRate As Long
dwLength As Long
dwEditCount As Long
szFileType As String * 64
End Type
Declare Function AVIFileOpen Lib "avifil32.dll" Alias "AVIFileOpenA" (ppfile As Long, ByVal szFile As String, ByVal mode As Long, pclsidHandler As Any) As Long
Declare Function AVIFileRelease Lib "avifil32.dll" Alias "AVIFileRelease" (ByVal pfile As Long) As Long
Declare Function AVIFileInfo Lib "avifil32.dll" Alias "AVIFileInfoA" (ByVal pfile As Long, pfi As AVIFILEINFO, ByVal lSize As Long) As Long
Declare Sub AVIFileInit Lib "avifil32.dll" Alias "AVIFileInit" ()
Declare Sub AVIFileExit Lib "avifil32.dll" Alias "AVIFileExit" ()
Dim hFile As Long, AviInfo As AVIFILEINFO
'initialize the AVIFile library
AVIFileInit()
'create a handle to the AVI file
If AVIFileOpen(hFile, "C:\test.avi", OF_SHARE_DENY_WRITE, ByVal 0&) = 0 Then
'retrieve the AVI information
If AVIFileInfo(hFile, AviInfo, Len(AviInfo)) = 0 Then
Print("AVI Dimensionen: " & Str(AviInfo.dwWidth) & "x" & Str(AviInfo.dwHeight))
Else
Print("Avi-Informationen konnten nicht gelesen werden!(")
End If
'release the file handle
AVIFileRelease hFile
Else
Print("Avi konnte nicht geöffnet werden!")
End If
'exit the AVIFile library and decrement the reference count for the library
AVIFileExit
Sleep
|
Zuletzt bearbeitet von Build0815 am 02.03.2007, 16:01, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 02.03.2007, 16:12 Titel: |
|
|
Er hatte gesagt, es gibt einen Beispielcode - zwar in VB, aber die Sprachen sind sich recht ähnlich. Und WinAPI-Aufrufe bleiben sowieso gleich.
Also wie wär's, wenn du's vllt. einfach mal selbst versuchst und dann den Source zeigst, wenn's nicht funktioniert? _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 02.03.2007, 20:07 Titel: |
|
|
ich habe den folgenden source gefunden, aber der fbc meldet mir einen ganzen haufen fehlermeldungen, über "end-of-line" blabla :
Code: |
1
2
3 #include once "windows.bi"
4 #include once "win/commctrl.bi"
5 #include once "win/ole2.bi"
6 #include once "movctrl/movctrl.bi"
7
8 const WIN_TITLE = "movie Test"
9
10 const WIN_WIDTH = 800
11 const WIN_HEIGHT = 600
12
13 const WIN_TOOLBAR_STYLE = TBSTYLE_FLAT or CCS_TOP
14
15 enum
16 WIN_TOOLBAR_FIRSTID = WM_USER
17 WIN_TOOLBAR_BUTTON_GOBACK = WIN_TOOLBAR_FIRSTID
18 WIN_TOOLBAR_BUTTON_GOFORWARD
19 end enum
20
21 const WIN_TOOLBAR_BUTTONS = 2
22
23 '' globals
24 dim shared as movctrl ptr movie = NULL
25 dim shared as HWND toolbar = NULL
26
27 dim shared as integer WIN_TOOLBAR_HEIGHT = 24
28
29 ''::::
30 private sub movie_onresize _
31 ( _
32 byval wdt as integer, _
33 byval hgt as integer _
34 )
35
36 if( movie = NULL ) then
37 exit sub
38 end if
39
40 if( hgt > WIN_TOOLBAR_HEIGHT ) then
41 hgt -= WIN_TOOLBAR_HEIGHT
42 else
43 hgt = 0
44 end if
45
46 movctrl_Move( movie, _
47 0, _
48 WIN_TOOLBAR_HEIGHT, _
49 wdt, _
50 hgt )
51
52 end sub
53
54 ''::::
55 private sub toolbar_onresize _
56 ( _
57 byval wdt as integer, _
58 byval hgt as integer _
59 )
60
61 SendMessage( toolbar, WM_SIZE, 0, 0 )
62
63 end sub
64
65 ''::::
66 private sub toolbar_onclick _
67 ( _
68 byval hwnd as HWND, _
69 byval id as integer _
70 )
71
72 if( movie = NULL ) then
73 exit sub
74 end if
75
76 select case as const id
77 case WIN_TOOLBAR_BUTTON_GOBACK
78 'movctrl_GoBack( movie )
79 case WIN_TOOLBAR_BUTTON_GOFORWARD
80 'movctrl_GoForward( movie )
81 end select
82
83 end sub
84
85 ''::::
86 private function win_cb _
87 ( _
88 byval hwnd as HWND, _
89 byval uMsg as UINT, _
90 byval wParam as WPARAM, _
91 byval lParam as LPARAM _
92 ) as LRESULT
93
94 select case uMsg
95 case WM_SIZE
96 dim as integer wdt = LOWORD( lParam ), _
97 hgt = HIWORD( lParam )
98
99 movie_onresize( wdt, hgt )
100
101 toolbar_onresize( wdt, hgt )
102
103 return 0
104
105 case WM_DESTROY
106 PostQuitMessage( 0 )
107 return 0
108
109 case WM_COMMAND
110 if( lParam <> NULL ) then
111 select case LOWORD( wParam )
112 case WIN_TOOLBAR_FIRSTID to WIN_TOOLBAR_FIRSTID + WIN_TOOLBAR_BUTTONS - 1
113 toolbar_onclick( cast( HWND, lParam ), LOWORD( wParam ) )
114 end select
115
116 end if
117 end select
118
119 return DefWindowProc( hwnd, uMsg, wParam, lParam )
120
121 end function
122
123 ''::::
124 private function toolbar_oncreate _
125 ( _
126 byval parent as HWND _
127 ) as HWND
128
129 dim as HWND hwnd
130
131 function = NULL
132
133 InitCommonControlsEx( @type<INITCOMMONCONTROLSEX>( len( INITCOMMONCONTROLSEX ), ICC_BAR_CLASSES ) )
134
135 hwnd = CreateWindowEx( WS_EX_DLGMODALFRAME, _
136 TOOLBARCLASSNAME, _
137 NULL, _
138 WS_CHILD or WS_VISIBLE or WIN_TOOLBAR_STYLE, _
139 0, _
140 0, _
141 CW_USEDEFAULT, _
142 CW_USEDEFAULT, _
143 parent, _
144 NULL, _
145 cast( HINSTANCE, GetWindowLong( parent, GWL_HINSTANCE ) ), _
146 NULL )
147
148 if( hwnd = NULL ) then
149 exit function
150 end if
151
152 SendMessage( hwnd, TB_BUTTONSTRUCTSIZE, len( TBBUTTON ), NULL )
153
154 SendMessage( hwnd, TB_ADDBITMAP, 0, cint( @type<TBADDBITMAP>( HINST_COMMCTRL, IDB_HIST_LARGE_COLOR ) ) )
155
156 dim as TBBUTTON button(0 to WIN_TOOLBAR_BUTTONS-1)
157
158 '' go back
159 with button(0)
160 .iBitmap = HIST_BACK
161 .fsState = TBSTATE_ENABLED
162 .fsStyle = TBSTYLE_BUTTON
163 .idCommand = WIN_TOOLBAR_BUTTON_GOBACK
164 end with
165
166 '' go forward
167 with button(1)
168 .iBitmap = HIST_FORWARD
169 .fsState = TBSTATE_ENABLED
170 .fsStyle = TBSTYLE_BUTTON
171 .idCommand = WIN_TOOLBAR_BUTTON_GOFORWARD
172 end with
173
174 SendMessage( hwnd, TB_ADDBUTTONS, WIN_TOOLBAR_BUTTONS, cast( LPARAM, @button(0) ) )
175
176 SendMessage( hwnd, TB_AUTOSIZE, 0, 0 )
177
178 ''
179 dim as SIZE tbsize
180 SendMessage( hwnd, TB_GETMAXSIZE, 0, cast( LPARAM, @tbsize ) )
181 WIN_TOOLBAR_HEIGHT = tbsize.cy + HIWORD( SendMessage( hwnd, TB_GETPADDING, 0, 0 ) ) + 2
182
183 function = hwnd
184
185 end function
186
187 ''::::
188 private function window_oncreate _
189 ( _
190 byval hInstance as HINSTANCE _
191 ) as HWND
192
193 dim as zstring ptr className = @"movie_test"
194 dim as WNDCLASSEX wc
195 dim as HWND hwnd
196
197 function = NULL
198
199 with wc
200 .cbSize = len( WNDCLASSEX )
201 .lpfnWndProc = @win_cb
202 .hInstance = hInstance
203 .lpszClassName = className
204 '.style = CS_HREDRAW or CS_VREDRAW
205 end with
206
207 RegisterClassEx( @wc )
208
209 hwnd = CreateWindowEx( 0, _
210 className, _
211 WIN_TITLE, _
212 WS_OVERLAPPEDWINDOW, _
213 CW_USEDEFAULT, _
214 WIN_WIDTH, _
215 CW_USEDEFAULT, _
216 WIN_HEIGHT, _
217 NULL, _
218 NULL, _
219 hInstance, _
220 0 )
221
222 function = hwnd
223
224 end function
225
226 ''::::
227 private function movie_oncreate _
228 ( _
229 byval parent as HWND, _
230 byval filename as wstring ptr _
231 ) as movctrl ptr
232
233 dim as movctrl ptr ctrl
234
235 function = NULL
236
237 if( len( filename ) = 0 ) then
238 exit function
239 end if
240
241 ctrl = movctrl_Create( parent, _
242 0, _
243 WIN_TOOLBAR_HEIGHT, _
244 WIN_WIDTH, _
245 WIN_HEIGHT-WIN_TOOLBAR_HEIGHT )
246
247 if( ctrl = NULL ) then
248 exit function
249 end if
250
251 if( movctrl_Load( ctrl, filename ) = FALSE ) then
252 movctrl_Destroy( ctrl )
253 exit function
254 end if
255
256 if( movctrl_Play( ctrl ) = FALSE ) then
257 movctrl_Destroy( ctrl )
258 exit function
259 end if
260
261 function = ctrl
262
263 end function
264
265 ''::::
266 private function WinMain _
267 ( _
268 byval hInstance as HINSTANCE, _
269 byval hPrevInstance as HINSTANCE, _
270 byval szCmdLine as string, _
271 byval nCmdShow as integer _
272 ) as integer
273
274 dim as MSG msg
275 dim as HWND win
276
277 if( len( szCmdLine ) = 0 ) then
278 print "Usage: test filename.ext"
279 return 1
280 end if
281
282 ''
283 if( FAILED( CoInitialize( NULL ) ) ) then
284 return 1
285 end if
286
287 ''
288 win = window_oncreate( hInstance )
289
290 toolbar = toolbar_oncreate( win )
291
292 movie = movie_oncreate( win, szCmdLine )
293 if( movie = NULL ) then
294 return 1
295 end if
296
297 ''
298 ShowWindow( win, nCmdShow )
299 UpdateWindow( win )
300
301 ''
302 do while( GetMessage( @msg, 0, 0, 0 ) = TRUE )
303 TranslateMessage( @msg )
304 DispatchMessage( @msg )
305 loop
306
307 ''
308 CoUninitialize( )
309
310 function = msg.wParam
311
312 end function
313
314
315 end WinMain( GetModuleHandle( NULL ), NULL, Command( ), SW_NORMAL )
|
_________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Build0815

Anmeldungsdatum: 30.09.2006 Beiträge: 51
|
Verfasst am: 03.03.2007, 00:51 Titel: |
|
|
Mit dem folgenden Code sollte es möglich sein ein AVI file anzuzeigen.
Ich konnte es allerdings nicht ganz testen, da ich momentan keine Microsoft Video-Codecs auf dem System habe, und Videos wennschon nur mit dem VLC player anschaue, der eigene Codecs hat ... allerdings hat der Code bei mir zumindest den Sound vom AVI file korrekt abgespielt.
Code: |
Declare Function mciSendString Lib "winmm.dll" _
Alias "mciSendStringA" ( _
ByVal lpstrCommand As String, _
ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, _
ByVal hwndCallback As Long) As Long
Declare Function GetShortPathName Lib "kernel32.dll" _
Alias "GetShortPathNameA" ( _
ByVal lpszLongPath As String, _
ByVal lpszShortPath As String, _
ByVal cchBuffer As Long) As Long
' AVI-File öffnen
Private Sub AVI_Open(ByVal sFile As String)
Dim sBuffer As String * 256
Dim nResult As Long
' DOS-Namen ermitteln (8.3-Format)
nResult = GetShortPathName(sFile, sBuffer, Len(sBuffer))
sFile = Left$(sBuffer, nResult)
' AVI öffnen
' öffnet ein Gerät und eine Multimedia-Datei
mciSendString "open " & sFile & " type avivideo" & _
" alias myAVI", 0, 0, 0
' Anzeige in der PictureBox
mciSendString "window myAVI handle " & _
Str(Picture1.hWnd), 0, 0, 0
End Sub
' AVI in PictureBox abspielen
Private Sub AVI_Play()
mciSendString "play myAVI from 0", 0, 0, 0
End Sub
' Abspielvorgang stoppen
Private Sub AVI_Stop()
mciSendString "close myAVI", 0, 0, 0
End Sub
' MCI Schließen
Private Function AVI_Close()
mciSendString "close myAVI", 0, 0, 0
End Function
' AVI öffnen und abspielen
Private Sub cmdPlay_Click()
Dim sFile As String
' MCI öffnen
AVI_Open("C:\test.avi")
' Abspielvorgang starten
AVI_Play()
End Sub
' Abspielvorgang beenden und MCI schließen
Private Sub cmdStop_Click()
AVI_Stop
AVI_Close
End Sub
cmdPlay_Click()
sleep
|
|
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 03.03.2007, 17:45 Titel: |
|
|
Mit fb 0.16 lässt sich das problemlos compilieren:
Damit ist das abspielen von AVIs in fb kein problem mehr:
Code: |
Declare Function mciSendString Lib "winmm.dll" _
Alias "mciSendStringA" ( _
ByVal lpstrCommand As String, _
ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, _
ByVal hwndCallback As Long) As Long
Declare Function GetShortPathName Lib "kernel32.dll" _
Alias "GetShortPathNameA" ( _
ByVal lpszLongPath As String, _
ByVal lpszShortPath As String, _
ByVal cchBuffer As Long) As Long
' AVI-File öffnen
Private Sub AVI_Open(ByVal sFile As String)
Dim sBuffer As String * 256
Dim nResult As Long
' DOS-Namen ermitteln (8.3-Format)
nResult = GetShortPathName(sFile, sBuffer, Len(sBuffer))
sFile = Left$(sBuffer, nResult)
' AVI öffnen
' öffnet ein Gerät und eine Multimedia-Datei
mciSendString "open " & sFile & " type avivideo" & _
" alias myAVI", 0, 0, 0
' Anzeige in der PictureBox
mciSendString "window myAVI handle " & _
Str(Picture1.hWnd), 0, 0, 0
End Sub
' AVI in PictureBox abspielen
Private Sub AVI_Play()
mciSendString "play myAVI from 0", 0, 0, 0
End Sub
' Abspielvorgang stoppen
Private Sub AVI_Stop()
mciSendString "close myAVI", 0, 0, 0
End Sub
' MCI Schließen
Private Function AVI_Close()
mciSendString "close myAVI", 0, 0, 0
End Function
' AVI öffnen und abspielen
Private Sub cmdPlay_Click()
Dim sFile As String
' MCI öffnen
AVI_Open("intro.avi")
' Abspielvorgang starten
AVI_Play()
End Sub
' Abspielvorgang beenden und MCI schließen
Private Sub cmdStop_Click()
AVI_Stop
AVI_Close
End Sub
cmdPlay_Click()
sleep
|
_________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 03.03.2007, 18:03 Titel: |
|
|
läuft ein wenig holprig, aber sehr schön, dass es überhaupt geht
ich werde den source mal ein wenig aufräumen und evtl publizieren  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 03.03.2007, 18:07 Titel: |
|
|
sebastian: das problem ist, dass ein eigenes fesnter geöffnet wird.
siehe hier:
Code: |
Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (Byval lpstrCommand As String, Byval lpstrReturnString As String, Byval uReturnLength As Long, Byval hwndCallback As Long) As Long
Declare Function GetShortPathName Lib "kernel32.dll" Alias "GetShortPathNameA" (Byval lpszLongPath As String, Byval lpszShortPath As String, Byval cchBuffer As Long) As Long
' AVI-File öffnen
Sub AVI_Open(Byval sFile As String)
Dim sBuffer As String * 256
Dim nResult As Long
' DOS-Namen ermitteln (8.3-Format)
nResult = GetShortPathName(sFile, sBuffer, Len(sBuffer))
sFile = Left(sBuffer, nResult)
' AVI öffnen
' öffnet ein Gerät und eine Multimedia-Datei
mciSendString "open " + sFile + " type avivideo alias myAVI", 0, 0, 0
' Anzeige in der PictureBox
mciSendString "window myAVI handle 0", 0, 0, 0
End Sub
' AVI in PictureBox abspielen
Sub AVI_Play()
mciSendString "play myAVI from 0", 0, 0, 0
End Sub
' Abspielvorgang stoppen
Sub AVI_Stop()
mciSendString "close myAVI", 0, 0, 0
End Sub
' MCI Schließen
Sub AVI_Close()
mciSendString "close myAVI", 0, 0, 0
End Sub
' AVI öffnen und abspielen
Sub LoadAvi(sFile As String)
AVI_Open(sFile)
AVI_Play()
End Sub
' Abspielvorgang beenden und MCI schließen
Sub StopAvi()
AVI_Stop
AVI_Close
End Sub
LoadAvi("E:\eigene videos\fun\spicken.avi")
Screen 18
Sleep
StopAvi
End
|
damit könnte man dann 3 fenster (noch die konsole ) gleichzeitg offne haben!
die folgerung daraus: fb spielt das video net ab, sondern ein integrierter player in windows. übrigens, laufen eure videos auch viel zu schnell? _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 03.03.2007, 19:37 Titel: |
|
|
Danke PMedia! Wenn ich das da richtig gelesen habe, könnte man (wie man meinen letzten posting entnehmen kann) tatsächlich den fensterhandle übergeben
/edit:
Zitat: |
mciSendString "open " + sFile + " type avivideo alias myAVI", 0, 0, Handle
|
Ich glaube bei Handle kann man jetzt einen Windowhandle einsetzen, oder? _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 03.03.2007, 20:13 Titel: |
|
|
Ich habe jetzt den source so umgeändert, aber in Zeile 62 meldet er mir irgendeinen fehler (nr. 10)!:
Code: |
Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Declare Function GetShortPathName Lib "kernel32.dll" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long
declare Sub AVI_Open(ByVal sFile As String, ByVal Handle as long)
declare Sub AVI_Play()
declare Sub AVI_Stop()
declare Sub AVI_Close()
declare Sub LoadAvi(sFile As String)
declare Sub StopAvi()
' AVI-File öffnen
Sub AVI_Open(ByVal sFile As String, ByVal Handle as long)
Dim sBuffer As String * 256
Dim nResult As Long
' DOS-Namen ermitteln (8.3-Format)
nResult = GetShortPathName(sFile, sBuffer, Len(sBuffer))
sFile = Left$(sBuffer, nResult)
' AVI öffnen
' öffnet ein Gerät und eine Multimedia-Datei
mciSendString "open " + sFile + " type avivideo alias myAVI", 0, 0, 0
' Anzeige in der PictureBox
mciSendString "window myAVI handle " + trim(str(handle)), 0, 0, 0
End Sub
' AVI in PictureBox abspielen
Sub AVI_Play()
mciSendString "play myAVI from 0", 0, 0, 0
End Sub
' Abspielvorgang stoppen
Sub AVI_Stop()
mciSendString "close myAVI", 0, 0, 0
End Sub
' MCI Schließen
Sub AVI_Close()
mciSendString "close myAVI", 0, 0, 0
End Sub
' AVI öffnen und abspielen
Sub LoadAvi(sFile As String)
' MCI öffnen
' AVI_Open(sFile)
' Abspielvorgang starten
AVI_Play()
End Sub
' Abspielvorgang beenden und MCI schließen
Sub StopAvi()
AVI_Stop
AVI_Close
End Sub
Screenres 320,200,32
'LoadAvi("intro.avi")
dim FensterHandle as integer
SCREENCONTROL 2, FensterHandle
Avi_Open ("intro.avi", FensterHandle)
AVI_Play
'screen 1
sleep
StopAvi
'sleep
end
|
PS: ja ich habe schon auf v.0.17 geupdatet  _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 03.03.2007, 20:16 Titel: |
|
|
probier mal ab Zeil 52:
Code: |
Screenres 320,200,32
Dim HWnd_z as integer
Dim HWnd_p as any ptr
HWnd_z=1:HWnd_p=@HWnd_z
'LoadAvi("intro.avi")
dim FensterHandle as integer
'SCREENCONTROL (2, FensterHandle)
Avi_Open ("intro.avi", HWnd_p)
AVI_Play
'screen 1
sleep
StopAvi
'sleep
end
|
hab leider kein AVI, aber fenster geht auf..... _________________
 |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|