小编Nur*_*yev的帖子

c ++ GetPrivateProfileString从当前目录读取ini文件

我在c ++上创建一个dll.它是一个Visual Studio项目.dll从ini文件中读取一些数据.我决定使用GetPrivateProfileString函数.它几乎完全有效.它没有在当前目录中看到文件.如何提供此参数(称为路径的变量)?

如何传递最后一个参数(路径)

码:

LPCTSTR path = L"\\test.ini";
TCHAR protocolChar[32];
int a = GetPrivateProfileString(_T("Connection"), _T("Protocol"), _T(""), protocolChar, 32, path);
Run Code Online (Sandbox Code Playgroud)

test.ini中的字符串:

[Connection]
Protocol = HTTP
Run Code Online (Sandbox Code Playgroud)

我也试过这个:

LPCTSTR path = L"test.ini";
Run Code Online (Sandbox Code Playgroud)

但它没有帮助我

c++ ini visual-studio

8
推荐指数
1
解决办法
2万
查看次数

如何在 C++ 上使用 WinHTTP 进行 HTTPS 调用(POST 请求)?

我正在 C++ 上编写程序以使用 WinHTTP 调用(POST 请求)到 Java Servlet。当我通过 HTTP 请求 POST 时一切正常,当我通过 HTTPS 请求时出现问题。它向服务器发送空请求但切断请求正文(但它有内容)

int sendPostRequest(char *pszPostData, LPCTSTR servletUrl, char* resultBuffer, ofstream &outputFile) {

    outputFile << "====================================== SENDING REEQUEST ======================================" << endl;

    HINTERNET hSession = WinHttpOpen(
        userAgent,
        WINHTTP_ACCESS_TYPE_NO_PROXY,
        WINHTTP_NO_PROXY_NAME,
        WINHTTP_NO_PROXY_BYPASS,
        0);
    if (!hSession)
    {
        _tprintf(_TEXT("Failed to open WinHTTP session: %ld\n"), GetLastError());
        outputFile << "Failed to open WinHTTP session: %ld\n" << GetLastError() << endl;
        return NULL;
    }
    else {
        _tprintf(_TEXT("Oppening WinHTTP session successful: %ld\n"), GetLastError());
        outputFile << "Oppening WinHTTP session successful: …
Run Code Online (Sandbox Code Playgroud)

c++ https winhttp

3
推荐指数
1
解决办法
6235
查看次数

docker nginx conainter 的日志存储在主机的哪里

我使用默认的 nginx 镜像和 Filebeat 来读取日志并将其发送到 ELK。两个容器(nginx 容器和 Filebeat 容器)都位于同一主机上。

这是 nginx 镜像的 Dockerfile

FROM nginx
COPY . /usr/share/nginx/html/
EXPOSE 80
Run Code Online (Sandbox Code Playgroud)

在我的 nginx 容器中,访问日志转到STDOUT,错误日志转到STDERR

当我从主机提示时,docker logs <nginx-containter-id>我可以看到来自 nginx 容器的日志。但主机上容器的文件夹中没有任何内容 ( /var/lib/docker/containers/nginx-container-id)

如何设置filebeat读取日志?

nginx docker elastic-stack filebeat

3
推荐指数
1
解决办法
9248
查看次数

如何使用私有 docker 注册表创建 docker swarm 服务

我有一个私有的 docker 注册表,当我从中提取图像时一切正常但是当我想启动 docker swarm 服务时:

docker service create --name myredis --network mynetwork --replicas 1 -p 6379:6379 myregistry:8082/redis
Run Code Online (Sandbox Code Playgroud)

,它显示了下一个错误

unable to pin image myregistry:8082/redis to digest: Head http://myregistry:8082/v2/redis/manifests/latest: no basic auth credentials
Run Code Online (Sandbox Code Playgroud)

创建 docker swarm 服务时如何使用本地注册表?

docker swarm docker-registry docker-swarm

2
推荐指数
1
解决办法
6033
查看次数

静态LPTSTR变量在函数执行后丢失值

我正在Visual Studio 2013上编写C++ DLL.我的dll应该从ini文件中读取参数.所以,我为此创建了一个函数(ReadConnectionSettings()).我的静态变量serverIP在函数工作期间正确获取值,但是一旦函数完成运行,变量(serverIP)就会丢失其值.什么似乎是问题?

static LPTSTR   serverIP = _TEXT("");

void ReadConnectionSettings()
{
    TCHAR url[256];

    GetPrivateProfileString(_T("Connection"), _T("Url"), _T(""), url, 256, NameOfIniFile);

    serverIP = url;

}
Run Code Online (Sandbox Code Playgroud)

c++ function lptstr

1
推荐指数
1
解决办法
355
查看次数

无法从c#调用用c ++编写的dll函数

我需要从C#console app调用一个用c ++编写的dll函数.我编写了编组并在C#中编写了相同的数据类型.但无论如何我得到错误.问题出在哪儿?

这是dll函数的代码

extern "C" {
SAMPLENATIVEDLL_API int GetCardInfoEx(INT64 Card, DWORD Restaurant, DWORD UnitNo, TCardInfoEx* Info, char* InpBuf, DWORD InpLen, WORD InpKind, char* OutBuf, DWORD OutLen, WORD OutKind) {
    int res = getCardInfoEx(Card, Info, UnitNo);
    return res;
}
Run Code Online (Sandbox Code Playgroud)

}

这是TCardInfoEx结构代码

#pragma pack(1)

typedef struct TCardInfoEx {

    WORD    Size;               
    BYTE    Deleted;            
    BYTE    Seize;              
    BYTE    StopDate;           
    BYTE    Holy;               
    BYTE    Manager;            
    BYTE    Blocked;            
    CHAR    WhyLock[256];       

    CHAR    Holder[40];         
    INT64   UserID;             
    DWORD   CardAccountNumber;  
    DWORD   TypeOfDefaulter;    
    WORD    Bonus;              
    WORD    Discount;           

    INT64   Summa;              

    INT64   AvailableSumma;     

    INT64 …
Run Code Online (Sandbox Code Playgroud)

c# c++ dll pinvoke marshalling

0
推荐指数
1
解决办法
251
查看次数