|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
pfiffikus_86
Anmeldungsdatum: 10.11.2004 Beiträge: 11
|
Verfasst am: 10.11.2004, 18:41 Titel: Programm programmieren das im Hintergrund läuft?! |
|
|
Schönen Guten Tag,
Ich hab mal eine etwas schwierige Frage, und zwar, ist es möglich mit QBasic ein Programm zu programmieren das im Hintergund von Windows mit läuft und in der Windows Task Liste nicht mit angezeigt wird (Natürlich die EXE-Datei)???
Falls das mit QBasic funktioniert wäre es schön wenn mir das mal jemand erklähren könnte oder gleich ein kleines Programmierbeispiel schicken könnte!!!
Gleich noch eine Frage,
ist es möglich mit QBasic, E-Mails zu schreiben und zu empfangen?
Würde mich über Antworten freuen! |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 10.11.2004, 19:09 Titel: Beides ist in gewissem Maß möglich |
|
|
Hallo.
eMails lassen sich entweder auf die Weise schreiben und empfangen, dass du in VB ein "Dienstprogramm" mit einer SMTP-Klasse o.ä. schreibst und auf diese aus QB heraus zugreifst.
Beispiel:
Eine TMP-Datei (mail.tmp)
TO: jemand@tagesschau.de
FROM: jemandanders@tagesschau.de
TEXT: "Blablabfihdfuhoubogzg"
In QB:
SHELL "MAIL.EXE MAIL.TMP
Für mein Cargu-Quiz habe ich sowas mal programmiert. Oder du kannst das mit telnet machen. Dazu schreibt dreael vielleicht noch was.
Das mit dem Hintergrund geht unter Windows 9x/ME sogar so, dass Programme nicht im Taskmanager angezeigt werden; unter Windows NT/2000/XP kann man dem Taskmanager aber nichts mehr vorenthalten, aber man kann das Programm immerhin für den User unsichtbar machen.
Das geht allerdings auch nur, wenn du einen entsprechenden "Versteckt-Loader" (-> Forensuche!!!) in beispielsweise VB schreibst. Auch das hab ich mal gemacht, aber das will ich nicht veröffentlichen, weil manche Leute damit "Schabernack" treiben könnten.
Fazit: Setz dich mal mit VB auseinander, schau dir die "ESMTP-Klasse" von "Madmax" mal an (-> google, -> ActiveVB) und guck dir mal die Parameter für Shell unter VB an.
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2510 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 10.11.2004, 20:50 Titel: E-Mail-Versand aus QB heraus |
|
|
Es gibt verschiedene Möglichkeiten
1.) Zur Telnet-Variante (Sebastian, bereits richtig bemerkt ;-)): Dazu kann man Socket-Programmierung wie unter
http://www.dreael.ch/Deutsch/BASIC-Knowhow-Ecke/InternetMitQuickBASIC.html
vorgehen, in dem man eine Socket-Verbindung auf den SMTP-Server, Port 25 des ISPs aufbaut und folgenden Dialog ausführt:
Beispiel-SMTP-Sitzung hat Folgendes geschrieben: | dreael@pingu:~ > telnet smtp.provider.de 25
Trying 192.0.2.235...
Connected to smtp.provider.de.
Escape character is '^]'.
220 smtp.provider.de ESMTP Sendmail 8.12.3/8.12.3/SuSE Linux 0.6; Wed, 10 Nov 2004 19:22:41 +0100
HELO dial-1234.provider.de
250 dial-1234.provider.de Hello dial-12345.provider.de [192.0.2.211], pleased to meet you
MAIL From: hans.muster@provider.de
250 2.1.0 hans.muster@provider.de... Sender ok
RCPT To: empfaenger@domain.de
250 2.1.5 empfaenger@domain.de... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
From: "Hans Muster" <hans.muster@provider.de>
To: empfaenger@domain.de
Subject: Betreffzeile
Hallo Hans, dies ist
nur eine Testnachricht.
.
250 2.0.0 iAAIMfRL023347 Message accepted for delivery
QUIT
221 2.0.0 smtp.provider.de closing connection
Connection closed by foreign host.
dreael@pingu:~ > _ |
Die genauen Details sind in RFC 2821 beschrieben. POP3 ist übrigens ganz ähnlich aufgebaut.
2.) VBScript-Variante mit CDONTS.NewMail, wenn man mit NT 4.0/2000/XP Prof. arbeitet und IIS installiert hat (ASP-Programmierer arbeiten normalerweise so):
Code: | absender$ = "hans.muster@provider.de"
empfaenger$ = "empfaenger@domain.de"
betreff$ = "Betreffzeile"
text1$ = "Hallo Hans"
text2$ = "Dies ist ein Test."
OPEN ENVIRON$("TEMP") + "\~SENDM.VBS" FOR OUTPUT AS 1
PRINT#1, "Set oMail = CreateObject(" + CHR$(34) + "CDONTS.NewMail" + CHR$(34) + ")"
PRINT#1, "oMail.From = " + CHR$(34) + absender$ + CHR$(34)
PRINT#1, "oMail.To = " + CHR$(34) + empfaenger$ + CHR$(34)
PRINT#1, "oMail.Subject = " + CHR$(34) + betreff$ + CHR$(34)
PRINT#1, "oMail.Body = " + CHR$(34) + text1$ + CHR$(34) + " & vbCrLf _"
PRINT#1, " & " + CHR$(34) + text2$ + CHR$(34)
PRINT#1, "oMail.Send"
PRINT#1, "Set oMail = Nothing"
CLOSE 1
SHELL "cscript //NoLogo " + ENVIRON$("TEMP") + "\~SENDM.VBS"
KILL ENVIRON$("TEMP") + "\~SENDM.VBS" |
3.) Auch Microsoft Outlook aus dem Office-Paket besitzt ansonsten ebenfalls geeignete ActiveX-Automatisierungsobjekte, um ganz ähnlich wie Variante 2 arbeiten zu können. Hinweis: Sicherheitseinstellungen so anpassen, dass Deine QB-Applikation als vertrauenswürdig akzeptiert wird!
4.) Es gibt spezielle Kommandozeilen-E-Mail-Clients wie beispielsweise
http://www.febooti.com/products/command-line-email/
die man direkt mit SHELL aufrufen könnte. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|