Det kan godt være, at jeg ikke er helt med på hvad du vil.
Ok. Håper dette kan være til hjelp:
Jeg bruker Indys ClientSocket og ServerSocket + MS Speech API:
var
SpeechEngines: TStringList;
function SpeechEngine(Index: Integer): String;
begin
SpeechEngines := TStringList.Create;
SpeechEngines.AddStrings(Speech.Engines);
Result := SpeechEngines.Strings[Index];
SpeechEngines.Free;
end;
procedure TServerFrm.ServerClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
Recieved: String;
begin
Recieved := Socket.ReceiveText;
if Pos('/startspeech', Recieved) = 1 then
begin
Param1 := ?;
Param2 := ?;
Speech.SelectEngine(SpeechEngine(StrToInt(Param1)));
Speech.Text.Text := Param2;
Speech.Speak;
except
end;
end;
end;
Når klienten sender teksten "/startspeech 0 hei", så ønsker jeg at parametrene skal deles:
Param1 = 0
Param2 = hei
Ex på klienten:
Client.Socket.SendText('/startspeech ' + IntToStr(SpeechEngines.Items.IndexOf(EngineLbl.Caption)) + ' ' + SpeechText.Text);
// SpeechEngines er en liste med snakkemotorer.
// SpeechText er teksten som skal snakkes.
// EngineLbl er navnet på snakke motoren.
DiZpel
[Redigeret d. 13/01-04 21:00:14 af DiZpel]