You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/atl/atl-support-for-dhtml-controls.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ Using ATL, you can create a control with Dynamic HTML (DHTML) capability. An ATL
12
12
13
13
- Specifies, using HTML, the user interface (UI) of the DHTML control.
14
14
15
-
- Accesses the WebBrowser object and its methods through its interface, [IWebBrowser2](https://msdn.microsoft.com/library/aa752127.aspx).
15
+
- Accesses the WebBrowser object and its methods through its interface, [IWebBrowser2](/previous-versions/windows/internet-explorer/ie-developer/platform-apis/aa752127\(v=vs.85\)).
16
16
17
17
- Manages communication between C++ code and HTML.
Copy file name to clipboardExpand all lines: docs/atl/reference/atl-http-utility-functions.md
+3-6Lines changed: 3 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -70,10 +70,6 @@ Returns TRUE on success, FALSE on failure.
70
70
71
71
Behaves like the current version of [InternetCanonicalizeUrl](/windows/desktop/api/wininet/nf-wininet-internetcanonicalizeurla) but does not require WinInet or Internet Explorer to be installed.
A `const` pointer to a `ImgDelayDescr`(see delayimp.h) that contains the offsets of various import-related data, a timestamp for binding information, and a set of attributes that provide further information about the descriptor content. Currently there is only one attribute, `dlattrRva`, which indicates that the addresses in the descriptor are relative virtual addresses (as opposed to virtual addresses).
21
+
A `const` pointer to a `ImgDelayDescr` that contains the offsets of various import-related data, a timestamp for binding information, and a set of attributes that provide further information about the descriptor content. Currently there's only one attribute, `dlattrRva`, which indicates that the addresses in the descriptor are relative virtual addresses. For more information, see the declarations in *delayimp.h*.
22
22
23
23
For the definition of the `PCImgDelayDescr` structure, see [Structure and Constant Definitions](structure-and-constant-definitions.md).
24
24
25
25
*ppfnIATEntry*<br/>
26
-
A pointer to the slot in the delay load import address table (IAT) to be updated with the address of the imported function. The helper routine needs to store the same value that it will be returning into this location.
26
+
A pointer to the slot in the delay load import address table (IAT) that's updated with the address of the imported function. The helper routine needs to store the same value that it returns into this location.
27
27
28
28
## Expected Return Values
29
29
@@ -37,11 +37,11 @@ If the function fails, it raises an exception and returns 0. Three types of exce
37
37
38
38
- Failure of `GetProcAddress`.
39
39
40
-
It is your responsibility to handle these exceptions.
40
+
It's your responsibility to handle these exceptions.
41
41
42
42
## Remarks
43
43
44
-
The calling convention for the helper function is `__stdcall`. The type of the return value is not relevant, so FARPROC is used. This function has C linkage.
44
+
The calling convention for the helper function is `__stdcall`. The type of the return value isn't relevant, so FARPROC is used. This function has C linkage.
45
45
46
46
The return value of the delay load helper needs to be stored in the passed-in function pointer location, unless you want your helper routine to be used as a notification hook. In that case, your code is responsible for finding the appropriate function pointer to return. The thunk code the linker generates then takes that return value as the real target of the import and jumps directly to it.
Specifies whether to mark an executable image as compatible with Control-flow Enforcement Technology (CET).
10
+
11
+
## Syntax
12
+
13
+
> **/CETCOMPAT**\[**:NO**]
14
+
15
+
## Arguments
16
+
17
+
**NO**<br/>
18
+
Specifies that the executable should not be marked compatible with CET.
19
+
20
+
## Remarks
21
+
22
+
Control-flow Enforcement Technology (CET) is a computer processor feature that provides capabilities to defend against certain kinds of malware attacks. For more information, see [Intel Control-flow Enforcement Technology Preview](https://software.intel.com/sites/default/files/managed/4d/2a/control-flow-enforcement-technology-preview.pdf).
23
+
24
+
The **/CETCOMPAT** linker option tells the linker to mark the binary as CET-compatible. **/CETCOMPAT:NO** marks the binary as not compatible with CET. If both options are specified on the command line, the last one specified is used. This switch is currently only applicable to x86 and x64 architectures.
25
+
26
+
The **/CETCOMPAT** option is available beginning in the Visual Studio 2019 Preview 3 toolset.
27
+
28
+
### To set the /CETCOMPAT linker option in Visual Studio
29
+
30
+
1. Open the **Property Pages** dialog box for the project. For more information, see [Working with Project Properties](../../ide/working-with-project-properties.md).
This article contains a categorical list of compiler options. For an alphabetical list, see [Compiler Options Listed Alphabetically](compiler-options-listed-alphabetically.md).
10
10
11
-
###Optimization
11
+
## Optimization
12
12
13
13
|Option|Purpose|
14
14
|------------|-------------|
@@ -24,7 +24,7 @@ This article contains a categorical list of compiler options. For an alphabetica
|[/favor](favor-optimize-for-architecture-specifics.md)|Produces code that is optimized for a specified architecture, or for a range of architectures.|
26
26
27
-
###Code generation
27
+
## Code generation
28
28
29
29
|Option|Purpose|
30
30
|------------|-------------|
@@ -65,7 +65,7 @@ This article contains a categorical list of compiler options. For an alphabetica
A *hint file* helps the Visual Studio integrated development environment (IDE) interpret Visual C++ identifiers, such as the names of functions and macros. When you open a Visual C++ project, the IDE's *parsing system* analyzes the code in each source file in the project and gathers information about every identifier. Then the IDE uses that information to support features such as the **Class View** browser and the **Navigation Bar**.
11
11
12
-
The parsing system, which is introduced in Visual C++ 2010, understands C/C++ syntax but can misinterpret a statement that contains a macro. The statement can be misinterpreted if the macro causes the source code to be syntactically incorrect as written. The statement can become syntactically correct when the source code is compiled and the preprocesser replaces the [macro identifier](../../preprocessor/hash-define-directive-c-cpp.md) with its definition. The parsing system works without having to build the project because it uses hint files to interpret macros. Therefore, a browsing feature such as **Class View** is immediately available.
12
+
The parsing system, which is introduced in Visual C++ 2010, understands C/C++ syntax but can misinterpret a statement that contains a macro. The statement can be misinterpreted if the macro causes the source code to be syntactically incorrect as written. The statement can become syntactically correct when the source code is compiled and the preprocessor replaces the [macro identifier](../../preprocessor/hash-define-directive-c-cpp.md) with its definition. The parsing system works without having to build the project because it uses hint files to interpret macros. Therefore, a browsing feature such as **Class View** is immediately available.
13
13
14
14
A hint file contains user-customizable *hints*, which have the same syntax as C/C++ macro definitions. Visual C++ includes a built-in hint file that is sufficient for most projects, but you can create your own hint files to improve the way Visual Studio handles identifiers.
15
15
@@ -86,7 +86,7 @@ Hints use the following syntax.
86
86
87
87
|Syntax|Meaning|
88
88
|------------|-------------|
89
-
|`#define`*hint-name**replacement-string*<br /><br /> `#define`*hint-name*`(`*parameter*, ...`)`*replacement-string*|A preprocesser directive that defines a new hint or redefines an existing hint. After the directive, the preprocessor replaces each occurrence of *hint-name* in source code with *replacement-string*.<br /><br /> The second syntax form defines a function-like hint. If a function-like hint occurs in source code, the preprocessor first replaces each occurrence of *parameter* in *replacement-string* with the corresponding argument in source code, and then replaces *hint-name* with *replacement-string*.|
89
+
|`#define`*hint-name**replacement-string*<br /><br /> `#define`*hint-name*`(`*parameter*, ...`)`*replacement-string*|A preprocessor directive that defines a new hint or redefines an existing hint. After the directive, the preprocessor replaces each occurrence of *hint-name* in source code with *replacement-string*.<br /><br /> The second syntax form defines a function-like hint. If a function-like hint occurs in source code, the preprocessor first replaces each occurrence of *parameter* in *replacement-string* with the corresponding argument in source code, and then replaces *hint-name* with *replacement-string*.|
90
90
|`@<`|A hint-file specific *replacement-string* that indicates the start of a set of map elements.|
91
91
|`@=`|A hint-file specific *replacement-string* that indicates an intermediate map element. A map can have multiple map elements.|
92
92
|`@>`|A hint-file specific *replacement-string* that indicates the end of a set of map elements.|
@@ -309,10 +309,20 @@ The following notes apply to the preceding list.
309
309
310
310
## See Also
311
311
312
+
<<<<<<< HEAD:docs/build/reference/hint-files.md
312
313
[File Types Created for Visual C++ Projects](file-types-created-for-visual-cpp-projects.md)<br>
0 commit comments