Skip to content

Commit ce115fc

Browse files
authored
Merge pull request #409 from MicrosoftDocs/master
Merge content to live
2 parents b3ffb71 + 670dd96 commit ce115fc

98 files changed

Lines changed: 2259 additions & 1629 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/atl-mfc-shared/atl-mfc-shared-classes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ ms.author: "mblome"
1717
manager: "ghogen"
1818
---
1919
# ATL/MFC Shared Classes
20-
Beginning with Visual C++ .NET 2002, several existing MFC utility classes were rewritten or revised to reduce their dependencies on other MFC classes. These utility classes can now be used in any native C++ project. This section only includes classes that were previously available to MFC projects and have now been shared, plus a few new classes related to the changes in `CString`. It does not include the ATL classes, which can be used in any native C++ project type by inclusion of the appropriate header.
20+
These utility classes can be used in any native C++ project without requiring any MFC DLL.
2121

2222
## In This Section
2323
[Classes Shared Between MFC and ATL](../atl-mfc-shared/reference/classes-shared-by-mfc-and-atl.md)

docs/atl-mfc-shared/reference/cstringt-class.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ public CSimpleStringT<BaseType,
140140
`CString`, `CStringA`, and `CStringW` are exported from the MFC DLL (MFC90.DLL), never from user DLLs. This is done to prevent `CStringT` from being multiply defined.
141141

142142
> [!NOTE]
143-
> If you encountered linker errors when exporting a `CString`-derived class from an MFC extension DLL in Visual C++ .NET 2002 and have applied the workaround as described in the Knowledge Base article, "Linking Errors When You Import CString-Derived Classes" (Q309801), you should remove the workaround code, because this has been fixed in Visual C++ .NET 2003. You can find Knowledge Base articles at [http://support.microsoft.com/support](http://support.microsoft.com/support).
143+
> If your code contains the workaround for linker errors that is described in [Linking Errors When You Import CString-Derived Classes" (Q309801)](https://support.microsoft.com/help/309801/you-may-receive-an-lnk2019-error-message-when-you-build-a-visual-c-200), you should remove that code. It is no longer needed.
144144
145145
The following string types are available within MFC-based applications:
146146

docs/atl-mfc-shared/reference/ctime-class.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,7 @@ CTime(const DBTIMESTAMP& dbts,int nDST = -1) throw();
127127

128128
`time`
129129
A **__time64_t** time value, which is the number of seconds after January 1, 1970 UTC. Note that this will be adjusted to your local time. For example, if you are in New York and create a `CTime` object by passing a parameter of 0, [CTime::GetMonth](#getmonth) will return 12.
130-
131-
In Visual C++ versions 6.0 and earlier, `time` was a value of `time_t`. Visual C++ .NET and later converts a `time_t` parameter to **__time64_t**.
130+
132131

133132
`nYear`, `nMonth`, `nDay`, `nHour`, `nMin`, `nSec`
134133
Indicates the date and time values to be copied into the new `CTime` object.

docs/atl-mfc-shared/reference/ctimespan-class.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ CTimeSpan(
114114
A `CTimeSpan` object that already exists.
115115

116116
`time`
117-
A **__time64_t** time value, which is the number of seconds in the time span. In Visual C++ versions 6.0 and earlier, `time` was a value of `time_t`. Visual C++ .NET or later silently converts a `time_t` parameter to **__time64_t**.
117+
A **__time64_t** time value, which is the number of seconds in the time span.
118118

119119
`lDays`, `nHours`, `nMins`, `nSecs`
120120
Days, hours, minutes, and seconds, respectively.

docs/atl/reference/compiler-options-macros.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ These macros control specific compiler features.
6464

6565
If this `#define` is added, the ATL headers are careful to preserve the state of these warnings so that they are not disabled globally (or if the user explicitly disables individual warnings, not to enable them).
6666

67-
New projects generated with Visual C++ .NET 2002 will have this `#define` set in stdafx.h by default.
67+
New projects have this `#define` set in stdafx.h by default.
6868

6969
## <a name="_atl_apartment_threaded"></a> _ATL_APARTMENT_THREADED
7070
Define if one or more of your objects use apartment threading.

docs/atl/reference/default-atl-project-configurations.md

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: "Default ATL Project Configurations | Microsoft Docs"
33
ms.custom: ""
4-
ms.date: "11/04/2016"
4+
ms.date: "10/20/2017"
55
ms.reviewer: ""
66
ms.suite: ""
77
ms.technology: ["cpp-windows"]
@@ -16,12 +16,7 @@ ms.author: "mblome"
1616
manager: "ghogen"
1717
---
1818
# Default ATL Project Configurations
19-
This topic compares the default ATL project configurations in Visual C++ .NET with the default project configurations in Visual C++ 6.0.
20-
21-
## Visual C++ .NET Default Configurations
22-
In Visual C++ .NET, the ATL Project Wizard creates two project configurations by default.
23-
24-
### Visual C++ .NET Configurations
19+
The ATL Project Wizard creates two project configurations by default:
2520

2621
|Configuration|Character set|Use of ATL|
2722
|-------------------|-------------------|----------------|
@@ -30,20 +25,7 @@ This topic compares the default ATL project configurations in Visual C++ .NET wi
3025

3126
**Character set**, **Use of ATL** and can all be changed in the **Project Settings** dialog under the **General** tab. You can also add your own configurations using the Configuration Manager. For details, see [Build Configurations](/visualstudio/ide/understanding-build-configurations).
3227

33-
## Version 6.0 Default Configurations
34-
In Visual C++ version 6.0, the ATL COM AppWizard (now called the ATL Project Wizard) created six project configurations by default. The configurations were variations on Release, Debug, Unicode, and use of CRT and ATL settings. All these configurations can be duplicated in Visual C++ .NET using the Configuration Manager, if so desired.
35-
36-
### Version 6.0 Configurations
37-
38-
|Configuration|Character set|Use of ATL|
39-
|-------------------|-------------------|----------------|
40-
|Debug|MBCS|Static|
41-
|Debug Unicode|UNICODE|Static|
42-
|Release Min Dependency|MBCS|Static|
43-
|Release Min Dependency Unicode|UNICODE|Static|
44-
|Release Min Size|MBCS|DLL|
45-
|Release Min Size Unicode|UNICODE|DLL|
46-
28+
4729
## See Also
4830
[Programming with ATL and C Run-Time Code](../../atl/programming-with-atl-and-c-run-time-code.md)
4931
[Working with Project Properties](../../ide/working-with-project-properties.md)

docs/atl/reference/string-conversion-macros.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.technology:
88
- "cpp-windows"
99
ms.tgt_pltfrm: ""
1010
ms.topic: "reference"
11-
f1_keywords: ["atlconv/ATL::DEVMODEA2W", "atlconv/ATL::TEXTMETRICA2W",
11+
f1_keywords: ["atlconv/ATL::DEVMODEA2W", "atlconv/ATL::TEXTMETRICA2W", "atlconv/ATL::DEVMODEOLE2T", "atlconv/ATL::TEXTMETRICOLE2T", "atlconv/ATL::DEVMODET2OLE", "atlconv/ATL::TEXTMETRICT2OLE", "atlconv/ATL::DEVMODEW2A", "atlconv/ATL::TEXTMETRICW2A"]
1212
dev_langs:
1313
- "C++"
1414
ms.assetid: 2ff7c0b6-2bde-45fe-897f-6128e18e0c27

docs/build/reference/TOC.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,7 @@
202202
### [-ENTRY (Entry-Point Symbol)](entry-entry-point-symbol.md)
203203
### [-ERRORREPORT (Report Internal Linker Errors)](errorreport-report-internal-linker-errors.md)
204204
### [-EXPORT (Exports a Function)](export-exports-a-function.md)
205+
### [-FILEALIGN (Align sections in files)](filealign.md)
205206
### [-FIXED (Fixed Base Address)](fixed-fixed-base-address.md)
206207
### [-FORCE (Force File Output)](force-force-file-output.md)
207208
### [-FUNCTIONPADMIN (Create Hotpatchable Image)](functionpadmin-create-hotpatchable-image.md)

docs/build/reference/assemblydebug-add-debuggableattribute.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ manager: "ghogen"
4242
```
4343

4444
## Remarks
45-
In Visual C++ .NET 2003 and later, it is necessary to explicitly specify that a managed image be debuggable. Using [/Zi](../../build/reference/z7-zi-zi-debug-information-format.md) alone is not sufficient.
45+
It is necessary to explicitly specify that a managed image be debuggable. Using [/Zi](../../build/reference/z7-zi-zi-debug-information-format.md) alone is not sufficient.
4646

4747
Other linker options that affect assembly generation are:
4848

docs/build/reference/cl-environment-variables.md

Lines changed: 41 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -18,57 +18,47 @@ manager: "ghogen"
1818
---
1919
# CL Environment Variables
2020

21-
The CL tool uses the following environment variables:
22-
23-
- CL and \_CL\_, if defined. The CL tool inserts the options and arguments defined in the CL environment variable at the beginning of the command line arguments, and adds the options and arguments defined in \_CL\_ to the end of the command line arguments, before processing.
24-
25-
- INCLUDE, which must point to the \include subdirectory of your Visual C++ installation.
26-
27-
- LIBPATH, which specifies directories to search for metadata files referenced by a `#using` directive. See [#using](../../preprocessor/hash-using-directive-cpp.md) for more information on LIBPATH.
28-
29-
You can set the CL or \_CL\_ environment variables using the following syntax:
30-
31-
```
32-
SET CL=[ [option] ... [file] ...] [/link link-opt ...]
33-
SET _CL_=[ [option] ... [file] ...] [/link link-opt ...]
34-
```
35-
36-
For details on the arguments to the CL and \_CL\_ environment variables, see [Compiler Command-Line Syntax](../../build/reference/compiler-command-line-syntax.md).
37-
38-
You can use these environment variables to define the files and options you use most often and use the command line to define specific files and options for specific purposes. The CL and \_CL\_ environment variables are limited to 1024 characters (the command-line input limit).
39-
40-
You cannot use the /D option to define a symbol that uses an equal sign (=). You can substitute the number sign (#) for an equal sign. In this way, you can use the CL or \_CL\_ environment variables to define preprocessor constants with explicit values; for example, `/DDEBUG#1` to define `DEBUG=1`.
41-
42-
For related information, see [Set Environment Variables](../../build/setting-the-path-and-environment-variables-for-command-line-builds.md).
43-
44-
## Examples
45-
46-
The following is an example of setting the CL environment variable:
47-
48-
```
49-
SET CL=/Zp2 /Ox /I\INCLUDE\MYINCLS \LIB\BINMODE.OBJ
50-
```
51-
52-
When this environment variable is set, if you enter `CL INPUT.C` at the command line, this is the effective command:
53-
54-
```
55-
CL /Zp2 /Ox /I\INCLUDE\MYINCLS \LIB\BINMODE.OBJ INPUT.C
56-
```
57-
58-
The following example causes a plain CL command to compile the source files FILE1.c and FILE2.c, and then link the object files FILE1.obj, FILE2.obj, and FILE3.obj:
59-
60-
```
61-
SET CL=FILE1.C FILE2.C
62-
SET _CL_=FILE3.OBJ
63-
CL
64-
```
65-
66-
This has the same effect as the following command line:
67-
68-
```
69-
CL FILE1.C FILE2.C FILE3.OBJ
70-
```
71-
21+
The CL tool uses the following environment variables:
22+
23+
- CL and \_CL\_, if defined. The CL tool prepends the options and arguments defined in the CL environment variable to the command line arguments, and appends the options and arguments defined in \_CL\_, before processing.
24+
25+
- INCLUDE, which must point to the \include subdirectory of your Visual C++ installation.
26+
27+
- LIBPATH, which specifies directories to search for metadata files referenced with [#using](../../preprocessor/hash-using-directive-cpp.md). See `#using` for more information on LIBPATH.
28+
29+
You can set the CL or \_CL\_ environment variable using the following syntax:
30+
31+
> SET CL=[ [*option*] ... [*file*] ...] [/link *link-opt* ...]
32+
> SET \_CL\_=[ [*option*] ... [*file*] ...] [/link *link-opt* ...]
33+
34+
For details on the arguments to the CL and \_CL\_ environment variables, see [Compiler Command-Line Syntax](../../build/reference/compiler-command-line-syntax.md).
35+
36+
You can use these environment variables to define the files and options you use most often and use the command line to define specific files and options for specific purposes. The CL and \_CL\_ environment variables are limited to 1024 characters (the command-line input limit).
37+
38+
You cannot use the /D option to define a symbol that uses an equal sign (=). You can substitute the number sign (#) for an equal sign. In this way, you can use the CL or \_CL\_ environment variables to define preprocessor constants with explicit values—for example, `/DDEBUG#1` to define `DEBUG=1`.
39+
40+
For related information, see [Set Environment Variables](../../build/setting-the-path-and-environment-variables-for-command-line-builds.md).
41+
42+
## Examples
43+
44+
The following is an example of setting the CL environment variable:
45+
46+
> SET CL=/Zp2 /Ox /I\INCLUDE\MYINCLS \LIB\BINMODE.OBJ
47+
48+
When this environment variable is set, if you enter `CL INPUT.C` at the command line, this is the effective command:
49+
50+
> CL /Zp2 /Ox /I\INCLUDE\MYINCLS \LIB\BINMODE.OBJ INPUT.C
51+
52+
The following example causes a plain CL command to compile the source files FILE1.c and FILE2.c, and then link the object files FILE1.obj, FILE2.obj, and FILE3.obj:
53+
54+
> SET CL=FILE1.C FILE2.C
55+
> SET \_CL\_=FILE3.OBJ
56+
> CL
57+
58+
This has the same effect as the following command line:
59+
60+
> CL FILE1.C FILE2.C FILE3.OBJ
61+
7262
## See Also
7363

7464
[Setting Compiler Options](../../build/reference/setting-compiler-options.md)

0 commit comments

Comments
 (0)