Если вы знаете, как получить данные EXIF уже и просто хочу, чтобы пользователи быть в состоянии правой кнопкой мыши файл JPG> открыть с помощью> Выберите приложение, а затем получить имя файла они пытаются открыть, вы можете сделать это:
private void testButton_Click(object sender, EventArgs e)
{
string[] cmdLineArgs = Environment.GetCommandLineArgs();
string jpgFilenameToOpen = "None";
if (cmdLineArgs.Length > 1)
{
jpgFilenameToOpen = cmdLineArgs[1];
}
YourGetEXIFDetailsMethod(jpgFilenameToOpen);
}
Environment.GetCommandLineArgs()
возвращает массив со всеми аргументами командной строки который был передан вашей заявке при загрузке. Обычно, если они просто передают имя файла, он должен быть вторым элементом массива.
Вы можете также цикл через аргументы, если это необходимо, делая это:
foreach (var arg in cmdLineArgs)
{
MessageBox.Show(arg.ToString());
}
Edit:
Я просто понял, что я не уверен, что, если вам нужно принять только один JPG файла в время или если вам нужно сразу принять несколько файлов JPG. Если это последнее, вот некоторые обновленный код, который может перебрать все аргументы командной строки и делать что-то только файлы JPG/JPEG:
private void Form1_Load(object sender, EventArgs e)
{
string[] cmdLineArgs = Environment.GetCommandLineArgs();
List<string> jpgFilenamesToAnalyze = new List<string>();
foreach (var arg in cmdLineArgs)
{
if (arg.Contains(".jpg") || arg.Contains(".jpeg"))
{
jpgFilenamesToAnalyze.Add(arg);
}
}
if (jpgFilenamesToAnalyze.Count > 0)
{
StringBuilder sbJPGFiles = new StringBuilder();
sbJPGFiles.AppendLine("Found " + jpgFilenamesToAnalyze.Count + " images to analyze:\n\nFiles:");
foreach (var jpgFilename in jpgFilenamesToAnalyze)
{
// YourGetEXIFDataMethod(jpgFilename)
sbJPGFiles.AppendLine(jpgFilename);
}
MessageBox.Show(sbJPGFiles.ToString());
}
else
{
MessageBox.Show("No images found to analyze");
}
}
Возможный дубликат [Как получить данные EXIF из файла с помощью C#] (http://stackoverflow.com/questions/58649/how-to-get-the-exif-data-from -a-file-using-c-sharp) –
Я следил за данной ссылкой и смог получить данные exif, теперь я хочу открыть jpg с помощью приложения с помощью кнопки «Открыть с помощью» в меню правой кнопки мыши. –
@ Bjørn-RogerKringsjå, это не то, что ОП задает –