2013-03-29 5 views
0

У меня есть приложение, в котором я хочу открыть калькулятор нажатием кнопки и после того, как операция выполняется на калькуляторе и калькулятор закрыта, я хочу, чтобы это значение возвращалось в мое текстовое поле. Как я могу достичь этой функциональности.Как получить сумму калькулятора в текстовом поле

private void btnDollarTransferHelp_Click(object sender, EventArgs e) 
    { 
     System.Diagnostics.Process myProcess = System.Diagnostics.Process.Start("calc.exe"); 
    } 

Я использую C# 4.0 и его приложение на основе окон.

С уважением и спасибо

+0

Я не знаю ни одного API, который предоставляет значения/функциональность из 'calc.exe'. Вы нашли где-то, и вы пытаетесь его использовать? Или вы просто предполагаете, что должен быть один? (Если последнее, вероятно, нет.) – David

+0

@David: - http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/7065af59-00a0-4899-98c6-495bc704c41e – Shashank

+1

Мощь Быстрее писать калькулятор ... сколько работы это может быть? – Rob

ответ

0

Вы можете использовать Control Script Microsoft для реализации функциональности калькулятора, в C# приложение. Элемент управления имеет простой метод Eval() для оценки выражений, которые могут варьироваться от простых команд «2 + 2» до VBScript. Более подробная информация здесь:

http://msdn.microsoft.com/en-us/library/aa227637(v=vs.60).aspx

0

Это действительно проще реализовать калькулятор в приложении: чтение содержимого чужого окна процесса не тривиально! И уведомление, когда калькулятор «собирается закрыть», еще сложнее.

Она включает в себя, конечно, вдовам API (FindMessage/SendMessage) (смотри, например, https://stackoverflow.com/a/360247/863564), вероятно, P/Invoke, вероятно, даже hooking calc.exe (метод, используемый Spy ++ - вам это нужно, чтобы захватить сообщение WM_CLOSE - смотрите здесь, что происходит, когда вы closing a window)

(вы должны захватить WM_CLOSE, потому что это последний разумный момент, чтобы захватить результат управления в окне)

Итак, альтернатива: большой один является scriptcs, но это может быть слишком много! Быстрый поиск показал
some
great
projects

В любом случае, получайте удовольствие!

0

Вы можете использовать существующую библиотеку, например. http://nclac.codeplex.com для расчета в рамках вашего приложения.

Смежные вопросы