Hvad er ASI-filformatet?
.asi er en spil-plugin-fil, der bruges til at injicere brugerdefineret kode i Windows-baserede PC-spil. På trods af filtypenavnet er en .asi-fil teknisk set en standard .DLL - en kompileret indfødt binær fil i Windows Portable Executable (PE) format - hvor filtypenavnet er ændret fra .dll til .asi som en modding-konvention.
.asi-filer gør intet alene. De kræver en dedikeret ASI Loader placeret i spillets mappe, typisk forklædt som et systembibliotek såsom dinput8.dll, version.dll eller vorbisFile.dll. Ved spillets opstart kalder loaderen LoadLibrary() på hver .asi, den finder i mappen, og injicerer hvert plugins kode direkte i den kørende spilproces.
Konventionen opstod i midten af 2000'erne i modding-miljøet omkring Rockstars Grand Theft Auto-serie (GTA III, Vice City, San Andreas) og har siden spredt sig til mange andre PC-titler. Meget brugte loadere inkluderer Ultimate ASI Loader og Silent's ASI Loader.
Da et .asi-plugin kører vilkårlig indfødt kode inde i spilprocessen med fuld adgang til hukommelse og system-API'er, bør kun filer fra betroede kilder installeres. Filen begynder med de standard MZ magic bytes (4D 5A) ved offset 0 og PE\0\0-signaturen længere inde - identisk med enhver .dll eller .EXE. Den kan inspiceres med PE-værktøjer som CFF Explorer, men den kræver målspillet og dets ASI Loader for rent faktisk at køre.
Sikkerhed og tryghed
RISIKO: HIGHEn .asi er indfødt eksekverbar kode (en DLL), der kører inde i spillet med dine brugerrettigheder, så den har samme risikoprofil som at installere en hvilken som helst ukendt DLL: en ondsindet .asi kan gøre alt, hvad din konto kan. Spil-«trainers», «cheats» og piratkopierede mod-.asi-filer er en velkendt kilde til malware/PUP. Installer kun .asi-plugins fra anerkendte kilder (etablerede modding-communities, GitHub-udgivelser, mod-forfatterens officielle side), foretræk open-source loadere (Ultimate ASI Loader), scan ukendte filer, og inspicer en .asi-fils imports i en PE-viewer, hvis du er usikker. Kør aldrig spil-mods på en konto med følsomme data, og undgå «gratis .asi» download-portaler bundtet med adware.
Formatdetaljer
kort fortalt- Assembly include / kildekodefil (Alpha Software, MASM-stil) - Nogle assembler/IDE-værktøjskæder bruger .asi til en assembly «include» eller header-kildekodefil (betydningen registreret i denne sides database, udvikler «Alpha Software»); det er almindelig tekst, ikke en eksekverbar fil.
- Velvet Studio / tracker sample/instrument - Ældre musik-tracker-værktøjer brugte .asi til en instrument- eller sample-fil; åbnes kun i den pågældende tracker.
Programmer der åbner ASI-filer
Tekniske detaljer
dyb specifikation| Filstruktur | Windows Portable Executable (PE) - en standard DLL med filtypenavnet omdøbt til .asi |
| Magic bytes | 4D 5A («MZ») ved offset 0; PE-signatur 50 45 00 00 ved det offset, der er gemt i MZ-headeren |
| PE-variant | PE32 (32-bit / x86) eller PE32+ (64-bit / x64) afhængigt af målspillets arkitektur |
| Kodning | Binær - kompileret indfødt maskinkode (typisk C eller C++) |
| Byte-orden | Little-endian (Intel x86/x64 konvention, nedarvet fra PE-formatet) |
| Typisk filstørrelse | Ti-tals KB til nogle få MB (et kompileret indfødt plugin) |
| Komprimering | Ingen i PE-wrapperen som standard; individuelle sektioner kan være pakket af forfatteren |
| Kodesignering | Valgfri Authenticode-signatur; de fleste community-lavede .asi-plugins er usignerede |
| MIME-type | application/x-msdownload (samme som .dll og .exe) |
| Indlæsningsmekanisme | En ASI Loader (leveret som dinput8.dll, version.dll, vorbisFile.dll osv.) kalder LoadLibrary() på hver .asi i spilmappen ved opstart |
| Eksekveringskontekst | Kører som en DLL inde i værtsspillets proces med fuld adgang til spillets hukommelse, tråde og Windows-API'er |
| Indgangspunkt | Standard DLL-indgangspunkt (DllMain); ingen speciel ASI-specifik eksport er påkrævet |
| Indlæsningsrækkefølge | ASI Loadere injicerer typisk .asi-filer i alfabetisk rækkefølge fra spilmappen |
| Tilknyttet OS | Windows (PE-formatet er Windows-specifikt) |
| Sikkerhedsrisikoniveau | Højt - kører vilkårlig indfødt kode med fulde procesrettigheder; installer kun fra betroede kilder |
| Udgivet | Early-mid 2000s modding scene (GTA III/Vice City/San Andreas era ASI loaders) |
| Seneste version | Tied to the Windows PE/DLL format; Ultimate ASI Loader actively maintained (2020s) |
| Specifikation | github.com |