| |
VB & Windows APIRe: mciSendString als stream | | | Autor: Firestone | Datum: 15.02.08 11:31 |
| Hallo Martoeng,
anbei der Code wie er bis jetzt steht.
Ich würde gern wissen wie ich den Datenstrom (oder was das ist) welcher in RS geschrieben wird, direkt an den Client senden kann um dort entweder direkt mit dem Mediaplpayer den Sound zu hören, oder als WAV zu speichern.
Geht das irgendwie über einen Puffer oder so?
Vielen Dank.
mfg Fire
-----------------------------------------------------------------------------------------------------------------
Sound aufnehmen:
Option Explicit
Private 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
Const Path$ = "c:\Test.wav"
Dim RS$, CB&
Private Sub cmdAufnahme_Click()
If Dir$(Path, vbNormal) <> "" Then Kill Path
RS = Space$(128)
Call mciSendString("open new type waveaudio alias capture", RS, 128, CB)
Call mciSendString("record capture", RS, 128, CB)
End Sub
Private Sub cmdSpeichern_Click()
RS = Space$(128)
Call mciSendString("stop capture", RS, 128, CB)
Call mciSendString("save capture " & Path, RS, 128, CB)
Call mciSendString("close capture", RS, 128, CB)
End Sub
----------------------------------------------------------------------------------------------------------------
Client:
Option Explicit
Private Sub Command1_Click()
Winsock1.Close
Winsock1.RemoteHost = Text1.Text
Winsock1.RemotePort = Text2.Text
Winsock1.Connect
End Sub
Private Sub Command3_Click()
Winsock1.Close
End Sub
Private Sub Timer1_Timer()
Dim Status As String
Status = Winsock1.State
Select Case Status
Case 7
Label1.Caption = "Der Socket hat sich zu dem Remote verbunden"
'Ein Befehl plus Text werden gesendet
Winsock1.SendData "msg" & "Hallo"
Case 9
Winsock1.Close
End Select
End Sub
Private Sub Winsock1_Close()
Command1.Enabled = True
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Result As String
Winsock1.GetData Result
Select Case Left(Result, 3) 'Befehlsauswertung
Case "msg" 'Chat Befehl
Text3.Text = Text3.Text & "Server: " & Mid(Result, 4) & vbCrLf
Text3.SelStart = Len(Text3.Text)
End Select
End Sub
---------------------------------------------------------------------------------------------------------
Server:
Option Explicit
Dim i
Private Sub Form_Load()
Winsock1.Close
Winsock1.LocalPort = 6444
Winsock1.Listen
End Sub
Private Sub Timer1_Timer()
Dim Status As String
i = i + 1
Status = Winsock1.State
'Label1 gibt den Status wieder
Select Case Status
Case 7
Label1.Caption = "Der Socket hat sich zu dem Remote verbunden"
'Ein Befehl plus Text werden gesendet
Winsock1.SendData "msg" & "Daten " & i
Case 8
Label1.Caption = "Der Remote hat die Verbindung getrennt"
'winsock wird geschlossen
Winsock1.Close
'Der Port für den Server wird definiert
Winsock1.LocalPort = 6444
'Server wartet auf einen Verbindung
Winsock1.Listen
End Select
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
'Winsock wird geschlossen da es noch
'auf verbindungen wartet
Winsock1.Close
'Eine Verbindung wird akzeptiert
Winsock1.Accept requestID
End Sub | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevZIP40 Pro DLL
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|