Mit diesem Code können Verzeichnisse inkl. Unterverzeichnisse aufeinmal erstellt werden.
Wenn man die PB-Funktion "CreateDirectory()" benutzt, dann kann man nur ein Verzeichnis erstellen.
Aber mit Hilfe dieser Funktion gibt man einen vollständigen Pfad an und Windows legt automatisch alle Unterverzeichnisse an, die noch nicht vorhanden sind.
Recht nützlich, finde ich.

Code: Alles auswählen
EnableExplicit
Define Result
Result = MakeSureDirectoryPathExists_("C:\test\1\2\3\4\5\");Aufgrund der Rechte muss der erste Ordner ab Vista unter C:\ erstellt werden, aber die restlichen Verzeichnissen können problemlos erstellt werden.
If Result=0
MessageRequester("","Verzeichnisse konnten nicht erstellt werden.",0)
Else
MessageRequester("","Verzeichnisse konnten erstellt werden.",0)
EndIf
;MakeSureDirectoryPathExists: http://msdn.microsoft.com/en-us/library/ms680352%28v=vs.85%29.aspx
Datei suchen
Mit diesem Code kann man nach einer bestimmten Datei suchen. Die WinAPI-Funktion durchsucht auch in Unterverzeichnissen und gibt die erste gefundene Datei als Pfad zurück.
Code: Alles auswählen
EnableExplicit
Define Buffer$ = Space(256)
Define Result
Result = SearchTreeForFile_("C:\","Datei.txt",@Buffer$);Durchsucht auch in Unterverzeichnissen
If Result=0
MessageRequester("","Es wurde keine Datei mit diesem Namen gefunden.",0)
Else
MessageRequester("","Erste gefundene Datei: "+Buffer$,0)
EndIf
;SearchTreeForFile: http://msdn.microsoft.com/en-us/library/ms680618%28v=vs.85%29.aspx
Prozessor-Spezifikationen ermitteln
Mit diesem Code kann ermittelt werden, welche Spezifikationen euer Prozessor unterstützt. Warum mit Assembler kompliziert ermitteln, wenn es mit einer WinAPI-Funktion einfacher geht.

Code: Alles auswählen
EnableExplicit
#PF_3DNOW_INSTRUCTIONS_AVAILABLE = 7
#PF_CHANNELS_ENABLED = 16
#PF_COMPARE_EXCHANGE_DOUBLE = 2
#PF_COMPARE_EXCHANGE128 = 14
#PF_COMPARE64_EXCHANGE128 = 15
#PF_FLOATING_POINT_EMULATED = 1
#PF_FLOATING_POINT_PRECISION_ERRATA = 0
#PF_MMX_INSTRUCTIONS_AVAILABLE = 3
#PF_NX_ENABLED = 12
#PF_PAE_ENABLED = 9
#PF_RDTSC_INSTRUCTION_AVAILABLE = 8
#PF_SSE3_INSTRUCTIONS_AVAILABLE = 13
#PF_XMMI_INSTRUCTIONS_AVAILABLE = 6
#PF_XMMI64_INSTRUCTIONS_AVAILABLE = 10
#PF_XSAVE_ENABLED = 17
;Hinweis
;1 = Wird unterstützt
;0 = Wird nicht unterstützt
Debug IsProcessorFeaturePresent_(#PF_3DNOW_INSTRUCTIONS_AVAILABLE)
Debug IsProcessorFeaturePresent_(#PF_CHANNELS_ENABLED)
Debug IsProcessorFeaturePresent_(#PF_COMPARE_EXCHANGE_DOUBLE)
Debug IsProcessorFeaturePresent_(#PF_COMPARE_EXCHANGE128)
Debug IsProcessorFeaturePresent_(#PF_COMPARE64_EXCHANGE128)
Debug IsProcessorFeaturePresent_(#PF_FLOATING_POINT_EMULATED)
Debug IsProcessorFeaturePresent_(#PF_FLOATING_POINT_PRECISION_ERRATA)
Debug IsProcessorFeaturePresent_(#PF_MMX_INSTRUCTIONS_AVAILABLE)
Debug IsProcessorFeaturePresent_(#PF_NX_ENABLED)
Debug IsProcessorFeaturePresent_(#PF_PAE_ENABLED)
Debug IsProcessorFeaturePresent_(#PF_RDTSC_INSTRUCTION_AVAILABLE)
Debug IsProcessorFeaturePresent_(#PF_SSE3_INSTRUCTIONS_AVAILABLE)
Debug IsProcessorFeaturePresent_(#PF_XMMI_INSTRUCTIONS_AVAILABLE)
Debug IsProcessorFeaturePresent_(#PF_XMMI64_INSTRUCTIONS_AVAILABLE)
Debug IsProcessorFeaturePresent_(#PF_XSAVE_ENABLED)
;IsProcessorFeaturePresent: http://msdn.microsoft.com/en-us/library/ms724482.aspx
@Stargate
Das war jetzt der letzte Thread.^^ Nun habe ich keine Lust mehr.
