Seite 1 von 1
Programm ändern / neu schreiben
Verfasst: Mi 7. Jan 2004, 03:58
von Rochen
hi
hab mal ne frage an die Progger unter uns.
kann jemand ein programm ändern/ umschreiben so das es nichtmehr alle 5 min abkaggt ??
ich hab nen Mod gebaut zusammen mit dem AAL der die CPU auslastung anzeigt mithilfe von LEDs am gehäuse
http://www.modding-faq.de/index.php?artid=709
da is die anleitung für modder unter uns
unten sind 2 links das is das programm was man dazu braucht nur eben dieses verabschiedet sich alle 5 min. mit der Meldung " Cou´t not update LEDs "
ich weis zwar nicht wie schwer das ist und was man dafür wissen mus aber wenn einer echt lust dazu hätte würd ich soweit ich kann helfen ( auch wenn cih nicht weis wie

)
so mal guggn ob da wer was machen kann
MFG Rochen
Verfasst: Mi 7. Jan 2004, 11:02
von Hessie J.
Wenn man den Quelltext des Programms nicht hat, ist das nahezu unmöglich

Verfasst: Mi 7. Jan 2004, 13:56
von Rochen
ach was .. mus man sich halt anstrengen
los macht was .. ich was haben was funzt

Verfasst: Mi 7. Jan 2004, 14:02
von Hunter
Ach was, der Trend geht zum Do-It-Yourself
http://www.cplusplus.com/doc/tutorial/
Verfasst: Mi 7. Jan 2004, 18:56
von RedAdair
Verfasst: Do 8. Jan 2004, 00:25
von NerV.net
kommt drauf an mit welcher programmiersprache sie geschrieben wurd... ich kenn nur die compiler und da gehts 100 pro ohne quelltext nicht
wie das bei den interpretern is weiss ich net
Verfasst: Do 8. Jan 2004, 09:51
von Hunter
Interpreter arbeiten nur mit dem Quelltext...
Wenn man sich mal die Mühe macht und in Rochens Beitrag unten auf den Link zu der Software klickt sieht man im Downloadbereich auch den Sourcecode...

Verfasst: Do 8. Jan 2004, 11:42
von Murphy
Hunter hat geschrieben:Wenn man sich mal die Mühe macht und in Rochens Beitrag unten auf den Link zu der Software klickt sieht man im Downloadbereich auch den Sourcecode...

Hä? Wo?
Verfasst: Do 8. Jan 2004, 11:54
von Hunter
Unten ist ein Hinweis auf die Programmlizenz - das führt da hin :
http://casemods.pointofnoreturn.org/cpu ... cense.html
und da gibt's nen Downloadbereich :
Several versions of LEDMeter are available:
Automated Installer for the full version. (2.81MB)
Full Version with manual. (2.78MB)
Minimal Version without manual. (43.9KB)
Manual as a supplement to the minimal version. (2.68MB)
Source Only Version for those who would like to compile LEDMeter themselves. Requires Visual C++ 6.0 or higher. (55.3KB)
Verfasst: Do 8. Jan 2004, 11:59
von Murphy
hm....hab momentan leider nur den Borland C++ Builder installiert, muss sich wohl ein anderer drum kümmern

Verfasst: Do 8. Jan 2004, 15:18
von zOZo
Jo hab mir den source kurz angeguckt und auch die Ursache deiner fehlermeldung gefunden.
Das Problem ist einfach nur das die UpdateLEDs Funktion nicht 0 zurückliefert

Ich weiß nicht inwieweit du dich mit debugging auskennst aber das wird dier einzige weg sein dein Prob zu lösen. Denn das Problem liegt nicht direkt in der UpdateLEDs Funktion sondern in einer der durch diese Funktion aufgerufenen Funktionen. Das Problem ist das man ohne debugging nicht rausfindet welche...
Das debugging mußt du allerdings an deiner Kiste ausführen. Da kann ich dir nicht wirklich helfen..
Ach ja umzuprogrammieren muß man da nix Nur die Ursache finden warum nicht alle Daten korrekt ausgelesen werden....
Verfasst: Do 8. Jan 2004, 15:39
von Spike
Wahhh c++ hab ich seit der Berufsschule nicht mehr gemacht.
Geht fort!
Naja zOZo selbst wenn Daten falsch ausgelesen werden, muss das Programm doch darauf reagieren und darf net abkacken

Verfasst: Do 8. Jan 2004, 15:39
von Hunter
Es kackt ja auch nicht ab sondern bringt 'ne Fehlermeldung

Verfasst: Do 8. Jan 2004, 15:46
von Murphy
mist, da war einer schneller

Re: Programm ändern / neu schreiben
Verfasst: Do 8. Jan 2004, 16:02
von Spike
Äh ja genau ihr Plötze
Rochen hat geschrieben:
kann jemand ein programm ändern/ umschreiben so das es nichtmehr alle 5 min abkaggt ??
Es kackt MIT der Fehlermeldung ab. Das sollte trotzdem nicht sein

Verfasst: Do 8. Jan 2004, 16:12
von zOZo
um genau zu sein kackt es nicht ab sondern es beendet sich....
guckts du selber:
if ((1 != Configuring()) && (0 != UpdateLEDs()))
{
MessageBox(NULL, "Could not update LEDs!", "LEDMeter", MB_OK | MB_ICONERROR);
goto exit_par;
}
}
// If we've exited under normal circumstances, save settings.
SaveSettings();
// Close the port.
exit_par:
parClosePort();
free(pcFirstPort);
// Stop monitoring.
exit_meter:
if (1 == IsNT())
{
UnloadMeters();
}
else
{
UnloadCPUUsage();
UnloadMemUsage();
}
// Free the mutex. (This is actually done for us when the program exits,
// but it's good practice to clean up after yourself anyways.)
exit_mutex:
CloseHandle(hMutex);
return 0;
}
Verfasst: Do 8. Jan 2004, 16:18
von Murphy
"Abkacken" is halt eher ne Formulierung die der Anwender wählt, der Programmierer würde es wohl eher als "sauber beendet" bezeichnen

Verfasst: Do 8. Jan 2004, 16:19
von zOZo

@ murphy
und mal so ganz nebenbei. das prog is saumäßig gecodet....

Verfasst: Do 8. Jan 2004, 16:33
von Hunter
Was willste von Basic erwarten ?

Verfasst: Do 8. Jan 2004, 16:40
von zOZo
von basic erwarte ich gar nix...

weil das proggie in C gecodet ist

Verfasst: Do 8. Jan 2004, 16:43
von Spike
Murphy hat geschrieben:"Abkacken" is halt eher ne Formulierung die der Anwender wählt, der Programmierer würde es wohl eher als "sauber beendet" bezeichnen

Nene, "sauber beendet" wird der nur wenn er vorher noch SaveSettings(); aufruft.
Würde ich als Anwendungsentwickler mal sagen
Bei einem Error einfach ne Exception schmeissen und sich beenden ist nicht "sauber".
Verfasst: Do 8. Jan 2004, 16:48
von Murphy
zOZo hat geschrieben:
und mal so ganz nebenbei. das prog is saumäßig gecodet....

Naja so allein von der Optik her gibt's da bestimmt schlimmere Sachen, wobei man davon ausgehen kann das es bestimmt schlimmer aussehen würde wenn der source-code nicht public wäre. Was die Struktur angeht ist mir das zu unübersichtlich um ein Urteil abgeben zu wollen (wobei das ja auch schon ein entscheidendes Merkmal sein könnte

).
Mir viel nur spontan die Verwendung von "goto" auf, ich dachte das wär ein Relikt aus grauer Vorzeit

Verfasst: Do 8. Jan 2004, 16:54
von Spike
goto sollte man auch nicht mehr verwenden. Ich glaub das war das einzige was aus meiner C++ Zeit in Erinnerung geblieben ist

Darum dachte der Hunter wohl auch an Basic ...
Verfasst: Do 8. Jan 2004, 17:07
von zOZo
jup goto war das was ich meinte

lernt man schon in der 1. informatik vorlesung das man sowas nicht macht

umständlich is auch das hier : if ((1 != Configuring()) && (0 != UpdateLEDs()))
geht auch einfacher: if( !Configuring() && UpdateLEDs() )

Verfasst: Do 8. Jan 2004, 17:14
von Murphy
Och das mach ich aber auch oft gerne um besser/schneller zwischen " UpdateLEDs() " und " !UpdateLEDs() " unterscheiden zu können.
Verfasst: Do 8. Jan 2004, 17:18
von Spike
Man Vergleicht aber nicht WAHR mit WAHR, sondern man fragt nur ob es WAHR ist

Verfasst: Fr 9. Jan 2004, 15:15
von Duke
Ihr habt doch net mehr alle Latten auf dem Zaun...

Da liebe ich mir doch meine olle Basic Schleuder C64 Da gabs son kack net und Programmieren war auch einfach.... (Da konnte man fast die Programmierung vorlesen wie ein Buch

)
Schwierig wars wenn man das Teil aufrüsten wollte (Speedos, Multidos etc.) Den Kack Proz musste man immer rauslöten und nen Sockel reinspaxen... Das EEprom brennen war dann fix...
Hach in Vergangenheit schwelg....
Wollt Nur mal erwähnen das es wichtigere Dinge im Leben gibt *Tirili Flööt*
Verfasst: Fr 9. Jan 2004, 18:54
von zOZo
ich weiß gar nicht was du willst duke...
programmieren ist doch ehrlich gesagt einfacher geworden seit dem C64
und es gibt nicht wirklich viele wichtigere dinge...zumindest für mich nicht

Verfasst: Fr 9. Jan 2004, 19:30
von NerV.net
Hunter hat geschrieben:Interpreter arbeiten nur mit dem Quelltext...
Wenn man sich mal die Mühe macht und in Rochens Beitrag unten auf den Link zu der Software klickt sieht man im Downloadbereich auch den Sourcecode...

jo kk.. hab mir nicht die mühe gemacht.. bin faul
