Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Powershell v2 und Outlook - Erstellen eines Termins in zusätzlichem Kalender

Frage Entwicklung Batch & Shell

Mitglied: KOschi55

KOschi55 (Level 1) - Jetzt verbinden

02.07.2013 um 14:33 Uhr, 4660 Aufrufe, 3 Kommentare

Hallo zusammen,

mit folgendem Codeschnipsel kann ich Problem aus Powershell heraus Termine in meinem Kalender eintragen. Leider aber nur in meinen Standard Kalender der auch für die Öffentlichkeit frei gegeben ist. Ich möchte aber Termine in einen zusätzlich angelegten Kalender namens "Zeiten" einfügen

01.
$outlook = new-object -comObject Outlook.Application 
02.
 
03.
$olAppointmentItem = 1 
04.
 
05.
$termin = $outlook.createItem($olAppointmentItem) 
06.
$termin.start = (get-date -hour 7 -minute 0 -second 0) 
07.
$termin.duration = ( 60 * 9  ) 
08.
$termin.subject = "test" 
09.
$termin.reminderminutesbeforestart = 15 
10.
$termin.ReminderSet = $False 
11.
$result = $termin.save()

Kann mir hier einer auf die Sprünge helfen?

danke
Mitglied: Snowman25
02.07.2013 um 15:21 Uhr
Hallo KOschi55

probier es mal so:
01.
$outlook = new-object -comObject Outlook.Application 
02.
$olNamespace = $outlook.GetNamespace("MAPI") 
03.
$calendar = $olNamespace.Folders("<kalendar-name>") 
04.
$olAppointmentItem = 1 
05.
 
06.
$termin = $calendar.Items.Add("IPM.Appointment") 
07.
 
08.
 
09.
$termin.start = (get-date -hour 7 -minute 0 -second 0) 
10.
$termin.duration = ( 60 * 9  ) 
11.
$termin.subject = "test" 
12.
$termin.reminderminutesbeforestart = 15 
13.
$termin.ReminderSet = $False 
14.
$result = $termin.save()
u.U. musst du erst in deinen Posteingang bzw. deine Mailbox wechseln, bevor du in den Kalendar kannst. (Zeile 3)
Allerdings kenne ich mich nicht wirklich mit Outlooks COM-Objekten aus. Kann also auch Unsinn sein


Gruß,
Snowman25
Bitte warten ..
Mitglied: colinardo
02.07.2013, aktualisiert um 17:36 Uhr
Hallo Koschi55,
noch als Ergänzung bzw. Korrektur von @Snowman25 's Script:
Zeile 3 muss so lauten sonst gibt die Powershell einen Fehler aus:
$calendar = $olNamespace.Folders.Item("Kalendername") 
Die Powershell nimmt es hier mit den Objekten sehr genau - das Folders("Kalendername") ist quasi eine Abkürzung wenn man es in Outlook schreibt, die Powershell braucht es aber ganz genau, deshalb Folder.Item("Kalendername")

Alternativ wenn der Kalender "Zeiten" ein Unterobjekt des Standardkalenders ist schreibst du die Zeile so:
$calendar = $olNamespace.GetDefaultFolder(9).Folders.Item("Kalendername")
Grüße Uwe
Bitte warten ..
Mitglied: KOschi55
02.07.2013 um 20:44 Uhr
Perfekt, Danke an euch beide. Snowman25 hat die Basis geliefert und colinardo die finale lösung. Die alternative war es dann.

danke vielmals
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (14)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...