Pluralsight: The Essentials of COM

Posted By: ParRus

Pluralsight: The Essentials of COM
English | MP4 + Project Files | 1024 x 768 | AVC ~234 kbps | 15 fps
AAC | 128 Kbps | 44.1 KHz | 2 channels | 3h 01m | 423 MB
Genre: Video Tutorial

Learn the essentials of Microsoft’s Component Object Model. Understand its history and design, its relationship to classic C++, and how to write COM code effectively with modern C++.
This is the first in a series of courses exploring the essentials of COM and the Windows Runtime. In this first course, you are going to learn everything you need to know to use COM confidently and effectively. This course explores the history of COM. You will learn about how C++ shaped the design of COM. You will learn the essentials of compilation and linking, fundamental to the idea of dynamically linking applications and components together. By the end of this course you will have a thorough understanding of COM’s IUnknown interface, how and why it works the way it does, how to implement it, how to use it, and how to wrap it up in a safe and efficient manner with modern C++ libraries
Content:
Microsoft's Component Object Model

Introduction
What is COM?
Core Concepts
Pillars of COM
History
The Players
Summary

COM and C++

Introduction
COM as a better C++98
Dynamic Linking
Demo: Dynamic Linking
Exporting Objects
Demo: Exporting Objects
Managing Lifetime
Demo: Managing Lifetime
Extending Objects
Demo: Extending Objects
Say Hello to IUnknown

IUnknown and modern C++

Introduction
S_OK, it's just an HRESULT
Demo: S_OK, it's just an HRESULT
Taming the GUID
Demo: Taming the GUID
Demo: Implementing IUnknown
Demo: IUnknown and C#
The Rise of the Smart Pointer
Demo: The Rise of the Smart Pointer
C++11 as a better COM
Demo: C++11 as a better COM

Libraries

Introduction
Windows Runtime C++ Template Library (WRL)
WRL's ComPtr
Demo: WRL's ComPtr
WRL's RuntimeClass
Demo: WRL's RuntimeClass
Demo: ATL
Summary

General
Complete name : 03-Demo S_OK, it's just an HRESULT.mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42
File size : 13.6 MiB
Duration : 5mn 12s
Overall bit rate mode : Variable
Overall bit rate : 365 Kbps
Encoded date : UTC 2013-05-14 18:17:34
Tagged date : UTC 2013-05-14 18:17:59
Writing application : HandBrake 0.9.8 2012071700
Video #1
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : Baseline@L3.1
Format settings, CABAC : No
Format settings, ReFrames : 2 frames
Format settings, GOP : M=1, N=50
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 5mn 12s
Bit rate mode : Variable
Bit rate : 234 Kbps
Width : 1 024 pixels
Height : 768 pixels
Display aspect ratio : 4:3
Frame rate mode : Variable
Frame rate : 15.000 fps
Minimum frame rate : 14.925 fps
Maximum frame rate : 15.152 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.020
Stream size : 8.73 MiB (64%)
Writing library : x264 core 120
Encoding settings : cabac=0 / ref=2 / deblock=1:0:0 / analyse=0x1:0x111 / me=umh / subme=6 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=50 / keyint_min=15 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=20.0 / qcomp=0.60 / qpmin=3 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00
Encoded date : UTC 2013-05-14 18:17:34
Tagged date : UTC 2013-05-14 18:17:59
Color primaries : BT.709-5, BT.1361, IEC 61966-2-4, SMPTE RP177
Transfer characteristics : BT.709-5, BT.1361
Matrix coefficients : BT.709-5, BT.1361, IEC 61966-2-4 709, SMPTE RP177
Audio #2
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 5mn 12s
Bit rate mode : Variable
Bit rate : 128 Kbps
Maximum bit rate : 154 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 44.1 KHz
Compression mode : Lossy
Stream size : 4.77 MiB (35%)
Language : English
Encoded date : UTC 2013-05-14 18:17:34
Tagged date : UTC 2013-05-14 18:17:59
Screenshots




For more, Visit my AH-blog