1、c++编译的dll供C# 调用 获取当前域名
C++有方法直接获取到站点域名吗?
通过cookies了?
还是通过js来获取吧。
asp.net可以有办法直接获取吖。不知道你实际情况是怎么样的产品需求
2、怎么用c或者c++代码获取默认DNS服务器的ip
这里的代码可以打印出电脑默认的DNS服务器
#pragma warning(disable:4996)3、java如何获取计算机域名
request.getRemoteAddr()
或者
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
这两种都可以
4、怎样获得本机域名
在DOS 状态下,用 nslookup IP地址,即可知道你的域名。例如:C:\>nslookup 1.2.3.4
5、VC 如何获取本机 域名 或 工作组
1. 使用
int DimCount;
void main()
{
LPNETRESOURCE lpNetRC_p=NULL;
DimCount=0;
Enumerate(lpNetRC_p) ;
}
2.回调函数
bool Enumerate(LPNETRESOURCE lpNetRC_p)
{
int UserCount=0;
HANDLE hEnum = 0;
DWORD dwScope = RESOURCE_GLOBALNET ;
DWORD dwType = RESOURCETYPE_ANY;
DWORD dwResult = WNetOpenEnum(
dwScope, // scope of enumeration
dwType, // resource types to list
0, // enumerate all resources or RESOURCEUSAGE_CONTAINER
lpNetRC_p, // pointer to resource structure (NULL at first time)
&hEnum // handle to resource
);
if( dwResult != NO_ERROR )
{
int re=GetLastError();
return FALSE;
}
DWORD dwBuffer = 16384 ; // 16K is reasonable size
DWORD dwEntries = 0xFFFFFFFF ; // enumerate all possible entries
LPNETRESOURCE lpBuffer;
// first allocate buffer for NETRESOURCE structures ...
lpBuffer=(LPNETRESOURCE)GlobalAlloc(GPTR,dwBuffer ) ;
dwResult = WNetEnumResource(hEnum,&dwEntries,lpBuffer,&dwBuffer);
if( dwResult == NO_ERROR )
{
for( register DWORD i = 0 ; i <dwEntries;i++)
{
// memcpy(&lpBuffer[i],&lpBuffer[i],sizeof(NETRESOURCE));
if(lpNetRC_p)
{
if(lpBuffer[i].dwDisplayType==RESOURCEDISPLAYTYPE_DOMAIN)
{
//这里就是得到获取本机 域名 或 工作组名并把它放到数组中
strcpy((char *)DimInfo[DimCount++].dimName,lpBuffer[i].lpRemoteName);
}
else
{ //这里就是得到的用户名并把它放到数组中
strcpy((char *)DimInfo[DimCount-1].User[UserCount++].UserName,lpBuffer[i].lpRemoteName+2);
if(UserCount>=20)UserCount=0;
}
}
DWORD a=lpBuffer[i].dwDisplayType,c=lpBuffer[i].dwUsage;
//RESOURCEUSAGE_CONTAINER == (lpBuffer[i].dwUsage & RESOURCEUSAGE_CONTAINER)
//上面的条件枚举所有的网络资源
if(a==6||a&RESOURCEDISPLAYTYPE_DOMAIN==RESOURCEDISPLAYTYPE_DOMAIN||c&RESOURCEUSAGE_CONTAINER==RESOURCEUSAGE_CONTAINER)
{
if(!Enumerate(&lpBuffer[i]))
{
return FALSE;
}
//strcpy((char *)User[UserCount++].UserName,lpBuffer[i].lpRemoteName+2);
//if(UserCount>=20)UserCount=0;
}
}
}
else if(dwResult != ERROR_NO_MORE_ITEMS)
{
return FALSE;
}
if(lpBuffer) GlobalFree((HGLOBAL) lpBuffer) ;
WNetCloseEnum(hEnum) ;
return TRUE;
}
6、C语言怎么获取完整的计算机名称
用GetComputerNameEx()函数。
函数原型:
BOOL WINAPI GetComputerNameEx(参数NameType 名称类型,lpBuffer 接收名字的缓冲区指针 lpnSize接收名字的缓冲区大小
返回值:成功返回非0值,失败返回0
实例:
#define _WIN32_WINNT 0x05007、PHP 如何获取当前的域名?
<?
//获取当前的域名:
echo $_SERVER['SERVER_NAME'];
//获取来源网址,即点击来到本页的上页网址
echo $_SERVER["HTTP_REFERER"];
$_SERVER['REQUEST_URI'];//获取当前域名的后缀
$_SERVER['HTTP_HOST'];//获取当前域名
dirname(__FILE__);//获取当前文件的物理路径
dirname(__FILE__)."/../";//获取当前文件的上一级物理路径
?>
(新顶级域名top域名O(∩_∩)O)
8、用C语言编写一个得到域名的IP的程序
||输入 域名
结果的 4小节整数 存 int d1,d2,d3,d4 变量中。
#include <stdio.h>
#include <stdlib.h>
void main()
{
char ym[80]="www.baidu.com";
FILE *fp;
char cmd[120];
char nameout[]="tmp_ping.txt"; // 临时文件
char str3[32];
int i,len,d1,d2,d3,d4;
printf("Enter domain address\n");
scanf("%s",&ym[0]);
sprintf(cmd,"ping %s -n 1 > %s\0",ym,nameout);
system(cmd);
fp = fopen(nameout,"r");
fscanf(fp,"%*s %*s %s",&str3[0]);
fclose(fp);
len = strlen(str3);
for (i=0;i<len;i++) if ( str3[i] == '[' || str3[i] == ']'|| str3[i] == '.') str3[i] = ' ';
sscanf(str3, "%d %d %d %d",&d1,&d2,&d3,&d4);
printf("ip=%d.%d.%d.%d\n",d1,d2,d3,d4);
sprintf(cmd,"ERASE /F /Q %s\0",nameout); // 删去临时文件
system(cmd);
getchar();
}
程序未考虑错误域名和无IP返回的域名,你可以自己补充几行处理程序。