I am trying to communicate with a EOS Rebel T7 on mac, but haven't had any luck. I downloaded the latest version of the SDK, but could not test the Objective-C sample because I don't (can't yet) have Xcode on my computer. I found this C# project to be instructive. Ultimately I was able to get the following C# code to compile without errors:
using System;
using System.Collections.Generic;
using System.IO;
using System.Threading;
using EOSDigital.API;
using EOSDigital.SDK;
namespace ConsoleExample
{
class Program
{
static CanonAPI APIHandler;
static Camera MainCamera;
static string ImageSaveDirectory;
static bool Error = false;
static ManualResetEvent WaitEvent = new ManualResetEvent(false);
static void Main(string\[\] args)
{
CanonSDK.InitializeVersion();
IntPtr camPtrList;
CanonSDK.EdsGetCameraList(out camPtrList);
int camCount;
CanonSDK.EdsGetChildCount(camPtrList, out camCount);
Console.WriteLine(camCount + " cameras found.");
}
}
}
However, I end up with camCount==0; "0 cameras found". I thought this might be because the EOS Utility (which opens automatically when plugging in the camera) is occupying the necessary resources, however I tried uninstalling EOS Utility and this did not help. Can anyone provide a simple example that I can test (that doesn't require Xcode) in VS or VScode? Any help or advice would be much appreciated. Thank you! PS: Figuring out how to compile in VS on mac was a struggle as I am unfamiliar with both, so I'm open to any suggestions for other IDEs/compilers/languages if it will make using EDSDK easier.