Boris Jabes Program Manager Visual C++ Microsoft Corporation.

Slides:



Advertisements
Similar presentations
Designing InfoPath Forms: The Dos and Donts Deploying InfoPath Forms: Making the right choice Adding custom business logicin case the built-in stuff isnt.
Advertisements

Building International Applications with Visual Studio.NET Achim Ruopp International Program Manager Microsoft Corporation.
Introduction to Visual Basic.NET Uploaded By: M.Sheraz anjum.
Visual Basic 2010 How to Program. © by Pearson Education, Inc. All Rights Reserved.2.
Visual Basic 2010 How to Program Reference: Instructor: Maysoon Bin Duwais slides Visual Basic 2010 how to program by Deitel © by Pearson Education,
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
 2006 Pearson Education, Inc. All rights reserved Introduction to the Visual C# 2005 Express Edition IDE.
The Microsoft View: Module 1: Getting Started. Copyright Course 2559B, Introduction to Visual Basic®.NET Programming with Microsoft®.NET. Lecture 1 Microsoft.
6.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure.
Create slices and hotspots Create links in Web pages Create rollovers from slices Create basic animation Add tweening symbol instances to create animation.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Macros Tutorial Week 20. Objectives By the end of this tutorial you should understand how to: Create macros Assign macros to events Associate macros with.
Introduction to windows operating system i
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
1 Introduction to the Visual Studio.NET IDE Powerpoint slides modified from Deitel & Deitel.
Chapter 1 Getting Started With Dreamweaver. Explore the Dreamweaver Workspace The Dreamweaver workspace is where you can find all the tools to create.
Operating Systems Day 1. Booting a Computer 1.Switch on the UPS electricity supply - green light electricity failure - red light charging – orange light.
McGraw-Hill© 2007 The McGraw-Hill Companies, Inc. All rights reserved. 1-1.
Tutorial: Introduction to ASP.NET Internet Technologies and Web Application 4 th February 2010.
1 Introduction to.NET Framework. 2.NETFramework Internet COM+ Orchestration Orchestration Windows.NET Enterprise ServersBuildingBlockServices Visual Studio.NET.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
1 INF160 IS Development Environments AUBG, COS dept Lecture 06 Title: Dev Env: Code::Blocks (Extract from Syllabus) Reference:
Programming with Microsoft Visual Basic 2012 Chapter 12: Web Applications.
Lesson 1: Getting Started
IT 211 Project Integration and Deployment Lab #11.
IE 411/511: Visual Programming for Industrial Applications
Virtual techdays INDIA │ Nov 2010 Developing Office Biz Application using WPF on Windows 7 Sarang Datye │ Sr. Consultant, Microsoft Sridhar Poduri.
Introduction to Matlab & Data Analysis
11 Web Services. 22 Objectives You will be able to Say what a web service is. Write and deploy a simple web service. Test a simple web service. Write.
 2009 Pearson Education, Inc. All rights reserved Introduction to the Visual Basic Express 2008 IDE.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Irwin/McGraw-Hill Copyright© 2000 by the McGraw-Hill Companies, Inc. PowerPoint® Presentation to accompany prepared by James T. Perry University of San.
 2006 Pearson Education, Inc. All rights reserved Introduction to the Visual C# 2005 Express Edition IDE.
Use CSS to Implement a Reusable Design Selecting a Dreamweaver CSS Starter Layout is the easiest way to create a page with a CSS layout You can access.
1 Creating Windows GUIs with Visual Studio. 2 Creating the Project New Project Visual C++ Projects Windows Forms Application Give the Project a Name and.
Windows Vista is the latest release of Microsoft Windows, a line of graphical operating systems used on personal computers, including home and business.
11 SUPPORTING THE WINDOWS DESKTOP Chapter 4. Chapter 4: Supporting the Windows Desktop2 SUPPORTING THE WINDOWS DESKTOP  Troubleshoot and customize the.
Visual Basic for Application - Microsoft Access 2003 Programming applications using Objects.
 2002 Prentice Hall. All rights reserved. 1 Chapter 2 – Introduction to the Visual Studio.NET IDE Outline 2.1Introduction 2.2Visual Studio.NET Integrated.
Windows 7 INSERT BOOK COVER
Object-Oriented Application Development Using VB.NET 1 Chapter 2 The Visual Studio.NET Development Environment.
DEV394.NET Framework: Migrating To Managed Code Adam Nathan QA Lead Richard Lander Program Manager Microsoft Corporation.
Steve Teixeira Group Program Manager Microsoft Corporation.
Intoduction to Andriod studio Environment With a hello world program.
IE 411/511: Visual Programming for Industrial Applications Lecture Notes #2 Introduction to the Visual Basic Express 2010 Integrated Development Environment.
Working with ASP.NET Controls What is ASP.NET Using server controls in your pages Allowing users to create their own accounts Creating a login page Letting.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
 2007 Pearson Education, Inc. All rights reserved Introduction to the Visual Basic Express 2005 IDE.
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
Fixing Windows 10 Automatic Updates Install Problem
Windows Vista Configuration MCTS : Internet Explorer 7.0.
2-1 Chapter 2 Using VB.NET to Create a First Solution.
Working in a Mobile App Development Environment Lesson 2.
Dive Into® Visual Basic 2010 Express
Windows Programming Environments
Chapter 2: The Visual Studio .NET Development Environment
Chapter 2 – Introduction to the Visual Studio .NET IDE
Creating Web Pages and Graphics
Working with Dialogs and Controls
Introduction to the Visual C# 2005 Express Edition IDE
Introduction to Computers
Computer Programming and Basic Software Engineering 9 Building Graphical User Interface Developing a Simple Graphical User Interface (GUI)
How to customize your Microsoft SharePoint Online website
Chapter 2 – Introduction to the Visual Studio .NET IDE
Microsoft Visual Studio
How to customize your Microsoft SharePoint Online website
Programming with Microsoft Visual Basic 2008 Fourth Edition
Overview of the IDE Visual Studio .NET is Microsoft’s Integrated Development Environment (IDE) for creating, running and debugging programs (also.
Presentation transcript:

Boris Jabes Program Manager Visual C++ Microsoft Corporation

Vista Development Productivity Interoperability

Aero Aesthetics Common Controls Task Dialogs Search Wizards Common Dialogs Control Panels Icons System Font (Segoe UI) User Account Control Notifications Text and Tone Restart Manager Function Discovery Cancellable I/O Error Reporting API RSS Feeds Network Awareness Low-Rights IE ASLR

Hide/Unhide the Menu Bar New File Dialogs Support for the new Common Controls

New methods in CFrameWnd class to hide or show menu in an MFC Application Methods to dynamically toggle menu to become hidden or visible Event handlers for custom actions when menu is about to be hidden or visible. No support to toggle the menu bar in MDI and dialog-based applications virtual void CFrameWnd::SetMenuBarVisibility(DWORD nStyle); virtual DWORD CFrameWnd::GetMenuBarVisibility(); virtual void CFrameWnd::SetMenuBarVisibility(DWORD nStyle); virtual DWORD CFrameWnd::GetMenuBarVisibility();

By default, MFC applications compiled under VC2008 will utilize Vista-style dialogs on Vista New Methods Called The new MFC Common File Dialog uses IFileDialogEvents instead of OnNotify If the user runs the program in a pre-Vista OS, then the dialogs default to the old-style dialogs

Fell behind since Win9x. Now up-to-date New Control Messages New WM Messages New Controls like Pager Control Includes new Vista controls

Provides input and validation of IPv4, IPv6 and DNS names Wrapped in MFC by CNetAddressCtrl Network Address Control Large button with an optional icon and an optional note Wrapped in MFC by CButton Command Button Consolidates a set of variations of a command, especially when one of the commands is used most of the time Wrapped in MFC by CSplitButton Split Button

Updated Resource Editing New Controls Command Link, Net Address Ctrl, SysLink, Split Button Existing Controls Adding new styles, notifications, messages

Available out of the box Linker Switch /MANIFESTUAC Project Setting > Linker > Manifest File Project Upgrade UAC is turned on, level is set to “asInvoker”

Register COM components as normal user Put them into HKCU when developing Maintain existing deployment Support for debugging IE7 Protected Mode Debugger to Launch > Web Browser Debugger

Let’s review /GS /SafeSEH DEP New in Vista: ASLR Linker switch (/DYNAMICBASE) to opt in to support ASLR

Support for viewing PNG and Vista compressed icons Icon Editor Preview Area 256 px

In 2005 Build Multiple Project in Parallel Tools > Options > Project and Solutions > Build and Run > Parallel Project Builds In 2008 Build Multiple Translation Units in Parallel /MP or /MPn (where n is no. of CPUs) Project Properties > C/C++ > Command Line > Additional Options

A.Dll … ClassB b; b.f() … A.Dll … ClassB b; b.f() … B.Dll public ref class ClassB { public String f() { //important string here return “Important String”; } B.Dll public ref class ClassB { public String f() { //important string here return “Important String”; } A.dll B.dll B.meta B.meta(*) Skip projects with no “significant” changes since last build

New library to simplify passing data between native and managed code Template-based pattern that applies to any kind of data Support lots of types out-of-the-box System::String^ const char * System::String^ const wchar_t * System::String^ char * System::String^ wchar_t * System::IntPtr HANDLE System::String^ BSTR System::String^ bstr_t System::String^ std::string System::String^ std::wstring System::String^ ATL::CStringT System::String^ ATL::CStringT System::String^ CComBSTR

I want to marshal between managed and native data types for conversions that do not require any lifetime management or complex resource allocation #include using namespace msclr::interop; … { … const char* sourcestring1 = “teststring” System::String^ deststring1; // Convert const char* to System::String^ using // TO to = marshal_as (from) deststring1 = marshal_as (sourcestring1); … } #include using namespace msclr::interop; … { … const char* sourcestring1 = “teststring” System::String^ deststring1; // Convert const char* to System::String^ using // TO to = marshal_as (from) deststring1 = marshal_as (sourcestring1); … }

I want to marshal between managed and native data types for conversions that require some kind of lifetime (memory, resource, etc…) #include using namespace msclr::interop; … { … System::String^ sourcestring1 = “teststring” const char* deststring1; //Convert System::String^ to const char* using //TO to = context.marshal_as (from) marshal_context ctx; deststring1 = ctx.marshal_as (sourcestring1); … } #include using namespace msclr::interop; … { … System::String^ sourcestring1 = “teststring” const char* deststring1; //Convert System::String^ to const char* using //TO to = context.marshal_as (from) marshal_context ctx; deststring1 = ctx.marshal_as (sourcestring1); … }

Leverage STL skills in applications that use.NET Framework Ease data exchange between STL and.NET Collections The power of templates and generics together Designed to achieve optimal performance and cross-language compatibility STL in any part of managed code (but only C++)

Only does visualization of code

Me – VC++ -