Chinaunix首页 | 论坛 | 博客
  • 博客访问: 226883
  • 博文数量: 53
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 507
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-22 13:38
文章分类

全部博文(53)

文章存档

2009年(1)

2008年(52)

我的朋友

分类: 系统运维

2008-08-19 15:35:24

今天开始,重新认识socket 编程,在用vc 6.0 的过程中出的问题,都贴出来,以便以后注意;
一 ,
fatal error C1010: unexpected end of file while looking for precompiled header directive
 
 
   肯定是一个新添加的类的.cpp文件开头没包含stdafx.h,在该文件最前面加上即可。
    
{补充:
#include   "stdafx.h"  
  对预编译头文件说明如下:  
   
  所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。  
   
  预编译头文件通过编译stdafx.cpp生成,以工程名命名,由于预编译的头文件的后缀是“pch”,所以编译结果文件是projectname.pch。  
   
  编译器通过一个头文件stdafx.h来使用预编译头文件。stdafx.h这个头文件名是可以在project的编译设置里指定的。编译器认为,所有在指令#include   "stdafx.h"前的代码都是预编译的,它跳过#include   "stdafx.   h"指令,使用projectname.pch编译这条指令之后的所有代码。  
   
  因此,所有的CPP实现文件第一条语句都是:#include   "stdafx.h"。    
      }
    BOBO的意见:
    有时可以使用右键点击项目工程中的该cpp文件,选择setting,在c/c++栏,选择PreCompiled headers,然后设置第一选项,选择不使用预编译头,解决这个问题。
 
二,

XGF_Client.obj : error LNK2001: unresolved external symbol
XGF_Server.obj : error LNK2001: unresolved external symbol
XGF_Client.obj : error LNK2001: unresolved external symbol
XGF_Server.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
XGF_Socket.obj : error LNK2001: unresolved external symbol
Debug/test.exe : fatal error LNK1120: 24 unresolved externals
Error executing link.exe.
Creating browse info file...
test.exe - 27 error(s), 0 warning(s)
 
解答:
(1)
编VC网络程序遇到一个问题。原来是少了一个WSOCK32.LIB

告诫一下自己:
     在VC中进行WINSOCK的API编程开发的时候,需要在项目中使用下面三个文件,否则会出现编译错误。
  1.WINSOCK.H: 这是WINSOCK API的头文件,需要包含在项目中。
  2.WSOCK32.LIB: WINSOCK API连接库文件。在使用中,一定要把它作为项目的非缺省的连接库包含到项目文件中去。
  3.WINSOCK.DLL: WINSOCK的动态连接库,位于WINDOWS的安装目录下。
(2)
   由于没有添加对应的Ws2_32.lib库引起的,添加的方法如下:
按alt+f7打开project settings对话框,选Link,在Object/library modules中加入ws2_32.lib即可
(3)
    也可以加载wsock32.lib
方法:打开project settings对话框,选Link,在Object/library modules中加入wsock32.lib
 
 
 
 
 
 
阅读(2100) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~