2017-12-13 9 views
0

웹 응용 프로그램 대시 보드보기에서 다음 달의 사용자 일정 항목을 표시해야합니다.웹 응용 프로그램에서 Outlook 시작 및 특정 일정 항목 열기

나는 성공적으로 다음은이 문서를 달성하기 위해 Exchange 웹 서비스를 사용하고 있습니다 :

https://msdn.microsoft.com/en-us/library/office/dn495614(v=exchg.150).aspx

이 작업에 대한 최종 요구 사항은 다음을하는 경우 (브라우저에서) 항목에 사용자가 클릭 :

Outlook이 컴퓨터에서 열리고 실제 일정 항목으로 바로 이동해야합니다.

약속 개체를 검사했는데 캘린더 ID에 대한 액세스 권한이 있으며 여기를 서버로 쉽게 전달할 수 있음을 알 수 있습니다. 그러나 여기에서부터 나는이 응용 프로그램을 어떻게 시작할 수 있는지 조금 혼란스러워합니다. 그 입구 ID를 열라고 말하십시오.

다른 EWS 통화 또는 Office.Interop.Outlook이 될 수 있습니까?

더 이상 어렵게 만들면 .Net Core 2.0 웹 응용 프로그램입니다.

+0

굉장한 사용자 이름입니다. 브라우저가 좋아하는 정보를 로컬 응용 프로그램에 전달할 수 있다면 얼마나 안전하지 않은지 상상할 수 있습니까? – Equalsk

+0

당신이 할 수있는 유일한 방법은 운영 체제가 Outlook으로 전달할 수있는 URI를 만드는 것입니다. 그러나,'outlook : //'계획은 Office 2007에서 중단되었으므로 더 이상 가능하지 않습니다. – DavidG

+0

고객이 IE를 사용하고 있습니까? IE에서는 ActiveX 구성 요소를 사용할 수 있습니다. 그러나 저는 Edge를 사용한다면 그 가치를 잃을 것입니다. [이것 좀보세요] (https://stackoverflow.com/questions/1637077/outlook-automation-from-a-web-application-to-create-appointments) – rodrigogq

답변

1

Outlook은 여전히 ​​명령 줄 스위치를 허용하며 그 중 하나는 Outlook 항목 인 /select을 엽니 다.

이제 명령 줄 인수로 Outlook을 시작하기위한 URL을 만들어야합니다. IE의 경우

,이 웹 응용 프로그램이 신뢰할 수있는 가정도 어려운 일이 아니다 :

javascript:(new ActiveXObject('Shell.Application')).ShellExecute('outlook.exe','/select outlook:<entryid>'); 

가 크롬 들어, cmd를 파일을 보내거나 다운로드 도우미 EXE를 만들 수 있지만, 사용자가해야 할 것 수동으로 열어서 실행하십시오.

+0

고마워, 내가 갈 해결책은 아니지만, 덜 재미있는 해결책이다. – JsonStatham

+0

당신은 무엇을 가지고 갔습니까? – NetMage

+0

나는 문구를 제대로 사용하지 않았다. 내가 의미하는 바는 Outlook 클라이언트를 시작하지 않고 대신 EWS로 돌아가서 모든 속성을 가져 와서 다음 줄을 사용하여 브라우저에 전체 항목을 표시했습니다. Appointment appointmentDetailed = Appointment.Bind (service, appt.Id, 새로운 PropertySet (BasePropertySet.FirstClassProperties) {RequestedBodyType = BodyType.Text}); – JsonStatham