- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚学习了 C++,我正在尝试使用 windows.h header 制作一个程序。我正在使用 Dev-C++ 编译器,但出现三个错误,我找不到解决方案。
这些是错误:
cannot open output file filename.exe: Permission denied
[Error] ld returned 1 exit status recipe for target 'filename.exe' failed
这是我的代码:
#include <windows.h&$62
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
HWND textfield;
/* This is where all the input to the window goes to */
LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) {
switch(Message) {
case WM_CREATE:
CreateWindow("STATIC",
"DocJoin Document Combiner",
WS_VISIBLE | WS_CHILD | WS_BORDER,
20,20,300,25,
hwnd,NULL,NULL,NULL);
break;
/* Upon destruction, tell the main thread to stop */
case WM_DESTROY: {
PostQuitMessage(0);
break;
}
/* All other messages (a lot of them) are processed using default procedures */
default:
return DefWindowProc(hwnd, Message, wParam, lParam);
}
return 0;
}
/* The 'main' function of Win32 GUI programs: this is where execution starts */
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
WNDCLASSEX wc; /* A properties struct of our window */
HWND hwnd; /* A 'HANDLE', hence the H, or a pointer to our window */
MSG Msg; /* A temporary location for all messages */
/* zero out the struct and set the stuff we want to modify */
memset(&wc,0,sizeof(wc));
wc.cbSize = sizeof(WNDCLASSEX);
wc.lpfnWndProc = WndProc; /* This is where we will send messages to */
wc.hInstance = hInstance;
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
/* White, COLOR_WINDOW is just a #define for a system color, try Ctrl+Clicking it */
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wc.lpszClassName = "WindowClass";
wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); /* Load a standard icon */
wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION); /* use the name "A" to use the project icon */
if(!RegisterClassEx(&wc)) {
MessageBox(NULL, "Window Registration Failed!","Error!",MB_ICONEXCLAMATION|MB_OK);
return 0;
}
hwnd = CreateWindowEx(WS_EX_CLIENTEDGE,"WindowClass","DocJoin",WS_VISIBLE|WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, /* x */
CW_USEDEFAULT, /* y */
683, /* width */
730, /* height */
NULL,NULL,hInstance,NULL);
if(hwnd == NULL) {
MessageBox(NULL, "Window Creation Failed!","Error!",MB_ICONEXCLAMATION|MB_OK);
return 0;
}
/*
This is the heart of our program where all input is processed and
sent to WndProc. Note that GetMessage blocks code flow until it receives something, so
this loop will not produce unreasonably high CPU usage
*/
while(GetMessage(&Msg, NULL, 0, 0) > 0) { /* If no error is received... */
TranslateMessage(&Msg); /* Translate key codes to chars if present */
DispatchMessage(&Msg); /* Send it to WndProc */
}
return Msg.wParam;
这是 Makefile.win:
#项目:项目名称
# Dev-C++ 5.6.3 创建的 Makefile
CPP = g++.exe
CC = gcc.exe
WINDRES = windres.exe
OBJ = main.o
LINKOBJ = main.o
LIBS = -L"[...]" -L"[...]" -static-libgcc -mwindows -g3
INCS = -I"[...]" -I"[...]" -I"[...]"
CXXINCS = -I"[..]" -I"[...]" -I"[...]" -I"[...]"
BIN = filename.exe
CXXFLAGS = $(CXXINCS) -g3
CFLAGS = $(INCS) -g3
RM = rm.exe -f
.PHONY: all all-before all-after clean clean-custom
all: all-before $(BIN) all-after
clean: clean-custom
${RM} $(OBJ) $(BIN)
$(BIN): $(OBJ)
$(CPP) $(LINKOBJ) -o $(BIN) $(LIBS)
main.o: main.cpp
$(CPP) -c main.cpp -o main.o $(CXXFLAGS)
我花了 3 个小时进行研究和故障排除,但我被难住了。这是我第一次使用 C++ 编译器,这意味着这是我的第一个程序。
最佳答案
您必须更改文件位置。
注意:不要将文件保存在 Microsoft Windows 中的 Program Files
和 Program Files (x86)
中。
您可以使用其他路径,例如 C:\USER\.....
关于c++ - "cannot open output file filename.exe: Permission denied",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23945456/
我有名为 xxx.java.i、xxx.java.d、xxx.jar.i 的文件。我知道这些文件与 Java 有某种关系。这个扩展是什么意思以及它的用途是什么?它与 .class 扩展名的类型相同吗?
我的命名尽量在语法上正确*。我一直使用 filename 而不是 fileName。 java 约定似乎也使用这个,但 FxCop 更喜欢 fileName。 有一个discussion on Wik
来自MISRA-C 2004 : 19.3 (req): The '#include' directive shall be followed by either a or "filename" s
我有一个 SKScene 类,我需要在其中实现一个自定义初始化程序来覆盖 SKScene 父类(super class) SKNode 的初始化程序 init(fileNamed: fileNamed
在 C 和 C++ 编程语言中,在 include 中使用尖括号和使用引号有什么区别?声明,如下? #include #include "filename" 最佳答案 实际上,区别在于预处理器搜索包
我想解压一个文件,例如使用 shell 命令将“tar123.tar.gz”复制到目录/myunzip/tar123/”。 tar -xf tar123.tar.gz 将解压缩文件,但在与我工作的目录
我是 C 语言新手,我知道这两个命令都完成相同的任务,但是其中一个命令是否会执行与另一个命令不同的操作? 最佳答案 首先,如果您使用 make,那么对于 hello.c,您将调用 make 作为 ma
我正在编写一个程序,它将文件名列表存储为字符串数组。当我将其声明为 char *filenames[1] 我没有错误......但是当我这样做时 char *filenames 我遇到了一些错误。不在
我在将 Appirater 集成到我的应用程序时遇到了一些问题。我已经正确添加了所有必要的文件,并拥有正确的代码(我认为),但是在尝试将其实现到我的 AppDelegate.m 文件中时出现错误。当我
在 include 中使用尖括号和引号有什么区别?指令? #include <filename> #include "filename"
我目前正在寻找一种批量获取变量并仅解析文件名的方法。 例如,我将来自另一个应用程序的 -s 参数传递给我的批处理文件,该参数随后被设置为我的源变量。源文件变量通常包含如下内容:C:\Program F
在 GNU Makefile(在 Ubuntu Linux 系统上)中,如何删除列表中每个文件名的文件名后缀,以便在第一个点处截断文件名? 假设我有 NAMES = file1.a.b.c file2
我正在尝试从源代码安装rtorrent,但是在编译时出现错误。我正在使用新的Ubuntu 20.04 VM。 libtorrent安装 sudo apt update sudo apt upgrade
在 GNU Makefile(在 Ubuntu Linux 系统上)中,如何删除列表中每个文件名的文件名后缀,以便在第一个点处截断文件名? 假设我有 NAMES = file1.a.b.c file2
1-intro-to deepleanring and computer visionk.MKV 2.Kaggle Deep Learning - YouTube.MP4 Convolutional
我希望 gvim 始终在单独的窗口中打开并立即返回命令提示符。换句话说我想要 gvim filename 与相同 gvim filename & 看来我应该可以用别名来做到这一点。别名是否有特殊的通配
以下代码发送一个 GET 请求,该请求的响应应该在客户端 (Chrome) 上启动文件下载过程。 $.ajax({ type: "GET", traditional: true, asyn
我有一堆 filename.bz2.gz 的文件,我想将其转换为 filename.gz。 有什么帮助吗? 谢谢 最佳答案 有了您的文件名*.bz2.gz,我假设该文件是使用以下压缩顺序创建的: ec
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: Reference - What does this symbol mean in PHP? 我正在制作一个
如何合并 abc.mp4.tmp 与实际 交换文件abc.mp4 文件。我试图使用 Wowza Media server 3.6 录制现场事件,但录制的文件在最后一刻没有正确混合。 abc.mp4.t
我是一名优秀的程序员,十分优秀!