#define JK_COPYRIGHT "Copyright 2000-2007 The Apache Software " \
                     "Foundation or its licensors, as applicable."

#define JK_LICENSE "Licensed under the Apache License, Version 2.0 " \
                    "(the ""License""); you may not use this file except " \
                    "in compliance with the License.  You may obtain a " \
                    "copy of the License at\r\n\r\n" \
                    "http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n" \
                    "Unless required by applicable law or agreed to in " \
                    "writing, software distributed under the License is " \
                    "distributed on an ""AS IS"" BASIS, WITHOUT " \
                    "WARRANTIES OR CONDITIONS OF ANY KIND, either " \
                    "express or implied.  See the License for the " \
                    "specific language governing permissions and " \
                    "limitations under the License."

#define JK_VERSION_STR  "1.2.24"
#define JK_DLL_BASENAME "isapi_redirect-" JK_VERSION_STR


1 VERSIONINFO
 FILEVERSION 1,2,24,0
 PRODUCTVERSION 1,2,24,0
 FILEFLAGSMASK 0x3fL
#if defined(_DEBUG)
 FILEFLAGS 0x01L
#else
 FILEFLAGS 0x00L
#endif
 FILEOS 0x40004L
 FILETYPE 0x1L
 FILESUBTYPE 0x0L
BEGIN
  BLOCK "StringFileInfo"
  BEGIN
    BLOCK "040904b0"
    BEGIN
    VALUE "Comments", JK_LICENSE "\0"
      VALUE "CompanyName", "Apache Software Foundation\0"
      VALUE "FileDescription", "Apache Tomcat IIS Redirector\0"
      VALUE "FileVersion", JK_VERSION_STR "\0"
      VALUE "InternalName", JK_DLL_BASENAME "\0"
      VALUE "LegalCopyright", JK_COPYRIGHT "\0"
      VALUE "OriginalFilename", JK_DLL_BASENAME ".dll\0"
      VALUE "ProductName", "Apache Tomcat Connectors project\0"
      VALUE "ProductVersion", JK_VERSION_STR "\0"
    END
  END
  BLOCK "VarFileInfo"
  BEGIN
    VALUE "Translation", 0x409, 1200
  END
END
