Cuprins:

Trimiteți automat e-mailuri cu fotografii din fișier batch folosind vechiul desktop și XP: 4 pași
Trimiteți automat e-mailuri cu fotografii din fișier batch folosind vechiul desktop și XP: 4 pași

Video: Trimiteți automat e-mailuri cu fotografii din fișier batch folosind vechiul desktop și XP: 4 pași

Video: Trimiteți automat e-mailuri cu fotografii din fișier batch folosind vechiul desktop și XP: 4 pași
Video: Web Development - Computer Science for Business Leaders 2016 2024, Noiembrie
Anonim
Trimiteți automat e-mailuri cu fotografii din fișier batch folosind vechiul desktop și XP
Trimiteți automat e-mailuri cu fotografii din fișier batch folosind vechiul desktop și XP

Sunt foarte norocos să am o vedere minunată de la fereastra biroului meu de acasă. Când sunt plecat, vreau să văd ce îmi lipsește și sunt frecvent plecat. Obișnuiam să am propriul meu site web și o stație meteo de acasă care încărca prin ftp toate datele meteo și o fotografie făcută pe fereastră, totuși, furnizorul gazdă a site-ului a făcut greoaie întreținerea site-ului, așa că după mulți ani, am renunțat aceasta. Am intenționat să găsesc o metodă de înlocuire a privirii pe fereastră, de ex. site-uri web gratuite, bloguri, e-mail … dar, în majoritatea cazurilor, transferurile automatizate ftp către aceste potențiale soluții au fost blocate. O complicație suplimentară este că sunt frecvent plecat de luni de zile, deci orice soluție pe care trebuie să o rezolvați trebuie să fie fiabilă.

Am fost inspirat de autorul Instructivi Olivi3r și de Instructable pentru crearea unei camere de securitate. După o zi sau cam așa de tors de mână, l-am pus să funcționeze. Acest instructabil adaugă câteva detalii cheie.

Practic, scopul este de a face o fotografie cu camera web în fiecare dimineață și apoi să-mi trimit fotografia prin Gmail ca atașament. Acest lucru se va întâmpla după cum urmează:

  • Alimentarea cu curent alternativ va fi pornită timp de 15 minute folosind un temporizator de 110VAC
  • Computerul se va porni
  • Software-ul camerei web va capta o fotografie
  • Se va executa un fișier batch Windows care:
  • Executați un fișier script PowerShell care va trimite e-mailul și atașamentul
  • Comanda fișierului lot va închide computerul
  • Alimentarea CA se va opri

Avertismente: nu sunt programator Windows - nu mă întrebați dacă nu funcționează. Am reușit această abordare prin snorkeling prin Internet până când am găsit informațiile necesare pentru depanarea fișierelor mele. În al doilea rând, am vrut ca acest lucru să ruleze pe o mașină Windows XP, sunt sigur că există soluții mai bune pe un computer cu Windows 10. De fapt, există probabil soluții mai bune pe o mașină XP. Dacă găsiți, lipiți-le în comentarii. Rularea acestei abordări pe un laptop ar putea fi dificilă, deoarece computerul trebuie să pornească atunci când este pornită alimentarea CA. Editorul de cod Instructables are un obicei urât de a introduce și alte etichete HTML în cod (inclusiv codul Olivi3r). Cred că am editat toate acestea, dar aveți grijă.. În cele din urmă, butonul „Previzualizare completă” instructabile mi-ar da doar o pagină albă albă - deci WYSIWYG!

Vom face acest lucru în 4 pași:

  1. Pregătiți computerul
  2. Scrieți și depanați un script PowerShell
  3. Scrieți și depanați un fișier batch
  4. Încheiați totul și Bob este unchiul vostru!

Pasul 1: Pregătiți computerul

Mai întâi, săpați un desktop vechi din dulap. Dacă rulează pe Windows XP (SP3) - va funcționa. Acest instructabil este conceput pentru XP, dar abordarea ar trebui să fie aceeași pe Windows 10. Porniți-l și invocați BIOS-ul (de obicei F1, del sau F2 în timpul procesului de boot). Găsiți ceva de genul „Gestionarea energiei” și schimbați-l în „Recuperare alimentare CA - ON”. Acest lucru va face ca computerul să pornească la pornirea CA. Testează-l.

Va trebui să dezactivați toate parolele și să vă conectați ca administrator. Acest lucru se datorează faptului că computerul trebuie să finalizeze procesul de pornire nesupravegheat. Accesați Panoul de control, Conturi de utilizator și efectuați modificările corespunzătoare, dacă este necesar.

Apoi, aveți nevoie de o cameră web și de o aplicație pentru webcam care va face o fotografie și o va stoca. Folosesc Dorgem - simplu și gratuit. Configurați Dorgem pentru a face o fotografie și a o stoca pe desktop. Nu schimbați numele imaginii atunci când faceți o fotografie nouă, înlocuiți în schimb ultima fotografie. În acest exemplu, imaginea este Pic.jpg. Rețineți, de asemenea, că stoc imaginea pe desktop. Acest lucru este important, deoarece calea directorului este ușoară. Glisați și fixați pictograma Dorgem în folderul Windows STARTUP.

Acum - câteva bucăți complicate:

Trebuie să vă schimbați contul Chrome pentru a permite aplicații mai puțin sigure. Încercați „aplicații mai puțin sigure cromate” și selectați prima opțiune - probabil aceasta. Activați această caracteristică. Veți primi o alertă prin e-mail care vă informează despre pericolele acestei setări. Este posibil să nu fie necesar să faceți acest lucru dacă utilizați un alt server de e-mail, de ex. Yahoo, AOL …

Apoi trebuie să activați executarea scripturilor PowerShell. Dacă rulați Windows 10, acest lucru este mai ușor - faceți clic pe pictograma Windows (colțul din stânga jos al ecranului), derulați în jos lista de programe până la Windows PowerShell, extindeți, faceți clic dreapta pe PowerShell și selectați „Rulați ca administrator”. Aceasta va deschide fereastra PowerShell. Pe XP procesul este puțin mai complicat - folosiți File Explorer, găsiți directorul PowerShell (ceva de genul C: / Windows / system32 / WindowsPowerShell / v1.0), faceți clic dreapta pe pictograma PowerShell și selectați „Pin pentru a începe meniul”. Acum aveți acces la PowerShell făcând clic pe pictograma Start (stânga jos) și făcând clic pe pictograma PowerShell. Faceți clic pe pictograma PowerShell, în fereastra care apare apare tastați următoarea comandă:

set-executionpolicy remotesigned

Vi se va cere să confirmați tastând „y”.

confirmați că ați schimbat cu succes politica de execuție tastând:

politica de executare

Bine! Calculatorul dvs. este gata.

Pasul 2: Scrieți și depanați un fișier PowerShell

Copiați și lipiți acest text în Notepad:

$ EmailTo = "[email protected]"

$ EmailFrom = "[email protected]" $ Subject = "Vizualizare" $ Body = "x" $ SMTPServer = "smtp.gmail.com" $ SMTPMessage = New-Object System. Net. Mail. MailMessage ($ EmailFrom, $ EmailTo, $ Subject, $ Body) $ attachment = New-Object System. Net. Mail. Attachment ("C: / Documents and Settings / Administrator / Desktop / pic.jpg") $ SMTPMessage. Attachments. Add ($ atașament) $ SMTPClient = New-Object Net. Mail. SmtpClient ($ SmtpServer, 587) $ SMTPClient. EnableSsl = $ True $ SMTPClient. Credentials = New-Object System. Net. NetworkCredential ("userID", "parolă"); $ SMTPClient. Send ($ SMTPMessage)

Salvați acest fișier pe desktop ca „SendPic.ps1”.

Efectuați modificările corespunzătoare; dvs., userID și parolă. De obicei, ID-ul dvs. de utilizator este același cu adresa dvs. Gmail completă.

Dacă nu utilizați Gmail, atunci trebuie să vă conectați la internet pentru a găsi portul asociat cu serverul dvs. SMTP și a schimba "587" la portul corespunzător, de ex. smtp.mail.yahoo.com și portul este 465.

În loc să utilizați Notepad, este disponibil editorul PowerShell.

Acum, pentru cel mare - faceți clic dreapta pe fișierul SendPic PowerShell și selectați „Rulați cu PowerShell”. Dacă funcționează, veți primi și trimiteți un e-mail în câteva secunde. Dacă nu, atunci trebuie să începeți depanarea.

Depanare

Creați un nou fișier PowerShell pe desktop numit test1 care trimite un e-mail fără atașament:

$ EmailTo = "[email protected]"

$ EmailFrom = "[email protected]" $ Subject = "test" $ Body = "x" $ SMTPServer = "smtp.gmail.com" $ SMTPMessage = New-Object System. Net. Mail. MailMessage ($ EmailFrom, $ EmailTo, $ Subject, $ Body) $ SMTPClient = New-Object Net. Mail. SmtpClient ($ SmtpServer, 587) $ SMTPClient. EnableSsl = $ True $ SMTPClient. Credentials = New-Object System. Net. NetworkCredential ("userID", "parola"); $ SMTPClient. Send ($ SMTPMessage)

Deschideți fișierul cu editorul PowerShell făcând clic dreapta pe fișier și selectând „Editați”. Executând din editor, putem citi mesajele de eroare care clipesc când faceți dublu clic pe fișier.

cd. / desktop

. / test1.ps1

Dacă acest lucru eșuează, probabil că se datorează unei probleme de director. Asigurați-vă că PowerShell este îndreptat către directorul desktop. Promptul de comandă va arăta cam așa:

PS C: / Users / you / Desktop>

Dacă nu, atunci va trebui să vă amintiți toate vechile comenzi DOS; cd, dir,. \, etc pentru a face ca PowerShell să fie îndreptat spre desktop. Încercați din nou, dacă nu funcționează, citiți mesajul de eroare pentru a ajuta la descoperirea problemei

. / test1

Pasul 3: Scrieți și depanați un fișier lot

Deschideți Notepad și copiați următorul text:

PING localhost -n 180> NUL

powershell.exe. / SendPic.ps1 shutdown -s -t 100

Declarația PING este un hack real care trimite o cerere de comunicare la fiecare secundă de 180 de ori. Întârzierea ar trebui să fie suficient de lungă pentru ca computerul să pornească, să stabilească conectivitatea la Internet și să facă o fotografie cu camera web. Versiunile mai noi de Windows acceptă TIMEOUT - mult mai curat.

Următoarea declarație execută fișierul PowerShell care trimite e-mailul cu fotografia atașată.

Declarația finală determină oprirea computerului după o întârziere de 100 de secunde. Acest timp este ales ca suficient pentru a trimite e-mailul.

Salvați fișierul pe desktop ca SendPic.bat (nu. TXT așa cum se va întâmpla dacă nu adăugați extensia la numele fișierului. Trageți și fixați fișierul în folderul Windows STARTUP.

Faceți dublu clic pe pictograma fișierului lot. Ar trebui să primiți e-mailul. Vai! Prea ușor. Da, ei bine, multe pot merge prost.

Depanare

Problema cu depanarea atât a acestui fișier.bat, cât și a fișierului anterior.ps1 este că erorile clipesc mult prea repede pentru a fi citite. O puteți încetini cu:

PAUZĂ

PING localhost -n 180> NUL PAUSE powershell.exe. / SendPic.ps1 PAUSE shutdown -s -t 100 PAUSE

PAUSE vă va aștepta să apăsați tasta ENTER. Citiți mesajul de eroare. Din nou, este probabil o problemă de director. După ce ați remediat problema, eliminați instrucțiunile PAUSE, altfel programul se va bloca.

Dacă doriți să terminați fișierul batch în timp ce acesta se execută, faceți clic în fereastra deschisă cmd și introduceți ^ C (Ctrl C).

Pasul 4: încheie-l

Înfășurându-l
Înfășurându-l

Vechile desktopuri care rulează Windows nu sunt renumite pentru fiabilitatea lor. Care este primul lucru pe care îl faci atunci când computerul se împachetează? Opriți alimentarea! Deci, asta vom face. Găsiți un comutator AC Timer la Walmart sau Amazon. Cele ieftine sunt mecanice (mai puțin de 10 USD), cele mai scumpe sunt electronice (mai mult de 20 USD). Programați comutatorul pentru a porni la, de exemplu, 8 AM și opriți 15 minute mai târziu. Conectați computerul la priza temporizatorului.

Când comutatorul temporizator trimite alimentarea computerului dvs. se inițiază următoarea succesiune de evenimente:

  1. BIOS-ul detectează alimentarea cu curent alternativ, computerul pornește
  2. Windows pornește (fără conectare la parolă)
  3. Programul webcam începe și face fotografii
  4. Începe executarea fișierului lot

    1. Întârziere pentru finalizarea procesului de boot, captarea imaginilor și conectarea la Internet
    2. Executați fișierul PowerShell pentru a trimite e-mail cu atașament
    3. Întârziere pentru finalizarea e-mailului
    4. Inchide calculatorul

Comutatorul temporizatorului va scoate alimentarea din computer. Aceasta este cheia pentru o funcționare fiabilă nesupravegheată. Am supraviețuit eșecurilor intermitente ale hard disk-ului, blocărilor de program și alte opritoare ale computerului, dar când sistemul eșuează, acesta revine după un ciclu de alimentare.

Această abordare este ușor de adaptat la monitorizarea securității, de exemplu, utilizați iSpy pentru a captura un clip video scurt atunci când este detectată mișcare și pentru a trimite un e-mail cu un atașament video. De fapt, conceptul ar putea fi extins pentru a trimite o alertă prin e-mail la detectarea oricărui eveniment și cu adăugarea unui Arduino și a senzorilor fizici disponibili în acel univers - cerul este limita!

Recomandat: