strComputer = "."
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSoftware = objWMIService.ExecQuery("SELECT * FROM Win32_Product")
If colSoftware.Count > 0 Then
result = "Caption" & vbtab & _
"Data instalacji" & vbtab & _
"Lokacja programu" & vbtab & _
"Install State" & vbtab & _
"Nazwa" & vbtab & _
"Vendor" & vbCrLf
For Each objSoftware in colSoftware
result = result & objSoftware.Caption & vbtab & _
objSoftware.InstallDate2 & vbtab & _
objSoftware.InstallLocation & vbtab & _
objSoftware.InstallState & vbtab & _
objSoftware.Name & vbtab & _
objSoftware.Vendor & vbCrLf
Next
WScript.Echo result
Else
WScript.Echo "Nie można odczytać listy zainstalowanych programów na tym komputerze."
End If
Lista zainstalowanych programów jest w zmiennej result. Po zakończeniu działania skrypt wyświetla zawartość tej zmiennej tak więc wciąż możesz całą zawartość przesłać do pliku, np w ten sposób: cscript nazwaskryptu.vbs > “jakis plik (pelna sciezka musi zostac podana).txt”
Specjalnie założyłem konto na o2.pl, żeby przetestować obie metody. I u mnie obie działają (z szyfrowaniem i bez). Wysyłałem testowy mail na skrzynkę o2 oraz wp. Ale jeśli u Ciebie nie działa to powinien pokazać się jakiś komunikat błędu. Jak możesz to go wrzuć. Może uda się ustalić co jest nie tak. Może to firewall? Może jakieś specyficzne ustawienia Twojej skrzynki pocztowej (ja testowałem na domyślnych)? Może nie można odczytać z dysku załącznika ze względu na brak uprawnień?
Najwyraźniej można korzystać z trzech portów na serwerze o2.pl dla poczty wychodzącej, tj. 25 (który jest standardowym portem dla protokołu SMTP), 587 oraz 465 (który jest standardowym portem dla protokołu SMTPS). Port 587 został udostępniony także w przypadku poczty na onecie (być może również w przypadku poczty interii). Warto przeczytać ten komunikat http://poczta.onet.pl/oferta/komunikaty.html.
Skoro u Ciebie nie działa ten skrypt dla portu 587 to obstawiam, że to sprawka firewalla. Sprawdź, czy nie masz reguły, która blokuje ruch w sytuacji, gdy port docelowy to 587 (nie jest to port standardowy). Poza tym w trakcie wykonywania skryptu powinien był pojawić się jakiś komunikat.
Nie da się. I sprawdź ten firewall, bo na porcie 587 też musi działać. Dodaj regułę zezwalająca na ruch, gdy port docelowy to 587. Możesz też wkleić komunikat błędu (co już zresztą pisałem). Zresztą najlepiej jakby Ci się udało uruchomić ten skrypt na porcie 465.
A jest jakaś zmienna środowiskowa , która podaje ścieżkę katalogu w którym uruchamiany jest ten skrypt? bo jak chcę to wrzucić na pendrive’a
I uruchamiać taki skrypt na innych komputerach to na każdym komputerze pendrive jest pod inną nazwą
– Dodane 10.03.2011 (Cz) 21:01 –
ok już mi działa na porcie 587
– Dodane 10.03.2011 (Cz) 21:03 –
tylko z tym katalogiem problem bo jak też komuś dam ten program to nie wiadomo w jakim katalogu ten ktoś umieści ten program i później będzie ten ktoś się mnie pytał dlaczego mu skrypt nie działa
Powyższy kod zadziała jeśli skrypt będzie w tym samym folderze co plik users.txt (w ten sposób możesz utworzyć taką pseudowzględną ścieżkę do pliku users.txt)