English
Opportunities and suggestions

Proposals for future versions

 

H.Brill
I had me the now so virtual, that I The .ph
first write and then with $H einlese :
CompileMarkSeparation
 $I MemoryModule.inc
Declare Handle hResInfo, hModule, Grid, gView
Declare Memory FN, LV
Declare Int anz, String Func, spalte
Declare pfunc&
Window 600, 450
Grid = @Create("Gridbox", %HWnd, "Nr;0;50;Adresse;0;100;Funktionsname;0;200", 0, 80, 10, 400, 200)
ShowWindow(Grid, 0)
hResInfo = Res("Info", %HInstance, 10, "listview", 0)

IF hResInfo > 0

    Dim LV, Res("size", %HInstance, hResInfo)
    LV = Res("Get", %HInstance, hResInfo)
    hModule = LoadLibraryM(LV)

EndIf

hResInfo = Res("Info", %HInstance, 10, "FUNKTIONEN", 0)

IF hResInfo > 0

    Dim FN, Res("size", %HInstance, hResInfo)
    FN = Res("Get", %HInstance, hResInfo)
    anz = Move("MemToList", FN, Chr$(13)+ chr$(10))
    Assign #1, $ProgDir + "INCLUDE\Listview.ph"
    Rewrite #1

    WHILELOOP 0, anz - 1

        Func = GetString$(0, &LOOP)
        'IMPORTFUNC(hModule, Func, "")  ' Geht hier nicht
        pFunc& = GetProcAddressM(hModule, Func)
        AddString(Grid, Str$(&LOOP) + "|" + Str$(pFunc&) + "|" + Func)
        Print #1, Func; "( = CALL(";Str$(pFunc&);",;"

    ENDWHILE

    Close #1

ENDIF

Print "Fertig..."
Waitkey
 $H Listview.ph
ShowWindow(Grid, 1)
' Listview erstellen
gView = ~CreateListview(%HWnd, %HInstance, 0, $ffffff, -1, $31)
spalte = "1.Spalte"
~IColumn(gView, spalte, 120, 0)
spalte = "2. Spalte"
~IColumn(gView, spalte, 240, 0)
~ShowListview(gView, 10, 250, 400, 100)
Waitkey
FreeLibraryM(hModule)
End

but somehow is there yet the worm drin.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
10/14/14  
 




H.Brill
I had me the now so virtual, that I The .ph
first write and then with $H einlese :
CompileMarkSeparation
 $I MemoryModule.inc
Declare Handle hResInfo, hModule, Grid, gView
Declare Memory FN, LV
Declare Int anz, String Func, spalte
Declare pfunc&
Window 600, 450
Grid = @Create("Gridbox", %HWnd, "Nr;0;50;Adresse;0;100;Funktionsname;0;200", 0, 80, 10, 400, 200)
ShowWindow(Grid, 0)
hResInfo = Res("Info", %HInstance, 10, "listview", 0)

IF hResInfo > 0

    Dim LV, Res("size", %HInstance, hResInfo)
    LV = Res("Get", %HInstance, hResInfo)
    hModule = LoadLibraryM(LV)

EndIf

hResInfo = Res("Info", %HInstance, 10, "FUNKTIONEN", 0)

IF hResInfo > 0

    Dim FN, Res("size", %HInstance, hResInfo)
    FN = Res("Get", %HInstance, hResInfo)
    anz = Move("MemToList", FN, Chr$(13)+ chr$(10))
    Assign #1, $ProgDir + "INCLUDE\Listview.ph"
    Rewrite #1

    WHILELOOP 0, anz - 1

        Func = GetString$(0, &LOOP)
        'IMPORTFUNC(hModule, Func, "")  ' Geht hier nicht
        pFunc& = GetProcAddressM(hModule, Func)
        AddString(Grid, Str$(&LOOP) + "|" + Str$(pFunc&) + "|" + Func)
        Print #1, Func; "( = CALL(";Str$(pFunc&);",;"

    ENDWHILE

    Close #1

ENDIF

Print "Fertig..."
Waitkey
 $H Listview.ph
ShowWindow(Grid, 1)
' Listview erstellen
gView = ~CreateListview(%HWnd, %HInstance, 0, $ffffff, -1, $31)
spalte = "1.Spalte"
~IColumn(gView, spalte, 120, 0)
spalte = "2. Spalte"
~IColumn(gView, spalte, 240, 0)
~ShowListview(gView, 10, 250, 400, 100)
Waitkey
FreeLibraryM(hModule)
./../../Function-References/XProfan/end/'>End

but somehow is there yet the worm drin.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
10/14/14  
 




Georg
Teles
the understand I do not integrally, The functions having Yes different amount of Parameters & The must Yes berücksichtigt go
 
XProfan X2
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

10/14/14  
 



Georg Teles (14.10.14)
Well, its already irritating 117 To write


can Yes by PH a call(proc117,"test") simply one
foo("test") make.
 
10/14/14  
 




Georg
Teles
Well, its already irritating 117 To write but hereafter can The PCU over ands over again using and the DLL becomes in the Programmcode included I my, then standing end The bloße .EXE

...but Proc can too so let (depending on wieviele Parameter stand)
CompileMarkSeparation
Proc _funktion1

    Parameters p1&,p2&,p3&
    call(_funktion1,p1&,p2&,p3&)

EndPr

I schreib The time in PCU mere if I soon Langeweile Have xD
 
XProfan X2
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

10/14/14  
 



 
- Page 5 -


Hm, helps you vlt.:
CompileMarkSeparation
becomes:
CompileMarkSeparation
//einmalig To programmstart:
__cf45&=__cf3("TEST")
//later only yet
PRINT call(__cf45&)

and __cf3 übersetze I with:
CompileMarkSeparation
proc __cf3

    parameters fName$
    casenot __cfObj&:__cfInit
    casenot long((long(__cfObj&,0)+120),4) : return 0
    case (long(long(__cfObj&,4)+long((long(__cfObj&,0)+120),0),24)=0) or (long(long(__cfObj&,4)+long((long(__cfObj&,0)+120),0),20)=0) : return 0
    var addr&=-1
    var fNam&=long(__cfObj&,4)+long(long(__cfObj&,4)+long((long(__cfObj&,0)+120),0),32)
    var fOffs&=long(__cfObj&,4)+long(long(__cfObj&,4)+long((long(__cfObj&,0)+120),0),36)

    whileLoop long(long(__cfObj&,4)+long((long(__cfObj&,0)+120),0),24)

        if string $(long(__cfObj&,4)+long(fNam&,0),0)=fName$

            addr&=word(fOffs&,0)
            break

        endif

        inc fNam&,4
        inc fOffs&,2

    wend

    case (addr&=-1) or (addr& > long(long(__cfObj&,4)+long((long(__cfObj&,0)+120),0),20)) : return 0
    return long(__cfObj&,4)+long(long(__cfObj&,4)+long(long(__cfObj&,4)+long((long(__cfObj&,0)+120),0),28)+(addr&*4),0)

endproc


and __cfObj& is the MemoryModule-lever.

so can itself still The Funktionsadresse of/ one function a
MemoryModule relating and the remainder would then ph-supplant and inc.
 
10/14/14  
 




H.Brill
means, with the whom .ph -Files look I me at times.
what I meant :
If I a DLL on disk with ImportDLL()
import, need I no .ph or .inc Files More.
there need I otherwise nothing To make.
since it these function in XProfan gives, need so did i
Franks Listview_Funktionen.inc not any more.

therefore I thought, ImportFunc() in a Loop walk To
let, around the functions static To left. The Adressen
and Funktionsnamen have I Yes.
the shining but go ahead weg, if The DLL physical
on disk is.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
10/14/14  
 



In XPSE make I the so, I once To programmstart The
Funktionsadressen in simple HANDLE save and then directly
hereon one Call make.

the böte itself still too for you on.

means once one

dieFunktion=getprocaddr(...,


and

dieAndereFunktion=getprocaddr(...,


and then only yet

call(dieFunktion,...


and

call(dieAndereFunktion,...


the You can then too again verfeinern dank the

Header-Files (ph's)


because then could You even from

call(dieFunktion,...


one direktes

dieFunktion(


make since the Header-Files Yes complete Textblöcke supplant can.

means ne PH and ne INC and then dürftest You still very the having or
I Have not kappiert what erwünscht is.
 
10/14/14  
 




H.Brill
thanks, but very the wished I me save.
with a couple functions does it Yes yet lovely,
but with whom 117 functions list view.dll
The whole Procs write....

therefore would me one direktes left the functions
rather been.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
10/14/14  
 




Georg
Teles
means Yes You can already with Modulen works, bind still The DLL simply as PCU in your Program with one, You müsstest but any functions correctly reinschreiben, think this is The better Solution ersteinmal.

have something like with SKControl.dll time made had, look time here Download
Regards

582 kB
Hochgeladen:10/14/14
Downloadcounter59
Download
 
XProfan X2
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

10/14/14  
 




H.Brill
with the Resources in X3 is Yes a swell thing.
I have now times the List view.dll of Frank eingebunden.
About ImportDLL() have I me The functions with (*)
into Listboxliste written and as File stored
and these too eingebunden. now would like I with the
Include MemoryModule.inc works.
the works too so far.
CompileMarkSeparation
 $I MemoryModule.inc
Declare Handle hResInfo, hModule, Grid, gView
Declare Memory FN, LV
Declare Int anz, String Func, spalte
Declare pfunc&
Window 600, 450
Grid = @Create("Gridbox", %HWnd, "Nr;0;50;Adresse;0;100;Funktionsname;0;200", 0, 80, 10, 400, 200)
ShowWindow(Grid, 0)
hResInfo = Res("Info", %HInstance, 10, "listview", 0)

IF hResInfo > 0

    Dim LV, Res("size", %HInstance, hResInfo)
    LV = Res("Get", %HInstance, hResInfo)
    hModule = LoadLibraryM(LV)

EndIf

hResInfo = Res("Info", %HInstance, 10, "FUNKTIONEN", 0)

IF hResInfo > 0

    Dim FN, Res("size", %HInstance, hResInfo)
    FN = Res("Get", %HInstance, hResInfo)
    anz = Move("MemToList", FN, Chr$(13)+ chr$(10))

    WHILELOOP 0, anz - 1

        Func = GetString$(0, &LOOP)
        'IMPORTFUNC(hModule, Func, "")  ' Geht hier nicht
        pFunc& = GetProcAddressM(hModule, Func)
        AddString(Grid, Str$(&LOOP) + "|" + Str$(pFunc&) + "|" + Func)

    ENDWHILE

ENDIF

Print
Print "Fertig..."
Waitkey
ShowWindow(Grid, 1)
' Listview erstellen
pfunc& = Val(GetText$(Grid, 13, 1))
gView = Call(pfunc&, %HWnd, %HInstance, 0, $ffffff, -1, $31)
spalte = "1.Spalte"
pfunc& = Val(GetText$(Grid, 69, 1))
Call(pfunc&, gView, spalte, 120, 0)
spalte = "2. Spalte"
Call(pfunc&, gView, spalte, 240, 0)
pfunc& = Val(GetText$(Grid, 114, 1))
Call(pfunc&, gView, 10, 250, 400, 100)
Waitkey
FreeLibraryM(hModule)
../../Function-References/XProfan/end/'>End

what now my border would, is the Zuordnung the functions.
How one supra sees, is with the Call(...) Yes not very leserlich.
ImportFunc() shining not To functions.
If it now something like were, How ImportDLL(), the The functions
moreover linkt. the ImportDLL() is Yes class, there one the Include
with all whom Funktionsdeklarationen erspart. ImportDLL() expects
in the momentum Yes as Parameter a Filenames and not one
lever.

Roland, would something like machbar ?
The Funktionsadressen and the moreover gehörenden Funktionsnamen
having we already. so How I it supra in the Loop made have,
shine Yes The Adressen and its names synchron To walk.

or has someone another idea, How to the automatisieren
could ?
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
10/13/14  
 




Jörg
Sellmeyer
here can Proposals made go, The later versions concern.
too left To already existierenden Vorschlägen should here assembled go.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
09/08/14  
 




Answer


Topictitle, max. 100 characters.
 

Systemprofile:

no Systemprofil laid out. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Please register circa a Posting To verfassen.
 

Topic-Options

35.749 Views

Untitledvor 0 min.
Stringray05/09/22
Rolf Koch10/03/21
Axel Berse07/16/21
Jörg Sellmeyer05/28/20
More...

Themeninformationen



Admins  |  AGB  |  Applications  |  Authors  |  Chat  |  Privacy Policy  |  Download  |  Entrance  |  Help  |  Merchantportal  |  Imprint  |  Mart  |  Interfaces  |  SDK  |  Services  |  Games  |  Search  |  Support

One proposition all XProfan, The there's!


My XProfan
Private Messages
Own Storage Forum
Topics-Remember-List
Own Posts
Own Topics
Clipboard
Log off
 Deutsch English Français Español Italia
Translations

Privacy Policy


we use Cookies only as Session-Cookies because of the technical necessity and with us there no Cookies of Drittanbietern.

If you here on our Website click or navigate, stimmst You ours registration of Information in our Cookies on XProfan.Net To.

further Information To our Cookies and moreover, How You The control above keep, find You in ours nachfolgenden Datenschutzerklärung.


all rightDatenschutzerklärung
i want none Cookie