1、自己写了个聊天室软件,但是服务端的IP不固定,有没有什么办法可以解决
一、将服务端的IP写入客户端程序,然后再打包之后发放;
二、让客户端程序通过域名而不是IP进行连接。
希望我的回答能够帮助到你。敬请采纳。
2、怎么用易语言做一个类似于聊天室的软件,可以客户端和服务器端进行发送信息,类似于q q那样的,而且是
远程聊天不麻烦,麻烦是很难做到跟QQ一样的聊天框窗口,支持图片也支持其他文本信息
3、如何在自己电脑上架设聊天室服务器,使别人可以访问
必须是专线才可以,如果局内网不可以~~ asp架设首先要有IIS xp 和2000都有带 98你自己下 就是Internet 信息服务 安装完毕后你可以通过 计算机-网站-默认网站这几个步骤 然后点鼠标右键 新建虚拟目录 建立网站 如果还看不见就点右键 属性-配置 看看扩展名里有没有asp 如果没有添加一下 浏览C:\WINDOWS\System32\inetsrv\asp.dll 最后点你的网站目录 右键浏览就可以看见 php架设 第0步:\>软件、环境清单 本文侧重于Windows平台的Apache版本,而且仅用于调试学习用! 原贴地址: http://wjhen.3322.org/ipb/index.php?showtopic=32 ★软件环境: OS:Win2000/WinXP/Win2003 ★软件清单: 1.Apache Ver:1.3.33 (建议使用1.3.x版本,兼容性比较好) 下载地址: http://httpd.apache.org/download.cgi 2.ActivePerl Ver:5.6.1(建议使用5.6.1版本,兼容性比较好) 下载地址: http://www.activeperl.com/Procts/Downloa...x?id=ActivePerl 3.PHP Ver:4.3.10 (建议使用4.3.10版本,兼容性和安全性比较好) 下载地址: http://www.php.net/downloads.php 4.Windows Installer Ver:3.0(可选,如果软件无法安装请先安装,适用于Win2KSP3/Win2kSP4/Win2K3/WinXP/WinXPSP1) 下载地址: http://www.microsoft.com/downloads/details...14-a956122e08e8 [quote]第1步:\>开始安装Apache 下载完apache_1.3.33-win32-x86-no_src.exe,运行之,出现如图欢迎画面。[/quote] quote]第2步:\>Apache安装许可协议 当然选择我同意了。[/quote] [quote]第3步:\>Apache的一些说明 直接下一步吧。[/quote] [quote]第4步:\>填写主机参数 Network Domain:域名(填写你的主机的域名,如果单机调试可以任意填) Server Name:主机名(填写主机所在域的主机名,如果单机调试可以任意填) Administrator's Email Address:管理员Email信箱 Run as a service for All Users:将Apache服务器安装成系统服务(随系统启动而系统) Run When started manually,only for me:每次手工启动Apache服务器 如果不知道该怎么填,可以就按图中的那些参数填写,最好将Apache安装成系统服务。[/quote] [quote]第5步:\>选择自定义安装方式 请在这里尽量选择自定义安装方式,可以方便以后的调试。[/quote] [quote]第6步:\>选择Apache安装路径 请选择安装目录,这里尽量将安装路径选择为C:\,其实是安装到C:\Apache目录,因为这样路径简单化,以后写配置文件会省力好多。[/quote] [quote]第7步:\>复制Apache程序文件 请耐心等待一下。[/quote] [quote]第8步:\>Apache安装结束 请点击Finish完成安装。[/quote] [quote]第9步:\>Apache服务正处于自动运行状态 现在可以到管理工具的服务中查看,此时的Apache服务已经处于自动运行状态。[/quote] [quote]第10步:\>修改httpd.conf文件 httpd.conf文件路径:C:\Apache\conf\httpd.conf 注意:httpd.conf文件每行最前如果有#,表示这行注释,要去掉#才能使该行启用。 修改BindAddr
4、谁有服务器 我想合作开个本地聊天室 本人有程序
你好,本人有服务器,对开聊天室很感兴趣!
请你联系本人详谈,QQ147788328(注明聊天室)
5、现在国人都在用的国外服务器的聊天软件是什么?
IRC?
ICQ?
6、请问高手:如何在局域网架设个聊天室啊!要用什么软件请给个明确说明?
要想在局域网内就能轻松实现聊天,首先需要做的就是在局域网服务器中安装Chat Anywhere工具软件;在安装该工具之前,可以先到http://www.91s.net/Soft/Soft_3264.htm 处下载获得该工具软件的安装程序,然后用鼠标双击它,就能开始聊天服务的安装操作;安装过程中,几乎不需要你进行任何设置,只要你一路单击“next”按钮,该工具就会自动完成各种服务配置,并自动完成其他方面的安装任务。安装操作结束之后,双击系统桌面上的“chat anywhere”快捷图标,在随后出现的图1界面中,你将看到该程序已经默认地创建好几个不同类别的聊天室了,选中你认为合适的聊天室名称,再单击“OK”按钮,就能启动服务器中的聊天服务了。
当然要是你的服务器中已经架设好并启动了web服务器时,那么在启动内网聊天服务时就可能出现服务端口冲突的提示,这是因为内网聊天服务器在默认状态下也是使用的80端口;遇到这种情况,你可以在图2所示的端口冲突提示窗口中,为内网服务器指定一个其他的服务端口号,例如这里笔者为内网聊天服务器指定的服务端口号为“8009”,单击“OK”按钮后,需要重新启动内网聊天服务器。
7、拜求 :Java写的一个简单的聊天室或者FTP服务器下载程序。
FTP服务器下载端?这个比较好写,我恰好有个。
引用了一些其它方法,你直接删了就行。
import java.io.DataInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.log4j.Logger;
import cn.com.ultrapower..HighFeeBean;
import cn.com.ultrapower.jdbc.AbstractJdbcUtil;
import sun.net.TelnetInputStream;
import sun.net.ftp.FtpClient;
public class FtpUtil {
private Logger logger = Logger.getLogger(FtpUtil.class);
private FtpClient ftpClient;
private String hostName;
private int port;
private String userName;
private String password;
private SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
private AbstractJdbcUtil jdbcUtil;
private String temp = "temp";
private static SimpleDateFormat sdfDB = new SimpleDateFormat(
"yyyyMMddHHmmss");
/**
* 默认构造方法
*
* @param hostName
* @param port
* @param userName
* @param password
*/
public FtpUtil(String hostName, int port, String userName, String password) {
this.hostName = hostName;
if (port > 0) {
this.port = port;
}
this.userName = userName;
this.password = password;
}
/**
* 打开连接
*
* @return
*/
public boolean open() {
if (ftpClient != null && ftpClient.serverIsOpen()) {
return true;
}
try {
ftpClient = new FtpClient();
ftpClient.openServer(hostName, port);
ftpClient.login(userName, password);
ftpClient.setConnectTimeout(60 * 1000);
return true;
} catch (Exception e) {
e.printStackTrace();
ftpClient = null;
return false;
}
}
/**
* 改变工作目录
*
* @param workdir
* @return
*/
public boolean cd(String workdir) {
if (!open()) {
return false;
}
try {
ftpClient.cd(workdir);
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
}
/**
* 断开连接
*
* @return
*/
public boolean disconnect() {
try {
if (ftpClient.serverIsOpen()) {
}
ftpClient.closeServer();
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
}
public boolean bin() {
if (!open()) {
return false;
}
try {
ftpClient.binary();
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
}
/**
* 从ftp下载文件到本地 fileNameList 服务器上的文件
*
* @param newfilename
* 本地生成的文件路径
* @return
* @throws Exception
*/
public void downloadFile(List<String> fileNameList, String localedirectory) {
logger.info("begin to downloadFile--------->"+fileNameList.size());
TelnetInputStream is = null;
FileOutputStream os = null;
try {
for (String str : fileNameList) {
File ff = new File(str);
HighFeeBean highFeeDao = new HighFeeBean();
highFeeDao.setFtpFName(ff.getName());
highFeeDao.setStat("1");
jdbcUtil.insertFtpFile(highFeeDao);
File localFileDir = new File(localedirectory);
if (!localFileDir.exists()) {
localFileDir.mkdirs();
}
is = ftpClient.get(str);
java.io.File outfile = new java.io.File(localedirectory
+ File.separator + new File(str).getName());
os = new FileOutputStream(outfile);
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) {
os.write(bytes, 0, c);
}
logger.info("download fileName---->" + ff.getName());
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (is != null) {
is.close();
}
if (os != null) {
os.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
*
* 外部调用方法
*
* @param localDirectory
* @param ftpDirectory
*/
public void downLoad(String localDirectory, String ftpDirectory) {
List<String> list = getFileList(ftpDirectory);
logger.info("ftpListSize()------->"+list.size()+";ftpDirectory------>"+ftpDirectory);
List<String> today = isToday(list);
logger.info("downLoad.size()----->"+today.size());
if (today.size() == 0) {
return;
}
downloadFile(today, localDirectory + File.separator + temp);
}
public List<String> getFileList(String ftpDirectory) {
List<String> list = new ArrayList<String>();
DataInputStream dis;
try {
// ftpClient.list();
char ch = ' ';
if (ftpDirectory.length() > 0)
ch = ftpDirectory.charAt(ftpDirectory.length() - 1);
for (; ch == '/' || ch == '\\'; ch = ftpDirectory
.charAt(ftpDirectory.length() - 1))
ftpDirectory = ftpDirectory.substring(0,
ftpDirectory.length() - 1);
dis = new DataInputStream(ftpClient.nameList(ftpDirectory));
String filename = "";
while ((filename = dis.readLine()) != null) {
list.add(filename);
}
} catch (IOException e) {
e.printStackTrace();
}
return list;
}
public List<String> isToday(List<String> list) {
if (list.size() == 0 || list == null) {
return new ArrayList<String>();
}
List<String> today = new ArrayList<String>();
String reg = sdf.format(new Date());
Pattern pattern = Pattern.compile(reg);
Pattern pattern2 = Pattern.compile(getYestoryday());
for (String str : list) {
Matcher matcher = pattern.matcher(str);
Matcher matcher2 = pattern2.matcher(str);
if (matcher.find() || matcher2.find()) {
logger.info("filedown------------------->"+str);
today.add(str);
}
}
logger.info("today.size()111111------->"+today.size());
return isNeedDown(today);
}
public List<String> isNeedDown(List<String> today) {
logger.info("today.size()22222------->"+today.size());
if (today.size() == 0 || today == null) {
return null;
}
List<String> list = new ArrayList<String>();
for (String str : today) {
String fileName = new File(str).getName();
logger.info("fileName----->"+fileName);
if (jdbcUtil.isNeeddown(fileName)) {
list.add(str);
}
}
logger.info("isNeedDown.size()"+list.size());
return list;
}
public String getYestoryday() {
long d = new Date().getTime() - 24 * 60 * 60 * 1000;
Date date = new Date(d);
return sdf.format(date);
}
public static void main(String[] args) {
FtpUtil fu = new FtpUtil("130.84.201.10", 21, "unionmon", "monitor");
fu.open();
fu.bin();
long begin = System.currentTimeMillis();
List<String> list = fu
.getFileList("/array_indb_2/detach/highreport/reportbak");
List<String> today = fu.isToday(list);
System.out.println(System.currentTimeMillis() - begin);
long begin2 = System.currentTimeMillis();
fu.downloadFile(today, "D:" + File.separator + "test" + File.separator
+ "test");
System.out.println(System.currentTimeMillis() - begin2);
fu.disconnect();
}
public FtpClient getFtpClient() {
return ftpClient;
}
public void setFtpClient(FtpClient ftpClient) {
this.ftpClient = ftpClient;
}
public String getHostName() {
return hostName;
}
public void setHostName(String hostName) {
this.hostName = hostName;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getPort() {
return port;
}
public void setPort(int port) {
this.port = port;
}
public AbstractJdbcUtil getJdbcUtil() {
return jdbcUtil;
}
public void setJdbcUtil(AbstractJdbcUtil jdbcUtil) {
this.jdbcUtil = jdbcUtil;
}
public String getTemp() {
return temp;
}
public void setTemp(String temp) {
this.temp = temp;
}
}
8、求一个简单java多人聊天室程序,服务器不需要界面,客户端需要登陆和聊天界面,登陆时检测重复的用户
求一本耽美小说书名
受是农村人,攻是城里人,有一个情节是攻去农村受的家里,忘记了是攻还是受穿裤子拉链卡住了,结果还是用剪刀剪掉的,我只记得这点,小说比较老了,求书名
9、想用易语言的客户端和服务端做一个聊天室软件。求实现多客户端同时聊天的思路!
http://www.5a5x.com/06/201104/04273056.html
10、仿UC大型P2P在线聊天室IM软件(服务端+网站后台+客户端)
那个都是要钱啊,我也想要啊。兄弟,