 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 18.05.2007, 21:22 Titel: Build-Counter |
|
|
Hier ein kleines nützliches Util für FreeBasic:
Der Buildcounter!
den stell ich hier mal zur freien Weiterentwicklung rein.
Seine Aufgabe:
Er dient als Ersatz für FBC, und wirkt wie ein Präprozessor. Er ersetzt %build%, %bdate% und %bdate% in dem übergebenen Sourcecode durch die entsprechenden Werte.
Besonders leicht lässt er sich in FBide einfügen, einfach als Compiler angeben.
Wichtig ist auch noch, dass fbc unter Windows in der Path-Variable stehen sollt.
Und er ist sicher schnell um eine Archivierungs-Option erweitert...
Code: | declare Function StrReplace( _
ByVal sText As String, _
ByVal sStrA As String, _
ByVal sStrB As String _
) As String
type t_build
build as integer
bdate as string
btime as string
end type
dim build as t_build
dim file as string
dim text as string
file = command(1)
open file+".dat" for input as #1
get #1,0,build
close #1
build.build += 1
build.bdate = date
build.btime = time
open file+".dat" for output as #1
put #1,0,build
close #1
open file+".bas" for output as #1
open command for input as #2
do
line input #2, text
text = strReplace(text, "%build%", str(build.build))
text = strReplace(text, "%bdate%", date)
text = strReplace(text, "%btime%", time)
print #1, text
loop until eof(2)
close #2
close #1
OPEN pipe "fbc "+chr(34)+command$+".bas"+chr(34) FOR INPUT AS #1
DO WHILE NOT EOF(1)
LINE INPUT #1, text
PRINT text
LOOP
kill command$+".bas"
kill mid(command$,1,len(command$)-4)+".exe"
name command$+".exe", mid(command$,1,len(command$)-4)+".exe"
Function StrReplace( _
ByVal sText As String, _
ByVal sStrA As String, _
ByVal sStrB As String _
) As String
Dim iPos As UInteger = 1
Dim sResult As String = sText
While InStr(iPos, sResult, sStrA)
sResult = Left(sResult, InStr(iPos, sResult, sStrA) - 1) + sStrB + Right(sResult, Len(sResult) - (InStr(iPos, sResult, sStrA) + Len(sStrA) - 1))
iPos += Len(sStrB)
Wend
Return sResult
End Function
|
// edit:
die Funktion StrReplace hab ich von MVXA...
Zuletzt bearbeitet von PMedia am 18.05.2007, 21:29, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 18.05.2007, 21:24 Titel: |
|
|
sher praktisch, das könnte ich gebrauchen. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 18.05.2007, 22:51 Titel: |
|
|
Deswegen hab ichs ja veröffentlicht. Ich werds bei meinem Alki verwenden.
Übrigens, intressant is das verhalten mit FBideTemp...
der spuckt sowohl die Zahl der Sofort-Runs per F5 aus als auch finalen Compiles xD |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|