Co to jest format pliku API?
Rozszerzenie .api identyfikuje wtyczkę Adobe Acrobat - binarny moduł rozszerzenia, który dodaje funkcje do Adobe Acrobat lub Acrobat Reader w systemie Windows. Pomimo nazwy, pliki .api nie mają nic wspólnego z programistyczną koncepcją „interfejsu programowania aplikacji” (Application Programming Interface); rozszerzenie to po prostu skrót od Acrobat Plug-In.
W systemie Windows plik .api jest strukturalnie standardowym plikiem .DLL (format Portable Executable, PE32 lub PE32+) o zmienionym rozszerzeniu. Jego pierwsze dwa bajty to zawsze 4D 5A - nagłówek magiczny ASCII MZ wspólny dla wszystkich plików wykonywalnych i bibliotek systemu Windows. Gdy Acrobat się uruchamia, skanuje podfolder plug_ins w swoim katalogu instalacyjnym, ładuje każdy znaleziony tam plik .api do własnego procesu i wywołuje wyeksportowany symbol PlugInMain w celu zainicjowania każdej wtyczki.
Wtyczki są pisane w języku ANSI C lub C++ z wykorzystaniem Acrobat SDK Core API i są ściśle powiązane z interfejsem binarnym (ABI) konkretnego głównego wydania programu Acrobat; wtyczka skompilowana dla Acrobat DC nie załaduje się poprawnie w znacznie starszej wersji. Typowe zastosowania obejmują niestandardowe przepływy pracy PDF, panele podpisów cyfrowych, integracje z zarządzaniem dokumentami oraz warstwy DRM dodawane przez narzędzia wydawnicze.
W systemie macOS Acrobat używa pakietów .acroplugin zamiast plików .api - na tej platformie pliki .api nie występują. Pliki te mogą posiadać podpis cyfrowy Authenticode od wydawcy, ale poza tym są niezaszyfrowane i nieskompresowane.
Bezpieczeństwo
RYZYKO: HIGHWtyczka .api to natywny kod, który działa wewnątrz programu Acrobat z tymi samymi uprawnieniami co sam Acrobat, więc złośliwa wtyczka jest tak samo niebezpieczna jak każdy niezaufany plik DLL/EXE. Instaluj wtyczki Acrobat wyłącznie od oficjalnego dostawcy lub wydawcy, któremu ufasz, preferuj wtyczki podpisane cyfrowo i uważaj na „darmowe wtyczki do Acrobat” pobierane z portali reklamowych. Zwróć uwagę na mylącą nazwę: osoby szukające „otwórz plik API” często spodziewają się tekstu/źródła - to jest rozszerzenie binarne, a nie dokumentacja.
Szczegóły formatu
w pigułce- Ogólne dane API aplikacji / konfiguracja - Kilka niepowiązanych programów (np. niektóre gry, MedCalc, niektóre narzędzia konfiguracyjne) zapisuje pliki .api jako dane lub ustawienia - nie są to wtyczki Acrobat.
Programy otwierające pliki API
Szczegóły techniczne
specyfikacja| Struktura pliku | Standardowy plik binarny Windows PE32/PE32+ DLL z rozszerzeniem .api zamiast .dll |
| Magiczne bajty | 4D 5A („MZ”) pod offsetem 0 - nagłówek stub pliku wykonywalnego DOS/PE obecny we wszystkich bibliotekach DLL i plikach EXE systemu Windows |
| Kolejność bajtów | Little-endian (format x86/x64 Portable Executable) |
| Wyeksportowany punkt wejścia | PlugInMain - wymagany wyeksportowany symbol, który Acrobat wywołuje w celu zainicjowania każdej wtyczki po załadowaniu |
| Mechanizm ładowania | Acrobat i Reader skanują katalog „plug_ins” przy starcie i ładują każdy znaleziony plik .api do procesu macierzystego |
| Powiązanie z wersją API | Zależne od ABI konkretnej głównej wersji programu Acrobat; wtyczka zbudowana dla jednego wydania nie załaduje się niezawodnie w znacząco innej wersji |
| Język programowania | ANSI C / C++ skompilowany z nagłówkami i bibliotekami importu Acrobat SDK Core API |
| Typ MIME | application/octet-stream |
| Obsługiwane platformy | Tylko Windows - w systemie macOS wtyczki Acrobat są pakowane jako pakiety .acroplugin, a nie pliki .api |
| Podpisywanie kodu | Opcjonalny podpis cyfrowy Authenticode od wydawcy wtyczki; suma kontrolna PE przechowywana w nagłówku opcjonalnym |
| Kompresja | Nieskompresowany plik binarny PE - poszczególne sekcje kodu mogą być optymalizowane przez kompilator, ale plik nie jest skompresowany jako archiwum |
| Szyfrowanie | Niezaszyfrowany natywny kod maszynowy; zaufanie do wydawcy jest ustalane poprzez opcjonalne podpisanie Authenticode, a nie szyfrowanie |
| Typowy rozmiar pliku | Od kilkudziesięciu KB do kilku MB, zależnie od złożoności wtyczki i dołączonych zasobów |
| Typowe zastosowania | Automatyzacja przepływu pracy PDF, panele podpisu cyfrowego, wymuszanie DRM, integracja z zarządzaniem dokumentami, niestandardowe potoki drukowania |
| Wydano | 1990s (Acrobat plug-in architecture) |
| Najnowsza wersja | Tracks the Acrobat SDK / Acrobat DC plug-in API |
| Specyfikacja | opensource.adobe.com |
Konwersje API
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki API.