Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Also ich hab ein Dialog, auf den mehrere Editfelder sind.

eins davon wird ständig mit einem neuen wert gefüllt, bzw. sollte es

ich hab mir hierfür einen thread gebaut!

mein problem ist, dass sich die werte nicht anzeigen unter 98

ich hab für dieses editfeld eine CString variable angelegt und weise den wert entsprechen zu.

unter nt/2000.... funktioniert das ganz einfach

zuweisen -> und man sieht es am dialog

unter 98 funktioniert das nicht!!!

warum?

mit UpdateData() hab ich es probiert -> fehlermeldung, schluckt er nicht

oder UpdateWindow() macht gar nichts!!!

hat jemand dazu ne lösung!?

ich verzweifel sonst :confused:

nein mit den threads hat das nichts zu tun!

die werte schicke ich an das fenster aus den threads heraus

und diese fange ich im fenster auf

das problem ist nur das anzeigen

Original geschrieben von Leana

nein mit den threads hat das nichts zu tun!

Heißt das "nein", dass du bei CreateThread im letzten Parameter nicht NULL angibst?

das problem ist nur das anzeigen
Ich habe die Erfahrung gemacht, dass man sich bei solchen Problemen nicht zu schnell auf die eigene Diagnose versteifen, sondern bei den Symptomen bleiben sollte.

Bist du sicher (sprich: hast du es mit einem Debugger geprüft), dass auf dem Win98-System dein Thread überhaupt gestartet wird?

ja bin mir sicher, der thread wird gestartet

wirft regelmäßig seine messages mit den werten

das fenster fängt die auf

und schreibt sie auch in die variable von dem editctrl

daher liegt das wirklich nicht am thread, sondern nur an der ausgabe!

unter 2000 oder nt schreib ich das auch einfahc in die variable udn es wird angezeigt

es geht nur nciht unter 98

die erfahrung zeigt auch, dass wenn man es selbst weiss, man gar nicht erst fragen braucht :-)

blöde sprüche helfen mir nicht weiter!

ich weiß ja nciht woran es liegt das 98 es net anzeigt, dazu brauch ich nun mal ne lösung

Original geschrieben von Leana

ja bin mir sicher, der thread wird gestartet

wirft regelmäßig seine messages mit den werten

das fenster fängt die auf

und schreibt sie auch in die variable von dem editctrl

Darf ich nochmal fragen, woran du das merkst, wenn nichts angezeigt wird? Hast du das auf dem Win98-System mit dem Debugger geprüft?

So, wie du das Programm beschreibst, dürfte es eigentlich auch unter Windows 2000 nicht funktionieren. Eine Zuweisung an eine CString-Variable bewirkt nichts, solange nicht danach UpdateData( FALSE ) aufgerufen wird. Erst dann wird nämlich der Inhalt des CString-Objekts in das Steuerelement übertragen.

Vielleicht hilft es, wenn du den relevanten Teil des Codes zeigst.

Also es wird geprüft, ob es 95/98 ist, weil man ab 2000 die CPU Auslastung anders ausgelesen werden muss.

die Variable m_strGesamtauslastung ist die von meinem Edit Ctrl

if(m_strVersion != W95 && m_strVersion != W98)

{

long lAusgabe = m_System.GetTotalUsage();

m_strGesamtauslastung.Format("%d", lAusgabe);

}

else

{

DWORD dwUsage = m_System.GetCPUUsage9x();

m_strGesamtauslastung.Format("%d",dwUsage);

}

unter 2000 funktioniert es, deswegen wundert es mcih ja das es unter 98 nicht geht.

meine erkenntnisse, dass meine threads funktionieren, habe ich natürlich durch das debuggen unter 98 gewonnen.

bin ja net blöde, nicht :)

und ich arbeite ohne updateData(false);

also kann mir jetzt jemand helfen, bitte!!! :)

Original geschrieben von Leana

unter 2000 funktioniert es, deswegen wundert es mcih ja das es unter 98 nicht geht.

Ich habe das grad mal getestet: Ein CString::Format-Aufruf oder eine Zuweisung reicht definitiv nicht. Wenn das unter Windows 2000 funktioniert, dann machst du noch irgendetwas anderes.

meine erkenntnisse, dass meine threads funktionieren, habe ich natürlich durch das debuggen unter 98 gewonnen.

bin ja net blöde, nicht :)

Das wollte ich auch nicht sagen. Aber ich weiß aus eigener Erfahrung, wie es ist, wenn man sich irgendeiner Sache, den eigenen Code betreffend, "sicher" ist.

also kann mir jetzt jemand helfen, bitte!!! :)

Versuchs mal mit:

GetDlgItem( RESOURCE_ID_DES_EDITCTRL )->SetWindowText( m_strGesamtauslastung );

nach dem Format-Aufruf.

ist schon ok!!! :) *lach*

ja da bin ich auch gerade drauf gekommen mit der funktion

und es geht! *jipiii*

ist anscheinend ein updateproblem unter 98

und glaube mir, es geht unter 2000, mach ich doch und es funkt

aber danke für dienen hilfe

klar gibt es immer viele wege, aber einfach so wandern keine Daten auf die Oberfläche...

wäre also nett, wenn du etwas genauer beschreiben könntest wie du das machst, den diesen weg kenne ich scheinbar noch nicht..

oder doch ein updatedata drin ?!??

hallloooooooooo

das problem wurde gelöst

udn wie du eigentlich wissen müsstest, dass wenn man eine variable zu einem ctrl anlegt und diesem einen wert zuweist, dass das dann funktioniert und der wert gleich angezeigt wird ohne update!

(siehe beschreibung!)

also ich hab es so beschrieben wie es auch ist, es hat ja nur net unter 98 funktioniert

also.....

ich wünsche dir, dass du bald mehr erkenntnisse dazu gewinnst

Original geschrieben von Leana

udn wie du eigentlich wissen müsstest, dass wenn man eine variable zu einem ctrl anlegt und diesem einen wert zuweist, dass das dann funktioniert und der wert gleich angezeigt wird ohne update!

(siehe beschreibung!)

Könntest du einen Link auf diese Beschreibung posten? In meiner MSDN Library steht was anderes.

ich habe jetzt keine lust, deswegen ewig rumzureden...

ich habe es implementiert und bei mir funktioniert es nun mal....

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.