Einfach noch zur Klarstellung:
Das Ziel ist nicht, dass ich wegen des Podcast einschlafe, sondern dass ich den Podcast vor dem EInschlafen komplett höre.
PS: Das hat auf den anderen Kanälen wieder einmal für Aufruhr gesorgt
Einfach noch zur Klarstellung:
Das Ziel ist nicht, dass ich wegen des Podcast einschlafe, sondern dass ich den Podcast vor dem EInschlafen komplett höre.
PS: Das hat auf den anderen Kanälen wieder einmal für Aufruhr gesorgt
Ich muss jetzt meine Kopfhörer aufladen damit ich das zum Einschlafen hören kann
Dass es gleichzeitig mit dem Zertifikatsproblem angefangen hat, kann ich mir im Moment auch nicht so ganz erklären.
Wenn ein Redirekt auf eine andere Domäne stattfindet und die Zieldomäne kein gültiges Zertifikat hat, dann passt das schon...
Andreas, das war ein ganz anderer Zusammenhang, ist hier OT. Stuckalf@.....de war der User hier, er war auch mal beim Hamburger Treffen bei mir dabei. Ich hatte dann eine Mail von stuckalf@.....com erhalten, ohne den Unterschied in der Adresse zu bemerken. stuckalf@.....com hatte dann mein komplettes Adressbuch ausgelesen und es stand im Darknet zum Verkauf. Ist zwar schon lange her, aber es scheint manchmal immer noch benutzt zu werden.
Denke doch. Beide versuchen Dich auf eine bösartige Webseite zu locken...
Alternativ wäre die Frage, ob man eine statische Seite "spydern" kann, welche temporär auf einem anderen Server läuft.
Kann jetzt den Aufwand nicht abschätzen. Aber Wordpress soll anscheinend mit Tools gut auf eine andere Instanz migrierbar sein. Es gibt ja diverse Hoster dafür. Aber alles mit Zeit und Geld verbunden.
Klar, man sollte wissen, warum der Server gehackt werden konnte und entsprechende Vorkehrungen treffen. Bringt ja nichts, wenn die Instanz bereinigt oder gewechselt wurde, nur um über die gleiche Sicherheitslücke erneut gehackt zu werden. Leider habe ich das Wordpress-Ökosystem immer etwas nebenan liegen lassen. Man kann einfach nicht alles in die Tiefe kennen.
In dem Zusammenhang, ich habe wieder einmal anfangs Woche eine Mail von Stuckalf erhalten. Das war auch einmal ein Benutzer hier. Der ist dann plötzlich verschwunden und alle Jahre bekomme ich ein Phishing-Mail mit ihm als Absender...
Das mit den verschiedenen MSG_META_ATTACH habe ich auch versucht. Bis anhin entweder kein Effekt oder böse Crashes...
Wenn ich dem GenApplication über die Instanzvariable GI_comp den @TestWorker neben dem GenPrimary anhänge, produziert das keinen Crash. Aber die MSG_META_ATTACH_OBJECT() wird soweit ich sehe nicht aufgerufen.
Durchsucht man die Sourcen, dann findet man hier eigentlich nur Fälle, wo MSG_META_ATTACH_OBJECT von der GenApplication selbst überschrieben wird. Brauchen tue ich es aber auf dem TestWorker selbst.
Oder Johannes hat Werbung eingebunden und die Virenlinks kommen darüber. Sowas gab es auch schon bei grossen Websites...
DNS-seitig sieht es auf die Schnelle auch ok aus. Habe auch schon gehackte DNS-Server gesehen, welche als Antwort nicht die IP der originalen Webseite lieferten, sondern die der Fischer.
Hallo Rainer
Ein Singelton ist meiner Erinnerung nach eine Klasse, von der genau nur EIN Objekt instanziiert wird.
Die TestWorker-Klasse und die Instanzvariable TWI_mode sind als Beispiel zu sehen. Ich habe aber einen Fall, bei dem ich in der Instanzvariable einen Wert ablegen möchte, welcher sich je nach System / Sitzung unterscheiden kann. Dieser Wert muss ich einmal ermitteln und ist dann während der Laufzeit des Programms immer gleich. Solche Fälle gibt es meiner Meinung nach doch recht häufig. Und mit der Message MSG_META_INITIALIZE() hätte PC/GEOS das doch genau. Nur verstehe ich nicht, warum das nur für zur Laufzeit erzeugte Objekte aufgerufen werden soll und für Statische nicht.
Wenn dieses Verhalten bei PC/GEOS so vorgegeben oder "by design" ist, dann ist es eben so. Wenn es aber möglich wäre, dass PC/GEOS automatisch die MSG_META_INITIALIZE() auch bei statischen Objekten aufrufen kann, dann würde ich dies gerne benutzen. Das befreit den Programmierer dies händisch zu machen. Bonus wäre natürlich noch eine geerbte Methode um allfällige allozierte Resourcen wieder freizugeben,
Andreas
Ok, das mit dem statisch definieren vs. zur Laufzeit erzeugen könnte die Ursache sein. Was wäre hier wohl der Hintergrund dafür?
Das Objekt soll so quasi ein "Singleton" werden. Das wird dann von diversen Stellen aus über Messages angesprochen. Die dynamisch zur Laufzeit zu machen fände ich etwas overkill.
Wenn das so gegeben ist, dann werde ich die MSG_META_INITIALIZE() wie bis anhin einfach in der APLLICATION_OPEN aufrufen.
Was ich im ersten Beitrag vergessen habe zu kopieren, ist das @callsuper in der MSG_META_INITIALIZE(). Habe die noch nachgetragen.
guggst du Doku...
MSG_META_INITIALIZE
Every object class should provide a handler for this message which should call the superclass and then perform any initialization of the instance data required. This message is not delivered to statically declared objects because they are already initialized.
Hallo Rainer
Danke für Dein Feedback. Genau die Funktion MSG_META_INITIALIZE() verwende ich ja. Die Dokumentation dazu habe ich mir mehrfach durchgeschaut und auch den von Dir erwähnten Abschnitt gelesen. Entweder habe ich irgendwas übersehen oder verstehe eine grundlegende Geschichte nicht...
Die Methode muss man in der Klasse ja nicht definieren, da sie geerbt wird (MetaClass / GenClass). Wenn ich die Methode in der APPLICATION_OPEN von Hand aufrufe, macht sie, was sie soll. Aber das müsste in meinen Augen doch automatisch beim Instanziieren geschehen.
Andreas
Hallo zusammen
Ich versuche eine eigene generische Klasse zu verwenden. Dies sieht ungefähr folgendermassen aus:
@class TestWorkerClass, GenClass;
@instance word TWI_mode = 0;
@message word MSG_TEST_WORKER_GET_MODE();
@endc;
@classdecl TestWorkerClass, neverSaved;
@method TestWorkerClass, MSG_META_INITIALIZE
{
@callsuper();
pself->TWI_mode = 10;
}
@method TestWorkerClass, MSG_TEST_WORKER_GET_MODE
{
return pself->TWI_mode;
}
Display More
Von dieser Klasse habe ich ein Objekt:
Nun habe ich versucht, dieses Objekt zu verwenden. Meiner Meinung nach müsste die Methode MSG_TEST_WORKER_GET_MODE() den Wert 10 zurückgeben. Ich erhalte aber die 3. Das wiederum würde bedeuten, dass die Methode MSG_META_INITIALIZE() nicht aufgerufen wurde. Wenn ich diese von Hand aufrufe, dann bekomme ich im Nachhinein auch den richtigen Wert.
Muss ich meine eigenen Objekte speziell registrieren, damit die MSG_META_INITIALIZE() beim Starten der Anwendung und somit der Instanziierung des Objektes ausgeführt wird? Oder liegt es an der Platzierung im Gen-Tree? (habe bis jetzt GenPrimary versucht)
Ist es richtig, dass die Messages vom process-Thread verarbeitet werden?
Besten Dank schon einmal für Eure Hints
Und hier nun FormFactor in Aktion unter Breadbox Ensemble 4.* mit offenem Help-File.
Hm, bei mir öffnen sich die Links leider nicht...
Bei Soundblaster meinte ich, dass es die Volume- und die Gain-Einstellung getrennt gibt.
Die Lautstärke konnte man doch bei BestSound und auch im Global-PC einstellen? Eventuell hatte das NDO 2000 auch. Bei den anderen Versionen muss man sich Tools wie dem SBMIXER bemühen. So decodiere ich im Moment meine schwachen Erinnerungs-Signale...
Ok, wenn man die richtige Funktion kennt und verwendet, dann ist es ganz einfach... TimerGetCount() ist die Lösung
Im Quelltext ist folgendes definiert:
SGI_TotalCount proc near
mov ax, ds:[totalCount].low
mov dx, ds:[totalCount].high
ret
SGI_TotalCount endp
Habe gedacht, ich mache das folgendermassen:
static char s[12 + 10 + 1];
word vax, vdx;
dword currentTicks;
vax = SysGetInfo(SGIT_TOTAL_COUNT); // SGI_TotalCount
_asm {
mov vdx, dx
}
currentTicks = (dword) vdx << 16 | vax;
sprintf(&s, "Time Ticks: %-10lu", currentTicks);
UserStandardDialog(
0, 0, 0, 0,
s,
(CDT_NOTIFICATION << CDBF_DIALOG_TYPE_OFFSET) | (GIT_NOTIFICATION << CDBF_INTERACTION_TYPE_OFFSET)
);
Display More
Leider funktioniert das auch nicht...