Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Direct Drafting
  DDE-Verbindung

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo
Autor Thema:  DDE-Verbindung (1273 mal gelesen)
ILLIG
Mitglied
CAD-Betreuerin


Sehen Sie sich das Profil von ILLIG an!   Senden Sie eine Private Message an ILLIG  Schreiben Sie einen Gästebucheintrag für ILLIG

Beiträge: 18
Registriert: 17.09.2001

WinXP
ME10 10.50 old-ui
ME10-SAP-Integration
FACE 2000
SolidWorks 2008 SP5
Cideon SAP Integration für SWX 4.9.39
ProE Wildfire 3.0
.riess SAP-Integration
ELCAD 7.3
SAP CF für ELCAD

erstellt am: 17. Sep. 2001 15:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo ME10 User,

Wir setzen ME10 Version 10.5 in Verbindung mit dem HP-WorkManager ein.
Betriebssystem: WINDOWS NT / 2000 !

Die beiden obigen Programme tauschen Ihre Daten über die DDE Verbindung aus, was auch problemlos funktioniert. Startet man jedoch zusätzlich noch CorelDraw (Version 10), so wird diese DDE-Verbindung unterbrochen, und es können keine CAD Zeichnungen geladen bzw. gespeichert werden.

Der Rechner muß kpl. neu gestartet werden, damit der Datenaustausch zwischen ME10 und WorkManager wieder funktioniert. Der Neustart der einzelnen Anwendungen genügt nicht.

Wer kennt dieses Problem ebenfalls, bzw. weis eine Lösung ?

Gruß
Steffi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Juergen Schmidetzki
Mitglied
Administrator keytech-PLM


Sehen Sie sich das Profil von Juergen Schmidetzki an!   Senden Sie eine Private Message an Juergen Schmidetzki  Schreiben Sie einen Gästebucheintrag für Juergen Schmidetzki

Beiträge: 292
Registriert: 06.11.2000

erstellt am: 18. Sep. 2001 08:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Hallo und guten Morgen,

darf ich das Thema DDE / OLE noch mit einer Frage erweitern?

Ich haette gern Informationen ueber die DDE- bzw OLE- Befehle, die ME10 unterstuetzt. Mir schwebt so etwas wie eine Liste der moeglichen Befehle mit deren Syntax vor.

Kann mir jemand sagen, wo ich diese Infos erhalten kann?
In der ME10- Hilfe finde ich nichts hierzu.

Viele Gruesse

Juergen

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

karl-josef_wernet
Mitglied
SysAdmin CAD-ME


Sehen Sie sich das Profil von karl-josef_wernet an!   Senden Sie eine Private Message an karl-josef_wernet  Schreiben Sie einen Gästebucheintrag für karl-josef_wernet

Beiträge: 979
Registriert: 27.11.2000

PTC-Direct-Modeling/Drafting 19.0
Classic/Tablett
DELL T5820, Precision 7760
Workmanager/Model-/Drawing-Manager
WIN10

erstellt am: 18. Sep. 2001 20:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Hi Steffi,
das Problem mit CorelDraw ist schon laenger bekannt. Es existiert schon bei Version 5 von CorelDraw.
Seit 02. August 2001 existiert hierzu auch ein Enhancement Request
bei CoCreate.
Offensichtlich ist das Problem nicht so einfach zu loesen.
Wir haben uns somit beholfen, dass WM vor Nutzung von CorelDraw beendet wird, und nach der Nutzung kann man ihn wieder starten ohne
Probleme zu bekommen. Nur nicht gleichzeitig.

------------------
kjw

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mz
Mitglied
Software Development


Sehen Sie sich das Profil von mz an!   Senden Sie eine Private Message an mz  Schreiben Sie einen Gästebucheintrag für mz

Beiträge: 182
Registriert: 15.09.2000

erstellt am: 18. Sep. 2001 22:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Hi,

DDE:

das ist ein bekanntes Problem ... die Ursache ist ganz einfach :
DDE benutzt intern einen POST-Message API Call der ueber einen
Broadcast Parameter an alle Fenster schickt. Ist irgend ein Fenster
im System tod (egal aus welchem Grund) geht ddde nicht mehr ..
Die Loesung ist genauso einfach .. man muss nur den API Call in der
Server Application austauschen und mit einem Timeout Parameter versehen.
Dieses Problem tritt uebrigens bei allen Apps auf die DDE benutzen.

Um das Problem zu Fixes hab ich ein bischen C/c++ Code der muss aber als DLL in den Adressraum der Server Application geladen werden und
patched zur Laufzeit einen System call, auf jeden Fall gehen damit alle APPS !

OLE Befehle:

ich kenne zwar Me10 nicht aber sofern man einen Visual Compiler auf
diesem Computer Installiert gibt es ein Tool OLE/View. Damit mal nach
einer Lib suchen .. meistens findet man auch die zugehoerige TLB Datei und schon hat man zugriff auf alle OLE Befehle.

"wenn einige Kommentare nicht ganz verstaendlich waren evtl. man ein bischen OLE/COM Doku lesen"


CUSee you = Wir sehen uns
mz

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

ILLIG
Mitglied
CAD-Betreuerin


Sehen Sie sich das Profil von ILLIG an!   Senden Sie eine Private Message an ILLIG  Schreiben Sie einen Gästebucheintrag für ILLIG

Beiträge: 18
Registriert: 17.09.2001

WinXP
ME10 10.50 old-ui
ME10-SAP-Integration
FACE 2000
SolidWorks 2008 SP5
Cideon SAP Integration für SWX 4.9.39
ProE Wildfire 3.0
.riess SAP-Integration
ELCAD 7.3
SAP CF für ELCAD

erstellt am: 19. Sep. 2001 14:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Jürgen,

Betreff DDE-Befehle
ME10 Hilfe:

Im ME10 in der Befehlszeile einfach - help - eingeben, dann wird man nach dem zu erklärenden Wort gefragt. Jetzt einfach ' eingeben. Dann öffnet sich der Internet Explorer mit der ME10 Hilfe
( C:\ME10\locale\de\me_help\me_frame.htm?^ )

Dann auf D tippen dort sind alle DDE Befehle für ME10 beschrieben.

Im ME10 Handbuch steht nichts.
( file:///C:/ME10/ME10_Handbuch/me_books.htm#GERMAN )

*****************************************************************
Hallo mz,

könnten Sie mir Ihre Antwort für das DDE Problem vielleicht etwas genauer erklären?
Welche Datei müßte ich tauschen und mit einem Timeout Parameter versehen?

Viele Grüsse
Steffi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mz
Mitglied
Software Development


Sehen Sie sich das Profil von mz an!   Senden Sie eine Private Message an mz  Schreiben Sie einen Gästebucheintrag für mz

Beiträge: 182
Registriert: 15.09.2000

erstellt am: 19. Sep. 2001 15:34    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Hallo,

dabei geht es nicht um Tauschen der Dateien. Der Fehler ist in der Kernel32.dll und damit nicht einfach tauschbar. Aber wenn ein Prozess eine DLL laed macht er das ueber eine Sprungtabelle. Meine Loesung setzt genau dort an. Nachdem die DLL geladen ist biege ich den Eintrag fuer den DDE Call auf eine eigene Funktion um, welche dann den Timeout mit non timeout ersetzt.
In jeden Fall muss der Code in den Adressraum der Server/client Application eingebracht werden (z.b. ebenfalls durch eine DLL). Sofern man nicht von etwas Win32 API Code zurueckschreckt ist das ganz einfach.

code below :

CatchAPICall::CatchAPICall()
{
  funcPtr=NULL;
  funcRedirect=NULL;
}

/// target handler
int _timeoutForDdeConnect=5000;

#ifdef WIN32
LRESULT __stdcall MySendMessageA(HWND hwnd,UINT Msg,WPARAM wparam,LPARAM lparam)
{
  DWORD result=0;
  LRESULT flag;

  flag = SendMessageTimeoutA(hwnd,Msg,wparam,lparam,SMTO_ABORTIFHUNG|SMTO_NORMAL,_timeoutForDdeConnect,&result);

return (LRESULT)result;
}
LRESULT __stdcall MySendMessageW(HWND hwnd,UINT Msg,WPARAM wparam,LPARAM lparam)
{
  DWORD result=0;
  LRESULT flag;

  flag = SendMessageTimeoutW(hwnd,Msg,wparam,lparam,SMTO_ABORTIFHUNG|SMTO_NORMAL,_timeoutForDdeConnect,&result);

return (LRESULT)result;
}

#endif

// usage in code

catcherA.BgnCatch(SendMessageA,MySendMessageA);
catcherW.BgnCatch(SendMessageW,MySendMessageW);

// code in Catch Class

CatchAPICall::~CatchAPICall()
{
  EndCatch();
}

//Ersetzen der Funktion
void CatchAPICall::BgnCatch(void* orgFunc,void* newTarget)
{
#ifdef WIN32

  unsigned long read;

  funcPtr=orgFunc;
  funcRedirect=newTarget;

  ReadProcessMemory(GetCurrentProcess(),funcPtr,orgcode,6,&read);
  // jetzt den neuen Code schreiben ...
  char callcode[6];
  callcode[0]=(char)0xFF;
  callcode[1]=(char)0x25;
  long * helpPtr=(long*)(callcode+2);
  *helpPtr=(long)&funcRedirect;
  unsigned long written;
  WriteProcessMemory(GetCurrentProcess(),funcPtr,callcode,6,&written);

#endif
}

//Ersetzung aufheben
void CatchAPICall::EndCatch()
{
#ifdef WIN32

  unsigned long written;
  if (funcPtr)
  {
    WriteProcessMemory(GetCurrentProcess(),funcPtr,orgcode,6,&written);
    funcPtr=NULL;
  }

#endif
}

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Dittrich
Mitglied
SysAdmin


Sehen Sie sich das Profil von Dittrich an!   Senden Sie eine Private Message an Dittrich  Schreiben Sie einen Gästebucheintrag für Dittrich

Beiträge: 388
Registriert: 06.06.2000

Wenn es nicht geht, probier was anderes,
vielleicht geht es dann auch nicht.

erstellt am: 19. Sep. 2001 16:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Wo ist der Haken an deinem tun? DDE Probleme gibt es ja schon seit es DDE gibt. Wenn das die Lösung ist, warum macht es Microsoft nicht so? 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mz
Mitglied
Software Development


Sehen Sie sich das Profil von mz an!   Senden Sie eine Private Message an mz  Schreiben Sie einen Gästebucheintrag für mz

Beiträge: 182
Registriert: 15.09.2000

erstellt am: 19. Sep. 2001 19:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Hi,

in der MSDN steht ein Artikel das dies ein "Known Problem" ist, ich weiss nicht warum, aber wahrscheinlich weil man kompatible sein will.
Diese Aenderung wird z.b. Bei Applicationen die nicht Antworten nach einer Zeit T zurueckkeheren .. aber evtl. will man das ja gar nicht weil es dde seit Win3.0 gibt und eine Menge Anwendungen koennten sich auf genau dieses Verhalten verlassen

mz

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Juergen Schmidetzki
Mitglied
Administrator keytech-PLM


Sehen Sie sich das Profil von Juergen Schmidetzki an!   Senden Sie eine Private Message an Juergen Schmidetzki  Schreiben Sie einen Gästebucheintrag für Juergen Schmidetzki

Beiträge: 292
Registriert: 06.11.2000

PLM: keytech 13
CAD: Solidworks 2016
PADS

erstellt am: 21. Sep. 2001 07:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Hallo "ILLIG",

zuerst Dank fuer deine Antwort. Ich habe die Syntax der Befehler gefunden. Gibt es denn irgendwo auch Hilfe bei der Anwendung der Befehle, per Beispiel oder so? Waere toll.


Viele Gruesse

Juergen

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

steffi
Mitglied
Technische Zeichnerin


Sehen Sie sich das Profil von steffi an!   Senden Sie eine Private Message an steffi  Schreiben Sie einen Gästebucheintrag für steffi

Beiträge: 13
Registriert: 05.03.2001

erstellt am: 24. Sep. 2001 21:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ILLIG 10 Unities + Antwort hilfreich

Hallo Jürgen,

im Downloadbereich von www.me10.de findest Du ein Beispiel für
ME10 + Excel:

DDE - (08-1998) V1.0
DDE-Programmierung am Beispiel von Excel. (7KB)

************************************************************

und unter Infos/News

"Literatur 2: DDE (07/97)

Wer sich mit der DDE-Programmierung (Dynamic Data Exchange) unter Windows beschäftigt, hat ein Problem, da in den Handbüchern von HP/CoCreate das Thema DDE nicht behandelt wird. Aber es gibt Literatur zu diesem Thema: 'Datentransfer zwischen zwei Applikationen' heißt ein Artikel im Engineering-Report Heft 1/95. Wer's genauer will greift zum 'Workshop HP PE/ME10 für Windows und DDE' von ACADIS in Wiesbaden (siehe Linkliste!). 250 Mark kosten die 72 A4-Seiten inkl. Diskette"

***************************************************************

Hallo mz,

vielen Dank für Deine ausfühliche Beschreibung, aber ich glaube nicht, dass unsere EDV-Abteilung erlauben wird die Kernel32.dll oder andere dll's zu verändern.

Gruß
Steffi / ILLIG

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz