Benutzer mit den meisten Antworten
PS: Unterfunktion am Anfang des Skriptes definieren und erst nach der mina-Funktion initialisieren

Frage
-
Hallo,
Ich bin noch Anfänger und bitte verbessert mich, wenn das nicht as richtige Forum ist!
Meine Frage ist, wie ich eine Unter-Funktion noch vor der main-Funktion deklarieren, aber erst nach der main initialisieren kann.
Die Begriffe Definition und Initialisierung habe ich aus der OOP übernommen. Falls sie hier falsch benutzt sind, bitte Bescheid sagen:)
Unten steht ein Beispeil, was ich suche: Der Fehler taucht recht weit oben auf. Die Kommentare sind in Englisch, hoffe, das ist ok!
Vielen Dank für Eure Hilfe!function: Build-EmailBody # here I get an error: "The term function: is not recognized"...
#main function (just contains the basic functionalities, no long values, so that it is easily to oversee) main{ $params = @{ From = $sender To = $recipient SmtpServer = $smtpServer BodyAsHtml = Build-EmailBody() Body = $body Subject = "test" } Send-MailMessage @params }
#initialization of the Build-EmailBody-Function #this function is very long because of the base64 image-code #to give the script a good strcture, I wan to put this function to the end of the code function Build-EmailBody{ $letterBeginning = Get-content "pfad" $letterEnd = Get-content "pfad" #image in base64-code $img2 =@" "@ $img2_html = ""#html-code $emailBody = $letterBeginning + $img2 + $letterEnd return $emailBody}
- Bearbeitet Denniver ReiningMVP, Moderator Montag, 19. Februar 2018 15:23 Umformatiert wg. Lesbarkeit.
Antworten
-
Vor Main hast du das das Wörtchen Function vergessen. Und die Fehlermeldung weist darauf hin, das du im Script nach Function noch einen Doppelpunkt stehen hattest, der dort auch nicht hingehört.
Function MeinFunktionsname { # Stuff }
Deine Fragen lassen darauf schliessen, das du dir den Kram aus dem Netz besorgt hast, ohne zu verstehen was da passiert. Ich will dich nicht entmutigen, aber du wirst ohne die Grundlagen zu lernen, gleich wieder auf die Nase fallen. Besorg dir ein gutes Buch (z.b v. Tobias Weltner) oder schau dich im Netz nach Tutorials um. Es lohnt sich.
Ansonsten was das Forum hier angeht, bitte Code (und nur den Code!) mit dem Code-Einfügen-Button ("<>") einsetzen und am besten auf das wichtigste kürzen.
Blog: http://bytecookie.wordpress.com
Kostenloser Powershell Code Manager v5: Link
(u.a. Codesnippets verwalten + komplexe Scripte graphisch darstellen)
Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
Warum das Ganze? Hier gibts die Antwort.- Als Antwort vorgeschlagen BOfH-666 Montag, 19. Februar 2018 15:08
- Bearbeitet Denniver ReiningMVP, Moderator Dienstag, 20. Februar 2018 10:35 Typo
- Als Antwort markiert Denniver ReiningMVP, Moderator Donnerstag, 22. Februar 2018 12:45
Alle Antworten
-
Warum wartest Du nicht erstmal bis Dir jemand hier geantwortet hat?
https://powershell.org/forums/topic/declare-functions-at-the-beginning-of-the-script/
Best regards,
(79,108,97,102|%{[char]$_})-join''
-
Vor Main hast du das das Wörtchen Function vergessen. Und die Fehlermeldung weist darauf hin, das du im Script nach Function noch einen Doppelpunkt stehen hattest, der dort auch nicht hingehört.
Function MeinFunktionsname { # Stuff }
Deine Fragen lassen darauf schliessen, das du dir den Kram aus dem Netz besorgt hast, ohne zu verstehen was da passiert. Ich will dich nicht entmutigen, aber du wirst ohne die Grundlagen zu lernen, gleich wieder auf die Nase fallen. Besorg dir ein gutes Buch (z.b v. Tobias Weltner) oder schau dich im Netz nach Tutorials um. Es lohnt sich.
Ansonsten was das Forum hier angeht, bitte Code (und nur den Code!) mit dem Code-Einfügen-Button ("<>") einsetzen und am besten auf das wichtigste kürzen.
Blog: http://bytecookie.wordpress.com
Kostenloser Powershell Code Manager v5: Link
(u.a. Codesnippets verwalten + komplexe Scripte graphisch darstellen)
Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
Warum das Ganze? Hier gibts die Antwort.- Als Antwort vorgeschlagen BOfH-666 Montag, 19. Februar 2018 15:08
- Bearbeitet Denniver ReiningMVP, Moderator Dienstag, 20. Februar 2018 10:35 Typo
- Als Antwort markiert Denniver ReiningMVP, Moderator Donnerstag, 22. Februar 2018 12:45