Huhu Community,
ich steh wahrscheinlich wieder auf dem Schlauch und übersehe eine Kleinigkeit, aber ich find denn Fehler einfach nicht.
Zum Programm:
Es soll ein Tool sein um uns denn Support zu erleichtern
Jetzt haben wir es um eine Mail Variante erweitert. Das Klappt auch alles ganz gut nur das er denn Anhang nicht verschicken will (Klappt bei anderen Scripts aber)
C
;##################################
; Includes
;#################################
#include <GUIConstants.au3>
#include <_INetSmtpMailCom.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
;##################################
; GUI Global Variables
;##################################
Global $TVIDW32 = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\TeamViewer\Version5.1","ClientID") ;ließt die Teamviewer ID aus der Registry 32bit(getestet Version 5.1 unter Windows 7 Pro)
Global $TVIDW64 = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\TeamViewer\Version5.1","ClientID") ;ließt die Teamviewer ID aus der Registry 64bit(getestet Version 5.1 unter Windows 8.1 Pro)
Global $LO = @UserName ;Anmeldename
Global $PC = @ComputerName ;PC Name
Global $IP = @IPAddress1 ;IP Adresse
Global $OS = @OSVersion ;Betriebssystem
Global $AR = @OSArch ;32bit oder 64 Bit Betriebssystem
Global $SP = @OSServicePack ;Service Pack vom Betriebssystem
Global $LS = @LogonServer ;Domain Controller
Global $PO = @DesktopCommonDir ;Profilpfad
Global $TL = @LogonDNSDomain ;Domain Name und Top Level Domain
Global $DO = @LogonDomain ;Realer Domain name
;##################################
; Inhalte für TXT
;##################################
$NewName = $PC ;Vari. für Umbenennung der TXT
$wrtxt = "Username: " & $LO & @CRLF & "Hostname: " & $PC & @CRLF & "IP: " & $IP & @CRLF & "Betriebssystem: " & $OS & @CRLF & "Archi: " & $AR & @CRLF & "ServicePack: " & $SP & @CRLF & "Domain: " & $DO & @CRLF & "Profilpfad: " & $PO & @CRLF ;Inhalt TXT
;##################################
; Mail Variables
;##################################
$SmtpServer = "mail.gmx.net" ; SMPT Server vom Provider (Ist Erforderlich)
$FromName = "Support Anfrage" & $PC ; Von wem kommt die Mail
$FromAddress = "Absender@Adsender.de" ; Email Adresse von (Ist Erforderlich)
$ToAddress = "EMPFÄNGER@EMPFÄNGERl.de" ; Email Adresse an (Ist Erforderlich)
$Subject = "Support Anfrage " & " " & $PC ; Hier wird der Betreff vergeben (Kann Variabel vergeben werden)
$Body = "Bitte um Rückruf: " & $LO & $TL ; Hier wird der eigentliche Textinhalt vergeben (kann auch leer bleiben)
$AttachFiles = "C:\Support\Konfig\" & $PC & ".txt" ; Anhang Datei inkl. Pfad hier einfügen; leer lassen wenn es nicht benötigt wird
$CcAddress = "" ; Adresse für cc - leer lassen wenn es nicht benötigt wird
$BccAddress = "" ; Adresse für bcc - leer lassen wenn es nicht benötigt wird
$Importance = "High" ; Priorität der Email: "High", "Normal", "Low"
$Username = "Absender@Absender.de" ; Loginname der Email Adresse (Ist Erforderlich)
$Password = "Passwort" ; Passwort der Email Adresse (Ist Erforderlich)
$IPPort = 465 ; Genutzter Port(Ist Erforderlich)
$ssl = 1 ; SSL an (1) oder aus (0)(Ist Erforderlich)
;##################################
; Teamviewer Auslesen
;##################################
if $AR="x64" Then ;Auslesen der Teamviewer ID inkl. Abfrage 64Bit oder 32Bit Betriebsystem
$tv = $TVIDW64
Else
$tv = $TVIDW32
EndIf
;##################################
; GUI
;##################################
#Region ### Start GUI section ### PCInfo ;Create GUI Start
$GUI = GUICreate("PCInfo", 550, 500, 750, 250)
GUISetCursor (2)
GUISetFont(16, 400, 0, "Century Schoolbook")
GUISetBkColor(0xFFFFFF)
$Button1 = GUICtrlCreateButton("Start Teamviewer", 10, 460, 200, 30, 0) ;Button 1 TeamViewer 5.1 Staten
GUICtrlSetFont(-1, 16, 400, 0, "Consolas")
GUICtrlSetBkColor(-1, 0xA6CAF0)
GUICtrlSetColor(-1, 0xFFFFFF)
$Button2 = GUICtrlCreateButton("Ende", 440, 460, 100, 30, 0) ;Button 2 Programm beenden mit Verabschiedungs Fenster
GUICtrlSetFont(-1, 16, 400, 0, "Consolas")
GUICtrlSetBkColor(-1, 0xA6CAF0)
GUICtrlSetColor(-1, 0xFFFFFF)
$Button3 = GUICtrlCreateButton("Support Anfrage", 225, 460, 200, 30, 0) ;Button 3 Druckerverwaltung öffnen
GUICtrlSetFont(-1, 16, 400, 0, "Consolas")
GUICtrlSetBkColor(-1, 0xA6CAF0)
GUICtrlSetColor(-1, 0xFFFFFF)
$Label1 = GUICtrlCreateLabel("Anmeldename:", 15, 16, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label11 = GUICtrlCreateLabel($LO, 190, 16, 160, 29) ;Zeigt denn Anmeldenamen an
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label2 = GUICtrlCreateLabel("PC Name:", 15, 56, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label21 = GUICtrlCreateLabel($PC, 190, 56, 160, 29) ;Zeigt denn Hostname an
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label3 = GUICtrlCreateLabel("IP Adresse:", 15, 96, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label31 = GUICtrlCreateLabel($IP, 190, 96, 160, 29) ;Zeigt die erste IP Adresse an
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label4 = GUICtrlCreateLabel("Betriebssystem:", 15, 136, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label41 = GUICtrlCreateLabel($OS, 190, 136, 160, 29) ;Zeigt das Installierte Betriebssysteman an
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label4 = GUICtrlCreateLabel("Architektur:", 15, 176, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label4 = GUICtrlCreateLabel($AR, 190, 176, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label5 = GUICtrlCreateLabel("TeamviewerID:", 15, 216, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label51 = GUICtrlCreateLabel($tv, 190, 216, 160, 29) ;Zeigt die TeamviewerID an für Windows 7(nur mit Version 5.1 getestet)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label5 = GUICtrlCreateLabel("Angemeldet an:", 15, 256, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label51 = GUICtrlCreateLabel($ls, 190, 256, 160, 29) ;Zeigt die TeamviewerID an für Windows 7(nur mit Version 5.1 getestet)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
GUISetState(@SW_SHOW)
$Label5 = GUICtrlCreateLabel("Domain\TLD:", 15, 296, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label51 = GUICtrlCreateLabel($TL, 190, 296, 180, 29) ;Zeigt die TeamviewerID an für Windows 7(nur mit Version 5.1 getestet)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
GUISetState(@SW_SHOW)
$Label5 = GUICtrlCreateLabel("Domainname:", 15, 336, 160, 29)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
$Label51 = GUICtrlCreateLabel($DO, 190, 336, 160, 29) ;Zeigt die TeamviewerID an für Windows 7(nur mit Version 5.1 getestet)
GUICtrlSetFont(-1, 16, 400, 0, "Century Schoolbook")
GUICtrlSetColor(-1, 0x3399FF)
GUISetState(@SW_SHOW)
#EndRegion ### END GUI section ### ;Create GUI End
While 1 ;Funktionserstellung bzw. -bennennung Buttons
$1MSGB = GUIGetMsg()
Switch $1MSGB
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
_TVStart ()
Case $Button2
_Ende ()
Case $Button3
_Support ()
EndSwitch
WEnd
Func _TVStart () ;Funktionsdefinition für denn linken Button (1)
MsgBox(0, "Danke", "Teamviewer wird nun gestartet")
Run("C:\Program Files\TeamViewer\Version5\Teamviewer.exe") ;startet Teamviewer unter Windows 32bit(nur mit Version 5.1 getestet)
Run("C:\Program Files (x86)\TeamViewer\Version5\Teamviewer.exe") ;startet Teamviewer unter Windows 64bit(nur mit Version 5.1 getestet)
Exit
EndFunc
Func _Support () ;Funktionsdefinition für denn mittleren Button (3)
MsgBox(0, "Danke", "outlook")
If FileExists ("C:\Support\Konfig\*.txt") Then FileDelete ("C:\Support\Konfig\*.txt") ;löscht alle beststehenden Text dateien im Ordner
If Not FileExists("C:\Support\Konfig") Then DirCreate("C:\Support\Konfig") ;Falls Ordner nicht vorhanden ist wird dieser Erstellt
FileWrite("C:\Support\Konfig\" & $NewName & ".txt", $wrtxt)
$rc = _INetSmtpMailCom($SmtpServer, $FromName, $FromAddress, $ToAddress, $Subject, $Body, $AttachFiles, $CcAddress, $BccAddress, $Importance, $Username, $Password, $IPPort, $ssl)
Exit
EndFunc
Func _Ende () ;Funktionsdefinition für denn rechten Button (2)
MsgBox(0, "Vielen Dank", "Wir wünschen Ihnen einen schönen Tag")
Exit
EndFunc
Alles anzeigen
Wenn ich nun denn Script Ausführe kommt eine Meldung:
@@ Debug(62) : $S_Files2Attach " & $x &": = C:\Support\Konfig\PC2101N.txt
Die <_INetSmtpMailCom.au3> hab ich mal als Dateianhang dazu gepackt.
Ich vermute das es an dem Befüllen der Variablen liegt aber ich komm gerade nicht weiter.
LG
Pre