能力值:
( LV5,RANK:70 )
|
-
-
2 楼
cout<<"请输入密码“<<endl
char my[]=new char[5];
cin>>my;
if (my[0]="d" && my[1]="x")
MessageBoxA(0,"ok","ok",0);
else
MessageBoxA(0,"WRIONG","WRIONG",0);
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
楼上的可以给出完整的程序吗?
本人菜鸟,还是有疑惑!
|
能力值:
( LV5,RANK:70 )
|
-
-
4 楼
就是获取密码然后比较啊
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
#include<stdio.h>
#include<string.h>
#define PASSWORD "123456"
int check(char *password) //验证密码
{
int a;
a = strcmp(password,PASSWORD);
return a;
}
int main()
{
int flag=0;
char password[1024];
while(1)
{
printf("please input password: ");
scanf("%s",password);
flag = check(password);
if(flag)
{
printf("密码错误!\n\n");
}
else
{
printf("密码正确!\n");
break;
}
}
return 0;
}
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
2楼给出的是C++了,不是C
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
5楼的兄弟程序写的可以。
|
能力值:
( LV4,RANK:50 )
|
-
-
8 楼
又看到LZ的头像。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
#include "stdio.h"
#include "string.h"
#include "conio.h"
void main()
{
char pwd[]="123456";
char str[7];
printf("Please enter the password!\n");
scanf("%s",str);
while(strcmp(pwd,str)!=0)
{
printf("Password Error!\n");
fflush(stdin);
scanf("%s",str);
}
printf("Conglatulations!\n");
getche();
//后面是你程序的方要代码
}
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
回5楼,我要的是窗口和登录前后的提示,可以用画图的功能给个窗口吗?
谢谢了!大家有好的程序,继续给我参考哈!呵呵!谢谢了!
|
能力值:
( LV5,RANK:70 )
|
-
-
11 楼
C++下如何在当前代码加入一定量字节的空代码
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
C++下如何在当前代码加入一定量字节的空代码
可以在适当位置加入:
__asm
{
_emit 0x90
_emit 0x90
_emit 0x90
......
}
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
回9楼还是不明白,我要的是完整的程序,思路我是有了,但是我在短时间内还是无法写出来,所以劳驾高手代劳!
谢谢了!
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
我要的是窗口和登录前后的提示,可以用画图的功能给个窗口吗?
你是要提示窗口可以把 printf 换成 MessageBox 前面在加入 #include <windows.h>
你要是想整个程序都是窗口的话,你得新建一个Win32应用程序或MFC工程
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
楼主先确定要写 控制台程序 还是 win32应用程序?
|
能力值:
( LV5,RANK:70 )
|
-
-
16 楼
追风傲雪
厉害哈~~我要的是一定量的空代码,比如100字节
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
回15楼,现在TC20可以画图实现窗口的!
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
总结,其实楼主还不知道什么是窗口,
console是窗口,window也是窗口
都不知道你说的是那种
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
楼主要sdk 还是mfc来完成?
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
我要的是dos界面的或者是windows界面的窗口都可以!多谢各位的解答,但是我还是不明白,希望高手给出完整代码!我要的是C语言写的代码!还请各位看看我的主贴就明白我要问什么了!
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
控制台的用 5楼或者9楼的都可以,都是完整代码
下面这个是window窗口的,我看你要的是直接复制就可以编译的代码,
就仿照汇编的风格写了这个,笫一次用SDK写
#include <windows.h>
#include "Shlwapi.h"
#define EditID 1
#define ButtonID 2
LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,PTSTR szCmdLine,int iCmdShow)
{
WNDCLASS wndcls;
wndcls.cbClsExtra=0;
wndcls.cbWndExtra=0;
wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
wndcls.hCursor=LoadCursor(NULL,IDC_ARROW);
wndcls.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wndcls.hInstance=hInstance;
wndcls.lpfnWndProc=WinSunProc;
wndcls.lpszClassName="windows";
wndcls.lpszMenuName=NULL;
wndcls.style=CS_HREDRAW | CS_VREDRAW;
RegisterClass(&wndcls);
HWND hwnd;
hwnd=CreateWindow("windows","Make By 泥芭",WS_OVERLAPPEDWINDOW,
0,0,300,150,NULL,NULL,hInstance,NULL);
ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd);
MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
HWND hEdit;
HWND hButton;
CHAR wStr[1024]="0";
switch(uMsg)
{
case WM_DESTROY:
PostQuitMessage(0);
break;
case WM_CREATE:
hEdit=CreateWindowEx(NULL,"Edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,10,30,120,25,hwnd,HMENU(EditID),NULL,NULL);
hButton=CreateWindowEx(NULL,"button","确定",WS_CHILD|WS_VISIBLE|WS_BORDER,120,30,60,25,hwnd,HMENU(ButtonID),(HINSTANCE) GetWindowLong(hwnd, GWL_HINSTANCE), NULL);
case WM_COMMAND:
if ((lParam!=0)&&((wParam&0xffff)==ButtonID))
{
GetDlgItemText(hwnd,EditID,wStr,1024);
if (StrCmp(wStr,"123456"))
{
MessageBox(NULL,"密码错误!",NULL,MB_OK);
}
else
{
MessageBox(NULL,"密码正确","恭喜",MB_OK);
}
}
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
}
|
能力值:
( LV2,RANK:10 )
|
-
-
22 楼
我要的是一定量的空代码,比如100字节
100字节的空间还是在堆栈中构造吧,把栈顶抬高64h
sub esp, 64h
在代码段除了用 _emit伪指令,实在难以想出别的办法
另外,默认代码段是不可以写的,如果你改变linker参数
#pragma comment(linker,"/section:.text,rwe")
即便是成功了,也难以保证不会出意料
|
能力值:
( LV2,RANK:10 )
|
-
-
23 楼
回21楼还是没有成功!头文件#include <windows.h>就出错了!本人真的是才开始学C语言,不懂在所难免,请大家指教!
|
能力值:
( LV2,RANK:10 )
|
-
-
24 楼
估计是TC库里没有windows.h这个头文件...
楼主还是改用VC吧,TC实在是...
|
能力值:
( LV2,RANK:10 )
|
-
-
25 楼
#include <windows.h>
#include "Shlwapi.h"
#pragma comment(linker,"/subsystem:windows");
#define EditID 1
#define ButtonID 2
LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,PTSTR szCmdLine,int iCmdShow)
{
WNDCLASS wndcls;
wndcls.cbClsExtra=0;
wndcls.cbWndExtra=0;
wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
wndcls.hCursor=LoadCursor(NULL,IDC_ARROW);
wndcls.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wndcls.hInstance=hInstance;
wndcls.lpfnWndProc=WinSunProc;
wndcls.lpszClassName="windows";
wndcls.lpszMenuName=NULL;
wndcls.style=CS_HREDRAW | CS_VREDRAW;
RegisterClass(&wndcls);
HWND hwnd;
hwnd=CreateWindow("windows","Make By 泥芭",WS_OVERLAPPEDWINDOW,
0,0,300,150,NULL,NULL,hInstance,NULL);
ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd);
MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
HWND hEdit;
HWND hButton;
CHAR wStr[1024]="0";
switch(uMsg)
{
case WM_DESTROY:
PostQuitMessage(0);
break;
case WM_CREATE:
hEdit=CreateWindowEx(NULL,"Edit",NULL,WS_CHILD|WS_VISIBLE|WS_BORDER,10,30,120,25,hwnd,HMENU(EditID),NULL,NULL);
hButton=CreateWindowEx(NULL,"button","确定",WS_CHILD|WS_VISIBLE|WS_BORDER,120,30,60,25,hwnd,HMENU(ButtonID),(HINSTANCE) GetWindowLong(hwnd, GWL_HINSTANCE), NULL);
case WM_COMMAND:
if ((lParam!=0)&&((wParam&0xffff)==ButtonID))
{
GetDlgItemText(hwnd,EditID,wStr,1024);
if (StrCmp(wStr,"123456"))
{
MessageBox(NULL,"密码错误!",NULL,MB_OK);
}
else
{
MessageBox(NULL,"密码正确","恭喜",MB_OK);
}
}
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
}
|
|
|