On publishing an ArcGIS 10.x Map Service, the capabilities list always has KML selected, and I always have to deselect it. Why is this always selected, and can I configure ArcGIS Server to keep it unselected when publishing services?
I can't answer the "why" question. I just know KML has been a default ever since 10.0 or 10.1?
Anyways, if you want a heavy handed approach to disabling KML... and when I say disabling, it wont ever be an option, you can try the below. Note that if you 'break' your Server following these steps, you're on your own. Tech support will need you to do a repair on the install to get it back to a good state. So proceed at your own risk.
- Find and open the following in a text editor:
Under the MapServer, find this section of code:
<ExtensionType> <Name>KmlServer</Name> <DisplayName>KML</DisplayName> <PROGID>esriGlobeCore.KmlServer</PROGID> <Description>Kml Server Object Extension</Description> <Info> <DefaultWebCapabilities>SingleImage,SeparateImages,Vectors</DefaultWebCapabilities> <AllWebCapabilities>SingleImage,SeparateImages,Vectors</AllWebCapabilities> <SupportsMSD>true</SupportsMSD> </Info> </ExtensionType>
Restart the Server and publish.
You'll notice KML is not even an option to enable.
Another option if you're automating or scripting the workflow is to turn off the KML capability when you create the .SDDRAFT. See this help link, specifically example #4 on how to disable KML everytime you generate an SDDRAFT file.