Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.05.2014, 16:59   #1
Chrome-kz
 
Регистрация: 31.03.2011
Сообщений: 5
По умолчанию Помогите переделать с Делфи 7 на С#

Здравствуйте
Помогите пожалуйста, не получается переделать из делфи на с# ((

Или хотя бы покажите как это делается ((

вот код

Код:
function  CreateSpeech:HResult;stdcall;external 'SAPIDLL.DLL' name 'CreateSpeech';
procedure DestroySpeech;stdcall;external 'SAPIDLL.DLL';
procedure Speak( Text : string);stdcall;external 'SAPIDLL.DLL';
procedure SelectEngine(EngineName: String);stdcall;external 'SAPIDLL.DLL' name 'SelectEngine';
function  GetEngineInfo(EngineName: String; var Info: TEngineInfo):byte;stdcall;external 'SAPIDLL.DLL';
function  GetEngines:TStrings;stdcall;external 'SAPIDLL.DLL' name 'GetEngines';
function  GetEnginesCount:word;stdcall;external 'SAPIDLL.DLL';
function  GetPitch: Word;stdcall;external 'SAPIDLL.DLL';
function  GetSpeed: dword;stdcall;external 'SAPIDLL.DLL';
function  GetVolume: dword;stdcall;external 'SAPIDLL.DLL';
procedure SetPitch(const Value: Word);stdcall;external 'SAPIDLL.DLL';
procedure SetSpeed(const Value: dword);stdcall;external 'SAPIDLL.DLL';
procedure SetVolume(const Value: dword);stdcall;external 'SAPIDLL.DLL';
function  GetMaxPitch: Word;stdcall;external 'SAPIDLL.DLL';
function  GetMaxSpeed: dword;stdcall;external 'SAPIDLL.DLL';
function  GetMaxVolume: dword;stdcall;external 'SAPIDLL.DLL';
function  GetMinPitch: Word;stdcall;external 'SAPIDLL.DLL';
function  GetMinSpeed: dword;stdcall;external 'SAPIDLL.DLL';
function  GetMinVolume: dword;stdcall;external 'SAPIDLL.DLL';
Procedure Pause;stdcall;external 'SAPIDLL.DLL';
Procedure Resume;stdcall;external 'SAPIDLL.DLL';
Procedure Stop;stdcall;external 'SAPIDLL.DLL';
procedure PSpeak( Text: LPCTSTR );stdcall;external 'SAPIDLL.DLL';
procedure PSelectEngine(EngineName: LPCTSTR);stdcall;external 'SAPIDLL.DLL';
procedure PSelectEngineNumber(EngineNumber: word);stdcall;external 'SAPIDLL.DLL';
function  PGetEngines( number : word):LPCTSTR;stdcall;external 'SAPIDLL.DLL';
procedure RegistOnStart(CallbackAddr: TSpeechEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnPause(CallbackAddr: TSpeechEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnResume(CallbackAddr: TSpeechEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnStop(CallbackAddr: TSpeechEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnUserStart(CallbackAddr: TSpeechEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnUserStop(CallbackAddr: TSpeechEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnPosition(CallbackAddr: TPositionEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnSpeed(CallbackAddr: TPositionEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnVolume(CallbackAddr: TPositionEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnPitch(CallbackAddr: TPositionEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnSelectEngine(CallbackAddr: TEngineEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnStatusChange(CallbackAddr: TSpeechEvent);stdcall;external 'SAPIDLL.DLL';
procedure RegistOnError(CallbackAddr: TErrorEvent);stdcall;external 'SAPIDLL.DLL';


и этот

Код:
begin
  if CreateSpeech = 0 then // Для инициализации необходимо вызвать CreateSpeech из SAPI_DLL.Dll
  begin // если результат 0 значит все Ок
    Engines := GetEngines; // GetEngines возвращает список найденых дикторов на вашем компьютере
    ComboBox1.Items.Clear; // результат типа TString(список строк), в каждой строке имя очередного диктора
    for ECount := 0 to Engines.Count - 1 do // помещаем имена дикторов из полученого списка в строки ComboBox1
      ComboBox1.Items.Add(Engines[ECount]);
    ComboBox1.ItemIndex := 0; // в окно ComboBox1 выводим имя первого из дикторов
Chrome-kz вне форума Ответить с цитированием
Старый 25.05.2014, 22:29   #2
Chrome-kz
 
Регистрация: 31.03.2011
Сообщений: 5
По умолчанию

хотя бы второй код помогите перевести пожалуйста
Chrome-kz вне форума Ответить с цитированием
Старый 25.05.2014, 22:43   #3
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
Стрелка

Цитата:
Помогите пожалуйста, не получается переделать из делфи на с#
А, зачем?
Смотрите в сторону работы с MS Speech API в C#.
Streletz вне форума Ответить с цитированием
Старый 25.05.2014, 22:45   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

да оно не надо ему, только для галки, вот думает по скорому отчитаться
eval вне форума Ответить с цитированием
Старый 25.05.2014, 23:28   #5
Chrome-kz
 
Регистрация: 31.03.2011
Сообщений: 5
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
да оно не надо ему, только для галки, вот думает по скорому отчитаться
Было бы для галки, я был был бы рад )
А так надо чтоб работало.

1 кусок перерыл, вроде все подключает и упирается во второй... а я не могу сам перевести из делфи в с# (( вот и прошу помощи ((
Chrome-kz вне форума Ответить с цитированием
Старый 25.05.2014, 23:51   #6
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Вот тут примеры есть работы с библой в шарпе.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 02.09.2014, 06:27   #7
Bagir
Пользователь
 
Регистрация: 10.10.2012
Сообщений: 19
По умолчанию

Я тоже пытаюсь разобраться и переделать на VB6. Все пучком и отлично работает кроме получения позиции чтения.
procedure RegistOnPosition(CallbackAddr: TPositionEvent);stdcall;external 'SAPIDLL.DLL';
Может правда кто подскажет
Bagir вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переделать код из паскалевского в делфи gylayko Помощь студентам 8 29.09.2012 16:23
переделать из паскаля в делфи Shenan Помощь студентам 3 11.06.2011 22:37
переделать с делфи код в СИ Dezolyator Фриланс 7 24.05.2010 23:19
Помогите переделать прогу из Паскаля в Делфи! Toxass Общие вопросы Delphi 28 27.09.2009 15:36