论坛: 编程破解 标题: 请教286兄,关于C语言的问题。 复制本贴地址    
作者: hzqqun [hzqqun]    论坛用户   登录
我用C语言写程序然后把它编译成可执行文件。我想问的就是怎样才能把我编译后的可执文件改图标。
最好是在shell32.dll中或者我自己做个test.ico文件然后连接上去。(有可能这样做吗?)

地主 发表时间: 05-07-25 22:11

回复: 286 [unique]   版主   登录
VC还是TC,作的是for windows还是for dos程序?

B1层 发表时间: 05-07-26 09:45

回复: hzqqun [hzqqun]   论坛用户   登录
是用TC写的。for windwos的程序。如果能做到和dos兼容,那就太好了。

B2层 发表时间: 05-07-26 10:18

回复: 286 [unique]   版主   登录
TC写的会被认为是DOS程序,因此采用系统默认图标。

B3层 发表时间: 05-07-27 11:21

回复: hzqqun [hzqqun]   论坛用户   登录
谢谢,还有能不能把下面的代码用汇编语言写出来实现同样功能,谢谢286兄。。

main()
{
char *enterpassword,*password="abc";
int i;
printf ("please enter the password\n");
scanf ("%s",enterpassword);
i=strcmp(enterpassword,password);
loop:
if (i!=0)
{
printf ("password is wrong!\n");
scanf("%s",enterpassword);
i=strcmp(enterpassword,password);
goto loop;
}
else
{
clrscr();
printf("            **********************************************************\n");
printf("\n");
printf("                                  Welcome To DOS!\n");
printf("\n");
printf("            **********************************************************\n");
exit(0);
}
}


B4层 发表时间: 05-07-27 19:38

回复: 286 [unique]   版主   登录
毫无疑问的一点是:任何语言编的程序,只要是编译成exe,都可以用同样汇编语言实现。
你说的那段程序当然也不例外,并且实现起来很简单。
其中printf和scanf分别用21h中断的15h以前的调用,具体调用记不清了。那个循环和比较可以用汇编中的循环。

如果你仅为实现,而不是看具体代码,可直接用DEBUG把程序反汇编出来,可能会比较大,那是因为加了很多保护。
以上内容如果看不懂,请参阅置顶贴汇编教程。

B5层 发表时间: 05-07-28 09:19

回复: hzqqun [hzqqun]   论坛用户   登录
反汇编出来的代码好像只是告诉你它是怎么运行工作的,好像不可能直接用这样代码进行汇编编译吧?


B6层 发表时间: 05-07-28 19:49

回复: bug_me [bug_me]   论坛用户   登录
反汇编出来的只是代码段的内容


B7层 发表时间: 05-07-30 02:17

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号