I am attempting to upload to an ATtiny85 using the Arduino as ISP programmer and I was getting the "no programmer has been specified" (full log below). While the Arduino IDE was able to upload fine.
I compared the verbose outputs of VS and Arduino IDE and noticed that VS is passing "-v {program.verify}" to avrdude while Arduino IDE is just passing "-v " followed by the next commandline switch.
I tested in cmd and was able to confirm that with the placeholder(?) present avrdude produces the same error while with it absent it uploads correctly.
Compiling 'ATTiny85Test' for 'ATtiny25/45/85 w/ ATtiny85'
Program size: 684 bytes (used 8% of a 8,192 byte maximum) (0.56 secs)
Minimum Memory Usage: 9 bytes (2% of a 512 byte maximum)
Uploading 'ATTiny85Test' to 'ATtiny25/45/85 w/ ATtiny85' using 'Arduino as ISP'
Uploader started for board ATtiny25/45/85 w/ ATtiny85
Uploader will use programmer name: arduinoasisp
C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude "-CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" -v {program.verify} -pattiny85 -cstk500v1 -PCOM3 -b19200 nyX5_attiny85/ATTiny85Test.ino.hex:i"
avrdude: Version 6.3, compiled on Jun 22 2016 at 16:05:21
Copyright (c) 2000-2005 Brian Dean,
http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch
Error during upload using programmer
Upload failed
Upload failed
The uploader returned an error
System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"
avrdude: no programmer has been specified on the command line or the config file
Specify a programmer using the -c option and try again