用real公司的realproducer控件开发程序,运行问题 (100分)

  • 主题发起人 主题发起人 bjstar
  • 开始时间 开始时间
B

bjstar

Unregistered / Unconfirmed
GUEST, unregistred user!
各位富翁:
你们好!在下在有个问题向各位请教,我用real公司的realproducer控件做了一个小压缩程序,我安装到没有安装有realproducer程序的机器上运行,为什么出错?是否因为没有带有运行的动态连接库或ocx控件的原因,如何知道要用到那动态连接库或ocx,还有怎么注册?些希望能得到大家的指导,提示代码如下:
应用程序发生异常未知的软件异常(0x0eedfade),位置为9x77e7e8bb
和:
Exeption EoleSysError in module RMEdit.exe at 00058869.没有注册类别
 
我作了一个,可以不用装RealProducer,我在本机上卸了RealProducer后可以正常压缩!
但没有进行正规的测试!在http://www.happyvod.net/gb/b1.htm 里面的“快乐RM压缩器”!
你能否帮我测一下!能行!我就告诉你我是怎么作的!不行我只有改进后再说了!
 
OCX有引用计数的 你即使卸了RealProducer 相应的OCX也很可能还在
你RealProducer对应的主控件拷过去 注册 就可以了拉
另外你可以用ExeScopy或类似的东西察看他静态引用的DLL 也拷过去
 
3cs:
你好,我把你那个HMeditor的软件下载下来了,测试了一下!
第一:安装时不能选择目录
第二:我感觉在压缩音频的时候,视频效果和设置视频的属性,应该不能进行操作才对!
第三:压缩完成了,提示不够友好,不应该提时:无媒体文件可压缩,请选择媒体文件!
应该提示:压缩已完成等对应的提示我想会更好一些!
你如果能给真诚的回答我的问题,在下不胜感激,我的QQ:599368
 
bjstar:
谢谢你帮我测试!同时也感谢你的意见!
 作这种压缩工具我用了三步:
 第一步:这一步是最简单的就是写压缩的各种功能,我想你这一步也已经完成了!
 第二步:注册OCX,COPY 所有RealProducer所引用的DLL文件,这些文件在它所在的目录
里。
 第三步:在注册表中找出所有RealProducer在安装时的注册顶然后导出,在你的软件被安装时在导入即可。(这也是最麻烦的)。
好了,有了这三步你就可以独立运行程序了!
 
 
3cs:
您好,谢谢您的真诚回答,在下技术肤浅,我安装你说得去做了,但是没有成功!
您能否在说具体一些,第二步,都需要用到什么RealProducer所引用的DLL文件和
第三步导出注册表的信息,您能否给我发一份到我的信箱里,我成功了,分数所有给你!
我现在这是给我们电视台做的一个采集电视节目的一个小程序,就是卡在您所说的第二,第三步了!真的希望能得到您再次无私的指导!我的信箱是:it_hopestar@hotmail.com
或者webmaster@ylgd.net 给我这两个信箱发一份你的第二,第三步做法好吗?谢谢您!
 
哪位高手可以帮我修改一下下面的代码,帮我实现 从mpg 文件到 asf 文件的转换,
如果有别的 delphi 源代码,也可以,谢谢

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleServer, WMEncoderLib_TLB;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;


var
Form1: TForm1;
wmencoder1: wmencoder;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
srcgrpcoll:iwmencsourcegroupcollection;
srcgrp:iwmencsourcegroup;
srcaud:iwmencaudiosource;
srcvid:iwmencvideosource;
procoll:iwmencprofilecollection;
sfile:iwmencfile;

begin

wmencoder1:=cowmencoder.Create;
srcgrpcoll:=wmencoder1.SourceGroupCollection;
srcgrp:=srcgrpcoll.Add('sg_1');
sfile:=wmencoder1.File_;
sfile.LocalFileName:='j:/cctv.asf';
wmencoder1.EnableAutoArchive:=true;
srcaud:=srcgrp.AddSource(emenc_audio);//这里出现类型不匹配,
srcvid:=srcgrp.addsource(wmenc_video);//同上
procoll:=wmencoder1.ProfileCollection;
srcgrp.set_Profile(procoll.Item(2));
srcvid.SetInput('j://cctv.mpg','','');//这里程序调试时没错,但运行时出错,在VB.net里面可以不用带后面的两个空参数,但如果delphi 中不带,就会提示参数不足
srcaud.SetInput('j://cctv.mpg','','');//同上
srcvid.Repeat_:=false;
srcaud.Repeat_:=false;
wmencoder1.PrepareToEncode(true);
wmencoder1.Start;
end;


end.

 
1、 srcaud:=srcgrp.AddSource(emenc_audio);//这里出现类型不匹配,
emenc_audio是什么类型的,好象没有定义过嘛,是否应该定义成variant型或olevariant型
或是预定义的常量没有申明。
2、 srcvid.SetInput('j://cctv.mpg','','');
改成srcvid.SetInput('j://cctv.mpg',nil,nil);试试看

 
1. 第一个地方 emenc_audio 应该是 wmenc_audio,我发上来的时候错了,改成 wmenc_audio 也是这个问题

2. 出现错误提示:incompatible types:'widestring' and 'pointer'

 
后退
顶部