Создайте свой инструмент на платформе x86 (в отличие от любого процессора), и он будет загружен как код x86 даже в 64-битных системах.
Или вы можете сделать что-то вроде
class SharpSvn64 {
[DllImport("sharpsvn64.dll")] extern public static void DoSomething();
}
class SharpSvn32 {
[DllImport("sharpsvn32.dll")] extern public static void DoSomething();
}
class SharpSvn {
static readonly bool Is64 = (IntPtr.Size == 8);
void DoSomething() {
if (Is64)
SharpSvn64.DoSomething();
else
SharpSvn32.DoSomething();
}
}
Редактировать: Поскольку SharpSVN управляется, PInvoke не будет ответом, так что, вероятно, стоит создать исполняемые файлы x86. Или, если интерфейс идентичен, вы МОЖЕТЕ избежать подписки на событие AddDomain.AssemblyResolve и выбрать, какую сборку вы хотите в этом. Хотя я не знаю, хорошая ли это идея.