delphi7 coinitializeex怎么用

delphi7 coinitializeex怎么用,第1张

CoInitialize指明以单线程方式创建。
CoInitializeEx可以指定COINIT_MULTITHREADED以多线程方式创建。
创建单线程方式的COM服务器时不用考虑串行化问题,多线程COM服务器就要考虑。
在使用中,使用CoInitialize创建可使对象直接与线程连接,得到最高的性能。创建多线程对象可以直接接收所有线程的调用,不必像单线程那样需要消息排队,但却需要COM创建线程间汇集代理,这样访问效率不高。
注:新的应用程序应该调用CoInitializeEx而不是CoInitialize,一般是在 Dll 中使用 COM 才会需要使用的。

使用system控件组下面的MediaPlayer控件来做
filename属性是要播放的音乐所在的完整路径及名称。
MediaPlayer1Open ;打开控件
MediaPlayer1Play ;播放音乐
MediaPlayer1Stop ;停止播放
MediaPlayer1Pause ;暂停播放
MediaPlayer1close关闭组件
上面这些可以使用一些按钮来存放代码,例如建个打开按钮,里面写上打开文件的语句(用dialogs组件面板里面的OPEN那个组件),打开后动态给播放器的filename属性赋值:MediaPlayer1FileName := ''; 并且打开MediaPlayer1控件。 再建其他按钮,例如播放,暂停,关闭等。要做播放列表就放一个listbox之类的控件,打开时动态将那些歌曲名称添加到listbox中,注意保存完整路径,不然控件找不到就要罢工了,播放后用循环控制一下就行了

这个有复杂 也有简单的办法,一种是用程序实现,另一种是用CMD命令实现,对于一些简单的,比如楼主只有这一种要求的话可以用 命令实现,这样比较简单
sc config tlntsvr start= auto 这里等号后面有一个空格!
net start tlntsvr
这是手工的命令,可 以用程序运行CMD命令实现 ,呵呵,当然窗口也可以隐藏的

新建一个工程,拖一个进度条上去,加上下面的函数,调用一下即可
procedure TForm1WriteNumber();
var
i: Integer;
list: TStringList;
FileName: string;
begin
FileName := 'D:\program files\testtxt';
if (not FileExists(FileName)) then
begin
CreateFile(PChar(FileName), GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE, nil, CREATE_NEW, FILE_ATTRIBUTE_NORMAL, 0);
end;
ProgressBar1Min := 0;
ProgressBar1Max := 1000;
list := TStringListCreate;
for i := 1 to 10 10 10 do
begin
listAdd(IntToStr(i));
ProgressBar1Position := i;
end;
listSaveToFile(FileName);
end;

(一)要使用系统的语音库,你需要先安装 Microsoft Speech SDK 51 及其语言包,下载地址:Speech SDK 51: >win7(64位) + Oracle 11g/12c 客户端(32位) + Delphi7(32位)
win7(64位) + Oracle 11g/12c 服务器端(32位) + Delphi7(32位)
因为Delphi7自带的BDE是32位,所以只能使用32位的Oracle客户端,数据库若是直接安装在本机,也务必安装32位版本Oracle。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12614439.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存