background preloader

OLE Automation

Facebook Twitter

Object Linking and Embedding. Object Linking and Embedding (OLE, sometimes pronounced /oˈlɛj/) is a proprietary technology developed by Microsoft that allows embedding and linking to documents and other objects.

Object Linking and Embedding

For developers, it brought OLE Control Extension (OCX), a way to develop and use custom user interface elements. On a technical level, an OLE object is any object that implements the IOleObject interface, possibly along with a wide range of other interfaces, depending on the object's needs. Overview[edit] OLE allows an editing application to export part of a document to another editing application and then import it with additional content. IDispatch. The Automation (IDispatch) interface allows a client application to find out what properties and methods are supported by an object at run-time, i.e. implements the concept of RTTI.


It also provides the information necessary to invoke these properties and methods. Client applications do not need to be aware of the object members when they are compiled. This allows COM and ActiveX objects to be called by scripting programs platforms such as the ASP server and JavaScript on Internet Explorer, where calling conventions were not known at the time IIS or IE were built. By contrast, a simple object library is compiled and linked into a program, e.g. a DLL call needs to know a function name and parameters at compile time. OLE Automation. In Microsoft Windows applications programming, OLE Automation (later renamed to simply Automation[1][2]) is an inter-process communication mechanism created by Microsoft.

OLE Automation

It is based on a subset of Component Object Model (COM) that was intended for use by scripting languages – originally Visual Basic – but now is used by several languages on Windows. All automation objects are required to implement the IDispatch interface. Dynamic Data Exchange. History[edit] Dynamic Data Exchange was first introduced in 1987 with the release of Windows 2.0 as a method of interprocess communication so that one program could communicate with or control another program, somewhat like Sun's RPC (Remote Procedure Call).[1] It used the "Windows Messaging Layer" functionality within Windows.

Dynamic Data Exchange

DDE continues to work even in modern versions of Windows, but has been superseded by newer technologies. Windows for Workgroups introduced a remoting version called NetDDE. OLE and OLE Automation are more advanced than DDE, but have proven to be bulky and difficult to code. Interprocess Communication (Programming Concepts) ABAP. Introduction[edit] ABAP is one of the many application-specific fourth-generation languages (4GLs) first developed in the 1980s.


It was originally the report language for SAP R/2, a platform that enabled large corporations to build mainframe business applications for materials management and financial and management accounting. ABAP used to be an abbreviation of Allgemeiner BerichtsAufbereitungsProzessor, German for "generic report preparation processor", but was later renamed to the English Advanced Business Application Programming. ABAP was one of the first languages to include the concept of Logical Databases (LDBs), which provides a high level of abstraction from the basic database level(s). The ABAP language was originally used by developers to develop the SAP R/3 platform. ABAP remains as the language for creating programs for the client-server R/3 system, which SAP first released in 1992. APL (programming language)

Promotional material for APL from 1976 Applied mathematics is largely concerned with the design and analysis of explicit procedures for calculating the exact or approximate values of various functions.

APL (programming language)

Such explicit procedures are called algorithms or programs. Because an effective notation for the description of programs exhibits considerable syntactic structure, it is called a programming language. In 1960, he began work for IBM and, working with Adin Falkoff, created APL based on the notation he had developed. This notation was used inside IBM for short research reports on computer systems, such as the Burroughs B5000 and its stack mechanism when stack machines versus register machines were being evaluated by IBM for upcoming computers.

As early as 1962, the first attempt to use the notation to describe a complete computer system happened after Falkoff discussed with Dr. C (programming language) C is an imperative (procedural) language.

C (programming language)

It was designed to be compiled using a relatively straightforward compiler, to provide low-level access to memory, to provide language constructs that map efficiently to machine instructions, and to require minimal run-time support. C was therefore useful for many applications that had formerly been coded in assembly language, such as in system programming.

Despite its low-level capabilities, the language was designed to encourage cross-platform programming. A standards-compliant and portably written C program can be compiled for a very wide variety of computer platforms and operating systems with few changes to its source code. The language has become available on a very wide range of platforms, from embedded microcontrollers to supercomputers. The C language also exhibits the following characteristics: The cover of the book, The C Programming Language K&R introduced several language features: For example: C++ C++ (pronounced as cee plus plus, /ˈsiː plʌs plʌs/) is a general-purpose programming language.


It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation. It was designed with a bias toward system programming and embedded, resource-constrained and large systems, with performance, efficiency and flexibility of use as its design highlights.[4] C++ has also been found useful in many other contexts, with key strengths being software infrastructure and resource-constrained applications,[4] including desktop applications, servers (e.g. e-commerce, web search or SQL servers), and performance-critical applications (e.g. telephone switches or space probes).[5] C++ is a compiled language, with implementations of it available on many platforms and provided by various organizations, including the FSF, LLVM, Microsoft, Intel and IBM.

History[edit] C Sharp (programming language) Local functionsTuplesPattern matchingRecords / algebraic data typesNullability trackingAsync streams and disposalStrongly typed access to wire formats Main article: C Sharp syntax The core syntax of C# language is similar to that of other C-style languages such as C, C++ and Java.

C Sharp (programming language)

In particular: Semicolons are used to denote the end of a statement.Curly brackets are used to group statements. Statements are commonly grouped into methods (functions), methods into classes, and classes into namespaces.Variables are assigned using an equals sign, but compared using two consecutive equals signs.Square brackets are used with arrays, both to declare them and to get a value at a given index in one of them. Some notable features of C# that distinguish it from C, C+, C++, and Java where noted, are: Delphi (programming language) Delphi supports rapid application development (RAD).

Delphi (programming language)

Among the features supporting RAD are application framework and visual window layout designer. [citation needed] It supports native cross-compilation. Database connectivity is supported, and Delphi supplies several database components. VCL includes many database-aware and database access components. Later versions have included upgraded and enhanced runtime library routines provided by the community group FastCode, established in 2003.

Strings can be concatenated by using the '+' operator, rather than using functions. Delphi includes an integrated IDE. The compiler is optimizing and single pass.

Java (Windows Programming)

.NET Framework. .NET Framework (pronounced dot net) is a software framework developed by Microsoft that runs primarily on Microsoft Windows. It includes a large library and provides language interoperability (each language can use code written in other languages) across several programming languages. Programs written for .NET Framework execute in a software environment (as contrasted to hardware environment), known as the Common Language Runtime (CLR), an application virtual machine that provides services such as security, memory management, and exception handling. The class library and the CLR together constitute .NET Framework. .NET Framework's Framework Class Library provides user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. History[edit] Microsoft started development of .NET Framework in the late 1990s, originally under the name of Next Generation Windows Services (NGWS).

Object REXX. Object REXX supports multiple inheritance via the use of mixin classes. References[edit] External links[edit] Perl. Though Perl is not officially an acronym,[5] there are various backronyms in use, such as: Practical Extraction and Reporting Language.[6] Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier.[7] Since then, it has undergone many changes and revisions. The latest major stable revision of Perl 5 is 5.18, released in May 2013. Perl 6, which began as a redesign of Perl 5 in 2000, eventually evolved into a separate language. Both languages continue to be developed independently by different development teams and liberally borrow ideas from one another. History[edit] Early versions[edit] Wall began work on Perl in 1987, while working as a programmer at Unisys,[9] and released version 1.0 to the comp.sources.misc newsgroup on December 18, 1987.[14] The language expanded rapidly over the next few years.

Perl 2, released in 1988, featured a better regular expression engine. PHP. PHP is a server-side scripting language designed for web development but also used as a general-purpose programming language. Originally created by Rasmus Lerdorf in 1994,[3] the PHP reference implementation is now produced by The PHP Group.[4] PHP originally stood for Personal Home Page,[3] but it now stands for the recursive backronym PHP: Hypertext Preprocessor.[5] The standard PHP interpreter, powered by the Zend Engine, is free software released under the PHP License.

PHP has been widely ported and can be deployed on most web servers on almost every operating system and platform, free of charge.[7] The PHP language evolved without a written formal specification or standard until 2014, leaving the canonical PHP interpreter as a de facto standard. PowerBuilder. PowerBuilder is an integrated development environment owned by Sybase, a division of SAP. It has been in use since 1991, peaking around 1998 with around 100,000 users.[1] In May of 2015 SAP announced that Appeon would take over future development and marketing of PowerBuilder while Intellectual Property would remain with SAP.[2] While Powerbuilder's market share has diminished, many applications created with it are still in use. In 2010, Sybase released a major upgrade to PowerBuilder with support for the Microsoft .NET Framework.[3] Originally announced as PowerBuilder 15, PowerBuilder 12.6 was released in August 2014.

Features include OData support, dockable windows, and 64-bit native applications in PowerBuilder Classic.[4] Python (programming language) CPython, the reference implementation of Python, is free and open-source software and has a community-based development model, as do nearly all of its alternative implementations.

CPython is managed by the non-profit Python Software Foundation. Ruby (programming language) Following the release of Ruby 0.95 in 1995, several stable versions of Ruby were released in the following years: Ruby 2.0 added several new features, including: Tcl. Tcl (originally from Tool Command Language, but conventionally spelled "Tcl" rather than "TCL"; pronounced as "tickle" or "tee-see-ell"[4]) is a scripting language created by John Ousterhout.[5] Originally "born out of frustration",[6] according to the author, with programmers devising their own languages intended to be embedded into applications, Tcl gained acceptance on its own.

VBScript. Visual Basic. Visual Basic for Applications. Visual DataFlex. Winbatch.