โปรแกรมนี้เปิดตัว ARK: Survival Evolved หรือ ARK: Survival Ascended และแก้ไขพฤติกรรมของวิธี Steam API และ EOS SDK บางอย่าง โดยที่ไม่เปลี่ยนแปลงไฟล์ของเกมใดๆ
สิ่งที่เปลี่ยนแปลงสำหรับทั้งสองเกม:
สิ่งที่เปลี่ยนแปลงไปสำหรับ ARK: Survival Evolved:
......Mods
สัมพันธ์กับ ShooterGame.exe) ซึ่งช่วยให้สามารถจดจำและใช้ Mods ได้ แม้ว่าเกมจะไม่ใช่เกมก็ตาม เป็นเจ้าของในบัญชี Steam ปัจจุบัน และไม่สามารถสมัครสมาชิกได้ ตราบใดที่ไฟล์ยังใช้งานได้สิ่งที่เปลี่ยนแปลงไปสำหรับ ARK: Survival Ascended:
นอกจากนี้ TEK Injector ยังมีการดูแลเป็นพิเศษสำหรับอาร์กิวเมนต์บรรทัดคำสั่ง -high
ซึ่งจะทำให้รันเกมด้วยคลาสลำดับความสำคัญของกระบวนการสูง
อาร์กิวเมนต์บรรทัดคำสั่ง -noadmin
สามารถใช้เพื่อเริ่มกระบวนการเกมโดยไม่มีสิทธิ์ของผู้ดูแลระบบ (ต้องเรียกใช้ TEK Injector เอง)
แบบสแตนด์อโลน: ดาวน์โหลด tek-injector.exe จากรุ่นต่างๆ วางไว้ในไดเร็กทอรี ShooterGameBinariesWin64
ของเกมของคุณแล้วรัน อาร์กิวเมนต์บรรทัดคำสั่งทั้งหมดที่ส่งไปยัง TEK Injector จะถูกส่งต่อไปยังเกม
แบบฝัง (สำหรับนักพัฒนาแอป): คุณสามารถใช้ TEK Injector ในกระบวนการของคุณได้ หากคุณโหลดอิมเมจ PE ของมันอย่างเหมาะสม (โดยมีส่วนที่ยุบลงและเติมตารางการนำเข้า) tek-injector.exe จะส่งออก 2 ฟังก์ชันที่สามารถรับได้ผ่าน GetProcAddress:
void launch_asa ( const wchar_t * exePath , int argc , const wchar_t * * argv );
void launch_ase ( const wchar_t * exePath , int argc , const wchar_t * * argv );
โดยที่ exePath
เป็นพาธไปยังเกมที่ปฏิบัติการได้ (ArkAscended.exe และ ShooterGame.exe ตามลำดับ) และ argc
และ argv
จัดเตรียมอาร์กิวเมนต์บรรทัดคำสั่งสำหรับกระบวนการเกม โปรดทราบว่าคุณไม่จำเป็นต้องตั้งค่าอาร์กิวเมนต์แรกเป็นพาธที่ปฏิบัติการได้ TEK Injector จะดำเนินการด้วยตัวเองและต่อท้ายอาร์กิวเมนต์จาก argv
หลังจากนั้น นอกจากนี้ ฟังก์ชันเหล่านี้อาจบล็อกนานถึง 10 วินาทีเพื่อให้แน่ใจว่ากระบวนการของเกมจะไม่ ส่งคืนข้อผิดพลาดหลังจากเปิดตัว
TEK Injector สร้างกระบวนการเกมในสถานะหยุดชั่วคราว จากนั้นจัดสรรหน่วยความจำในนั้นและคัดลอกตัวเองลงในนั้น จากนั้นแก้ไขบริบทของเธรดหลักเพื่อดำเนินการจุดเข้าที่กำหนดเองจากอิมเมจของ TEK Injector ซึ่งจะแก้ไขตารางที่อยู่การนำเข้าของปฏิบัติการเกมเพื่อใช้ Wrapper ฟังก์ชันของตัวเอง ในกรณีที่จำเป็น จากนั้นจึงส่งการประมวลผลไปยังจุดเริ่มต้นที่แท้จริงของเกมโดยไม่ทราบด้วยซ้ำว่ามีบางอย่างเกิดขึ้นก่อนหน้านั้น การเรียกใช้ TEK Injector ภายในกระบวนการเกมหลังจากการคัดลอกเพียงอย่างเดียวนั้นเป็นไปได้ เนื่องจากการสร้างโค้ดฝั่งเกมต้องอาศัยเฉพาะสิ่งที่รวมอยู่ในอิมเมจและ kernel32.dll (ซึ่งอยู่ในที่อยู่เสมือนเดียวกันในทุกกระบวนการ) โดยไม่มีการอ้างอิงภายนอกอื่น ๆ