Alle Beiträge von Klotzkopp
-
Matheproblem
Woher nimmst du die 10? Du brauchst nur auf beiden Seiten "10 hoch" zu rechnen: (x+1) / (x-1) = 10 Der Rest ist trivial.
-
SDK für MS-Outlook
Mit hoher Wahrscheinlichkeit nicht, zumindest nicht von MS. Zwar werden einige Teile der MSDN Library übersetzt, aber bei weitem nicht alle. Zudem sind die Übersetzungen AFAIK nur über eine Subscription erhältlich, nicht online.
-
Matheproblem
Äh, ln( 6^2x ) ist 2x * ln 6 nicht 6 * ln( 2x ). @timmi: Warum sollte man irgendeine Basis bevorzugen? Oder meinst du log (Basis 10), weil man das leichter abschätzen kann?
-
Matheproblem
Nein, um von ln x auf x zu kommen, musst du den Ausdruck als Exponenten von e einsetzen: e hoch - ganzLangeZahl = x
-
SDK für MS-Outlook
http://msdn.microsoft.com/library/en-us/modcore/html/deovrObjectModelGuide.asp
-
Matheproblem
@Felicie: Du kannst nicht einfach hoch durch log ersetzen. Vielleicht hilft das weiter: log( a hoch b ) = b * log a log( a * b ) = log a + log b
-
CheckMenuRadioItem
== bindet stärker als &&, also wird MF_UNCHECKED == MF_UNCHECKED ausgewertet. Außerdem macht der logische und-Operator keinen Sinn, der bitweise Operator wäre der richtige. Drittens ist MF_UNCHECKED gleich Null, d.h. auch mit Klammern und & statt && ist dieser Ausdruck immer wahr. Das logische oder macht gar keinen Sinn. Dieser Ausdruck ist wahr, wenn GetMenuState einen von Null verschiedenen Wert zurückgibt. Aber im Thread, auf den Guybrush Threepwood verlinkt hat, habe ich das alles eigentlich schonmal erklärt.
-
CheckMenuRadioItem
Eigentlich sollten Radiobuttons die gleichen State-Werte benutzen. Hast du versucht, die relevanten Daten aus dem Rückgabewert rauszufiltern, anstatt einfach zu vergleichen?
-
aus einem excel fenster werden vier ?
Unterscheiden sich die Styles überhaupt? Unterscheiden sich die Rückgabewerte von GetParent?
-
aus einem excel fenster werden vier ?
LONG GetWindowLong( HWND hWnd, int nIndex ); Für nIndex setzt du GWL_STYLE ein.
-
aus einem excel fenster werden vier ?
Du könntest die Fenster-Styles vergleichen. Vermutlich hat nur ein Fenster den WS_CHILD-Style nicht, das wäre dann das Hauptfenster. Alternativ könntest du Excel auch über die Automatisierungsschnittstelle starten.
-
textdatei zeilenweise auslesen und in andere textdatei schreiben
Wenn du Hilfe möchtest, solltest du schon eine konkrete Frage stellen. Womit hast du denn Probleme? - Öffnen der Dateien - Lesen - Verarbeiten - Schreiben? Eine Komplettlösung wirst du hier nicht bekommen.
-
Wie sage ich CreateProcess auf welchem Screen es aufgehen soll?
Hab ich doch geschrieben: Setze lpDesktop auf einen dieser Strings, z.B.: StartInfo.lpDesktop = "SAWinSta"; Einfach mal durchprobieren
-
Wie sage ich CreateProcess auf welchem Screen es aufgehen soll?
Kann sein, dass du gar nichts dran ändern kannst. Die Einstellungen mit STARTF_USEPOSITION wirken sich nur dann aus, wenn die betreffende Anwendung ihr erstes Overlapped-Fenster mit CW_USEDEFAULT als Koordinatenwerten erstellt. Tut sie das nicht, bewirken dwX und dwY nichts. Wie sieht denn das Applikationsfenster nach dem Start aus? Maximiert? Hast du EnumDesktops mal ausprobiert? Wenn alles nichts hilft, könntest du dir nach dem Start das Fensterhandle holen und das Fenster verschieben.
-
Wie sage ich CreateProcess auf welchem Screen es aufgehen soll?
Ich glaube nicht, dass das allein über die Koordinaten funktioniert. STARTUPINFO hat ein Member lpDesktop, da musst du den Namen des Desktops angeben. An die Desktopnamen kommst du mit EnumDesktops.
-
Wie sage ich CreateProcess auf welchem Screen es aufgehen soll?
Über den vorletzten Parameter von CreateProcess, das ist ein Zeiger auf eine STARTUPINFO-Struktur: http://msdn.microsoft.com/library/en-us/dllproc/base/startupinfo_str.asp
-
debug -> release problem
Die meisten Probleme bei Release-Builds resultieren aus uninitialisiertem Speicher (z.B. für Strukturen) oder, wie Guybrush Threepwood schon schrieb, aus Array-Überläufen, die bei Debug-Builds durch die verwendeten Begrenzungsmarkierungen nicht sofort spürbar sind (aber eigentlich beim Debuggen eine Meldung erzeugen sollten). Welche Funktion liefert denn den Fehler?
-
SetWindowsHookEx
Was gibt ProcAdd zurück?
-
Sleep unter C#
In C# hat die Klasse System.Threading.Thread zwei statische Sleep-Methoden. Also z.B. System.Threading.Thread.Sleep( 500 );
-
Inhalt des Clipboard??? [MFC, c++ 6.0]
Die MFC beinhalten AFAIK keine Clipboard-Unterstützung. Hier steht alles: http://msdn.microsoft.com/library/en-us/winui/winui/windowsuserinterface/dataexchange/clipboard.asp
-
Visual C++ Befehle
Drum: Dahin verschoben, wo es hingehört.
-
SHFileOperation
Laut MSDN können pTo und pFrom mehrere nullterminierte Namen enthalten. Das Ende muss daher mit zwei Nullzeichen markiert werden. Mit strcpy geht das grundsätzlich nicht, weil es beim ersten Nullzeichen aufhört zu kopieren. Hier sollte es aber ausreichen, wenn du dein Array mit Nullen initialisierst: char test[100] = {0}; Das hier: Op.pTo="c:\\test2.bmp"; müsste eigentlich so aussehen: Op.pTo="c:\\test2.bmp\0";
-
*.evt mit hilfe von c++ leeren
Du kannst ein EventLog mit der Funktion ClearEventLog löschen. Das dafür benötigte Handle bekommst du von OpenEventLog. Du musst dein Programm mit Advapi32.lib linken, damit du die Funktionen nutzen kannst. P.S.: --> Verschoben nach: C++: Compiler, IDEs, APIs
-
präprozessor anweisungen
#define bewirkt ähnlich wie #include eine Textersetzung, allerdings nicht an der Stelle, an der die Präprozessordirektive selbst steht, sondern an jeder Stelle im folgenden Code, an der das definierte Symbol gefunden wird. Beispiel #define COMPILETIMECONSTANT 25 // ... viel später if( q == COMPILETIMECONSTANT ) { Hier wird, bevor der Compiler den Quellcode überhaupt zu Gesicht bekommt, der Text COMPILETIMECONSTANT durch 25 ersetzt. Man kann bei #defines auch noch Parameter angeben, das sieht dann aus wie das Makro hier. Die Direktiven #if #elif #else #endif bieten die Möglichkeit der bedingten Kompilierung. Der Ausdruck nach #if wird geprüft, und falls er logisch wahr (also von Null verschieden) ist, wird der nachfolgende Codeblock in die Kompilierung einbezogen, ansonsten nicht. Mit #elif kann man eine weitere Bedingung prüfen, mit #else die "restlichen" Fälle abdecken. #endif schließt einen solchen bedingten Kompilierungsblock ab. #ifdef SYMBOL ist eine Kurzschreibweise für #if defined SYMBOL, und ist wahr, wenn irgendwo vorher im Code ein #define SYMBOL stand. #ifndef SYMBOL ist kurz für if !defined SYMBOL, hier ist es genau andersrum. Eine häufige Anwendung für diese Direktiven sind die sogenannten #include-Guards. Es kann kommt schon mal vor, dass Headerdateien andere Headerdateien per #include einbinden müssen. Um nun zu verhindern, dass derselbe Header-code mehrfach eingebunden wird (was bei gegenseitigen #includes zu Endlosschleifen führen kann), verwendet man für jede Headerdatei ein eindeutiges Symbol. Falls dieses Symbol am Anfang der Headerdatei noch nicht definiert ist, wird es definiert, und der Code der Datei normal behandelt. Falls es bereits definiert ist, wird der gesamte Code bis zum abschließenden #endif ignoriert: #ifndef MY_HEADER_FILE_INCLUDED #define MY_HEADER_FILE_INCLUDED // ... viele Deklarationen #endif Die durchgängige Großschreibung der definierten Symbole ist nicht zwingend, sondern nur üblich, um sie besser erkennen zu können. Man darf übrigens keine Symbole selbst definieren, die mit einem Unterstrich beginnen oder zwei Unterstriche hintereinander enthalten. Solche Namen sind für die interne Nutzung durch den Compiler reserviert.
-
CD - Laufwerksinfo
Du kannst über die Nachricht WM_DEVICECHANGE mitbekommen, wenn sich der Zustand des Laufwerks ändert (wahrscheinlich aber nur, wenn ein lesbarer Datenträger drin liegt). Das schließt aber keine Änderungen ein, die passiert sind, bevor dein Programm gestartet wurde, d.h. du kannst damit nicht herausfinden, ob das CD-Laufwerk leer oder offen ist.