RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-207232

Iceman's questions

Martin Hope
Iceman
Asked: 2023-02-14 02:24:59 +0000 UTC

是否可以通过在对象本身中删除它来从 JS 对象中提取参数而不复制它?[关闭]

  • 5
关闭。这个问题需要澄清或补充细节。目前不接受回复。

想改进这个问题?添加更多详细信息并通过编辑此帖子澄清问题。

2 天前关闭。

改进问题

您需要对move变量执行某种对象,但只是为了不复制对象的整个参数,这可能是一个相当大的嵌套对象。例如:

let obj = {key1: val, key2: {/*very big data here*/}};
let data = SomeMoveFunction(obj, "key2");

// result
console.log(data); // Object {/*very big data here*/}
console.log(obj); // Object {key1: val}

不抄袭可以吗?

javascript
  • 2 个回答
  • 40 Views
Martin Hope
Iceman
Asked: 2022-08-01 21:45:24 +0000 UTC

如何覆盖输入元素上的上下文菜单?

  • 0

重新定义输入的上下文菜单不起作用。

在每个内部的表格中都有table-cell一个disabled input- 元素(文本或复选框)。table-row在块上设置了一个事件oncontextmenu。该菜单应该激活用于编辑、保存和停用的输入。不幸的是,仅当单击发生table-cell在输入开始之前(在 内padding)时才重新定义菜单,并且如果单击输入,则其上的设置event.preventDefault()不起作用,并且用于编辑输入的标准浏览器菜单出现。

如何绕过它?我希望用户只需单击表格的行,该行将在悬停时突出显示,而不是寻找自定义菜单可以工作的区域。

这是一个示例:它适用于块,但不适用于输入。

div {
    background: gray;
    padding: 8px;
    width: 32px;
    text-align: center;
}
Right click on input and div:<br>
<input type="text" value="input" disabled oncontextmenu="event.preventDefault();alert(event.x)">
<hr>
<div oncontextmenu="event.preventDefault();alert(event.x)">div</div>

[更新] 不适用于disabled输入。工作在活跃

javascript html
  • 2 个回答
  • 44 Views
Martin Hope
Iceman
Asked: 2022-06-20 17:30:16 +0000 UTC

如何将 JS 与导入连接,以便在 body.onload 中定义对象?

  • 0

有一个如下开头的 service.js 文件:

import Access from "./controls/access.js"
import Menu from "./controls/menu.js"
import User from "./controls/user.js"
import Admin from "./controls/admin.js"

class Service
{ ...

PHP中有一个页面生成:

$uri = $this->proto.$this->name."/public/";
$img = $uri."images";
$css = $uri."styles";
$js = $uri."scripts";
$html = <<<HTML
<html>
<head>
<title>My service</title>
<link rel="shortcut icon" type="image/x-icon" href="$img/favicon.ico">
<link rel="stylesheet" type="text/css" href="$css/style.css"/>
<script type="module" src="$js/service.js"></script>
</head>
<body onload="new Service('$this->control','$this->action');"></body>
</html>
HTML;

header("content-type: text/html; charset: UTF-8");
exit($html);

在浏览器控制台中加载页面时,消息Service is not defined. 如果您不在 js 中使用它并直接使用而不是import加载所有脚本,那么一切正常。如果您只是将类型更改为并保留导入,则会收到错误消息。script type="application/javascript"moduleapplication/javascriptimport declarations may only appear at top level of a module

如何正确地将脚本与导入连接(或以某种方式更改它)以使其工作?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2022-03-30 16:10:14 +0000 UTC

在遍历 NSMutableSet 时从 NSMutableSet 中删除元素的正确方法是什么?

  • 2

我不是为 Mac 开发的,但需要修复 Obj-C 代码中的错误。
有些NSMutableSet元素需要经过,如果满足某些条件,通过减少这个集合来移除元素。在 C++ 中,这是通过遍历if (remove) it = container.erase(); else ++it;. 与此等效的 Objective-C 看起来像NSMutableSet什么?

objective-c
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2022-03-10 15:21:16 +0000 UTC

如何在 C/C++ 中使用 OpenSSL 正确创建 CertificateVerify (TLS 1.3) 消息?

  • -1

我正在编写自己的 TLS 1.3 实现并卡在服务器 CertificateVerify 消息上 - 我无法弄清楚它是如何创建的。使用 openssl,s_server 从一个会话中获取示例消息,现在我正在尝试将我的签名与 CertificateVerify 参考消息的内容相匹配。我在 git 中发布了代码和工作文件(只有一个 216 行的 cpp 文件,主要内容在 main 中)。

请帮助我构建正确的 OpenSSL 方法调用堆栈,以便生成的签名与 s_server 颁发的 CertificateVerify 匹配。

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2022-02-22 16:18:07 +0000 UTC

记录大小限制中包含哪些内容 (TLS 1.3)

  • 0

我正在阅读 RFC,但无法弄清楚 Record TLS 1.3 中可以容纳的用户数据的最大大小...
规范指定了一个限制(1 << 14) + 1(16385 字节)。但我们也有一个 5 字节的条目头,1 个字节用于确定消息末尾的有效负载类型,以及 16 个字节的gcm_auth_tag.

请告诉我,这5+1+16是否包含在16385的限制中?或者只包括 1 + 16,或者只包括 1,或者什么都不包括,并且为应用程序数据计算整个限制?我正在编写自己的实现,我需要了解为记录分配的最大缓冲区。

tls
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2022-01-31 23:26:31 +0000 UTC

可以使用哪些套接字参数来确定 TCP 连接是否已建立?

  • 0

我创建了一个 TCP 套接字,使其成为非阻塞的,与 关联epoll_event,添加到epoll并调用connect. 如果connect它返回EWOULDBLOCK,我将挂起一个回调EPOLLOUT,在其中我想确定套接字何时准备好工作并将其删除EPOLLOUT,以便不再触发它进行写入。

如何确定连接已准备好(或完成但出现错误)?

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-08-18 17:00:02 +0000 UTC

如何回滚到旧提交,恢复所有已删除的文件?

  • 0

我们需要从一个特定的提交中恢复项目结构,其中包含在最后一次提交之前可能已被删除的所有文件。所有文件都没有通过一次还原返回到所需的提交。

如何将整个项目返回到所需的提交?

git
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-08-12 17:37:03 +0000 UTC

为什么 64 位字段的 sizeof 是 12 而不是 8?

  • 3

让我意想不到的转折:

struct frame_head
{
    unsigned size   : 24;
    unsigned height : 12;
    unsigned width  : 12;
    unsigned pts    : 15;
    bool key        :  1;
};
printf("%d\n", sizeof(frame_head)); // 12... Но почему не 8???

如果仅订购 64 位 / 8 个字节,为什么 GNU g++ 还需要 4 个字节?

c++
  • 2 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-05-09 02:27:07 +0000 UTC

如何以在变量中设置值的形式精确地将浮点/双精度转换为字符串(不修剪 zanks)?

  • 0

令我惊讶的是,我没有找到以变量的原始形式将 float / double 写入字符串的功能:

float val = 0.012345678900000;
std::string strval;
snprintf(&strval[0], strval.capacity(), "%g", val);
printf("%s\n", strval.data());

输出“0.01234567”,但应该是“0.012345678900000”。stringstream尝试过 - 相同的结果。std::to_string一般来说,点后面写6个字符。精度事先不知道,您需要将您拥有的内容卸载到字符串中,您可以在末尾不加零。

怎么做?

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-03-23 03:12:02 +0000 UTC

如何在 C++ 中“手动”使用 OpenSSL,完全控制网络部分

  • 1

您需要将 TLS 加密添加到服务器。在研究了 OpenSSL 文档之后,我发现了像SSL_connect、SSL_do_handshake和类似的方便包装器这样的函数,它们不仅可以处理加密/解密,还可以处理网络功能。

我不知道这些功能是如何安排在后台的,我想自己控制网络部分,让库只对数据缓冲区和证书文件进行加密工作。

对响应握手请求、验证证书、对从套接字读取(或写入套接字)的数据应用约定的加密算法的机制感兴趣

请告诉我 OpenSSL 库的哪些对象和函数适用于此,以及如何在这种情况下使用它们?

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-03-15 19:48:00 +0000 UTC

如果 fuser -k number/tcp 没有帮助,如何在 Debian 中释放端口?

  • 1

在服务器的开发过程中,经常需要打开/关闭它。自然不会立即释放端口,因为第 98 个错误导致服务器无法启动EADDRINUSE。我不想SO_REUSEADDR在套接字上使用它,无论如何我只需要硬关闭端口并启动服务器。

fuser -k номер/tcp它似乎工作,但错误仍然存​​在一段时间,服务器没有挂在进程中 - 它正确关闭。

在这种情况下如何释放端口?

linux
  • 2 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-03-06 06:32:46 +0000 UTC

如何创建静态包含其他库的静态 C++ 库?

  • 1

例如,我为使用 OpenSSL 编写了一个包装器,我想用这段代码制作一个静态库,但是在使用它的项目的链接器中,只添加-lmycryptowrap,而不是-lcrypto -lssl -lmycryptowrap.

MinGW 或 GNU 套件中的哪些工具用于此目的以及带有哪些标志/参数?

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-01-25 03:42:11 +0000 UTC

为什么 MessageBox 不显示?

  • 2

为什么在关闭程序之前没有出现MessageBox- 在窗口过程完成并观察其调用条件之后?只有在之前调用它时才会出现PostQuitMessage。

#include <windows.h>
//#include <cstdio>

long __stdcall WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
    if (uMsg == WM_CLOSE)
        PostQuitMessage(0);
    else if (!FindWindowExA(nullptr,nullptr,"TargetAppClass",nullptr))
        PostQuitMessage(1);
    return DefWindowProcA(hWnd, uMsg, wParam, lParam);
}

int __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR lpCmdLine, int nCmdShow) {
    (void) hPrevInstance;
    (void) lpCmdLine;
    (void) nCmdShow;

    WNDCLASSEXA WinClass;
    memset(&WinClass,0,sizeof(WNDCLASSEXA));
    WinClass.cbSize = sizeof(WNDCLASSEXA);
    WinClass.hInstance = hInstance;
    WinClass.lpfnWndProc = WindowProc;
    WinClass.lpszClassName = "MonitoringApp";

    CreateMutexA(NULL, TRUE, WinClass.lpszClassName);
    if (ERROR_ALREADY_EXISTS == GetLastError()) return ERROR_ALREADY_EXISTS;

    RegisterClassExA(&WinClass);
    auto win = CreateWindowExA(0,WinClass.lpszClassName,WinClass.lpszClassName,0,0,0,0,0,nullptr,nullptr,WinClass.hInstance,nullptr);
    MSG msg;
    while(GetMessageA(&msg,win,0,0)) {
        TranslateMessage(&msg);
        DispatchMessageA(&msg);
    }
//    printf("%u, %u\n",msg.message,msg.wParam); // показывает 18, 1 (WM_QUIT и код выхода)
    if (msg.wParam) // MessageBox не выводится. Почему?
        MessageBoxA(nullptr, "Seems that the TargetApp crashed", "Monitoring App", MB_ICONWARNING | MB_OK | MB_SYSTEMMODAL);
    return 0;
}
c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-12-23 20:26:11 +0000 UTC

如何在 EBML 标记(webm / matroska 容器)中生成 C++ 日期属性?

  • 2

视频服务器将传入的流写入磁盘,现在每个文件都必须带有流的时间戳。

根据文档, Date 属性是:

日期 - 有符号的 8 个八位字节整数,以纳秒为单位,0 表示千禧年的精确开始(在 2001-01-01T00:00:00.000000000 UTC)

我通过 MKVToolNix 将此属性插入到测试文件中,但我无法弄清楚如何将文档中的此语句与此数据进行比较:

ebml_date

也就是说,十六进制08 4F 27 F2 FA 64 20 00是 2019 年 12 月 22 日 21:00 UTC(字节顺序很可能是颠倒的) -如何在加号上获得这个值?

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-12-16 20:37:51 +0000 UTC

是否可以在覆盖子方法中调用父级的原始方法?

  • 1

有一个家长(关闭供公众使用):

class BaseElement {
protected:
    unsigned _guid, _size;
    char *_data;
    bool _swap;

    BaseElement(): _guid(0), _size(0), _data(nullptr), _swap(false) {}
public:
    virtual bool Get(char *data, unsigned size);
    //... other stuff
};

还有一个后代:

class SimpleBlock : public BaseElement {
    unsigned char _track, _flags;
    short _crpts;
public: 
    SimpleBlock(): _track(0), _flags(0), _crpts(0) { _guid = 0xA3; }
    bool Get(char *data, unsigned size) override;
    //... other stuff
};

child 方法的Get作用相同,只是它将指针data向前移动 4 个字节并从中获取其私有变量的值。Get由于 4 行在子中复制父代码在某种程度上并不美观。

使用上面的类定义,是否可以在Get子实现中调用相同的父方法并简单地添加操作_data?

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-10-07 23:28:29 +0000 UTC

请帮我完成常规(量词不起作用)

  • 2

您需要解析代理列表,其中一行如下所示:

23 192.169.214.83:63828 SOCKS5  HIA 2.374   US Скоттсдейл (Аризона) ip-192-169-214-83.ip.secureserver.net (GoDaddy.com, LLC)    100% (9)    07:10:19 13:00

应选择以下组:
id:23
ip:192.169.214.83
端口:63828
延迟: 2.374
正常运行时间:100
次测试:9

在 regex101 上,我做了以下表达式:

(\d{1,5}) (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):(\d{1,5}).+(\d{1,2}\.\d{1,3}).+(\d{3}).+(\d+)\)

问题是正常运行时间百分比可能不是 3 位数(100),而是 2(下面不感兴趣)。我试图在倒数第二组中写 not (\d{3}),但是(\d{2,3})- 然后它没有捕获第一个数字(在这种情况下,“00”出来)。在这种情况下,正确的写入方法是什么,以便正确捕获 100 和更小的两位数?

регулярные-выражения
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-09-26 23:40:51 +0000 UTC

如何将值作为浮点数写入 Uint8Array?

  • 0

我写一个这样的整数:

let value = 16000;
let buffer = new Uint8Array(4);
buffer[0] = 0xFF &(value >>24);
buffer[1] = 0xFF &(value >>16);
buffer[2] = 0xFF &(value >> 8);
buffer[3] = 0xFF & value;

因此,缓冲区是 0x00, 0x00, 0x3E, 0x80
在 JavaScript 中如何获得浮点值 0x46, 0x7A, 0x00, 0x00?

javascript
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-07-25 05:39:09 +0000 UTC

如何在 WM_CREATE 中接收创建时设置为窗口的名称?[关闭]

  • 0
关闭 这个问题是题外话。目前不接受回复。

寻求调试帮助的问题(“为什么这段代码不起作用? ”)应该包括期望的行为、具体的问题或错误,以及在问题中重现它的最少代码。没有明确描述问题的问题对其他访问者毫无用处。请参阅如何创建一个最小的、独立的和可重现的示例。

3年前关闭。

改进问题

创建一个窗口:

MainWindow = CreateWindowExW(
            WS_EX_TOPMOST,
            MainWindowClass.lpszClassName,
            L"Test Player",
            WS_POPUPWINDOW | SW_HIDE,
            0,0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN),
            nullptr, nullptr, hInstance, nullptr);

在 WM_CREATE 处理程序中,我想创建一个具有适当名称的托盘菜单(在本例中为“Test Player”):

case WM_CREATE:{
            if( Menu ) break;
            HINSTANCE hInstance = (HINSTANCE)GetWindowLongW(hWnd,GWL_HINSTANCE);
            Menu = CreatePopupMenu();

            int size = 24;
            wchar_t name[size];
            memset(name,0,size);
            GetWindowTextW(hWnd,name,size);
            wprintf(L"%ls / %d\n",name,GetWindowTextLengthW(hWnd)); // T / 1

            memset(&Tray, 0, sizeof (NOTIFYICONDATAW));
            Tray.cbSize = sizeof(Tray);
            Tray.hWnd = hWnd;
            Tray.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP | NIF_INFO;
            Tray.uCallbackMessage = WM_TRAY_MENU;
            Tray.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(ICO_MAIN));
            wcscpy(Tray.szTip, name);
            Shell_NotifyIconW(NIM_ADD, &Tray);

但是通过GetWindowText我分别只得到第一个字母“T”,并且名称的长度在控制台输出中显示 1 个字符GetWindowTextLengthW(hWnd)。此名称将是动态的,具体取决于应用程序的初始化设置,因此您不能将其设为全局名称。

如何在回调中获取窗口的名称?

[更新]

西里尔文正常阅读,拉丁文 - 没有。通知可以发送不同的字符组合,包括类型A和W

c++
  • 1 个回答
  • 10 Views
Martin Hope
Iceman
Asked: 2020-07-16 16:42:40 +0000 UTC

如何将指向对象的指针传递给窗口过程(回调)?

  • 1

需要在窗口回调中使用 main 中声明的类实例:
long __stdcall WindowProc(HWND, UINT, WPARAM, LPARAM);
如果 WPARAM 和 LPARAM 都已被其功能“占用”,如何将指针传递给该函数?

c
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5