collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 127
  • Punkt Versteckte: 1
  • Punkt Mitglieder: 2
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 14472
  • stats Beiträge insgesamt: 72212
  • stats Themen insgesamt: 9746
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Öffnen einer MFC anwendung mit Shell ?  (Gelesen 9740 mal)

Offline Stapi

  • Access-Meister
  • ***
  • Beiträge: 663
Öffnen einer MFC anwendung mit Shell ?
« am: August 23, 2011, 20:36:34 »
Hallo und guten Abend

Ich bin ein wenig verzweifelt und benötige mal wieder eure Hilfe, öffne über ein Buton im Formular eine Anwendung (Ersatzteildienst), folgenes Problem tritt auf:
Mache ich ein Doppelklick auf klicke die Ersatzeil.EXE unter Window öffnet sich die Anwendung ganz normal. ;D ;D

Mache ich das ganze aus Access mit VBA wie folgt Shell ("C:\Ersatzteil\Proramm\Ersatzteil.EXE",VbNormal") , nun öffnet sich das Programm aber die Startseite wird nicht richtig dargestellt und in der Menueleiste befindliche Befehle wie "Bearbeiten" wird dann so Dargestellt  "620Bearbeiten" .  ??? ??? Nun habe ich das ganze auch schon mit Shellexecute versucht, Modul mit der ensprechenden "API " Befehlszeile eingefügt usw. die Anzeige bleibt wie bei dem Shell Befehl. ??? ???

Die Ersatzteil.EXE ist eine MFC Anwendung muss ich das öffnen der EXE File  anders Behandeln?

Gruß Stefan
Grüße aus dem schönen NRW
Stefan
 

database

  • Gast
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #1 am: August 24, 2011, 18:06:36 »
Hallo,

hast du schon versucht das Fenster beim Starten deiner EXE zu maximieren?

Shell ("C:\Ersatzteil\Programm\Ersatzteil.EXE", 3)

Mir scheint dass da die Fenstergröße ein Problem macht.
 
Folgende Mitglieder bedankten sich: Stapi

Offline Stapi

  • Access-Meister
  • ***
  • Beiträge: 663
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #2 am: August 24, 2011, 20:20:37 »
Hallo Peter

Das Problem bleibt wie im ersten Beitrag beschrieben bestehen.  Was ich mir nicht erklären kann ist der Zustand das in der Menueleiste allen Befehlen eine Zahl vorraus geht. Wie "996Programm" , "620 Bearbeiten", usw sowie das Startfenster nicht richtig angezeigt wird.


Gruß Stefan
Grüße aus dem schönen NRW
Stefan
 

database

  • Gast
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #3 am: August 24, 2011, 20:35:14 »
Hallo Stefan,

die Zahlen sind in der Tat sehr seltsam.
Ich habe sowas noch nie beobachtet.

Tja da bin ich mit meinem spärlichen Latein am Ende...   ??? :'(
 

Offline Stapi

  • Access-Meister
  • ***
  • Beiträge: 663
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #4 am: August 24, 2011, 20:39:04 »
Hallo Peter

Gibt es vielleicht noch eine möglichkeit eine EXE File ausführen zu lassen, mit einer Batch ? oder ohne Shell ein anderen Befehl?

Gruß Stefan
Grüße aus dem schönen NRW
Stefan
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23813
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #5 am: August 24, 2011, 21:08:00 »
Hallo,

versuch mal, einen Windows-Link zu erstellen, der das Programm startet. Diesen Link wiederum rufst Du mit Shellexecute (oder vielleicht geht auch Followhyperlink) aus Access auf.

Vielleicht fehlt ja auch eine Runtime-Library von C++ oder Ähnliches.




database

  • Gast
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #6 am: August 24, 2011, 21:14:50 »
Hi,

die Idee mit dem Link ist auch nicht schlecht...  !!

Zitat
Vielleicht fehlt ja auch eine Runtime-Library von C++ oder Ähnliches
Oder es gab ein paar Warnings beim Kompilieren, die auf das Problem Schlüsse zulassen?
Generell fehlerhafte Kompilierung kannst du ausschließen?

...und dann noch... schau mal da den letzten Beitrag an:

http://forum.chip.de/basic/exe-dateien-starten-vb-224343.html

... möglicherweise hast du mit ShellExecute und diesen Aufrufmöglichkeiten schon expereimentiert... 
 

Offline Stapi

  • Access-Meister
  • ***
  • Beiträge: 663
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #7 am: August 24, 2011, 21:28:31 »
Hallo Franz hallo Peter

Zitat
Vielleicht fehlt ja auch eine Runtime-Library von C++ oder Ähnliches

Muss ich dafür einen Verweis setzen? oder verstehe das falsch

@Franz mit einem Link meinst du doch sicher eine Vernüpfung zum Dektop oder?

Habe soeben versucht das Programm per Batch zu öffnen bleibt die selbe Fehlerbeschreibung

Gruß Stefan
Grüße aus dem schönen NRW
Stefan
 

Offline daolix

  • Access-Profi
  • **
  • Beiträge: 363
  • Von nix nen Plan
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #8 am: August 24, 2011, 22:47:52 »
Bin mir jetzt nicht sicher, aber evtl mußt du vorher in das Verzeichnis der Ersatzteil.EXE wechseln.
Das mit den Zahlen ist schon etwas seltsam, irgendwie kann die so gestartete EXE eine Resource nicht richtig auslesen.

Zitat
Muss ich dafür einen Verweis setzen?
Nein
Zitat
oder verstehe das falsch
Ja, gemeint ist eine evtl. fehlende Bibliothek die die Exe benötigt, aber nicht findet. 
 
Folgende Mitglieder bedankten sich: Stapi

Offline Stapi

  • Access-Meister
  • ***
  • Beiträge: 663
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #9 am: August 26, 2011, 20:46:27 »
Hallo

Habe da glaube für mich als Laie im Bezug auf API Anwendungen ein Verständnis Problem, wenn ich doch per klick eine EXE File unter Window anspreche und sie ausführen lasse, muss das wenn ich es per VBA mit Shell oder Shellexecute (per API ) anspreche nicht das selbe Ergebnis heraus kommen? Wo bei ich mit API so gut wie keine Erfahrung habe, nur das genutzt habe was hier im Forum gezeigt bzw zur Verfügung stand.
Wenn es da Unterschiede gibt könnte es mir jemand so erklären, das ich für ein Anhaltspunkt bekomme wo und was ich an Informationen suchen muss, denn im Moment stehe voll auf dem Schlauch :-* :-*

@Peter du hast mir den Link gesendet, Danke dafür!!!!  Aber wie setze ich das für mich um?? ??? ???

Gruß Stefan
Grüße aus dem schönen NRW
Stefan
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23813
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #10 am: August 27, 2011, 11:04:06 »
Hallo,


die Anwendung findet wie gesagt sehr vermutlich eine nötige DLL  (Resourcen-Datei ---> daolix ) nicht. 

Was ist denn anstelle der Zahl zu sehen, wenn die Anwendung korrekt funktioniert?

Hast Du die "Link"-Lösung mal probiert?

Wenn ein Doppelklick auf die Datei erfolgt, finden mehr Aktionen statt, als ein einfaches Starten der Exe-Datei mittels API oder dergleichen.

Vielleicht ist auch die MFC-Anwendung nicht richtig installiert (z. B registriert) und läuft beim Doppelklick halt nur zufällig korrekt.

Offline Stapi

  • Access-Meister
  • ***
  • Beiträge: 663
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #11 am: August 27, 2011, 11:33:16 »
Guten Morgen Franz

Zitat
Was ist denn anstelle der Zahl zu sehen, wenn die Anwendung korrekt funktioniert?
Bei Normalen und richtigen Start ist dann die Zahlen in der Menueleiste nicht mehr vorhanden.
Richtig = Bearbeiten / Falsch = 620Bearbeiten

Zitat
Vielleicht ist auch die MFC-Anwendung nicht richtig installiert (z. B registriert) und läuft beim Doppelklick halt nur zufällig korrekt.
Das kann ich ausschließen da dieses auf mehren Rechner so geschieht, habe das zur Zeit auf drei Rechner laufen und alle haben das gleiche Problem.

Franz das mit der "Link"-Lösung habe ich nicht so ganz verstanden wie du das gemeint hast?
Wenn du gemeint hast ien Vernüpfung von der EXE File zu erstellen und die Aufzurufen, habe ich versucht bekome aber Fehlermeldungen "Datei nicht gefunden" , der Grund dafür liegt darin begründet das der Dateiname oder Pfad so dargestellt wird :D\Document and Settings\all User\ ..  Die Lehrzeichen im Pfadnamen führen zu dem Problem, habe es mit Unterstrich versucht ohne erfolg nun suche ich in meinen Büchern nach einen Lösungsansatz war aber noch nicht Erfolgreich.

Gruß Stefan
Grüße aus dem schönen NRW
Stefan
 

Offline daolix

  • Access-Profi
  • **
  • Beiträge: 363
  • Von nix nen Plan
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #12 am: August 27, 2011, 12:13:02 »
Hallo

Bei Leerzeichen im Path ist dieser in Quotas zu setzten
"C:\Document and Settings\all User\PathtzurExe\Deine.Exe"
Aber eine Verküpfung erstellt doch der Explorer eigentlich korrekt (rechtsklick auf die exe, --> verknüfung erstellen), also auch mit den Gänsefüssen.
 

Offline Stapi

  • Access-Meister
  • ***
  • Beiträge: 663
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #13 am: August 27, 2011, 12:33:00 »
Hallo Daolix

Bekomme auch mit "  " die Fehlermeldung >>> Datei nicht gefunden ???

Gruß Stefan
Grüße aus dem schönen NRW
Stefan
 

database

  • Gast
Re: Öffnen einer MFC anwendung mit Shell ?
« Antwort #14 am: August 27, 2011, 12:45:46 »
Hallo,

hat leider ein wenig gedauert - aber jetzt die Antwort auf deine Frage:
Zitat
@Peter du hast mir den Link gesendet, Danke dafür!!!!  Aber wie setze ich das für mich um?  

Den folgenden Code fügst ins Formular ein in dem du den Button zum Aufrufen stehen hast - einfach mal so zum Testen

Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) _
As Long

Private Const SW_SHOWNORMAL = 1

Private Sub DeinButton_Click()
    Call ShellExecute(Me.hwnd, "Open", "c:\test.exe", vbNullString, vbNullString, SW_SHOWNORMAL)
End Sub




p.s.
Zitat
Bekomme auch mit "  " die Fehlermeldung >>> Datei nicht gefunden
Na dann kopier halt die EXE-Datei mal testweise direkt ins Stammverzeichnis von C: dann Rechtsklick drauf und Verknüpfung erstellen, den Dateinamen der Verknüpfung kopierst du und fügst ihn an der Stelle (rot) ein:

Private Sub DeinButton_Click()
    Call ShellExecute(Me.hwnd, "Open", "c:\test.exe - Verknüpfung", vbNullString, vbNullString, SW_SHOWNORMAL)
End Sub

HTH
« Letzte Änderung: August 27, 2011, 12:52:03 von database »
 

 

Laufzeitfehler, Automatisierungfehler Access 2003 (Öffnen des IE)

Begonnen von matzekatzeBoard Access Programmierung

Antworten: 5
Aufrufe: 7221
Letzter Beitrag Oktober 21, 2010, 08:50:48
von Mendez
Suche Button und Serienbrief über Access öffnen / ablegen

Begonnen von Muhkuh86Board Access-Hilfe

Antworten: 18
Aufrufe: 14705
Letzter Beitrag Mai 12, 2010, 11:38:08
von Muhkuh86
Formular als zweite Instanz öffnen

Begonnen von PManBoard Formular

Antworten: 13
Aufrufe: 11367
Letzter Beitrag Mai 09, 2010, 17:19:15
von PMan
Formular öffnen und neuen Datensatz "vor-"ausfüllen

Begonnen von mradlmaierBoard Formular

Antworten: 2
Aufrufe: 4869
Letzter Beitrag Mai 12, 2010, 15:10:31
von mradlmaier
Benutzername und Passwortabfrage beim Öffnen jeder Datenbank

Begonnen von mradlmaierBoard Access-Hilfe

Antworten: 5
Aufrufe: 6981
Letzter Beitrag Mai 16, 2010, 13:44:16
von database

Advertisment / Werbung - Amazon Affiliate Links