Questions tagged [idl]

IDL, short for Interface Description Language, is a language used to describe a software component's public interface in a programming-language-independent manner. (Not to be confused with the [idl-programming-language] tag, which is for a language used for scientific and medical image analysis)

As described on Wikipedia:

An interface description language or interface definition language (IDL), is a specification language used to describe a software component's application programming interface (API). IDLs describe an interface in a language-independent way, enabling communication between software components that do not share one language. For example, between those written in C++ and those written in Java.

IDLs are commonly used in remote procedure call software. In these cases the machines at either end of the link may be using different operating systems and computer languages. IDLs offer a bridge between the two different systems.

Software systems based on IDLs include Sun's ONC RPC, The Open Group's Distributed Computing Environment, IBM's System Object Model, the Object Management Group's CORBA (which implements OMG IDL, an IDL based on DCE/RPC), Mozilla's XPCOM, Facebook's Thrift and WSDL for Web services.

Web specifications use a special form of IDL called WebIDL: https://heycam.github.io/webidl/

558 questions
3
votes
3 answers

C# - writing a COM server - Properties mapped to methods

We are trying to replace a COM server originally written for a VB6 application We have no access to source code. For some reason, the VB6 app can call our constructor, but then it gets: System Error &H80004002. No such interface supported. I…
jonathanpeppers
  • 26,115
  • 21
  • 99
  • 182
3
votes
1 answer

Can I use const modifiers in IDL function definitions?

Can I use const modifiers in IDL function definitions that get parsed by MIDL? e.g. HRESULT TestFunctionCall( [in,string] const char *szParameter); Or will that result in breakages somewhere down the track? It appears to make it…
dlanod
  • 8,664
  • 8
  • 54
  • 96
3
votes
1 answer

IDL's INT_TABULATE - SciPy equivalent?

I am working on moving some code from IDL into python. One IDL call is to INT_TABULATE which performs integration on a fixed range. The INT_TABULATED function integrates a tabulated set of data { xi , fi } on the closed interval [MIN(x) , MAX(x)],…
Jzl5325
  • 3,898
  • 8
  • 42
  • 62
3
votes
1 answer

COM - #include generated header vs #import generated tlb

I have many projects of which generate COM DLL's, these projects output the following: projectname_i.h projectname_i.c projectname_p.c projectname_i.tlb Then where another project consumes this DLL it is used like so: #import "projectname.tlb"…
paulm
  • 5,629
  • 7
  • 47
  • 70
3
votes
2 answers

IDL static interfaces

For WinRT, IDL now supports constructs such as this: [marshaling_behavior(agile)] [threading(both)] [activatable(0x06020000)] [version(0x06020000)] [static(Windows.Networking.Sockets.IDatagramSocketStatics, 0x06020000)] runtimeclass…
Martin v. Löwis
  • 124,830
  • 17
  • 198
  • 235
3
votes
1 answer

Solve Singular Value Decomposition (SVD) in Python

I amtrying to translate an IDL program to Python. I have to solve the outcome from SVD which I achieve in the following way from scipy.linalg import svd A = [[1,2,3],[4,5,6]] b = [4,4,5] u,w,v = svd(A) And this works fine and is translated nicely…
3
votes
1 answer

How to pass bool from c# through c++ com interface in idl

I know I'm missing something simple, I have next to no experience with these com things. I would like to do this within an interface in an idl [id(5), helpstring("Returns true if the object is in a valid state.")] HRESULT IsValid([out, retval]…
Erix
  • 7,059
  • 2
  • 35
  • 61
3
votes
1 answer

What differences are allowed between IDL of CORBA server and client?

What I think I know so far is that the CORBA specification as such doesn't allow any differences between the IDL the server program uses and the IDL the client program uses. However, in practice, certain differences are bound to work (pretty)…
Martin Ba
  • 37,187
  • 33
  • 183
  • 337
3
votes
2 answers

_ptr or _var - which one use as a class field and why?

I have a class: class Impl1 : public POA_I1 { private : Impl2_var ob; public : Impl2_ptr get(); { return ob; } void set(::Impl2_ptr ob) { this->ob = ob; …
mazix
  • 2,540
  • 8
  • 39
  • 56
3
votes
1 answer

COM SafeArray of SafeArray

I have the following in my IDL which MIDL seems to like just fine. I am trying to create a method that returns an array of byte arrays (not a matrix). I am having a problem on the C++ side where neither of the ATL::CComSafeArray or…
wpfwannabe
  • 14,587
  • 16
  • 78
  • 129
3
votes
1 answer

Python COM server with idl

I have to create a tlb file so I can access a Python COM server from .Net. I only want a single method (Process) that takes a string and returns a string. The idl file is below: import "oaidl.idl"; import "ocidl.idl"; [ …
CarbonMan
  • 4,350
  • 12
  • 54
  • 75
3
votes
3 answers

Creating IDL for MAPI-MIME conversion

I'm trying to create the IDL for the IConverterSession interface and I'm confused by the definition of the MIMETOMAPI method. It specifies the LPMESSAGE pmsg parameter as [out] yet the comments state its the pointer to the MAPI message to be…
AnthonyWJones
  • 187,081
  • 35
  • 232
  • 306
2
votes
0 answers

Resolving IDL Warning MIDL2471: Some attributes and/or data types in the idl can not be represented in the type library

A project I'm working on started producing the following warning: Warning MIDL2471: Some attributes and/or data types in the idl and/or included/imported idl files can not be represented in the type library: : unique [ Parameter 'eventData' of…
JToland
  • 3,630
  • 12
  • 49
  • 70
2
votes
3 answers

Transferring the whole object on CORBA Server to Client

I am developing the distributed application in CORBA Using the Java IDL provided by default in JDK , and of course , both client and server developed in Java. I am maintaining the some object state on server. Now, on client side I want to bring…
ajduke
  • 4,991
  • 7
  • 36
  • 56
2
votes
2 answers

Why is it necessary to add new events to the *end* of an IDL interface?

I have found that when I add new events to an existing COM/IDL interface, I sometimes run into strange issues unless they are added to the end of the interface. For example, say I have the following interface: interface IMyEvents { HRESULT…
LeopardSkinPillBoxHat
  • 28,915
  • 15
  • 75
  • 111