![]() |
RegExp (vbscript.dll) in einem c-programm?
wie kann ich aus einem c-programm (hab keine ahnung von c++) die funktion regexp.execute benutzen?
(ev. ueber eine dll (c++) mit 'normalen' export-funktionen - aber wie schaut sowas aus? :confused: ) |
siehst ich hab 0 ahnung von vb aba von c/c++ also tät ich gern wissn was regexp.execute bewirkt und woher du diese funktion nimmst (standard in vb oda externes lib)
|
http://msdn.microsoft.com/library/de...sobjRegExp.asp
mit so einem regexp-objekt lassen sich sehr einfach (und hoffentlich fuer ms einheitlich) regulaere ausdruecke auswerten. im 'OLE/COM Objekt Viewer' (Objektkatalog aus VC++ 6.0) hab ich das ding unter 'Type Libraries - Microsoft VBScript Regular Expressions (Ver 1.0)' gefunden. regexp wird (als com-objekt?) aus vbscript.dll\2 (zumindest beim internetexplorer 5.0 - hab aber auch schon von versionen dieser dll gehoert, in denen regexp in vbscript.dll\3 existiert) zur verfuegung gestellt und kann in vb mittels 'projekt - verweise...' hinzugefuegt werden. schaut dort z.b. so aus: Function RegExpTest _ ( _ szPattern As String, _ szString As String, _ fCase As Boolean, _ fFound As Boolean _ ) Dim regEx As RegExp Dim Match As Match Dim Matches As MatchCollection Dim RetStr As String fFound = False Set regEx = New RegExp ' Create a regular expression. regEx.Pattern = szPattern ' Set pattern. regEx.IgnoreCase = fCase ' Set case insensitivity. regEx.Global = True ' Set global applicability. Set Matches = regEx.Execute(szString) ' Execute search. For Each Match In Matches ' Iterate Matches collection. RetStr = RetStr & "Match found at position " RetStr = RetStr & Match.FirstIndex & ". Match Value is '" RetStr = RetStr & Match.Value & "'." & vbCrLf fFound = True Next RegExpTest = RetStr End Function nachdem da aber keine 'normalen' exports zur verfuegung stehen, weiss ich nicht, wie ich aus 'normalem' C auf das zeug zugreiffen kann. (und mangels C++ kenntnissen auch nicht, wie ich eine schnittstellen-dll programmiere) |
schau i fang ziemlich wenig mit vc++,vb und dem ganzen m$-dreck an i programmier in da dos-konsole und a bissal unter linux und hab keine ahnung was du wirklich willst
|
ajo noch ne frage, warum willst überhaupt 2 programmiersprachen miteinander verbinden :confused: und zwischen vc++ und c++ liegen welten, da is cobol mit asm noch besser vergleichbar *gg*
|
zuerst: danke, dass du dir ueberhaupt gedanken gemacht hast.
die idee ist die, dass ich bestehende funktionalitaet (regulaere ausdruecke) aus einer offiziellen DLL weiterbenutze. (mit welchem programm (in diesem fall dem ms-explorer bzw. scripting host) diese dll auf's system kommt is mir hier wurscht - solange der mist ueberall installiert ist (und auch fuer eigene entwicklungen freigegeben ist)) ich will da auch nicht unbedingt mehrere prog-sprachen verbinden - sondern nur irgendwie auf diese com-dll (bzw. deren funktionen) zugreifen - und das schaff ich scheinbar mit 'normalem' C nicht :heul: (deshalb die idee, halt eine schnittstelle (am besten dann gleich eine eigene DLL - falls das in einem anderen programm auch von nutzen sein koennte) fuer den zugriff aus C zu schreiben) ich glaub nicht, dass da wirklich der mfc-schrott usw. notwendig ist. (LoadLibrary, GetProcAdress, (*pfn)(), FreeLibrary) |
oder kennt wer eine andere moeglichkeit unter m$ einen beliebigen text mit einem beliebigen regulaeren ausdruck innerhalb eines C-programmes zu pruefen (ersetzungen brauch ich im moment (noch) nicht)
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 02:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag