Seeing that stealth is always a one shot method of eliminating threats, it is true that hiding around corners can allow it to be abused.
I can see a few ways to get around it: (not, not all would be used at the same time)
Stronger enemies 2 turns before infection. Strongest enemies need 3 turns. Maybe unable to stealth during this time.
Using virus will stealthed breaks stealth
Using virus while stealth caused extra "stealth points" to be used up
I'd be interested to see exactly how you're doing this virusing without stealth bit, because from what I've seen.... it doesnt work. Not unless the enemy bot has an attack range of exactly 1.
I'm not sure just what you're seeing in your own game, but when I attempt that strategy, against pretty much any enemy, what actually happens is this:
As you can see, he's already aiming at me. He doesnt need to step onto the tile in front of me to hit me, and thus, he wont do so, and thus wont get virused easily. To virus him, I *have* to take at least one step forward, and certainly on Expert mode, doing such a thing WITHOUT stealth is generally suicide. A great many enemies can either kill you in a single blow, or maul you so badly that they may as well have. Masterminds like the one shown there are weak (though he'd still do 70 damage to me with his current attack power at level 12, and that's a significant amount on Expert where your shields start out VERY low), but there's an army behind him that you cant see in the screenshot. And it's a Mastermind, which means that the army behind him is *really* nasty right now from getting that buff.
This situation is why I suggested simply having a stealth cost when doing this type of action. Granted, that's not a perfect solution.... eventually the stealth cost might become the main cost for viruses, determining how many you can use instead of the virus count determining it like it should.
Even then though.... one thing I'm also not finding, is that I'm not finding that virusing things is all-powerful. Most things that I hit with viruses *will* die rather quick, sometimes without managing to deal damage (and I'm very selective about what I will use viruses on, so I'm not using them on weak, pathetic things or anything). Even the mighty DoomBot has occaisionally gone down after firing a single shot, if that, when I turn him against his fellow bots. It may be better on lower difficulties... I'm not sure, as when I was playing on Normal I didn't really use it much at all. On Expert though, at least with my playstyle, it's never quite that simple, and it doesnt act as a win button; it's just another strategic tool. I actually consider mines to be much safer to use (even if they require alot of preparation), and they're my emergency weapon if something truly threatening is coming, instead of the viruses. I put hacking and mines over viruses in terms of importance (though I dont put them all on the same Exo, that'd end badly). Others may disagree of course, but for me this is the case. Not that virusing isnt powerful, because it is.
I'm going to try to think up more suggestions though for how this might be balanced a little better, but right now the best suggestion I can come up with is increasing the virus cost of certain bots by a good amount. Though the "more stealth points used" idea really isnt a bad one either.
And if I'm not making sense somehow here or outright missing something, I apologize; I'm about to go to bed here and am a bit tired, so.... yeah.