This contains two console projects - one is 64 bit and one 32 bit. the 32-bit one calls the 64 bit by creating a process (command line in effect, but hidden). it then displays the output of this.
If you just run the solution as-is it should run the 32-bit console app, which will call the 64-bit one.
The main code to run an external process like this is below. The version in the sample is the Main() method of a console app, but you'd probably have to put this into a class library or whatever is required for a plugin/activity/thingy for your specific need.
public int RunProgram()
{
//create process to run an external program...
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
//hide it - don't spawn a CMD window
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
//add command line params - guess these would be passed in somehow?
var arg1 = "function_name";
var arg2 = "input1";
var arg3 = "input2";
//Build command line.
startInfo.Arguments = $@"/C c:\path\to\python\Some64BitProcess.exe {arg1} {arg2} {arg3}";
//I don't know what the output of this will be. whether it creates a file or
//just prints stuff out on the command line (STDOUT).
//it is possible to capture STDOUT into a stream, but for simplicity I'll simply re-direct it into
//an output file via the command line '>' which will overwrite any file already there.
startInfo.Arguments += " > output.txt";
process.StartInfo = startInfo;
//Run process
process.Start();
//wait for it to complete - note, if this process pauses for user input at
//any point this will basically just hang indefinitely.
//you CAN pipe a 'Y' into it or something to avoid this(simulate a keypress),
//but would be better to work out command line
//switches that supress any waiting for user input.
process.WaitForExit();
//now, we can get results.
var output = File.ReadAllText("output.txt");
//Do things with output?
Console.WriteLine(output);
Console.ReadLine();
//process.ExitCode is the Exit Code of the command. This might be useful as it might
//indicate specific errors encountered
//by Python.
return process.ExitCode;
}