C#调用外部程序提供的接口

问题描述

以下是一个第三方播放器提供的程序接口,需要在C#的主程序中调用实现对播放器的操作,请问怎样实现?winfrom程序非WEB程序usingSystem;usingSystem.Runtime.InteropServices;namespaceStereoPlayer{[ComVisible(true)][InterfaceType(ComInterfaceType.InterfaceIsIDispatch)][Guid("54150FC5-F6D5-419A-BC0D-E2BE08558934")][TypeLibType(TypeLibTypeFlags.FDispatchable|TypeLibTypeFlags.FDual|TypeLibTypeFlags.FOleAutomation)]publicinterfaceIAutomation{///<summary>///Returnsthenumberofitemsintheplaylist.///</summary>[DispId(0xc9)]voidGetPlaylistItemCount(outintcount);///<summary>///Returnstheindexofthecurrentlyloadedplaylistitem.///</summary>[DispId(0xca)]voidGetPlaylistItem(outintindex);///<summary>///Loadsthespecifiedplaylistitem.///</summary>[DispId(0xcb)]voidSetPlaylistItem([In]intindex);///<summary>///Loadsthenextplaylistitem.///</summary>[DispId(0xcc)]voidNextPlaylistItem();///<summary>///Loadsthepreviousplaylistitem.///</summary>[DispId(0xcd)]voidPreviousPlaylistItem();///<summary>///Opensastereoscopicvideofile.///</summary>[DispId(0xce)]voidOpenFile([In,MarshalAs(UnmanagedType.BStr)]stringfilename);///<summary>///Opensseparateleftandrightvideofilesaswellasanoptionalaudiofile.///</summary>[DispId(0xcf)]voidOpenLeftRightFiles([In,MarshalAs(UnmanagedType.BStr)]stringleftFilename,[In,MarshalAs(UnmanagedType.BStr)]stringrightFilename,[In,MarshalAs(UnmanagedType.BStr)]stringaudioFilename,[In]AudioModeaudioMode);///<summary>///OpensaDVD,specifiedbythepath(withoutVIDEO_TSfolder).///</summary>[DispId(0xd0)]voidOpenDVD([In,MarshalAs(UnmanagedType.BStr)]stringpath);///<summary>///OpensaURL.///</summary>[DispId(0xd1)]voidOpenURL([In,MarshalAs(UnmanagedType.BStr)]stringurl);///<summary>///Opensacapturedevice.Eitherspecifiythefriendlyname(mightnotbeunique)orthedeviceidentified.///</summary>[DispId(210)]voidOpenDevice([In,MarshalAs(UnmanagedType.BStr)]stringdevice);///<summary>///Returnstheplayer'sstate(playing,stopped,...).///</summary>[DispId(0xd3)]voidGetPlaybackState(outPlaybackStatestate);///<summary>///Executesaplaybackcommand(play,stop,...).///</summary>[DispId(0xd4)]voidSetPlaybackState([In]PlaybackStatestate);...................}太长而且都一样补贴全了

解决方案

解决方案二:
参考C#中调用API
解决方案三:
这个是C++的C#不是这么写

时间: 2024-11-10 14:31:38

C#调用外部程序提供的接口的相关文章

asp.net-ASP.NET如何用Post方法调用别人给我提供的接口?回答再追加赏

问题描述 ASP.NET如何用Post方法调用别人给我提供的接口?回答再追加赏 100C 1:怎么调用别人提供的外部接口?是一个http的地址,2:调用后我:怎么给它返回5个参数?(姓名,年龄,生日,住址,电话).好久没做web的项目了,不知道怎么写webservice代码了,请大牛帮忙啊 请给代码示例 感谢 解决方案 activex控件是不是没有加载.reportviewer.report没有值 解决方案二: ASP.NET中get方法和post方法的区别ASP.NET中get方法和post方

VC调用外部程序接口

(1) system() 函数名: system 功 能: 发出一个DOS命令 用 法: int system (char *command); 备 注: system函数已经被收录在标准c库中,可以直接调用 返回值 =-1:出现错误 =0:调用成功但是没有出现子进程 >0:成功退出的子进程的id 样 例: system("D:\\game.exe"); system("mmc.exe \"c:\\windows\\system32\\gpedit.msc\&

c++-请教:一个完整的C++程序如何提供一个接口给其他软件使用

问题描述 请教:一个完整的C++程序如何提供一个接口给其他软件使用 如题.我用C++做了一个软件,现在想提供一个dll给另一个软件使用.要如何做?是直接在这个C++程序上做接口,还是另外建一个工程来生成dll? 请教大神们啦~谢谢 解决方案 要看另一个软件是需要如何和你的程序交互. 用到你程序的一部分,那么开放dll 只是传递数据的话,提供数据传递的标准,让它自己实现 希望整体嵌入你的程序,那么你实现一个OLE Server,让它用OLE Container嵌入你的程序. 如果那个程序不在本地,

《深入理解Android 5 源代码》——第2章,第2.3节Android源代码提供的接口

2.3 Android源代码提供的接口我们知道,Android源代码当中提供了很多资源.工具或者文档供开发者使用,当然,其中也包括应用程序开发接口的实现,也就是我们开发应用程序所使用的SDK的API.正是由于有了这些种类丰富.功能强大.抽象程度高的接口,才让我们开发应用程序变得简单方便.在本节的内容中,将详细讲解Android系统中这些接口的基本知识. 2.3.1 暴露接口和隐藏接口我们可以将Android源代码编译生成一个SDK,这个SDK的功能等同于官方网站上单独下载的SDK开发包.这说明在

oracle如何使用java source调用外部程序_oracle

需求 Oracle调用第三方外部程序.Oracle使用sqluldr2快速导出大批量数据,然后用winrar压缩后发送邮件. 源码 java source create or replace and compile java source named jv_run_extpro as import java.io.*; import java.lang.*; import java.util.*; import java.sql.*; import oracle.sql.*; publiccla

系统调用-请大神推荐书籍:关于C++调用外部程序的书籍

问题描述 请大神推荐书籍:关于C++调用外部程序的书籍 现在我想用C++调用外部函数,应用程序,和系统程序 本人看的书不多,求有系统详细讲解这方面相关知识的书籍推荐,最好是基于Linux环境的,比如:调用系统安装的其它程序,我想系统地学习这方面的知识,求推荐书籍 请大神指教,谢谢啦 解决方案 本质上你说的其实是linux下常见的命令行.不同的linux发行版不同.比如rs系,一般通过yum安装,Ubuntu用apt-get.你可以看对应的Linux手册.<鸟哥的Linux私房菜>是一本比较经典

C#中利用process类调用外部程序以及执行dos命令

程序|执行 c#中的Process类可方便的调用外部程序,所以我们可以通过调用cmd.exe程序 加入参数 "/c " + 要执行的命令来执行一个dos命令(/c代表执行参数指定的命令后关闭cmd.exe /k参数则不关闭cmd.exe)  1         private string RunCmd(string command)     2         { 3             //實例一個Process類,啟動一個獨立進程 4             Process

php中调用其他系统http接口的方法说明

  本篇文章主要是对php中调用其他系统http接口的方法进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 使用函数: file_get_contents($url); 传入接口url及其参数:如 $url="http://192.168.1.1/test.jsp?id=1&type=2"; $ret=file_get_contents($url);

代码-java 如何调用 https 双向认证接口内容

问题描述 java 如何调用 https 双向认证接口内容 通过webservice获取一个https的内容,但这个网址需要pfx证书(证书和密码我都有,通过IE访问没问题),请问怎么通过 java webservice 代码去访问这个连接的内容? 解决方案 双向认证的话,http://love398146779.iteye.com/blog/2065423 解决方案二: 可以参考:http://blog.csdn.net/a351945755/article/details/22796797h