İçindekiler:

Eski Masaüstü ve XP Kullanarak Toplu Dosyadan Fotoğraflı Otomatik E-posta Gönderme: 4 Adım
Eski Masaüstü ve XP Kullanarak Toplu Dosyadan Fotoğraflı Otomatik E-posta Gönderme: 4 Adım

Video: Eski Masaüstü ve XP Kullanarak Toplu Dosyadan Fotoğraflı Otomatik E-posta Gönderme: 4 Adım

Video: Eski Masaüstü ve XP Kullanarak Toplu Dosyadan Fotoğraflı Otomatik E-posta Gönderme: 4 Adım
Video: Keşke Daha Önce Öğrenseydik Dediğimiz Zaman Kazandıran 14 Bilgisayar Tüyosu 2024, Temmuz
Anonim
Eski Masaüstü ve XP Kullanarak Toplu Dosyadan Fotoğraflı Otomatik E-posta Gönderme
Eski Masaüstü ve XP Kullanarak Toplu Dosyadan Fotoğraflı Otomatik E-posta Gönderme

Ev ofis penceremden harika bir manzaraya sahip olduğum için çok şanslıyım. Uzaktayken, ne kaçırdığımı görmek istiyorum ve sık sık uzaktayım. Eskiden kendi web sitem ve tüm hava durumu verilerini ve pencereden çekilmiş bir fotoğrafı ftp aracılığıyla yükleyecek bir ev hava durumu istasyonum vardı, ancak web sitesi barındırma sağlayıcısı web sitesinin bakımını zahmetli hale getirdi, bu yüzden uzun yıllar sonra bıraktım o. Pencereden dışarı bakmanın yerine başka bir yöntem bulmayı amaçladım; ücretsiz web siteleri, bloglar, e-posta… ancak çoğu durumda bu potansiyel çözümlere otomatik ftp aktarımları engellendi. Ek bir komplikasyon, aylarca sık sık uzakta olmamdır, bu nedenle üzerinde karar kılınan çözüm ne olursa olsun güvenilir olmalıdır.

Bir güvenlik kamerası oluşturmak için Instructables yazarı Olivi3r ve onun Instructable'ından ilham aldım. Bir gün kadar el sıktıktan sonra çalıştırdım. Bu Eğitilebilirlik, birkaç önemli ayrıntı ekler.

Temel olarak amaç, her sabah web kamerasıyla bir fotoğraf çekmek ve ardından fotoğrafı ek olarak gmail aracılığıyla kendime göndermek. Bu aşağıdaki gibi olacaktır:

  • AC gücü, 110VAC zamanlayıcı kullanılarak 15 dakika süreyle açılacaktır
  • Bilgisayar açılacak
  • Web kamerası yazılımı bir fotoğraf çekecek
  • Aşağıdakileri yapacak bir Windows toplu iş dosyası yürütülür:
  • E-postayı ve eki gönderecek bir PowerShell komut dosyası yürütün
  • Toplu dosya komutu Bilgisayarı kapatacak
  • AC gücü kapanacak

Uyarılar: Ben bir Windows programcısı değilim - işe yaramazsa bana sormayın. Bu yaklaşımı, dosyalarımda hata ayıklamak için gerekli bilgileri bulana kadar internette şnorkelle yüzerek buldum. İkincisi, bunun bir Windows XP makinesinde çalışmasını istedim, Windows 10 bilgisayarda daha iyi çözümler olduğuna eminim. Aslında, bir XP makinesinde muhtemelen daha iyi çözümler vardır. Herhangi birini bulursanız, yorumlara yapıştırın. AC gücü açıldığında bilgisayarın açılması gerektiğinden, bu yaklaşımı bir dizüstü bilgisayarda çalıştırmak riskli olabilir. Instructables kod düzenleyicisinin, koda (Olivi3r kodu dahil) başka HTML etiketleri ekleme gibi kötü bir alışkanlığı vardır. Sanırım bunların hepsini düzenledim ama dikkatli olun.. Son olarak, Instructables "Tam Önizleme" düğmesi bana yalnızca boş bir beyaz sayfa verecekti - yani WYSIWYG!

Bunu 4 adımda yapacağız:

  1. Bilgisayarı hazırlayın
  2. Bir PowerShell betiği yazın ve hatalarını ayıklayın
  3. Toplu iş dosyası yazma ve hata ayıklama
  4. Hepsini topla ve Bob senin amcan!

Adım 1: Bilgisayarı Hazırlayın

İlk önce, eski bir masaüstünü dolaptan çıkarın. Windows XP (SP3) üzerinde çalışıyorsa - çalışacaktır. Bu Eğitilebilir Tablo, XP için tasarlanmıştır, ancak yaklaşım Windows 10'da aynı olmalıdır. Çalıştırın ve BIOS'u çalıştırın (önyükleme işlemi sırasında genellikle F1, del veya F2). "Güç Yönetimi" gibi bir şey bulun ve "AC Güç Kurtarma - AÇIK" olarak değiştirin. Bu, AC gücü açıldığında bilgisayarın açılmasını sağlar. Dene.

Tüm parolaları devre dışı bırakmanız ve yönetici olarak oturum açmanız gerekecektir. Bunun nedeni, bilgisayarın önyükleme işlemini katılımsız tamamlaması gerektiğidir. Denetim Masası, Kullanıcı Hesapları'na gidin ve gerekirse uygun değişiklikleri yapın.

Ardından, bir web kamerasına ve bir fotoğraf çekip saklayacak bir web kamerası uygulamasına ihtiyacınız var. Dorgem kullanıyorum - basit ve ücretsiz. Bir fotoğraf çekmek ve masaüstünde saklamak için Dorgem'i kurun. Yeni bir resim çekerken resmin adını değiştirmeyin, bunun yerine son resmin üzerine yazın. Bu örnekte resim Pic.jpg'dir. Ayrıca, resmi masaüstünde sakladığımı unutmayın. Bu önemlidir çünkü dizin yolu kolaydır. Dorgem simgesini Windows BAŞLANGIÇ klasörüne sürükleyip bırakın.

Şimdi - birkaç zor parça:

Daha az güvenli uygulamalara izin vermek için Chrome hesabınızı değiştirmelisiniz. "Chrome daha az güvenli uygulamalar" a göz atın ve ilk seçeneği seçin - muhtemelen bunu. Bu özelliği açın. Bu ayarın tehlikeleri hakkında sizi bilgilendiren bir e-posta uyarısı alacaksınız. Farklı bir e-posta sunucusu kullanıyorsanız bunu yapmanız gerekmeyebilir, ör. Yahoo, AOL…

Ardından, PowerShell komut dosyalarının yürütülmesini etkinleştirmelisiniz. Windows 10 kullanıyorsanız, bu daha kolaydır - Windows simgesine (ekranın sol alt köşesi) tıklayın, program listesini Windows PowerShell'e kaydırın, genişletin, PowerShell'e sağ tıklayın ve "Yönetici Olarak Çalıştır"ı seçin. Bu, PowerShell penceresini açacaktır. XP'de süreç biraz daha karmaşıktır - Dosya Gezgini'ni kullanın, PowerShell dizinini bulun (C:\Windows\system32\WindowsPowerShell\v1.0 gibi bir şey), PowerShell simgesine sağ tıklayın ve "Başlat menüsüne sabitle"yi seçin. Artık Başlat simgesine (sol altta) ve PowerShell simgesine tıklayarak PowerShell'e erişebilirsiniz. PowerShell simgesine tıklayın, açılan pencereye aşağıdaki komutu yazın:

set-executionpolicy remotesigned

"y" yazarak onaylamanız istenecektir.

şunu yazarak yürütme politikasını başarıyla değiştirdiğinizi onaylayın:

yürütme politikası

Tamam! Bilgisayarınız hazır.

2. Adım: Bir PowerShell Dosyası Yazın ve Hata Ayıklayın

Bu metni kopyalayıp Not Defteri'ne yapıştırın:

$EmailTo = "[email protected]"

$EmailFrom = "[email protected]" $Subject = "Görüntüle" $Body = "x" $SMTPServer = "smtp.gmail.com" $SMTPMessage = Yeni Nesne System. Net. Mail. MailMessage($EmailFrom, $ EmailTo, $Subject, $Body) $attachment = Yeni Nesne System. Net. Mail. Attachment("C:\Documents and Settings\Administrator\Desktop\pic.jpg") $SMTPMessage. Attachments. Add($attachment) $ SMTPClient = Yeni Nesne Net. Mail. SmtpClient($SmtpServer, 587) $SMTPClient. EnableSsl = $True $SMTPClient. Credentials = Yeni Nesne System. Net. NetworkCredential("userID", "password"); $SMTPClient. Send($SMTPMesaj)

Bu dosyayı masaüstüne "SendPic.ps1" olarak kaydedin.

Uygun değişiklikleri yapın; sen, kullanıcı kimliği ve şifre. Genellikle kullanıcı kimliğiniz, tam Gmail adresinizle aynıdır.

Gmail kullanmıyorsanız, Smtp sunucunuzla ilişkili bağlantı noktasını bulmak için İnternet'te kök salmanız ve "587"yi uygun bağlantı noktasıyla değiştirmeniz gerekir; smtp.mail.yahoo.com ve bağlantı noktası 465.

Not Defteri kullanmak yerine PowerShell düzenleyicisi mevcuttur.

Şimdi en büyüğü için - SendPic PowerShell dosyasına sağ tıklayın ve "PowerShell ile Çalıştır" ı seçin. Çalışırsa, birkaç saniye içinde alacak ve e-posta alacaksınız. Olmazsa, hata ayıklamaya başlamanız gerekir.

hata ayıklama

Masaüstünüzde, eksiz bir e-posta gönderen test1 adlı yeni bir PowerShell dosyası oluşturun:

$EmailTo = "[email protected]"

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

Dosyaya sağ tıklayıp "Düzenle"yi seçerek dosyayı PowerShell düzenleyicisiyle açın. Editörden çalıştırarak dosyaya çift tıkladığınızda yanıp sönen hata mesajlarını okuyabiliriz.

cd.\masaüstü

.\test1.ps1

Bu başarısız olursa, muhtemelen bir dizin sorunu nedeniyledir. PowerShell'in masaüstü dizinine yönlendirildiğinden emin olun. Komut istemi şöyle görünecektir:

Not C:\Kullanıcılar\siz\Masaüstü>

Olmazsa, tüm eski DOS komutlarınızı hatırlamanız gerekir; PowerShell'i masaüstüne yönlendirmek için cd, dir,.\, vb. Tekrar deneyin, işe yaramazsa, sorunu keşfetmenize yardımcı olması için hata mesajını okuyun

.\test1

3. Adım: Bir Toplu İş Dosyası Yazın ve Hata Ayıklayın

Not Defteri'ni açın ve aşağıdaki metni kopyalayın:

PING localhost -n 180 >NUL

powershell.exe.\SendPic.ps1 kapatma -s -t 100

PING ifadesi, her saniye 180 kez bir iletişim isteği gönderen gerçek bir saldırıdır. Gecikme, bilgisayarın açılması, İnternet bağlantısı kurması ve bir web kamerası fotoğrafı çekmesi için yeterince uzun olmalıdır. Windows'un daha yeni sürümleri TIMEOUT'u destekler - çok daha temiz.

Sonraki ifade, e-postayı fotoğraf eklenmiş olarak gönderen PowerShell dosyasını yürütür.

Son ifade, bilgisayarın 100 saniyelik bir gecikmeden sonra kapanmasına neden olur. Bu süre e-postayı göndermek için yeterli olarak seçilmiştir.

Dosyayı masaüstünüze SendPic.bat olarak kaydedin (uzantıyı dosya adına eklemezseniz olacağı gibi. TXT değil. Dosyayı Windows BAŞLANGIÇ klasörüne sürükleyip bırakın.

Toplu iş dosyası simgesine çift tıklayın. E-postayı almalısınız. Vay! Çok kolay. Evet, pek çok şey ters gidebilir.

hata ayıklama

Hem bu.bat dosyasında hem de önceki.ps1 dosyasında hata ayıklamanın sorunu, hataların okunamayacak kadar hızlı yanıp sönmesidir. Şunlarla yavaşlatabilirsiniz:

DURAKLAT

PING localhost -n 180 >NUL PAUSE powershell.exe.\SendPic.ps1 DURAKLATMA kapatma -s -t 100 DURAKLATMA

PAUSE, ENTER tuşuna basmanızı bekleyecektir. Hata mesajını okuyun. Yine, muhtemelen bir dizin sorunudur. Sorunu çözdükten sonra PAUSE deyimlerini kaldırın, aksi takdirde program askıda kalacaktır.

Toplu iş dosyasını yürütülürken sonlandırmak istiyorsanız, açık cmd penceresine tıklayın ve ^C (Ctrl C) girin.

Adım 4: Sarma

Sarmalamak
Sarmalamak

Windows çalıştıran eski masaüstleri güvenilirlikleriyle ünlü değildir. Bilgisayarınız toplandığında ilk yaptığınız şey nedir? Gücü kapat! Yani yapacağımız şey bu. Walmart veya Amazon'da bir AC Zamanlayıcı Anahtarı bulun. Ucuz olanlar mekaniktir (10 dolardan az), daha pahalı olanlar elektroniktir (20 dolardan fazla). Anahtarı örneğin sabah 8'de açılacak ve 15 dakika sonra kapanacak şekilde programlayın. Bilgisayarınızı zamanlayıcı çıkışına takın.

Zamanlayıcı anahtarı bilgisayarınıza güç gönderdiğinde, aşağıdaki olaylar dizisi başlatılır:

  1. BIOS AC gücünü algılar, bilgisayar açılır
  2. Windows başlar (parola ile oturum açmadan)
  3. Web kamerası programı başlar ve resim çeker
  4. Toplu dosya yürütme başlar

    1. Önyükleme işleminin tamamlanması, resim yakalama ve İnternet oturum açma gecikmesi
    2. Ekli e-posta göndermek için PowerShell dosyasını yürütün
    3. E-postanın tamamlanması için gecikme
    4. Bilgisayarı Kapat

Zamanlayıcı anahtarı daha sonra bilgisayardan gücü kesecektir. Bu, güvenilir gözetimsiz çalışma için anahtardır. Aralıklı sabit disk arızalarından, program kapanmalarından ve diğer bilgisayar engellerinden kurtuldum ama sistem arızalandığında, bir güç döngüsünden sonra geri geliyor.

Bu yaklaşım, güvenlik izlemeye kolayca uyarlanabilir; örneğin, hareket algılandığında kısa bir video klip yakalamak ve video eki olan bir e-posta göndermek için iSpy kullanın. Aslında konsept, herhangi bir olayın algılanması üzerine bir e-posta uyarısı göndermek ve bir Arduino ve o evrende mevcut olan fiziksel sensörlerin eklenmesiyle genişletilebilir - sınır gökyüzü!

Önerilen: