<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::CodeViewRecordPDB20 Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Crashpad
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html">CodeViewRecordPDB20</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="structcrashpad_1_1CodeViewRecordPDB20-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::CodeViewRecordPDB20 Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A CodeView record linking to a <code>.pdb</code> 2.0 file.  
 <a href="structcrashpad_1_1CodeViewRecordPDB20.html#details">More...</a></p>

<p><code>#include &quot;util/misc/pdb_structures.h&quot;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a321660d3f7297b1fe30fafd424e717a4"><td class="memItemLeft" align="right" valign="top"><a id="a321660d3f7297b1fe30fafd424e717a4"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#a321660d3f7297b1fe30fafd424e717a4">signature</a></td></tr>
<tr class="memdesc:a321660d3f7297b1fe30fafd424e717a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">The magic number identifying this structure version, the value of <a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#a44ae151e658264089c48724635cbc789" title="The magic number identifying this structure version, stored in signature. ">kSignature</a>. <br /></td></tr>
<tr class="separator:a321660d3f7297b1fe30fafd424e717a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1187d7d3e7a25e3053efbb73e1a4f77"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#ae1187d7d3e7a25e3053efbb73e1a4f77">offset</a></td></tr>
<tr class="memdesc:ae1187d7d3e7a25e3053efbb73e1a4f77"><td class="mdescLeft">&#160;</td><td class="mdescRight">The offset to CodeView data.  <a href="#ae1187d7d3e7a25e3053efbb73e1a4f77">More...</a><br /></td></tr>
<tr class="separator:ae1187d7d3e7a25e3053efbb73e1a4f77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec8f91274534e13cdacb21e7427c32e4"><td class="memItemLeft" align="right" valign="top"><a id="aec8f91274534e13cdacb21e7427c32e4"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#aec8f91274534e13cdacb21e7427c32e4">timestamp</a></td></tr>
<tr class="memdesc:aec8f91274534e13cdacb21e7427c32e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">The time that the <code>.pdb</code> file was created, in <code>time_t</code> format, the number of seconds since the POSIX epoch. <br /></td></tr>
<tr class="separator:aec8f91274534e13cdacb21e7427c32e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63b66c170fd97509ad079ff39d75a71f"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#a63b66c170fd97509ad079ff39d75a71f">age</a></td></tr>
<tr class="memdesc:a63b66c170fd97509ad079ff39d75a71f"><td class="mdescLeft">&#160;</td><td class="mdescRight">The revision of the <code>.pdb</code> file.  <a href="#a63b66c170fd97509ad079ff39d75a71f">More...</a><br /></td></tr>
<tr class="separator:a63b66c170fd97509ad079ff39d75a71f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b74f72c131ef38946b676ad342d2100"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#a2b74f72c131ef38946b676ad342d2100">pdb_name</a> [1]</td></tr>
<tr class="memdesc:a2b74f72c131ef38946b676ad342d2100"><td class="mdescLeft">&#160;</td><td class="mdescRight">The path or file name of the <code>.pdb</code> file associated with the module.  <a href="#a2b74f72c131ef38946b676ad342d2100">More...</a><br /></td></tr>
<tr class="separator:a2b74f72c131ef38946b676ad342d2100"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a44ae151e658264089c48724635cbc789"><td class="memItemLeft" align="right" valign="top">static const uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#a44ae151e658264089c48724635cbc789">kSignature</a> = '01BN'</td></tr>
<tr class="memdesc:a44ae151e658264089c48724635cbc789"><td class="mdescLeft">&#160;</td><td class="mdescRight">The magic number identifying this structure version, stored in <a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#a321660d3f7297b1fe30fafd424e717a4" title="The magic number identifying this structure version, the value of kSignature. ">signature</a>.  <a href="#a44ae151e658264089c48724635cbc789">More...</a><br /></td></tr>
<tr class="separator:a44ae151e658264089c48724635cbc789"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A CodeView record linking to a <code>.pdb</code> 2.0 file. </p>
<p>This format provides an indirect link to debugging data by referencing an external <code>.pdb</code> file by its name, timestamp, and age. This structure may be pointed to by <a class="el" href="structMINIDUMP__MODULE.html#acd07e35faf066880eeabea8a91aa887a" title="A pointer to the module’s CodeView record, typically a link to its debugging information in crashpad...">MINIDUMP_MODULE::CvRecord</a>. It has been superseded by <a class="el" href="structcrashpad_1_1CodeViewRecordPDB70.html" title="A CodeView record linking to a .pdb 7.0 file. ">CodeViewRecordPDB70</a>.</p>
<p>For more information about this structure and format, see <a href="http://www.debuginfo.com/articles/debuginfomatch.html#pdbfiles">Matching Debug Information</a>, PDB Files, and <em>Undocumented Windows 2000 Secrets</em>, Windows 2000 Debugging Support/Microsoft Symbol File Internals/CodeView Subsections.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="structIMAGE__DEBUG__MISC.html" title="Miscellaneous debugging record. ">IMAGE_DEBUG_MISC</a> </dd></dl>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a63b66c170fd97509ad079ff39d75a71f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63b66c170fd97509ad079ff39d75a71f">&#9670;&nbsp;</a></span>age</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t crashpad::CodeViewRecordPDB20::age</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The revision of the <code>.pdb</code> file. </p>
<p>A <code>.pdb</code> file’s age indicates incremental changes to it. When a <code>.pdb</code> file is created, it has age <code>1</code>, and subsequent updates increase this value. </p>

</div>
</div>
<a id="a44ae151e658264089c48724635cbc789"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44ae151e658264089c48724635cbc789">&#9670;&nbsp;</a></span>kSignature</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const uint32_t crashpad::CodeViewRecordPDB20::kSignature = '01BN'</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The magic number identifying this structure version, stored in <a class="el" href="structcrashpad_1_1CodeViewRecordPDB20.html#a321660d3f7297b1fe30fafd424e717a4" title="The magic number identifying this structure version, the value of kSignature. ">signature</a>. </p>
<p>In a hex dump, this will appear as “NB10” when produced by a little-endian machine. </p>

</div>
</div>
<a id="ae1187d7d3e7a25e3053efbb73e1a4f77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1187d7d3e7a25e3053efbb73e1a4f77">&#9670;&nbsp;</a></span>offset</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t crashpad::CodeViewRecordPDB20::offset</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The offset to CodeView data. </p>
<p>In this structure, this field always has the value <code>0</code> because no CodeView data is present, there is only a link to CodeView data stored in an external file. </p>

</div>
</div>
<a id="a2b74f72c131ef38946b676ad342d2100"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b74f72c131ef38946b676ad342d2100">&#9670;&nbsp;</a></span>pdb_name</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t crashpad::CodeViewRecordPDB20::pdb_name[1]</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The path or file name of the <code>.pdb</code> file associated with the module. </p>
<p>This is a NUL-terminated string. On Windows, it will be encoded in the code page of the system that linked the module. On other operating systems, UTF-8 may be used. </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following files:<ul>
<li>util/misc/pdb_structures.h</li>
<li>util/misc/pdb_structures.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>
