<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Advanced Hyperlink Functionality in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/advanced-hyperlink-functionality/m-p/125551#M3311</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello All,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I realise that this subject has come up on this forum more than once, but it still seems to never have been answered. This theory worked in previous version, but not now since the change hyperlink scripting:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Feature field contain URL to an geo raster(.tiff) geotiff. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. On hyperlink click find path of raster from field sx8 for clicked feature.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Open raster to arcmap.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;4. Display raster in the active view in the location determined by the geotiff&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is almost like a raster catalog in which we show the bounding boxes of each image before click, and on click the hyperlink is found and it displays the actual image on top of the bounding box.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I noticed that the only way to do this would be to use what the esri help says:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;esri help &amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You can create a dispatch object within your script code to call functions from a custom library.&amp;nbsp; This allows you to access ArcObjects through your hyperlink script via the dispatch object.&amp;nbsp; In addition you can pass IFeature and/or IFeatureLayer down to the dispatch object so that you launch the hyperlink for the appropriate feature.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;An example of a hyperlink script that creates a dispatch object:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Function OpenLink ( {IFEATURE}, {IFEATURELAYER} )&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Dim hlauncher&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Set hlauncher = CreateObject("Hyperlink_Lib.Launcher")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; hlauncher.Launch {IFEATURE}, {IFEATURELAYER}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;End Function&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This example will call the function Launch from a Hyperlink_Lib library that you have created. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;esri help &amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Forgive me for being dense but this is not explained very well as to how to actually do it - please can someone jargon bust this for me. I am using visual studio .net - so how to link the two is what im looking for.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thankyou in advance&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Alex&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 24 Nov 2011 08:46:07 GMT</pubDate>
    <dc:creator>AlexandraFairbarns</dc:creator>
    <dc:date>2011-11-24T08:46:07Z</dc:date>
    <item>
      <title>Advanced Hyperlink Functionality</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/advanced-hyperlink-functionality/m-p/125551#M3311</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello All,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I realise that this subject has come up on this forum more than once, but it still seems to never have been answered. This theory worked in previous version, but not now since the change hyperlink scripting:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Feature field contain URL to an geo raster(.tiff) geotiff. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. On hyperlink click find path of raster from field sx8 for clicked feature.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Open raster to arcmap.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;4. Display raster in the active view in the location determined by the geotiff&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is almost like a raster catalog in which we show the bounding boxes of each image before click, and on click the hyperlink is found and it displays the actual image on top of the bounding box.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I noticed that the only way to do this would be to use what the esri help says:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;esri help &amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You can create a dispatch object within your script code to call functions from a custom library.&amp;nbsp; This allows you to access ArcObjects through your hyperlink script via the dispatch object.&amp;nbsp; In addition you can pass IFeature and/or IFeatureLayer down to the dispatch object so that you launch the hyperlink for the appropriate feature.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;An example of a hyperlink script that creates a dispatch object:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Function OpenLink ( {IFEATURE}, {IFEATURELAYER} )&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Dim hlauncher&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Set hlauncher = CreateObject("Hyperlink_Lib.Launcher")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; hlauncher.Launch {IFEATURE}, {IFEATURELAYER}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;End Function&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This example will call the function Launch from a Hyperlink_Lib library that you have created. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;esri help &amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Forgive me for being dense but this is not explained very well as to how to actually do it - please can someone jargon bust this for me. I am using visual studio .net - so how to link the two is what im looking for.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thankyou in advance&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Alex&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Nov 2011 08:46:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/advanced-hyperlink-functionality/m-p/125551#M3311</guid>
      <dc:creator>AlexandraFairbarns</dc:creator>
      <dc:date>2011-11-24T08:46:07Z</dc:date>
    </item>
    <item>
      <title>Re: Advanced Hyperlink Functionality</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/advanced-hyperlink-functionality/m-p/125552#M3312</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Alex,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Create the ArcMap&amp;nbsp; Class Library Project in Visual Studio&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Before the declaration of the Class and the methods write [ComVisible(true)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Create the Method having two parameters as Object&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;First parameter will use as IFeature and Second will be IFeatureLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Create the Object of IFature and IFeatureLayer &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Cast the respective object &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;For testing purpose display a message box&amp;nbsp; and display Object id of the feature&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Build the Project.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Open the ArcMap add FeatureCLass in it&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Go to Layer Properties-&amp;gt;Display Tab-&amp;gt;Hyperlink&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Check the Support Hyperlinks Using Field and select the script and click Edit&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Copy and paste the following code in the text area &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Function OpenLink ( {IFEATURE}, {IFEATURELAYER} )&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Dim hlauncher&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; Set hlauncher = CreateObject("Hyperlink_Lib.Launcher")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; hlauncher.Launch {IFEATURE}, {IFEATURELAYER}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;End Function&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hyperlink_lib.Launcher would the ProgID of your class(Namespace.ClassName)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Launch will be your method which we have created in the ClassLibrary&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now click on the Verify Button and it will call the Method from the Library and will display the message Box&amp;nbsp; having featureID&amp;nbsp; which we written inside the Method.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is the sample ArcMap Class Library Class&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;namespace Map&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [Guid("2526af52-e7ae-400d-a080-000ee8998910")]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ClassInterface(ClassInterfaceType.None)]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ProgId("Map.Class1")]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ComVisible(true ) ]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public class Class1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ComVisible(true ) ]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void&amp;nbsp;&amp;nbsp; Test(object&amp;nbsp; pFeature, object&amp;nbsp; pFLayer)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IFeature Pf = (IFeature)pFeature;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(Pf.Class.AliasName.ToString()+"Feature");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(((IFeatureLayer )pFLayer).Name.ToString()+"Layer Name");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I Hope this Helps.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Nilesh&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;GIS SDK Analyst&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 30 Jan 2012 16:43:00 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/advanced-hyperlink-functionality/m-p/125552#M3312</guid>
      <dc:creator>NileshShinolikar</dc:creator>
      <dc:date>2012-01-30T16:43:00Z</dc:date>
    </item>
  </channel>
</rss>

