Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.22;
Скачать: CL | DM;

Вниз

Система проговаривания времени   Найти похожие ветки 

 
Smok_er   (2002-07-09 09:47) [0]

Уважаемые мастера!
Возможно кто-то из вас сталкивался с программой Speaking Clock Deluxe ( http://www.lux-aeterna.com), которая умеет проговаривать текущее время. Принцип работы основан на подключении dll. Для каждого языка своя dll, которые записывают по всему миру. Сейчас в коллекции около 25-30 языков.
Излазил весь интернет, но никак не могу найти доки по работе с данными dll, а писать свои просто бессмысленно.
МОжет кто слышал, видел, сталкивался с сабжем - помогите пожалуйста. Интересует все.


 
handra ©   (2002-07-09 10:58) [1]

скачал несколько DLL по ссылке, в течение 10-ти минут я выяснил, что все они экспортируют функцию:
procedure Speak; stdcall;.

т.е. определяем тип
TSpeakProc = procedure ; stdcall;
кидаем на форму две кнопки и TOpenDialog, обработчики:

procedure TForm1.Button1Click(Sender: TObject);
begin
OpenDialog1.Execute;
end;

procedure TForm1.Button2Click(Sender: TObject);
var hLib: THandle;
SpeakProc: TSpeakProc;
begin
hLib := LoadLibrary(PChar(OpenDialog1.FileName));
if hLib=0 then ShowMessage("Can""t loadlibrary!")
else begin
SpeakProc := GetProcAddress(hLib,"Speak");
if @SpeakProc=nil then ShowMessage("Can""t find procedure!")
else
try
SpeakProc;
finally
end;
FreeLibrary(hLib);
end;
end;


Вот собственно и все, функция в DLL проговаривает текущее время.


 
Smok_er   (2002-07-09 12:25) [2]

Большое спасибо!
Работает!

Хотелось бы узнать, как расковыривать dll и, относительно вопроса, как узнать, к какому языку относится файл, из самой dll?



Страницы: 1 вся ветка

Текущий архив: 2002.07.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
6-70838
ole
2002-05-07 05:40
2002.07.22
Работа с сетью на уровне драйверов


1-70675
Maxuz
2002-07-09 01:26
2002.07.22
StatusBar


14-70877
Vitalyfr
2002-06-24 16:57
2002.07.22
Извените что опять не в тему


3-70633
opfr34
2002-07-01 14:15
2002.07.22
Список MSSQL серверов в сети


1-70744
race1
2002-07-06 16:53
2002.07.22
inifile