google / bindiff

Quickly find differences and similarities in disassembled code
https://zynamics.com/bindiff.html
Apache License 2.0
2.29k stars 148 forks source link

BinDiff should use Unicode APIs on Windows #4

Open cblichmann opened 1 year ago

cblichmann commented 1 year ago

Steps to reproduce the problem: 1.saved two ida database. 2.Open one of the two database to diff the other database 3.alert message as "Error while diffing: failed opening database: 'unable to open database file', filename: 'C:\Users\���\AppData\Local\Temp\BinDiff\temporary.database' "

What is the expected behavior? I wish that the Bindiff can support Chinese.

What went wrong? I can't diff the two database.

What version of the product are you using? On what operating system? Bindiff 7 beta. On Windows. Any other comments?

186791621__33198687__191454

Ported from b/186791621

cblichmann commented 1 year ago

Hi there,

Sorry for that. Parts of BinDiff are a rather old code base and we use the ANSI versions of the relevant Windows APIs everywhere.

I am not sure I can fix all instances before the final release, esp. since our development environment is US English.

As an admittedly cumbersome workaround, you can export the databases separately from IDA using the BinExport plugin directly (Edit|Plugins|BinExport|BinExport v2 Binary Export) and then diff them via the command-line (`"C:\Program Files\BinDiff\bin\bindiff.exe --primary=FILEA.BinExport --secondary=FILEB.BinExport --output_dir=OUTPUTDIR"). Afterwards the resulting .Bindiff file can be loaded by the BinDiff UI.