As decoupling of software and hardware is made possible by modularized relay protection software, software can be debugged with only oscillo record data but without any hardware device. A virtual device implementation is put forward based on three software layers(driver layer, common application layer, special application layer). A dynamic link library function is generated by the MATLAB compiler using the virtual driver to substitute for hardware driver, transplanting all common application and special application software. A virtual device MEX function is composed of protection calculation and criteria can be captured using the Visual C++ debugging process to realize serial time sequence execution of oscillo data input, relay protection criteria, relay protection outcome while supporting software breakpoint setting and single-step debugging in the Visual C++ process. The scheme for open loop batch verifying protection criteria and closed loop verifying protection criteria is presented, the feasibility being proved by test data. The virtual device software debugging is not subject to hardware in the early R&D stage, while field fault oscillo data can be analyzed in the later stage with breakpoint settings, greatly increasing R&D efficiency.