Calling Python script from .net form? The Next CEO of Stack OverflowCalling arcpy/python from .NET?Python module “shapely.wkb” missingShapely Python NameError when using cascaded_unionPython Built-in Map and Zip function in QGIS 2.0 Processing Script--syntax errorProblem with python script to control GRASS GIS from outside - How to import grass.script under Win 8.1?Basic Python Reclass question in Field CalculatorUsing Google API within Python and applying to ArcMap?spurious “.tif Exists” errors on QGIS Python script processingGet messages from erroneous python script run in C# .NET with ArcObjectsGetting GRASS 7.4.4 Working in Python 3

What day is it again?

free fall ellipse or parabola?

Is it OK to decorate a log book cover?

Help! I cannot understand this game’s notations!

Is it correct to say moon starry nights?

What steps are necessary to read a Modern SSD in Medieval Europe?

Could a dragon use its wings to swim?

Is there a reasonable and studied concept of reduction between regular languages?

vector calculus integration identity problem

Purpose of level-shifter with same in and out voltages

(How) Could a medieval fantasy world survive a magic-induced "nuclear winter"?

Is it ok to trim down a tube patch?

how one can write a nice vector parser, something that does pgfvecparseA=B-C; D=E x F;

What CSS properties can the br tag have?

TikZ: How to fill area with a special pattern?

Calculate the Mean mean of two numbers

Physiological effects of huge anime eyes

Players Circumventing the limitations of Wish

Expressing the idea of having a very busy time

Airplane gently rocking its wings during whole flight

Getting Stale Gas Out of a Gas Tank w/out Dropping the Tank

Cannot shrink btrfs filesystem although there is still data and metadata space left : ERROR: unable to resize '/home': No space left on device

Can I board the first leg of the flight without having final country's visa?

Do I need to write [sic] when including a quotation with a number less than 10 that isn't written out?



Calling Python script from .net form?



The Next CEO of Stack OverflowCalling arcpy/python from .NET?Python module “shapely.wkb” missingShapely Python NameError when using cascaded_unionPython Built-in Map and Zip function in QGIS 2.0 Processing Script--syntax errorProblem with python script to control GRASS GIS from outside - How to import grass.script under Win 8.1?Basic Python Reclass question in Field CalculatorUsing Google API within Python and applying to ArcMap?spurious “.tif Exists” errors on QGIS Python script processingGet messages from erroneous python script run in C# .NET with ArcObjectsGetting GRASS 7.4.4 Working in Python 3










0















I am trying to create a form/Python script that actives when a button is clicked. what are the steps you need to take?



I tried the example callscriptfromnet from https://github.com/Esri/arcgis-pro-sdk-community-samples/tree/master/Geoprocessing/CallScriptFromNet but I am looking to add a form when the button is pushed.



//Copyright 2018 Esri

// 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

// http://www.apache.org/licenses/LICENSE-2.0

// 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 .cs governing permissions and
// limitations under the License.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using ArcGIS.Desktop.Framework;
using ArcGIS.Desktop.Framework.Contracts;

namespace RibbonControls

/// <summary>
/// This Button add-in, when clicked, calls a Python script, reads the text stream
/// output from the script and uses it. From simplicity, output text is sent to windows messagebox.
/// However, you can execute complex Python code in the Python script and call the script
/// from within the button.
/// </summary>
/// <remarks>
/// 1. Make sure there is a Python script under ..CallScriptFromNetCallScriptFromNet folder.
/// 2. Example script included in that folder is named test.py
/// 3. Build the solution - make sure it compiles successfully.
/// 4. Open ArcGIS Pro - go to ADD-IN Tab, find RunPyScriptButton in Group 1 group.
/// 5. Click on the button - wait few seconds - a message box will show up with a message of "Hello - this message is from a TEST Python script"
/// </remarks>
internal class RunPyScriptButton : Button

/// <summary>
/// Clicking on the button start a process with python and path to script as command.
/// </summary>
protected override void OnClick()

// TODO: fix the path to test1.py so that it points to the proper file location

var pathProExe = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetEntryAssembly().CodeBase)).AbsolutePath);
if (pathProExe == null) return;
pathProExe = Uri.UnescapeDataString(pathProExe);
pathProExe = System.IO.Path.Combine(pathProExe, @"Pythonenvsarcgispro-py3");
System.Diagnostics.Debug.WriteLine(pathProExe);
var pathPython = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetExecutingAssembly().CodeBase)).AbsolutePath);
if (pathPython == null) return;
pathPython = Uri.UnescapeDataString(pathPython);
System.Diagnostics.Debug.WriteLine(pathPython);

var myCommand = string.Format(@"/c """"0"" ""1""""",
System.IO.Path.Combine(pathProExe, "python.exe"),
System.IO.Path.Combine(pathPython, "GeMS_CreateDatabase_Arc10.py"));
System.Diagnostics.Debug.WriteLine(myCommand);
var procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd", myCommand);

procStartInfo.RedirectStandardOutput = true;
procStartInfo.RedirectStandardError = true;
procStartInfo.UseShellExecute = false;

procStartInfo.CreateNoWindow = true;

System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo = procStartInfo;
proc.Start();

string result = proc.StandardOutput.ReadToEnd();
string error = proc.StandardError.ReadToEnd();
if (!string.IsNullOrEmpty(error)) result += string.Format("0 Error: 1", result, error);

System.Windows.MessageBox.Show(result);












share|improve this question




























    0















    I am trying to create a form/Python script that actives when a button is clicked. what are the steps you need to take?



    I tried the example callscriptfromnet from https://github.com/Esri/arcgis-pro-sdk-community-samples/tree/master/Geoprocessing/CallScriptFromNet but I am looking to add a form when the button is pushed.



    //Copyright 2018 Esri

    // 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

    // http://www.apache.org/licenses/LICENSE-2.0

    // 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 .cs governing permissions and
    // limitations under the License.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Reflection;
    using System.Text;
    using System.Threading.Tasks;
    using ArcGIS.Desktop.Framework;
    using ArcGIS.Desktop.Framework.Contracts;

    namespace RibbonControls

    /// <summary>
    /// This Button add-in, when clicked, calls a Python script, reads the text stream
    /// output from the script and uses it. From simplicity, output text is sent to windows messagebox.
    /// However, you can execute complex Python code in the Python script and call the script
    /// from within the button.
    /// </summary>
    /// <remarks>
    /// 1. Make sure there is a Python script under ..CallScriptFromNetCallScriptFromNet folder.
    /// 2. Example script included in that folder is named test.py
    /// 3. Build the solution - make sure it compiles successfully.
    /// 4. Open ArcGIS Pro - go to ADD-IN Tab, find RunPyScriptButton in Group 1 group.
    /// 5. Click on the button - wait few seconds - a message box will show up with a message of "Hello - this message is from a TEST Python script"
    /// </remarks>
    internal class RunPyScriptButton : Button

    /// <summary>
    /// Clicking on the button start a process with python and path to script as command.
    /// </summary>
    protected override void OnClick()

    // TODO: fix the path to test1.py so that it points to the proper file location

    var pathProExe = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetEntryAssembly().CodeBase)).AbsolutePath);
    if (pathProExe == null) return;
    pathProExe = Uri.UnescapeDataString(pathProExe);
    pathProExe = System.IO.Path.Combine(pathProExe, @"Pythonenvsarcgispro-py3");
    System.Diagnostics.Debug.WriteLine(pathProExe);
    var pathPython = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetExecutingAssembly().CodeBase)).AbsolutePath);
    if (pathPython == null) return;
    pathPython = Uri.UnescapeDataString(pathPython);
    System.Diagnostics.Debug.WriteLine(pathPython);

    var myCommand = string.Format(@"/c """"0"" ""1""""",
    System.IO.Path.Combine(pathProExe, "python.exe"),
    System.IO.Path.Combine(pathPython, "GeMS_CreateDatabase_Arc10.py"));
    System.Diagnostics.Debug.WriteLine(myCommand);
    var procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd", myCommand);

    procStartInfo.RedirectStandardOutput = true;
    procStartInfo.RedirectStandardError = true;
    procStartInfo.UseShellExecute = false;

    procStartInfo.CreateNoWindow = true;

    System.Diagnostics.Process proc = new System.Diagnostics.Process();
    proc.StartInfo = procStartInfo;
    proc.Start();

    string result = proc.StandardOutput.ReadToEnd();
    string error = proc.StandardError.ReadToEnd();
    if (!string.IsNullOrEmpty(error)) result += string.Format("0 Error: 1", result, error);

    System.Windows.MessageBox.Show(result);












    share|improve this question


























      0












      0








      0








      I am trying to create a form/Python script that actives when a button is clicked. what are the steps you need to take?



      I tried the example callscriptfromnet from https://github.com/Esri/arcgis-pro-sdk-community-samples/tree/master/Geoprocessing/CallScriptFromNet but I am looking to add a form when the button is pushed.



      //Copyright 2018 Esri

      // 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

      // http://www.apache.org/licenses/LICENSE-2.0

      // 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 .cs governing permissions and
      // limitations under the License.

      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Reflection;
      using System.Text;
      using System.Threading.Tasks;
      using ArcGIS.Desktop.Framework;
      using ArcGIS.Desktop.Framework.Contracts;

      namespace RibbonControls

      /// <summary>
      /// This Button add-in, when clicked, calls a Python script, reads the text stream
      /// output from the script and uses it. From simplicity, output text is sent to windows messagebox.
      /// However, you can execute complex Python code in the Python script and call the script
      /// from within the button.
      /// </summary>
      /// <remarks>
      /// 1. Make sure there is a Python script under ..CallScriptFromNetCallScriptFromNet folder.
      /// 2. Example script included in that folder is named test.py
      /// 3. Build the solution - make sure it compiles successfully.
      /// 4. Open ArcGIS Pro - go to ADD-IN Tab, find RunPyScriptButton in Group 1 group.
      /// 5. Click on the button - wait few seconds - a message box will show up with a message of "Hello - this message is from a TEST Python script"
      /// </remarks>
      internal class RunPyScriptButton : Button

      /// <summary>
      /// Clicking on the button start a process with python and path to script as command.
      /// </summary>
      protected override void OnClick()

      // TODO: fix the path to test1.py so that it points to the proper file location

      var pathProExe = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetEntryAssembly().CodeBase)).AbsolutePath);
      if (pathProExe == null) return;
      pathProExe = Uri.UnescapeDataString(pathProExe);
      pathProExe = System.IO.Path.Combine(pathProExe, @"Pythonenvsarcgispro-py3");
      System.Diagnostics.Debug.WriteLine(pathProExe);
      var pathPython = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetExecutingAssembly().CodeBase)).AbsolutePath);
      if (pathPython == null) return;
      pathPython = Uri.UnescapeDataString(pathPython);
      System.Diagnostics.Debug.WriteLine(pathPython);

      var myCommand = string.Format(@"/c """"0"" ""1""""",
      System.IO.Path.Combine(pathProExe, "python.exe"),
      System.IO.Path.Combine(pathPython, "GeMS_CreateDatabase_Arc10.py"));
      System.Diagnostics.Debug.WriteLine(myCommand);
      var procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd", myCommand);

      procStartInfo.RedirectStandardOutput = true;
      procStartInfo.RedirectStandardError = true;
      procStartInfo.UseShellExecute = false;

      procStartInfo.CreateNoWindow = true;

      System.Diagnostics.Process proc = new System.Diagnostics.Process();
      proc.StartInfo = procStartInfo;
      proc.Start();

      string result = proc.StandardOutput.ReadToEnd();
      string error = proc.StandardError.ReadToEnd();
      if (!string.IsNullOrEmpty(error)) result += string.Format("0 Error: 1", result, error);

      System.Windows.MessageBox.Show(result);












      share|improve this question
















      I am trying to create a form/Python script that actives when a button is clicked. what are the steps you need to take?



      I tried the example callscriptfromnet from https://github.com/Esri/arcgis-pro-sdk-community-samples/tree/master/Geoprocessing/CallScriptFromNet but I am looking to add a form when the button is pushed.



      //Copyright 2018 Esri

      // 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

      // http://www.apache.org/licenses/LICENSE-2.0

      // 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 .cs governing permissions and
      // limitations under the License.

      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Reflection;
      using System.Text;
      using System.Threading.Tasks;
      using ArcGIS.Desktop.Framework;
      using ArcGIS.Desktop.Framework.Contracts;

      namespace RibbonControls

      /// <summary>
      /// This Button add-in, when clicked, calls a Python script, reads the text stream
      /// output from the script and uses it. From simplicity, output text is sent to windows messagebox.
      /// However, you can execute complex Python code in the Python script and call the script
      /// from within the button.
      /// </summary>
      /// <remarks>
      /// 1. Make sure there is a Python script under ..CallScriptFromNetCallScriptFromNet folder.
      /// 2. Example script included in that folder is named test.py
      /// 3. Build the solution - make sure it compiles successfully.
      /// 4. Open ArcGIS Pro - go to ADD-IN Tab, find RunPyScriptButton in Group 1 group.
      /// 5. Click on the button - wait few seconds - a message box will show up with a message of "Hello - this message is from a TEST Python script"
      /// </remarks>
      internal class RunPyScriptButton : Button

      /// <summary>
      /// Clicking on the button start a process with python and path to script as command.
      /// </summary>
      protected override void OnClick()

      // TODO: fix the path to test1.py so that it points to the proper file location

      var pathProExe = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetEntryAssembly().CodeBase)).AbsolutePath);
      if (pathProExe == null) return;
      pathProExe = Uri.UnescapeDataString(pathProExe);
      pathProExe = System.IO.Path.Combine(pathProExe, @"Pythonenvsarcgispro-py3");
      System.Diagnostics.Debug.WriteLine(pathProExe);
      var pathPython = System.IO.Path.GetDirectoryName((new System.Uri(Assembly.GetExecutingAssembly().CodeBase)).AbsolutePath);
      if (pathPython == null) return;
      pathPython = Uri.UnescapeDataString(pathPython);
      System.Diagnostics.Debug.WriteLine(pathPython);

      var myCommand = string.Format(@"/c """"0"" ""1""""",
      System.IO.Path.Combine(pathProExe, "python.exe"),
      System.IO.Path.Combine(pathPython, "GeMS_CreateDatabase_Arc10.py"));
      System.Diagnostics.Debug.WriteLine(myCommand);
      var procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd", myCommand);

      procStartInfo.RedirectStandardOutput = true;
      procStartInfo.RedirectStandardError = true;
      procStartInfo.UseShellExecute = false;

      procStartInfo.CreateNoWindow = true;

      System.Diagnostics.Process proc = new System.Diagnostics.Process();
      proc.StartInfo = procStartInfo;
      proc.Start();

      string result = proc.StandardOutput.ReadToEnd();
      string error = proc.StandardError.ReadToEnd();
      if (!string.IsNullOrEmpty(error)) result += string.Format("0 Error: 1", result, error);

      System.Windows.MessageBox.Show(result);









      python arcobjects .net






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited yesterday









      Vince

      14.8k32849




      14.8k32849










      asked 2 days ago









      LbookLbook

      12




      12




















          0






          active

          oldest

          votes












          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "79"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fgis.stackexchange.com%2fquestions%2f317200%2fcalling-python-script-from-net-form%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Geographic Information Systems Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fgis.stackexchange.com%2fquestions%2f317200%2fcalling-python-script-from-net-form%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          រឿង រ៉ូមេអូ និង ហ្ស៊ុយលីយេ សង្ខេបរឿង តួអង្គ បញ្ជីណែនាំ

          Crop image to path created in TikZ? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Crop an inserted image?TikZ pictures does not appear in posterImage behind and beyond crop marks?Tikz picture as large as possible on A4 PageTransparency vs image compression dilemmaHow to crop background from image automatically?Image does not cropTikzexternal capturing crop marks when externalizing pgfplots?How to include image path that contains a dollar signCrop image with left size given

          Romeo and Juliet ContentsCharactersSynopsisSourcesDate and textThemes and motifsCriticism and interpretationLegacyScene by sceneSee alsoNotes and referencesSourcesExternal linksNavigation menu"Consumer Price Index (estimate) 1800–"10.2307/28710160037-3222287101610.1093/res/II.5.31910.2307/45967845967810.2307/2869925286992510.1525/jams.1982.35.3.03a00050"Dada Masilo: South African dancer who breaks the rules"10.1093/res/os-XV.57.1610.2307/28680942868094"Sweet Sorrow: Mann-Korman's Romeo and Juliet Closes Sept. 5 at MN's Ordway"the original10.2307/45957745957710.1017/CCOL0521570476.009"Ram Leela box office collections hit massive Rs 100 crore, pulverises prediction"Archived"Broadway Revival of Romeo and Juliet, Starring Orlando Bloom and Condola Rashad, Will Close Dec. 8"Archived10.1075/jhp.7.1.04hon"Wherefore art thou, Romeo? To make us laugh at Navy Pier"the original10.1093/gmo/9781561592630.article.O006772"Ram-leela Review Roundup: Critics Hail Film as Best Adaptation of Romeo and Juliet"Archived10.2307/31946310047-77293194631"Romeo and Juliet get Twitter treatment""Juliet's Nurse by Lois Leveen""Romeo and Juliet: Orlando Bloom's Broadway Debut Released in Theaters for Valentine's Day"Archived"Romeo and Juliet Has No Balcony"10.1093/gmo/9781561592630.article.O00778110.2307/2867423286742310.1076/enst.82.2.115.959510.1080/00138380601042675"A plague o' both your houses: error in GCSE exam paper forces apology""Juliet of the Five O'Clock Shadow, and Other Wonders"10.2307/33912430027-4321339124310.2307/28487440038-7134284874410.2307/29123140149-661129123144728341M"Weekender Guide: Shakespeare on The Drive""balcony"UK public library membership"romeo"UK public library membership10.1017/CCOL9780521844291"Post-Zionist Critique on Israel and the Palestinians Part III: Popular Culture"10.2307/25379071533-86140377-919X2537907"Capulets and Montagues: UK exam board admit mixing names up in Romeo and Juliet paper"Istoria Novellamente Ritrovata di Due Nobili Amanti2027/mdp.390150822329610820-750X"GCSE exam error: Board accidentally rewrites Shakespeare"10.2307/29176390149-66112917639"Exam board apologises after error in English GCSE paper which confused characters in Shakespeare's Romeo and Juliet""From Mariotto and Ganozza to Romeo and Guilietta: Metamorphoses of a Renaissance Tale"10.2307/37323537323510.2307/2867455286745510.2307/28678912867891"10 Questions for Taylor Swift"10.2307/28680922868092"Haymarket Theatre""The Zeffirelli Way: Revealing Talk by Florentine Director""Michael Smuin: 1938-2007 / Prolific dance director had showy career"The Life and Art of Edwin BoothRomeo and JulietRomeo and JulietRomeo and JulietRomeo and JulietEasy Read Romeo and JulietRomeo and Julieteeecb12003684p(data)4099369-3n8211610759dbe00d-a9e2-41a3-b2c1-977dd692899302814385X313670221313670221