瀏覽代碼

The Attribs parameter of a [Files] or [Dir] entry may now also include notcontentindexed to specify that the file or directory is not to be indexed by the content indexing service.

Martijn Laan 10 年之前
父節點
當前提交
ce3ee6f7ac
共有 3 個文件被更改,包括 12 次插入6 次删除
  1. 9 4
      Projects/Compile.pas
  2. 2 2
      ishelp/isetup.xml
  3. 1 0
      whatsnew.htm

+ 9 - 4
Projects/Compile.pas

@@ -4714,6 +4714,9 @@ begin
   TaskEntries.Add(NewTaskEntry);
 end;
 
+const
+  FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = $00002000;
+
 procedure TSetupCompiler.EnumDirs(const Line: PChar; const Ext: Integer);
 type
   TParam = (paFlags, paName, paAttribs, paPermissions, paComponents, paTasks,
@@ -4739,8 +4742,8 @@ const
   Flags: array[0..4] of PChar = (
     'uninsneveruninstall', 'deleteafterinstall', 'uninsalwaysuninstall',
     'setntfscompression', 'unsetntfscompression');
-  AttribsFlags: array[0..2] of PChar = (
-    'readonly', 'hidden', 'system');
+  AttribsFlags: array[0..3] of PChar = (
+    'readonly', 'hidden', 'system', 'notcontentindexed');
   AccessMasks: array[0..2] of TNameAndAccessMask = (
     (Name: 'full'; Mask: $1F01FF),
     (Name: 'modify'; Mask: $1301BF),
@@ -4779,6 +4782,7 @@ begin
           0: Attribs := Attribs or FILE_ATTRIBUTE_READONLY;
           1: Attribs := Attribs or FILE_ATTRIBUTE_HIDDEN;
           2: Attribs := Attribs or FILE_ATTRIBUTE_SYSTEM;
+          3: Attribs := Attribs or FILE_ATTRIBUTE_NOT_CONTENT_INDEXED;
         end;
 
       { Permissions }
@@ -5617,8 +5621,8 @@ const
     'uninsnosharedfileprompt', 'createallsubdirs', '32bit', '64bit',
     'solidbreak', 'setntfscompression', 'unsetntfscompression',
     'sortfilesbyname', 'gacinstall');
-  AttribsFlags: array[0..2] of PChar = (
-    'readonly', 'hidden', 'system');
+  AttribsFlags: array[0..3] of PChar = (
+    'readonly', 'hidden', 'system', 'notcontentindexed');
   AccessMasks: array[0..2] of TNameAndAccessMask = (
     (Name: 'full'; Mask: $1F01FF),
     (Name: 'modify'; Mask: $1301BF),
@@ -6278,6 +6282,7 @@ begin
                    0: Attribs := Attribs or FILE_ATTRIBUTE_READONLY;
                    1: Attribs := Attribs or FILE_ATTRIBUTE_HIDDEN;
                    2: Attribs := Attribs or FILE_ATTRIBUTE_SYSTEM;
+                   3: Attribs := Attribs or FILE_ATTRIBUTE_NOT_CONTENT_INDEXED;
                  end;
 
                { Permissions }

+ 2 - 2
ishelp/isetup.xml

@@ -1341,7 +1341,7 @@ Name: "{app}\bin"
 </param>
 
 <param name="Attribs">
-<p>Specifies additional attributes for the directory. This can include one or more of the following: <tt>readonly</tt>, <tt>hidden</tt>, <tt>system</tt>. If this parameter is not specified, Setup does not assign any special attributes to the directory.</p>
+<p>Specifies additional attributes for the directory. This can include one or more of the following: <tt>readonly</tt>, <tt>hidden</tt>, <tt>system</tt>, <tt>notcontentindexed</tt>. If this parameter is not specified, Setup does not assign any special attributes to the directory.</p>
 <p>If the directory already exists, the specified attributes will be combined with the directory's existing attributes.</p>
 <example>
 <pre>Attribs: hidden system</pre>
@@ -1502,7 +1502,7 @@ ExternalSize: 1048576; Flags: external
 </param>
 
 <param name="Attribs">
-<p>Specifies additional attributes for the file. This can include one or more of the following: <tt>readonly</tt>, <tt>hidden</tt>, <tt>system</tt>. If this parameter is not specified, Setup does not assign any special attributes to the file.</p>
+<p>Specifies additional attributes for the file. This can include one or more of the following: <tt>readonly</tt>, <tt>hidden</tt>, <tt>system</tt>, <tt>notcontentindexed</tt>. If this parameter is not specified, Setup does not assign any special attributes to the file.</p>
 <example>
 <pre>Attribs: hidden system</pre>
 </example>

+ 1 - 0
whatsnew.htm

@@ -28,6 +28,7 @@ For conditions of distribution and use, see <a href="http://www.jrsoftware.org/f
 
 <p><a name="5.5.7"></a><span class="ver">5.5.7-dev </span><span class="date">(?)</span></p>
 <ul>
+<li>The <tt>Attribs</tt> parameter of a [Files] or [Dir] entry may now also include <tt>notcontentindexed</tt> to specify that the file or directory is not to be indexed by the content indexing service.</li>
 <li>Pascal Scripting change: function <tt>RegQueryBinaryValue</tt> can now be used to query any type of registry value and not just <tt>REG_BINARY</tt>-type values.</li>
 <li>The Setup and Uninstall programs are now marked as DEP and ASLR compatible.</li>
 <li>Minor tweaks.</li>