2 Star 4 Fork 4

精易科技/eapi

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
eapi_79_NetAddConnection.cpp 1.28 KB
一键复制 编辑 原始数据 按行查看 历史
AlongsCode 提交于 2023-02-09 00:42 +08:00 . 部分重构
#include "..\include_eapi_header.h"
inline bool NetAddConnection(char* path, char* dev) {
std::string device = dev;
if (device.size() > 1 && device.back() != ':')
device += ':';
std::string remote_path = path;
if (remote_path.size() > 2 && remote_path.substr(0, 2) != "\\\\")
remote_path = "\\\\" + remote_path;
NETRESOURCEA NetResource = { 0 };
NetResource.dwType = RESOURCETYPE_ANY;
NetResource.dwScope = RESOURCE_GLOBALNET;
NetResource.dwUsage = RESOURCEUSAGE_CONNECTABLE;
NetResource.lpLocalName = const_cast<char*>(device.c_str());
NetResource.lpRemoteName = const_cast<char*>(remote_path.c_str());
NetResource.lpProvider = NULL;
if (::WNetAddConnection2A(&NetResource, 0, 0, 0) != NO_ERROR)
return false;
return true;
}
// 调用格式: SDT_BOOL 映射网络驱动器, 命令说明: "将指定的网络资源映射到本地驱动器。成功返回真;失败返回假。"
// 参数<1>: 网络资源路径 SDT_TEXT, 参数说明: "要映射到本地的网络资源路径。"
// 参数<2>: 驱动器 SDT_TEXT, 参数说明: "映射到本地的驱动器名。"
EAPI_EXTERN_C void eapi_NetAddConnection_79_eapi(PMDATA_INF pRetData, INT nArgCount, PMDATA_INF pArgInf)
{
if (pArgInf->m_pText && pArgInf[1].m_pText && *pArgInf[1].m_pText != '\0')
{
pRetData->m_bool = NetAddConnection(pArgInf->m_pText, pArgInf[1].m_pText);;
}
else
{
pRetData->m_bool = FALSE;
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/JYtechnology/eapi.git
git@gitee.com:JYtechnology/eapi.git
JYtechnology
eapi
eapi
master

搜索帮助