Allow untested Desktop versions with compatibility warnings
This commit is contained in:
1 parent
d2b621bce7
commit
ab69f287b6
16 files changed
+1571
-1495
No files matched your search
@@ -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');
|
||||
|
||||
Reference in new issue
Block a user