Titelzeile eines anderen Programms abfragen [Erledigt]

Fragen rund um diverse Windows-Versionen, ihr Verhalten unter Xbase++ und den Umgang mit der API

Moderator: Moderatoren

Antworten
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Titelzeile eines anderen Programms abfragen [Erledigt]

Beitrag von Jan »

Kann ich aus einem Xbase++-Programm heraus abfragen, wie die Titelleiste eines anderen Programms lautet? Der andere Programmname wäre bekannt, ich müsste nur diese Info auslesen können.

Wenn das geht: Was passiert, wenn dieses andere Programm mehrfach geöffnet ist mit unterschiedlichen Titel-Informationen?

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von brandelh »

vor kurzem hat hier jemand nach der ProzessID gefragt und einen Code zur Abfrage aller Prozesse gepostet (er nahm den ersten, aber es geht auch anders ...) zur ProzessID muss man die EXE und den Fenstertitel abfragen können ...

Bei Pablo findest du ein WildFind... Programm, das ein Programm nach einem Teil des Fenstertitels findet, ob damit die EXE gelesen werden kann weiß ich nicht. Ich nutze FindWindowA() um ein bestimmtes Fenster zu schließen.
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Titelzeile eines anderen Programms abfragen

Beitrag von AUGE_OHR »

hi,
wie Hubert schon sagte kann man mit FindWindowA() das Handle eines Fenster ermitteln wenn man die Title hat.
Wenn das geht: Was passiert, wenn dieses andere Programm mehrfach geöffnet ist mit unterschiedlichen Titel-Informationen?
wenn die Title unterschiedlich sind sehe ich keine Probleme ... oder was meinst du damit ?

Frage : was willst du machen wenn du "das" Fenster gefunden hast ?
gruss by OHR
Jimmy
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Jan »

Jimmy,

anders herum wird ein Schuh daraus: Ich kenne den Namen der exe, und möchte gerne den Inhalt des Fenstertitels haben.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Titelzeile eines anderen Programms abfragen

Beitrag von AUGE_OHR »

Jan hat geschrieben:anders herum wird ein Schuh daraus: Ich kenne den Namen der exe, und möchte gerne den Inhalt des Fenstertitels haben.
ich habe mal eine Test mit Word und Acrobat gemacht.

wenn ich 2 verschiedene *.DOCX aufrufe habe ich trotzdem nur 1 x WinWord.EXE im Taskmanager stehen.
In diesem Fall würde es gar nichts nützen wenn man WinWord.EXE kennt.
wenn dein EXE sich ähnlich verhält wüsste ich nicht wie du die Instanze feststellen willst die zu dem Fenster gehört.

beim Acrobat Reader habe ich nun 2 x AcroRd32.exe im Taskmanager stehen. welches gehört jetzt zu welchem Fenster ?
gruss by OHR
Jimmy
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Jan »

Jimmy,

ich rede doch nicht von irgendwelchen Dokumenten-Titeln. Sondern dem Titel im Programmfenster.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Rolf
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 258
Registriert: Do, 27. Apr 2006 12:28
Wohnort: Görlitz

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Rolf »

Hallo Jan

sieh mal unter
http://www.xbaseforum.de/viewtopic.php? ... etTaskList
nach

Liebe Grüße
Rolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Titelzeile eines anderen Programms abfragen

Beitrag von AUGE_OHR »

Jan hat geschrieben:ich rede doch nicht von irgendwelchen Dokumenten-Titeln. Sondern dem Titel im Programmfenster.
Frage : "externe" Programmfenster ? solche die im Taskmanager auftauchen sollten ?
das sind die deren Handle man mit FindWindowA() ermitteln kann.

wenn du 2 DOCX Fenster ( mit Titeln ) hättest würde dir FindWindowA() nicht die Instanze von WinWord.EXE und damit den Titel / Handle des Fenster "nennen"
wenn du 2 PDF ( Acrobat Reader ) hättest würde dir FindWindowA() für die beiden AcroRd32.exe jeweils ein anderes Handle liefern womit du den Zugriff auf den Title bekommst
... was ja dann wohl kein Problem mehr sein sollte (oder ist das dein Problem ?).

sollte des sich nun um den Title eines externen Programm MDI Fenster handeln dann müsste man noch weiter in "dessen" Childlist suchen um das MDI Fenster / Title zu identifizieren.

unter http://www.dennisbabkin.com/software/ findet man das Tool "WinID" was mir Pablo empfohlen hat.

sollte das alles nicht dein Problem sein dann wäre ein wenig Code gut damit dein Problem deutlicher wird.
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Titelzeile eines anderen Programms abfragen

Beitrag von AUGE_OHR »

sollte das externe Programm von dir per Runshell aufgerufen werden gibt es noch von Pablo die TRunProcess*** Class.
damit könntest du einen RunShell ähnlichen Befehl besser "kontrollieren" und auf

Code: Alles auswählen

MEMBER LPSTR     lpTitle   DYNSZ cTitle
zugreifen was den Title des externen Programms enthalten sollte.

***
http://www.xbwin.com
TRunProcess
ot4xb.examples
27. September 2009
Pablo Botella
gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von brandelh »

Jan hat geschrieben:Jimmy,
ich rede doch nicht von irgendwelchen Dokumenten-Titeln. Sondern dem Titel im Programmfenster.
Jan
wir auch ;-)

hier findest du Pablos Beispiel wie man mit einem Teilbegriff des Fenstertitels ein Handle auf ein Fenster bekommt.
In der MSDN gibt es einige ENUM Funktionen, die z.B. auch die ProzessID ermitteln.
Mit diesen Handles bekommt man Zugriff auf die Prozesse/Fenster und vermutlich gibt es auch eine Funktion, die dann den Namen der EXE ausgibt.

Code: Alles auswählen

Subject 	WildFindWindow
From 	Pablo Botella
Date 	Tue, 17 Feb 2009 13:11:56 +0100
Newsgroups 	ot4xb.examples
Attachment(s) 	WildFindWindow.zip

Using the XppCbk.exe to provide a callback for EnumWindows()


function WildFindWindow_EnumProc( hWnd , pParam )
.....
if ( iif(n == 0,Empty(cStr), cStr $ c) )
    ... add the window info to the result array
...

Recent messages in this thread
 
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Jan »

Jimmy,

Du denkst wieder einmal viel zu kompliziert. Es gibt eine exe, deren Namen ich kenne. Und von genau der möchte ich den Inhalt der Titelzeile haben. Nicht mehr, nicht weniger.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Jan »

Hubert,

Danke für den Hinweis. Aber wie ich eben schon an Jimmy antwortete und wie ich auch schon früher geschrieben habe - der Name der exe ist klar. Den muß ich mir nicht suchen. Ich brauche nur die Titelleiste dieser bekannten exe.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von brandelh »

Hallo Jan,

du solltest lesen was man schreibt !

Ich kenne keine Funktion, die zu einer EXE den Titel des MAIN-Fensters liefert, andere wohl auch nicht ...
ABER es gibt die genannten Funktionen die die FensterID bzw. ProzessID liefern.
Diese Liste muß man dann durchsuchen nach dem Fenster, dass der gewünschten EXE entspricht und dann liest man den Namen des Fensters ...

PS: ich finde es auch umständlich, aber was soll man machen ...
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Jan »

So, ich habe mal alles, was Ihr geschrieben habt, insbesondere den Link von Rolf, und einiges, was ich im Internet dazu gefunden habe, in dieser Funktion zusammengefaßt.

Code: Alles auswählen

#define PROCESS_QUERY_INFORMATION (0x0400)
#define PROCESS_VM_READ (0x0010)

DllFunction EnumProcesses(@xPara1, xPara2, @xPara3) USING STDCALL FROM Psapi.dll
DllFunction EnumProcessModules(xPara1, @xPara2, xPara3, @xPara4) USING STDCALL FROM Psapi.dll
DllFunction GetModuleBaseNameA(xPara1, xPara2, @xPara3, xPara4) USING STDCALL FROM Psapi.dll
DllFunction OpenProcess(xPara1, xPara2, xPara3) USING STDCALL FROM Kernel32.dll
DllFunction CloseHandle(xPara1) USING STDCALL FROM Kernel32.dll
DllFunction GetWindowTextA(xPara1, @xPara2, xPara3) USING stdcall FROM user32.dll

FUNCTION getProcessList(lWin)

LOCAL aProcesses  := space(10240)
LOCAL aModules    := space(4*10)
LOCAL cbNeeded    := 0
LOCAL cbNeeded2   := 0
LOCAL cname       := space(64)
LOCAL nPid
LOCAL nProcHandle
LOCAL i,nMax
LOCAL nPidId
LOCAL xRet,aProcess:={}

EnumProcesses(@aProcesses, Len(aProcesses), @cbNeeded)
nMax := Len(Trim(aProcesses)) / 4
FOR i := 1 TO nMax
   nPid := Bin2U(SubStr(aProcesses, 1 + ((i - 1) * 4), 4))
   IF nPidId == NIL .OR. (nPIdId == nPid)
      nProcHandle := OpenProcess(PROCESS_QUERY_INFORMATION + PROCESS_VM_READ, 0, nPid)
      IF nProcHandle > 0
         cWindowname := SPACE(500)
         nReturn := getwindowtextA(nProcHandle, @cWindowName, LEN(cWindowName))
         IF EnumProcessModules(nProcHandle, @aModules, Len(aModules) / 4, @cbNeeded2) != 0
            cName := space(128)
            GetModuleBaseNameA(nProcHandle, Bin2U(SubStr(aModules, 1, 4)), @cName, Len(cName))
            cName := strtran(cName, Chr(0), "")
            CloseHandle(nProcHandle)
            cName := Upper(AllTrim(cName))
            cWindowName := AllTrim(SubStr(StrTran(cWindowName, Chr(0), ""), 1, 40))
            AAdd(aProcess, {cName, cWindowName})
         ENDIF
      ENDIF
   ENDIF
NEXT

RETURN aProcess
Dummerweise funktioniert das nicht. cWindowName bleibt immer leer. Wo ist da mein Denkfehler?

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Markus Walter
Programmier-Gott
Programmier-Gott
Beiträge: 1018
Registriert: Di, 24. Jan 2006 10:22
Wohnort: Saarland

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Markus Walter »

Hallo Jan,

ich bezweifele, dass Du mit dem Prozess-Handle die Funktion getwindowtextA benutzen kannst. Die erwartet ein Fenster-Handle. An die Fensterhandles kommt man mit EnumWindows. Wie man aber von Prozess- zu Fenster-Handle kommt, weiß ich nicht, aber darin dürfte das Problem liegen...
Gruß
Markus

Mitglied der XUG Saarland-Pfalz
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von brandelh »

Hallo Jan,

wenn du Pablos Funktion anschauen würderst, findest du dort die Abfrage vom Fenster nPID zum EXE Namen:

:GetModuleBaseNameA(...)

wenn man aber das WindowHandle hat, müsste es auch mit dieser funktion gehen:

Code: Alles auswählen

UINT WINAPI GetWindowModuleFileName(
  _In_   HWND hwnd,
  _Out_  LPTSTR lpszFileName,
  _In_   UINT cchFileNameMax
);
:arrow: http://msdn.microsoft.com/en-us/library ... 85%29.aspx
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Jan »

Hallo Markus,

schön Dich hier zu sehen!

OK, der Gedanke ist nachvollziehbar. Und ich habe gesehen, das Du hier im Forum schon mal was mit EnumWindows gepostet hast. Damit komme ich aber nicht klar, weil mindestens eine essentiell wichtige Funktion, die Du da aufrufst, nicht in Deinem geposteten Code mit drin ist.

Die Frage in diesem Fall wäre ja: Wie kann ich mir eine Liste aller Fenstertitel zusammenstellen? Das würde mir ja auch schon helfen. Da ich relativ genau weiß, was da drin steht, könnte ich auch diese Titelliste durchforsten nach dem, was ich suche. Den Programmnamen würde ich dann garnicht mehr gebrauchen. Ich war da anscheinend von einem falschen Ansatz ausgegangen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von brandelh »

Hallo Jan,

Was du brauchst ist die WildFindWindow.ZIP von Pablo weiter oben.
In seinem Beispiel gibt er auch den Namen der EXE aus, wobei bei seiner Funktion ein Teilbegriff des Fenstertitels genügt.
Die API funktion die ich noch genannt hatte liefert bei mir nur "" zurück :?

Pablos Code mag zwar nicht ganz einfach zu verstehen sein, aber zum Durchsuchen der Fenster muss man eine CallBack Funktion schreiben und das geht ohne Pablos Tools nicht.
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen

Beitrag von Jan »

Hubert,

OK, im zweiten Anlauf habe ich das geschnallt. Hab mir die zip gerade runtergeladen, die macht exakt das, was ich brauche.

Danke für Eure Hilfe.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen [Erledigt]

Beitrag von brandelh »

Falls du das Fenster schließen willst und in MSDN nach einer passenden Funktion suchst, fällt dir eventuell CloseWindow() auf, das schließt es aber nicht, sondern minimiert nur.
So schließt man ein Fenster (laufendes Programm):

Code: Alles auswählen

*--------------------------------------------------------------------------
function CloseRunningExe(cTitle)
   local nHWD, lOK := .f.
   nHWD := FindWindow(cTitle)
   if ! empty(nHWD)
      CloseWindow(nHWD)
      sleep(50)
      nHWD := FindWindow(cTitle)
      lOK  := empty(nHWD)
   endif
return lOK
*--------------------------------------------------------------------------
function FindWindow(cTitle)
   local nHWD := 0
   if ! empty(cTitle)
      nHWD := @User32:FindWindowA(0,cTitle)
   endif
return nHWD
*--------------------------------------------------------------------------
#define WM_SYSCOMMAND   0x0112
#define SC_CLOSE        0xF060
function CloseWindow(nHWD)
   @User32:SendMessageA(nHWD, WM_SYSCOMMAND, SC_CLOSE, 0)
return .t. // Erfolg prüfen ?
*--------------------------------------------------------------------------
function GetLastError() // Errorcodes: http://msdn.microsoft.com/en-us/library/windows/desktop/ms681381%28v=vs.85%29.aspx
return @Kernel32:GetLastError()
Gruß
Hubert
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14651
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen [Erledigt]

Beitrag von Jan »

Hubert,

will ich ja garnicht. Ich brauch einfach nur die Info aus der Titelzeile. Manipulieren will ich nichts.

Aber schon interessant, das MS in diesem Fall mit falschen Bezeichnungen spielt. Aber nein, die ist nicht falsch. Man muß die nur richtig interpretieren. Klar... wie konnte ich nur ...

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Titelzeile eines anderen Programms abfragen [Erledigt]

Beitrag von AUGE_OHR »

Jan hat geschrieben:Ich brauch einfach nur die Info aus der Titelzeile.
wenn du mit Pablo TRunProcess Class arbeiten würdest ( was IMHO die beste Kontrolle für CMD Aufrufe ist ) dann bekommst du den Title über die MEMBER cTitle.

Code: Alles auswählen

MEMBER LPSTR     lpTitle   DYNSZ cTitle
gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Titelzeile eines anderen Programms abfragen [Erledigt]

Beitrag von brandelh »

das setzt doch aber vorraus, das Jan mit
Jan hat geschrieben:Kann ich aus einem Xbase++-Programm heraus abfragen, wie die Titelleiste eines anderen Programms lautet? Der andere Programmname wäre bekannt, ich müsste nur diese Info auslesen können.
eine CMD Anwendung gestartet hat (dort könnte er seinen Titel auch selbst festlegen) ... vermutlich meint er aber ein anderes GUI Programm.
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Titelzeile eines anderen Programms abfragen [Erledigt]

Beitrag von AUGE_OHR »

brandelh hat geschrieben:eine CMD Anwendung gestartet hat (dort könnte er seinen Titel auch selbst festlegen) ... vermutlich meint er aber ein anderes GUI Programm.
ok ... aber die Structure gilt auch für andere API Aufrufe.

normal würde die MEMBER Var nur "o:Title" heissen und wäre mit CHR(0) terminiert.
zum "auslesen" muss man aus Xbase++ eine Variable vor-belegen , welche den gesamten String aufnehmen kann, und per Reference übergeben.

bei Pablo gibt es DYNSZ für den Type LPSTR welche eine dynamische Zuweisung mit ot4xb erlaubt und deshalb "o:cTitle" heisst
gruss by OHR
Jimmy
Antworten