小编Tre*_*ery的帖子

如何将64位和32位可执行文件绑定到一个?

好吧,所以我的想法是将64位和32位Windows可执行文件绑定到一个应用程序的某种方式,所以如果它不运行64位版本,它将尝试32位版本.

我正在阅读有关PE的内容,并了解了一些关于MS-DOS Real Mode Stub的内容,并说明了它如何调用应用程序(通常是错误消息).但每次我尝试研究MS-DOS Real Mode Stub时,它似乎只显示错误消息.所以我的想法是用我的32位应用程序覆盖STUB.

当32位操作系统运行64位可执行文件时,我自己很天真,它会失败,然后运行存根文件.

有没有办法让我的可执行程序32位/ 64位独立?

windows executable fat-binaries portable-executable 32bit-64bit

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

通过注册表将上下文菜单项添加到特定扩展

让我们首先说我在 Windows 10 上,我已经看过很多关于这个主题的帖子,但似乎没有一个对我有用。看这篇文章已经解决了一些问题,但我仍然需要一些帮助。仅针对特定文件类型将菜单项添加到 Windows 上下文菜单

我想要做的是将特定项目添加到仅显示“上传图像”的图像(我将从 .jpg 开始)。这是我到目前为止所拥有的:

  • 我搜索了默认值HKEY_CLASSES_ROOT\.jpg是 jpegfile。
  • 我添加了这个键 HKEY_CURRENT_USER\SOFTWARE\Classes\jpegfile\shell\ImagePanel\command
  • 我将命令默认值设置为我的应用程序目录。

完成所有这些之后,唯一改变的是上下文菜单在“打开方式”下显示我的应用程序,并且在上下文菜单上实际上没有自己的位置。

我在这里做错了吗?

windows registry contextmenu

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

SOCKS 5 服务器 - BND.PORT 和 BND.ADDR

在 C++ 中(我没有包含代码,因为这更多的是协议理解问题),我正在创建一个 SOCKS5 服务器,并且有一些问题,因为客户端在我向其发送批准的消息后终止连接。在 RFC 中,它说 BND.ADDR 和 BND.PORT 用于: RFC 1928

o BND.ADDR 服务器绑定地址

o BND.PORT 服务器绑定端口(按网络八位字节顺序)`

在对 CONNECT 的回复中,BND.PORT 包含服务器分配用于连接到目标主机的端口号,而 BND.ADDR
包含关联的 IP 地址。

这是我的问题,

  1. 什么是 BND.PORT?我应该为它指定什么?
  2. “分配用于连接到目标主机的服务器”是什么意思 目标主机是“客户端”吗?
    1. 我已经从头到尾阅读了 RFC 大约 5 遍,但我还没有理解它,有人可以更详细地介绍 BND.PORT 及其含义吗?

我在 Wireshark 中嗅探,发现 BND.PORT 对于每个发出的请求都是不同的。(我不确定要输入哪个端口,因为我尝试的所有操作都导致 Proxifer(袜子客户端)显示“服务器进行了意外重播 - 连接终止”

来自实际 SOCKS5 服务器(不是我的)的 Wireshark 连接十六进制转储: 在此输入图像描述 在此输入图像描述

socks

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

C++ - 将 wchar_t 转换为网络字节并返回

主要原因是因为我通过套接字发送 Unicode 数据(字节,而不是字符),并且我想确保字节序匹配,因为 wchar_t 是 UTF16。

接收程序也是我的另一个程序,所以我会知道它是 UTF16 并且能够做出相应的反应。

这是我目前的算法,这种算法有效,但结果很奇怪。(这是在同一个应用程序中,因为我想在发送之前学习如何转换它)

case WM_CREATE: {   


    //Convert String to NetworkByte
    wchar_t Data[] = L"This is a string";
    char* DataA = (char*)Data;
    unsigned short uData = htons((unsigned int)DataA);

    //Convert String to HostByte
    unsigned short hData = ntohs(uData);
    DataA = (char*)&hData;
    wchar_t* DataW = (wchar_t*)DataA;
    MessageBeep(0);


    break;
}
Run Code Online (Sandbox Code Playgroud)

结果:

??????????????????This is a string
Run Code Online (Sandbox Code Playgroud)

c++ tcp winsock2

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

C ++-Windows Iot Core远程调试器-调试器无法启动

我刚刚购买了Raspberry Pi 3,并且试图在Pi上设置和远程调试应用程序。

我一直在做一些研究,Microsoft已经记录了将调试身份验证类型“ Universal”用于物联网设备。(当我使用“通用”时,尝试调试时出现错误)

错误:

Error DEP6953 : Failed to launch remote debugger with the following error: 'DEP6953 : Failed to launch remote debugger with the following error: 'Command failed: 0x800705b4'.'.    BackgroundApplication2  
Run Code Online (Sandbox Code Playgroud)

但是,如果我将身份验证更改为“无身份验证”,则应用程序将成功部署到我的Raspberry Pi中,但我无法对其进行实际调试(在断点处暂停,等等)

这是我得到的错误: 在此处输入图片说明

我的当前设置: 在此处输入图片说明

那么,在PI上执行代码时,是否有任何方法可以在Visual Studio上逐步执行代码?我需要下载一些额外的东西吗?

c++ windows debugging core iot

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

Windows COM C++ - 使用删除或释放

我想问一个简单的问题,我有一个 Direct2D 工厂,当我准备清理时,我会调用删除还是使用发布成员?我看到一些教程只是显式调用删除,所以我很好奇哪个更安全,除非发布成员所做的所有操作都是在后台调用删除等。

Graphics::~Graphics() {

    if (Factory) //Factory->Release(); or  delete Factory;
    if (Render) //Render->Release();  or delete Render;
}
Run Code Online (Sandbox Code Playgroud)

c++ windows com

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

直播视频的基本概念

我是业余C++开发人员,他对将实时视频流式传输到另一台计算机的概念感兴趣.

这是一个非常简单的抽象概念,我对发生的事情有所了解,并且喜欢运行它,虽然你们看看我是否直截了当地了解了我的事实.

我理解直播的方式是这样的:

  1. 服务器设置UDP服务器(最容易理解它的消息而不是常量连接)(我知道有很多其他原因,为什么流将使用UDP,但解析数据真的是我的弱点)

    1. 服务器读取编码的视频数据(我不知道它发送的速度有多快,例如一次一帧数据,等等)
    2. 服务器发送给客户端
    3. 客户端接收视频和解码
    4. 客户端向用户显示视频.

这是基本的想法吗?还是有更多.我想将相机附加到我的覆盆子pi上,然后只显示网络浏览器的实时信息(我相信它必须学习rstp)

video encode live-streaming

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