Allow untested Desktop versions with compatibility warnings

This commit is contained in:
Ops Agent committed 2026-10-11 08:08:31 +02:00
1 parent d2b621bce7
commit ab69f287b6
16 files changed
+1571 -1495

No files matched your search

+3 -2
View File
@@ -1,7 +1,8 @@
// REA-backed WinRT ABI for WhatsAppNativeProjection.dll build 2.2639.100.0.
// Native calls only; no CDP, UI automation or restart.
const native=Process.getModuleByName('WhatsAppNative.dll');
if(!native.path.includes('WhatsAppDesktop_2.2639.100.0_'))throw Error('Unsupported Desktop build; ABI must be revalidated with REA');
const compatibility={tested_build:'2.2639.100.0',matches_tested_configuration:native.path.includes('WhatsAppDesktop_2.2639.100.0_')};
compatibility.warning=compatibility.matches_tested_configuration?null:'Untested Desktop build; attempting native SQLite ABI discovery. Compatibility is unverified.';
const combase=Process.getModuleByName('combase.dll');
function api(name,ret,args){return new NativeFunction(combase.getExportByName(name),ret,args);}
const createString=api('WindowsCreateString','int',['pointer','uint','pointer']);
@@ -60,7 +61,7 @@ rpc.exports={
found.push({id,address:object.toString(),tables:tables.map(r=>r[0])});object=ptr(0);
}catch(error){if(failures.length<20)failures.push({address:hit.address.toString(),error:String(error)});if(!object.isNull())release(object);}
}
}return {databases:found,bytesScanned:scanned,vtable:vtable.toString(),vtableHits:hitCount,failures};
}return {compatibility,databases:found,bytesScanned:scanned,vtable:vtable.toString(),vtableHits:hitCount,failures};
}finally{release(iface);release(sample);release(factory);deleteString(name);}
},
search(id,term,limit){if(!Number.isInteger(id)||id<0||id>=references.length)throw Error('Unknown database');