Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Das ist mir unlogisch

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
15.11.2002, 23:03 Uhr
~Peter
Gast



C++:
        char prio[256];
        LONG error;
        DWORD dwCount = sizeof(prio);

        key.Open( HKEY_CURRENT_USER, "Software\\MysticSoft\\CSS", KEY_READ);
error = key.QueryValue(prio, "prio", &dwCount);
        key.Close();


        if (error == ERROR_FILE_NOT_FOUND)
        {
            m_prio.SetCurSel(m_prio.FindString(-1,"Niedrig"));
        }
        else
        {
            CString priostr = prio;

            if (priostr == "REALTIME_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Echtzeit"));
            }

            if (priostr == "HIGH_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Hoch"));
            }

            if (priostr =="NORMAL_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Normal"));
            }

            if (priostr == "IDLE_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Niedrig"));
            }
        }



Das soll so verlaufen :

Wert auslesen.
Durch error abfrage überprüfen ob der schlüssen vorhanden ist oder nicht.
Dann die möglichen Werte ein Befehl zuorten zuordnen.

Aber es bassiert nichts ob der schlüssen vorhanden ist oder nicht.
Aber führe ich das das setzen des Wert es alleine durch geht alles ohne Probleme.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.11.2002, 17:57 Uhr
Robert



Es dürfte nicht gehen, weil du ja was aus der Registry
ausliest und das ja keine Datei an sich ist (wegen ERROR_FILE_NOT_FOUND)

Versuchs mal mit:

C++:
if(!key.Open( HKEY_CURRENT_USER, "Software\\MysticSoft\\CSS", KEY_READ))
{
// fehler
}
else
{
// wenns funktioniert
}


Ich weiß nicht ob es funktioniert, aber vielleicht gehts trotzdem *grins*
MfG Robert

Dieser Post wurde am 20.11.2002 um 18:05 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.11.2002, 22:32 Uhr
~Peter
Gast


So :


C++:

error = key.Open( HKEY_CURRENT_USER, "Software\\MysticSoft\\CSS", KEY_READ);
        key.QueryValue(prio, "prio", &dwCount);
        key.Close();

        if (error == ERROR_FILE_NOT_FOUND)
        {
            m_prio.SetCurSel(m_prio.FindString(-1,"Niedrig"));
        }
        else
        {
            CString priostr = prio;

            if (priostr == "REALTIME_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Echtzeit"));
            }

            if (priostr == "HIGH_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Hoch"));
            }

            if (priostr =="NORMAL_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Normal"));
            }

            if (priostr == "IDLE_PRIORITY_CLASS")
            {
            m_prio.SetCurSel(m_prio.FindString(-1,"Niedrig"));
            }
        }



So funktioniert es aber das ist mir zu ungenau da er nur fragt ob der ordner da ist.Da er das ja ist.Habe ich so Probleme allso möchter ich lieber fragen ob der key vorhanden ist.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
20.11.2002, 08:28 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


dann mach doch


C++:
// ...
key.QueryValue(prio, "prio", &dwCount);
key.Close();

if (dwCount == 0)
{
    // ...


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.11.2002, 17:31 Uhr
~Peter
Gast


Gute idee.Aber leider funktioniert sie nicht.(Nur die Frage ist warum?)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
20.11.2002, 18:05 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Wie ich sehe ist prio ein string, warum probierst du nicht mal


C++:
CString prio = key.QueryStringValue("prio");
if(!prio.IsEmpty())
{
    CString priostr = prio;
    if (priostr == "REALTIME_PRIORITY_CLASS")
    {
         m_prio.SetCurSel(m_prio.FindString(-1,"Echtzeit"));
    }
    // ...
}


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
20.11.2002, 20:44 Uhr
~Peter
Gast


prio is char
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
20.11.2002, 21:02 Uhr
~Peter
Gast


es lauft jetzt so:


C++:

        char prio[256];
        DWORD dwCount = sizeof(prio);

        key.Open( HKEY_CURRENT_USER, "Software\\MysticSoft\\CSS", KEY_READ);
        key.QueryValue(prio, "prio", &dwCount);              
        key.Close();

        CString m_priostr = prio;
        if(m_priostr == "")
        {
            m_prio.SetCurSel(m_prio.FindString(-1,"Niedrig"));
        }
        else
        {

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: