public VirtualDeviceConfigSpec Controller(bool Is2012) { VirtualSCSIController scsi = new VirtualSCSIController(); if (Is2012) { scsi = new VirtualLsiLogicSASController(); } else { scsi = new VirtualLsiLogicController(); } VirtualDeviceConnectInfo ci = new VirtualDeviceConnectInfo(); ci.startConnected = false; scsi.key = 1000; scsi.controllerKey = 100; scsi.controllerKeySpecified = true; scsi.busNumber = 0; scsi.hotAddRemove = true; scsi.hotAddRemoveSpecified = true; scsi.scsiCtlrUnitNumber = 7; scsi.scsiCtlrUnitNumberSpecified = true; scsi.sharedBus = VirtualSCSISharing.noSharing; scsi.unitNumber = 2; scsi.unitNumberSpecified = true; scsi.connectable = ci; VirtualDeviceConfigSpec dcs = new VirtualDeviceConfigSpec(); dcs.device = scsi; dcs.operation = VirtualDeviceConfigSpecOperation.add; dcs.operationSpecified = true; return(dcs); }
// private static VirtualDeviceConfigSpec GetIDEController(int key) // { // VirtualDeviceConfigSpec devicespec = new VirtualDeviceConfigSpec(); // devicespec.device = new VirtualIDEController(); // devicespec.device.key = key; // devicespec.operation = VirtualDeviceConfigSpecOperation.add; // devicespec.operationSpecified = true; // return devicespec; // } private static VirtualDeviceConfigSpec GetSCSIController(ref int key, string type) { VirtualDeviceConfigSpec devicespec = new VirtualDeviceConfigSpec(); VirtualDevice device = null; // DISK CONTROLLER if (type.ToLower().EndsWith("sas")) { VirtualLsiLogicSASController sas = new VirtualLsiLogicSASController(); sas.busNumber = 0; sas.sharedBus = VirtualSCSISharing.noSharing; sas.key = key--; device = sas; } if (type.ToLower() == "lsilogic") { VirtualLsiLogicController controller = new VirtualLsiLogicController(); controller.busNumber = 0; controller.sharedBus = VirtualSCSISharing.noSharing; controller.key = key--; device = controller; } if (type.ToLower() == "buslogic") { VirtualBusLogicController bus = new VirtualBusLogicController(); bus.busNumber = 0; bus.sharedBus = VirtualSCSISharing.noSharing; bus.controllerKey = key--; device = bus; } devicespec.device = device; devicespec.operation = VirtualDeviceConfigSpecOperation.add; devicespec.operationSpecified = true; return(devicespec); }