Zum Inhalt springen

Filou

Mitglieder
  • Gesamte Inhalte

    1090
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Filou

  1. Ok, Du hast es wieder mal auf Anhieb erraten! Also es ist so. Ich verwende Office 2003 und da läuft Word als Prozess im Hintergrund wenn Outlook aktiv ist. Also wird der Prozess niemals wirklich beendet. Selbst wenn ich Outlook schließe, Word öffne und dann wieder beende läuft der prozess weiter im Hintergrund. Erst wenn ich den Prozess im Taskmanager abwürge läuft mein Programm dann weiter. Also tut mein Programm im Grunde das, was es soll... Nur Word nicht... Was ein Sch*** Was nun? Hast Du noche ine Idee?
  2. Ok *in die ecke stell und schäm* aber es geht immer noch nicht. da steht immernoch die selbe zahl in test. DWORD WINAPI test; HWND hWnd; CString csPfad = m_DBSettings.m_DefaultDocPath + "\\Vorlage\\"; //Struktur zum Öffnen mit ShellExecuteEx SHELLEXECUTEINFO lpExecInfo = {0}; lpExecInfo.hProcess = hWnd; lpExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS; lpExecInfo.cbSize = sizeof(SHELLEXECUTEINFO); lpExecInfo.lpDirectory = csPfad; lpExecInfo.lpFile = "scannen.dot"; lpExecInfo.nShow = SW_SHOWMAXIMIZED; ShellExecuteEx(&lpExecInfo); test = WaitForSingleObject(lpExecInfo.hProcess, INFINITE ); //Warten bis Word beendet ist. while (test != WAIT_OBJECT_0) { test = WaitForSingleObject(lpExecInfo.hProcess, INFINITE ); }
  3. Dankeschön!!! :e@sy Das öffnen klappt jetzt!! Allerdings seht in meinem hProcess immer das selbe drin. Egal ob ich Word schließe oder nicht. Der Inhalt ist immer 4294967295. Was sitmmt da nicht? ShellExecuteEx(&lpExecInfo); test = WaitForSingleObject(lpExecInfo.hProcess, 2000); //Warten bis Word beendet ist. while (test != WAIT_OBJECT_0) { test = WaitForSingleObject(lpExecInfo.hProcess, 2000); }
  4. Danke für die ausführliche erklärung. Aber ganz kapiert hab ichs noch nicht. Schau mal: SHELLEXECUTEINFO *lpExecInfo; //Dokumentenvorlage zum Scannen öffnen lpExecInfo->cbSize = sizeof(SHELLEXECUTEINFO); lpExecInfo->dwHotKey=0; lpExecInfo->fMask=0; lpExecInfo->hIcon=0; lpExecInfo->hInstApp=0; lpExecInfo->hkeyClass=0; lpExecInfo->hMonitor=0; lpExecInfo->hProcess=0; lpExecInfo->lpClass=0; lpExecInfo->lpIDList=0; lpExecInfo->lpParameters=0; lpExecInfo->lpVerb=0; lpExecInfo->hwnd = hWnd; lpExecInfo->lpDirectory = m_DBSettings.m_DefaultDocPath + "\\Vorlage\\"; lpExecInfo->lpFile = "scannen.dot"; lpExecInfo->nShow = SW_SHOWMAXIMIZED; ShellExecuteEx(lpExecInfo); So lässt es sich kompilieren, läuft aber neicht. Ich hatte Dein Post so vertanden: SHELLEXECUTEINFO *LPSHELLEXECUTEINFO; *LPSHELLEXECUTEINFO lpExecInfo; Aber das lässt sich nicht kompilieren. *seuftz* ICH HASSE POINTER!!!!
  5. Danke für den Tip! Aber ich verzweifle!!! ich bekomms einfach net hin! :beagolisc :( :( DWORD WINAPI test; HWND hWnd; //Dokumentenvorlage zum Scannen öffnen LPSHELLEXECUTEINFO lpExecInfo; lpExecInfo->hwnd = hWnd; lpExecInfo->lpDirectory = m_DBSettings.m_DefaultDocPath + "\\Vorlage\\"; lpExecInfo->lpFile = "scannen.dot"; lpExecInfo->nShow = SW_SHOWMAXIMIZED; ShellExecuteEx(lpExecInfo); test = WaitForSingleObject(lpExecInfo->hwnd, 10000); while (test != WAIT_ABANDONED) { test = WaitForSingleObject(lpExecInfo->hwnd, 10000); }
  6. Das funktioniert irgendwie nicht. Da geht nur die Eingabeaufforderung auf. Aber öffnet mein Dokument nicht. Wenn ich den selben Pfad in die Eingabeaufforderung schreibe dauerts nen Moment und dann geht es aber auf. Vielleicht könnt Ihr mir nochmal bei WaitForSingleObject helfen??
  7. 'System' : nichtdeklarierter Bezeichner Kann es auch nicht in der MSDN finden. Nur als C#. Bist Du Dir sicher dass es das gibt?
  8. Guten Morgen Leutz Ich habe es jetzt mit WaitForSingleObject versucht. Das Programm läuft, es bekommt nur noch nicht mit dass Word geschlossen wurde... Ich habs so gemacht: DWORD WINAPI test; HWND hWnd; //Dokumentenvorlage zum Scannen öffnen ShellExecute(hWnd,"open",m_DBSettings.m_DefaultDocPath + "\\Vorlage\\Scannen.dot",NULL,NULL,SW_SHOWNOACTIVATE); test = WaitForSingleObject(hWnd, 10000); while (test != 0x00000000L) { test = WaitForSingleObject(hWnd, 10000); } Es soll so lange warten bis Word beendet ist. Gruß, Filou
  9. Das mit den Handles hab ich nie ganz kapiert. :confused: Ich mache jetzt aber Feierabend. Melde mich morgen nochmal wenn ichs nicht hin bekomme. Danke Euch trotzdem!!!! Bye
  10. Das wäre toll!! Ob er gespeichert hat oder nicht weiß ich dan, wenn das Verzeichnis leer ist. Was für ein Handle muss ich in der Funktion angeben? Wie funktioniert das genau? Woher weiß ich welches Handle Word hat?
  11. Ja das wäre eine Möglichkeit! Super Idee! Wie macht man das? Also mit welcher Funktion sage ich dem Dialog er soll minimiert sein?
  12. Mit ShellExecute...
  13. Hi! Hab folgendes Problem: Mein Programm öffnet Micorsoft Word zum scannen von Dokumenten. Der Benutzer speichert diese in ein Verzeichnis. Dann soll mein Programm das Dokument aus dem Vezeichnis holen und weiter damit arbeiten. Nur woher weiß mein Programm, dass der User die Datei gespeichert und Word beendet hat? Ich wollte es mit einer MessageBox machen. Also dass man erst die MessageBox schließt bevor das Programm weiterläuft. Leider drängt sich die MessageBox vor Word. D.H. wenn man nicht in die Taskleiste schaut bekommt man gar nicht mit, dass Word aufgeganegen ist weil die MessageBox und mein Programm dann im Vordergrund ist. Gibts da nicht eine schönere Lösung wie man das machen könnte? Habt Ihr ne Idee wie man das lösen könnte? Gruß, Filou
  14. Super geil!! :bimei Klappt prima!!!! DANKE!!!!!!!!
  15. Wieso Empfielst Du mir das nicht? Ich hatte Dir doch mal mein Programm geschickt, erinnerst Du Dich? Der Anmededialog war das Hauptfenster und das für den Benutzer eigetliche Hauptfenster mit allen Infos wird vom Anmeldedialog Modal geöffnet. Wie funktioniert das mit dem PreTranslateMessage? Wie frage ich dann die Esc Taste ab?
  16. Guten Morgen!! Ja den Fokus hat ein Button. Und wenn man Esc drückt geht der Dialog zu. Davon abgesehen soll aber ein Steuerelement ausgeblendet werden, wenn man die Esc Taste drückt. PS: Bei meiner Button Klasse gibts ja nur BN_CLICKED und BN_DOUBLECLICKED. Keine Tastaturnachricht.... Und nun?
  17. Ja ich lese das schon. Aber verstehen tu ichs nicht. Ich kann nicht so super gut programmieren. Und es stört doch nicht wenn ichs da rein schreibe,oder? Wenn mir jemand helfen mag kann er's tun und wenn nicht kann mans ja überlesen... Ich habe mir einen Haltepunkt in der Funktion OnKeyDown gesetzt. Aber ich kann alle Tasten drücken und erreiche den Punkt nicht. Wieso??? Mache jetzt Feierabend. Noch einen schönen Abend. Bye
  18. Wie kann man denn die Esc Taste abfangen? Habe eine neue Funktion erstellt: Wie gehts jetzt wieter? Wie reagiert die Funktion speziell auf die Esc Taste?
  19. Na ich mache jetzt erstmal 2 gleiche Menüs mit unterschiedlichen Texten und jenachdem welchsle ich die einfach. Das andere hört sich nämlich so an, als würde der ganze Mittag dabei drauf gehen
  20. Hä? Verstehe leider nicht. Was ist ein Wrapper? Und wie benutze ich eine globale WinAPI-Funktion? PS: Mahlzeit!!
  21. Ok, kann was anfügen. Hier könnt Ihrs sehen....
  22. Ja ich habs auch gelesen. Mein Compiler lügt! Es ist kein CE. Ist eine MFC Dialoganwendung. ich habe nur: CMenu menu; menu.SetMenuContextHelpId(); menu.SetMenuItemBitmaps(); wenn man ein screenshot hochlanden könnte, könnte ichs beweisen....
  23. 'SetMenuItemInfo' : Ist kein Element von 'CMenu'
  24. ok... Dann brauche ich ein Objekt vom Typ CMenu. Wie weise ich dann der Klasse CMenue mein IDR_MENU1 zu? EDIT: Ok, habs gefunden... kann ich auch irgendwie den Text einen eintags im Menü ändern?
  25. Hallo! Ich weiß dass es hier schonmal eine Frage dazu gab. Habs auch gelesen, nur nicht kapiert. Vielleicht gehts auch einfache in meinem Fall. Also ich habe einen Dialog und in diesem unter eigenschaften ein Menü zugewiesen. Ist es möglich da alternativ zwischen 2 Menüs zu wechseln? Oder wenn dass nicht geht, kann ich in meinem einen Menü den Text ändern? Aber wie? Das Menü ist ja keine Klasse in der ich auf irgendwelche methoden zugreifen könnte. Wäre schön wenn mir jemand helfen könnte....

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...