Hast Du schon in das help file geschaut?
[autoit]$sResult = _ExcelReadCell($oExcel, "A10")
[/autoit]Hast Du schon in das help file geschaut?
[autoit]$sResult = _ExcelReadCell($oExcel, "A10")
[/autoit]tl;dr
Ich gehe mal davon aus, dass es sich um AD Benutzerkonten handelt. Wir legen Accounts mit einem Standardpasswort an und setzen das Flag "Benutzer muss beim nächsten Logon das Passwort ändern".
Sollte er das Passwort vergessen etc. dann machen wir die selbe Prozedur nochmals d.h. setzen das Passwort auf das Standardpasswort zurück.
So kommen wir nie in Verlegenheit die Passworte des Benutzers kennen zu müssen.
Diese Geschichte lässt sich in einem 10-Zeiler mit meinem AD UDF umsetzen.
Sieh Dir mal die Beschreibung von "KeePass " an. Wenn Du dann immer noch der Meinung bist es selbst programmieren zu wollen, dann kriegst Du zumindest einige Anregungen.
Hier noch ein paar Links:
Was ist TAPI?
TAPI DLL
TAPI Service Reference
Viel Ahnung habe ich auch nicht davon. Ich habe nur mal die VB Umsetzung in ein Skript übernommen. Und die sieht so aus:
[autoit]; TAPI initialisieren
Global $bLineFound = False
Const $LINEADDRESSTYPE_PHONENUMBER = 0x1;
Const $LINEMEDIAMODE_INTERACTIVEVOICE = 0x4;
Global $oTAPI = ObjCreate("TAPI.TAPI")
If IsObj($oTAPI) Then
$oTAPI.Initialize
Global $oAddresses = $oTAPI.Addresses
For $oAddress In $oAddresses
If $oAddress.AddressName = "CAP TAPI" Then
$bLineFound = True
ExitLoop
EndIf
Next
EndIf
; Call ausführen
$oMyCall = $oAddress.CreateCall($sNumber, $LINEADDRESSTYPE_PHONENUMBER, $LINEMEDIAMODE_INTERACTIVEVOICE)
$oMyCall.Connect(False)
Wenn $bLineFound = False dann wird im GUI der Wählen Button ausgegraut.
Druckaufträge im Eventlog protokollieren lassen?
Schau Dir die Funktion _AD_GetObjectsInOU an.
Die Kunst besteht nun darin, die LDAP Abfrage entsprechend hinzukriegen. Beschreibung der Funktion und Beispiele für die LDAP Abfrage findest DU hier .
_WordDocFindReplace ersetzt per default alle gefundenen Text im Dokument, also nicht nur 1x.
Wenn die Funktion erfolgreich war, dann wird der Rückgabewert auf 1 gesetzt und @error = 0. Ist @error <> 0, dann trat ein Fehler auf.
#include <File.au3>
...
_WordDocFindReplace(...)
If @error <> 0 Then _FIleWriteLog(@ScriptDir & "\log.txt", "Fehler " & @error & "aufgetreten bei _WordDocFindReplace!")
Moin,
ich möchte alle Kontakte durchgehen und den Body ändern.
Mit _OL_ItemFind kann ich ja nach FileAs suchen. Aber wie bekomme ich
alle Kontakte die unter FileAs gespeichert sind?Gruß Paule
$aResult = _OL_ItemFind($oOL, $vOL_Folder, $olContact, "", "", "", "EntryID, FileAs")
gibt Dir alle Kontake aus dem Folder $vOL_Folder in einem 2D Array zurück. Element 1 ist die EntryID damit Du mit _OL_ItemModfify auf den Kontakt zugreifen kannst, Element 2 ist FileAs.
Kaum macht man es richtig, funktioniert es auch schon
Mein Vorschlag ist:
Sehe ich das richtig, dass die zu ersetzten Zeile immer nach dem selben Muster aufgebaut ist: "n. Termin am TT. Monat JJJJ" wobei n ab 1 hochgezählt wird?
Das Skript wäre relativ leicht entsprechend anzupassen.
Du hast wahrscheinlich vergessen "_AD_Open()" am Anfang des Skripts einzufügen.
Ist es möglich mit deiner UDF alle Computer aus dem AD auszulesen und in ein Array zu schreiben?
Also z.B. ich möchte alle PCs, deren Name mit CX- oder mit VM- anfängt...
Klar geht das, ist eine der einfacheren Übungen
$aResult = _AD_GetObjectsInOU("", "(&(objectcategory=computer)(|(name=CX*)(name=VM*)))", 2, "samaccountname")
Funktion _AD_GetObjectsInOU ist das Schweizer Messer der AD UDF.
Warum "leider"?
Wenn das das größte Unglück in Deinem Leben ist ...
Du könntest die "SentOnBehalfOfName" Property mit _OL_ItemGet abfragen und dann auf die entsprechende Mailbox zugreifen.
ZitatHallo water,
ist es mit deiner UDF eigentlich irgendwie möglich, das Event abzufangen, wenn ich eine Mail versende (Outlook 2010).
Mein Ziel wäre es, je nach Absende-Postfach ("Von"-Schaltfläche), die gesendete Mail in den bestimmten Ordner ($olFolderSentMail = 5) des Absender-PF zu verschieben/kopieren.
->> SentOnBehalfName-Test in VBA bei Outlook, was aber nicht so richtig funktioniert.Schicke ich in Outlook eine Mail aus einem fremden Postfach, wird die gesendete bei mir im persönlichen gespeichert.
Das will ich gerne verhindern.
Hier habe ich das Thema schon mal behandelt. http://www.autoitscript.com/forum/topic/12…post__p__982733
Ich hoffe, das hilft. Sonst poste, wo es noch klemmt.
Dreh die Abfrage auf <=> um dann geht's. Die Zeile sieht dann wie folgt aus:
[autoit]$aItems2 = _OL_ItemFind($oOutlook, "*\Posteingang", $olMail, "[ReceivedTime]>='" & $30minago & "' And [ReceivedTime]<='" & $jetzt & "'", "", "", "Subject,Body", "", 1)
[/autoit]Ein MailItem kennt die Properties "Start" und "End" nicht - das ist für Appointments.
Du musst für ein MailItem die Property "ReceivedTime" verwenden. Also:
$aItems = _OL_ItemFind($oOutlook, "Postfach - Gruppenpostfach1\Posteingang", $olMail, "[ReceivedTime]<='2012-05-16 10:45' And [ReceivedTime]>='2012-05-16 10:15'", "", "", "Subject,Body", "", 1)
zeigt alle Mails die zwischen 10:15 und 10:45 eingetroffen sind.