Version of Windows is Win7 SP1 32bit.
By virtual COM7 I mean standard Arduino USB driver installed in system as COM port. My version "1.0.0.0" of this driver came from Arduino app installation, vendor is "Arduino LLC", driver date "4.1.2013".
I did a little research of the problem and found the following:
sometimes upload in Visual Studio does not work, sometimes it works.
When the upload in Visual Studio works, verbose messages from Visual Micro looks like this:
Uploading to I/O board using 'COM7'
Uploader started for board Arduino Micro
Uploader sometimes uses programmer name: avrispmkii
Upload method will be: bootloader
Uploading via Bootloader
C:\Program Files\Arduino\hardware\tools\avr\bin\avrdude "-CC:\Program Files\Arduino/hardware/tools/avr/etc/avrdude.conf" -v -v -v -v -patmega32u4 -cavr109 -PCOM6 -b57600 -D .hex:i"
avrdude: Version 6.0.1, compiled on Apr 3 2014 at 23:12:16
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\Program Files\Arduino/hardware/tools/avr/etc/avrdude.conf"
Using Port : COM6
Using Programmer : avr109
Overriding Baud Rate : 57600
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Note the COM port used on the command line for avrdude. COM6 is used here, which should be the right upload port. Verbose messages from Arduino standalone app looks alike.
When the upload in Visual Studio does not works, upload port for arduino board isn't detected correctly and messages from Visual Micro looks like this:
Uploading to I/O board using 'COM7'
Uploader started for board Arduino Micro
Uploader sometimes uses programmer name: avrispmkii
Upload method will be: bootloader
Uploading via Bootloader
C:\Program Files\Arduino\hardware\tools\avr\bin\avrdude "-CC:\Program Files\Arduino/hardware/tools/avr/etc/avrdude.conf" -v -v -v -v -patmega32u4 -cavr109 -PCOM7 -b57600 -D .hex:i"
avrdude: Version 6.0.1, compiled on Apr 3 2014 at 23:12:16
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\Program Files\Arduino/hardware/tools/avr/etc/avrdude.conf"
Using Port : COM7
Using Programmer : avr109
Overriding Baud Rate : 57600
It seems as it sometimes did not wait for correct detection of upload port.