C 名为won';t运行(windows 7)

C 名为won';t运行(windows 7),c,windows,mingw,command-line-interface,C,Windows,Mingw,Command Line Interface,我用C编写了经典的三行“Hello World”: 将hellowWorld.exe移动到windows 7计算机,运行正常。。。现在,我将它重命名为名称中带有“setup”的任何名称,如hellosetupWorld.exe,当我尝试运行它时,UAC会触发,即使我回答UAC弹出窗口“是的,可以,运行它”,它也无法运行。后来我得到一个弹出窗口,询问我的程序是否安装正确 这似乎是一种新的行为。还有谁见过这个吗?我已经在虚拟机上测试了MSDN的virgin windows 7,几乎没有安装其他东西。

我用C编写了经典的三行“Hello World”:

将hellowWorld.exe移动到windows 7计算机,运行正常。。。现在,我将它重命名为名称中带有“setup”的任何名称,如hellosetupWorld.exe,当我尝试运行它时,UAC会触发,即使我回答UAC弹出窗口“是的,可以,运行它”,它也无法运行。后来我得到一个弹出窗口,询问我的程序是否安装正确

这似乎是一种新的行为。还有谁见过这个吗?我已经在虚拟机上测试了MSDN的virgin windows 7,几乎没有安装其他东西。同样的问题

嘿。。。不仅仅是明。如果我在命令行中使用visual studio编译, 喜欢 你好

我得到了完全相同的行为。将“setup”放在名称中的某个位置,程序将不会运行


提前谢谢

我无法在我的Win7机器上使用本机构建的EXE复制此文件。无论是命名为
test.exe
还是
setupTest.exe
helloSetupWorld.exe
,它都会按预期运行。我想知道这是否与交叉编译有关。我只是通过在windows命令行中使用cl编译了确切的代码(减号)。重命名它会失败。如果使用visual studio创建windows cli模板(然后使用stdafx.h,主签名略有不同),则不会发生这种情况。它会变得更好。mingw是一条红鲱鱼。如果我使用cl在命令行(Windows7,VisualStudio2010)构建代码,程序名称中的任何位置都不能有“setup”(如果您希望它实际运行)。但是,如果我在VisualStudioGUI中构建它。。。与上面发布的代码完全相同(减去strings.h)。。。它的运行方式与我的命名方式无关。我运行了一个Visual Studio命令提示符(Start/Visual Studio 2010/Visual Studio Tools/Visual Studio命令提示符),然后键入:“cl Hello.c”,得到了一个.exe
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <strings.h>
#include <string.h>

int main(int argc, char **argv)
{
  printf("Hello World!\r\n");
  exit(0);
}
i686-w64-mingw32-gcc -o helloWorld.exe -g -march=i586 helloWorld.c