So habs jetzt alles hinbekommen, ein wenig anders als in dem Beipsiel, da das nicht so richtig geklappt hat. Trotzdem danke an alle für die Hilfen!!
Sieht jetzt folgendermaßen aus:
PHP-Code:
D*
D* Create File
D*
D CRTFILE PR 10U 0 ExtProc('CreateFileA')
D DLL('Kernel32.dll')
D Linkage(*StdCall)
D * VALUE OPTIONS(*STRING)
D 10I 0 Value
D 10I 0 Value
D $SEC LIKE(secattr)
D 10I 0 Value
D 10I 0 Value
D 10I 0 Value
D*
D* Write File
D*
D WRTFILE PR 10U 0 ExtProc('WriteFile')
D DLL('Kernel32.dll')
D Linkage(*StdCall)
D 10I 0 Value
D * VALUE OPTIONS(*STRING)
D 10I 0 Value
D $WRITE LIKE(WRITE)
D $OVER LIKE(OVERLAP)
D*
D* Read File
D*
D READFILE PR 10U 0 ExtProc('ReadFile')
D DLL('Kernel32.dll')
D Linkage(*StdCall)
D 10I 0 Value
D * VALUE OPTIONS(*STRING)
D 10I 0 Value
D $WRITE LIKE(WRITE)
D $OVER LIKE(OVERLAP)
D*
D* Close File
D*
D CLOSEFILE PR 10U 0 ExtProc('CloseHandle')
D DLL('Kernel32.dll')
D Linkage(*StdCall)
D 10I 0 Value
D*
D* Initializations
D*
D secattr DS
D LENGTH 10I 0 INZ(80)
D SECDESC 10I 0 INZ(0)
D BOOL 10I 0 INZ(0)
D name S 10A
D access S 10U 0 INZ(3221225472)
D share S 10U 0 INZ(0)
Dcreate S 10I 0 INZ(3)
Dattr S 10U 0 INZ(128)
Dtemplate S 10I 0 INZ(0)
DBRC S 10U 0
DRET S 10I 0
DRET2 S 10U 0
DRET3 S 10U 0
DWRITE S 10U 0
DOVERLAP S 10U 0
DENT1 S 10A
DENT2 S 80A
DENT3 S 180A
DaENT1 S * inz(%addr(ENT1))
DaENT2 S * inz(%addr(ENT2))
DaENT3 S * inz(%addr(ENT3))
C TEST BEGACT PRESS FRA000000B
C EVAL zaehler = 0
C EVAL sstemp = 0
C TIME SysZeit
C DOW zaehler < 4
C EVAL sstemp = ss
C EVAL zaehler = zaehler + 1
C EVAL ENT1 = '\\.\com1' + X'00'
C EVAL ENT2 = X'0D' + 'lftx' + X'0D' + X'00'
C EVAL BRC = CRTFILE(aENT1:ACCESS:share:
C secattr:create:attr:template)
C EVAL RET = WRTFILE(BRC:aENT2:LENGTH:WRITE
C :OVERLAP)
C EVAL RET2 = Closefile(brc)
C CLEAR ENT1
C CLEAR ENT2
C CLEAR BRC
C CLEAR RET
C CLEAR RET2
C CLEAR WRITE
C DOW sstemp = ss
C TIME SysZeit
C ENDDO
C ENDDO
C EVAL ENT1 = '\\.\com1' + X'00'
C EVAL ENT2 = X'0D' + 'last 1' + X'0D' + X'00'
C EVAL BRC = CRTFILE(aENT1:ACCESS:share:
C secattr:create:attr:template)
C*
C EVAL RET = WRTFILE(BRC:aENT2:LENGTH:WRITE
C :OVERLAP)
C*
C EVAL Length = 180
C EVAL RET3 = READFILE(BRC:aENT3:Length:WRITE
C :OVERLAP)
C*
C EVAL RET2 = Closefile(brc)
C EVAL ID = %subst(ENT3:135:10)
C EVAL FRA000000B.ID.TEXT = ID
C EVAL TEMP = %subst(ENT3:154:2)
C EVAL FRA000000B.TEMP.TEXT = TEMP
C EVAL DAUER = %subst(ENT3:162:3)
C EVAL FRA000000B.DAUER.TEXT = DAUER
C CLEAR ENT1
C CLEAR ENT2
C CLEAR BRC
C CLEAR RET
C CLEAR RET2
C CLEAR WRITE
C ENDACT
Mfg KAMPI
Bookmarks