EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "googletest", "Externals\googletest\googletest\googletest.vcxitems", "{9EE35458-B145-444F-92B7-27FF72112C42}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dumpbin", "dumpbin", "{B22D4554-B639-44BA-BC70-9FD7CCC5B424}"
+ ProjectSection(SolutionItems) = preProject
+ Plugins\Commands\dumpbin\dumpbin.bat = Plugins\Commands\dumpbin\dumpbin.bat
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ildasm", "ildasm", "{64739D83-1BDF-409F-81F3-9320494A199A}"
+ ProjectSection(SolutionItems) = preProject
+ Plugins\Commands\ildasm\ildasm.bat = Plugins\Commands\ildasm\ildasm.bat
+ EndProjectSection
+EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
Externals\googletest\googletest\googletest.vcxitems*{0a3727b1-51e7-4702-ad0c-8aee317ea510}*SharedItemsImports = 4
{76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Release|ARM64.Build.0 = Release|ARM64
{76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Release|Win32.ActiveCfg = Release|Win32
{76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Release|Win32.Build.0 = Release|Win32
- {76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Release|x64.ActiveCfg = Debug|x64
- {76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Release|x64.Build.0 = Debug|x64
+ {76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Release|x64.ActiveCfg = Release|x64
+ {76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Release|x64.Build.0 = Release|x64
{76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Test|ARM64.ActiveCfg = Debug|ARM64
{76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Test|Win32.ActiveCfg = Debug|Win32
{76A538A1-9D2C-49CB-AE9F-72548CE37F88}.Test|x64.ActiveCfg = Debug|x64
{0D414491-BB15-470B-9A50-443BA252CCD4} = {48C9E053-F40B-4FB4-984C-C154810EFB54}
{EEFF904A-CA86-4FB8-BAC5-D508CBF586AA} = {CE514278-A13F-4F6A-93EB-5653410AC214}
{9EE35458-B145-444F-92B7-27FF72112C42} = {EEFF904A-CA86-4FB8-BAC5-D508CBF586AA}
+ {B22D4554-B639-44BA-BC70-9FD7CCC5B424} = {BB290B2D-F5B9-4552-AE32-9319C03E41C0}
+ {64739D83-1BDF-409F-81F3-9320494A199A} = {BB290B2D-F5B9-4552-AE32-9319C03E41C0}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {CC2E4F75-FADC-4F44-BD62-47A321828081}
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "googletest", "Externals\googletest\googletest\googletest.vcxitems", "{9EE35458-B145-444F-92B7-27FF72112C42}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dumpbin", "dumpbin", "{B22D4554-B639-44BA-BC70-9FD7CCC5B424}"
+ ProjectSection(SolutionItems) = preProject
+ Plugins\Commands\dumpbin\dumpbin.bat = Plugins\Commands\dumpbin\dumpbin.bat
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ildasm", "ildasm", "{64739D83-1BDF-409F-81F3-9320494A199A}"
+ ProjectSection(SolutionItems) = preProject
+ Plugins\Commands\ildasm\ildasm.bat = Plugins\Commands\ildasm\ildasm.bat
+ EndProjectSection
+EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
Externals\googletest\googletest\googletest.vcxitems*{0a3727b1-51e7-4702-ad0c-8aee317ea510}*SharedItemsImports = 4
{0D414491-BB15-470B-9A50-443BA252CCD4} = {48C9E053-F40B-4FB4-984C-C154810EFB54}
{EEFF904A-CA86-4FB8-BAC5-D508CBF586AA} = {CE514278-A13F-4F6A-93EB-5653410AC214}
{9EE35458-B145-444F-92B7-27FF72112C42} = {EEFF904A-CA86-4FB8-BAC5-D508CBF586AA}
+ {B22D4554-B639-44BA-BC70-9FD7CCC5B424} = {BB290B2D-F5B9-4552-AE32-9319C03E41C0}
+ {64739D83-1BDF-409F-81F3-9320494A199A} = {BB290B2D-F5B9-4552-AE32-9319C03E41C0}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {CC2E4F75-FADC-4F44-BD62-47A321828081}
--- /dev/null
+@echo off
+if exist "%APPDATA%\WinMerge\Commands\dumpbin\dumpbinpath.txt" (
+ for /f "usebackq tokens=*" %%i in (%APPDATA%\WinMerge\Commands\dumpbin\dumpbinpath.txt) do set DUMPBIN_PATH=%%i
+)
+if not exist "%DUMPBIN_PATH%" (
+ for /f "usebackq tokens=*" %%i in (`"%programfiles(x86)%\microsoft visual studio\installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do (
+ set InstallDir=%%i
+ )
+ if exist "%InstallDir%\Common7\Tools\vsdevcmd.bat" (
+ call "%InstallDir%\Common7\Tools\vsdevcmd.bat"
+ )
+ mkdir "%APPDATA%\WinMerge\Commands\dumpbin\" 2> NUL
+ where dumpbin.exe > "%APPDATA%\WinMerge\Commands\dumpbin\dumpbinpath.txt"
+ if exist "%APPDATA%\WinMerge\Commands\dumpbin\dumpbinpath.txt" (
+ for /f "usebackq tokens=*" %%i in (%APPDATA%\WinMerge\Commands\dumpbin\dumpbinpath.txt) do set DUMPBIN_PATH=%%i
+ )
+)
+"%DUMPBIN_PATH%" %*
--- /dev/null
+@echo off
+if exist "%APPDATA%\WinMerge\Commands\ildasm\ildasmpath.txt" (
+ for /f "usebackq tokens=*" %%i in (%APPDATA%\WinMerge\Commands\ildasm\ildasmpath.txt) do set ILDASM_PATH=%%i
+)
+if not exist "%ILDASM_PATH%" (
+ for /f "usebackq tokens=*" %%i in (`"%programfiles(x86)%\microsoft visual studio\installer\vswhere.exe" -latest -products * -property installationPath`) do (
+ set InstallDir=%%i
+ )
+ if exist "%InstallDir%\Common7\Tools\vsdevcmd.bat" (
+ call "%InstallDir%\Common7\Tools\vsdevcmd.bat"
+ )
+ mkdir "%APPDATA%\WinMerge\Commands\ildasm\" 2> NUL
+ where ildasm.exe > "%APPDATA%\WinMerge\Commands\ildasm\ildasmpath.txt"
+ if exist "%APPDATA%\WinMerge\Commands\ildasm\ildasmpath.txt" (
+ for /f "usebackq tokens=*" %%i in (%APPDATA%\WinMerge\Commands\ildasm\ildasmpath.txt) do set ILDASM_PATH=%%i
+ )
+)
+"%ILDASM_PATH%" %*
<command>"${WINMERGE_HOME}\Commands\apache-tika\tika.bat" "${SRC_FILE}" "${DST_FILE}" ${*}</command>
</unpack-file>
</plugin>
+ <plugin name="DecompileJVM">
+ <event value="FILE_PACK_UNPACK" />
+ <description value="JVM bytecode decompiler with javap. 
Arguments: Command line options passed to the javap command." />
+ <file-filters value="\.class$" />
+ <is-automatic value="false" />
+ <unpacked-file-extension value=".txt" />
+ <extended-properties value="ProcessType=Decompilation;MenuCaption=Decompile JVM Bytecode" />
+ <arguments value="-c" />
+ <unpack-file>
+ <command>cmd /c javap ${*} "${SRC_FILE}" > "${DST_FILE}"</command>
+ </unpack-file>
+ </plugin>
+ <plugin name="DecompileIL">
+ <event value="FILE_PACK_UNPACK" />
+ <description value="IL decompiler with ildasm. 
Arguments: Command line options passed to the ildasm command." />
+ <file-filters value="\.obj$;\.lib$;\.winmd$;\.exe$;\.dll$" />
+ <is-automatic value="false" />
+ <unpacked-file-extension value=".asm" />
+ <extended-properties value="ProcessType=Decompilation;MenuCaption=Decompile IL Bytecode" />
+ <arguments value="/text" />
+ <unpack-file>
+ <command>"${WINMERGE_HOME}\Commands\ildasm\ildasm.bat" ${*} "${SRC_FILE}" > "${DST_FILE}"</command>
+ </unpack-file>
+ </plugin>
+ <plugin name="DisassembleNative">
+ <event value="FILE_PACK_UNPACK" />
+ <description value="Native code disassembler with dumpbin. 
Arguments: Command line options passed to the dumpbin command." />
+ <file-filters value="\.obj$;\.lib$;\.exe$;\.dll$" />
+ <is-automatic value="false" />
+ <unpacked-file-extension value=".asm" />
+ <extended-properties value="ProcessType=Decompilation;MenuCaption=Disassemble Native Code" />
+ <arguments value="/disasm:nobytes" />
+ <unpack-file>
+ <command>"${WINMERGE_HOME}\Commands\dumpbin\dumpbin.bat" ${*} "${SRC_FILE}" > "${DST_FILE}"</command>
+ </unpack-file>
+ </plugin>
<!--
<plugin name="VBScript-test">
<event value="FILE_PACK_UNPACK" />