我目前正在尝试开发一个应用程序,使用cURL和c ++将文件上传到Amazon S3存储桶.仔细阅读S3开发人员指南后,我已经开始使用cURL实现我的应用程序并按照开发人员指南的描述形成Header,经过大量的试验和错误以确定创建S3签名的最佳方法后,我现在面临501错误.收到的标题表明我正在使用的方法没有实现.我不确定我错在哪里,但这是我发送给亚马逊的HTTP标头:
PUT /test1.txt HTTP/1.1
Accept: */*
Transfer-Encoding: chunked
Content-Type: text/plain
Content-Length: 29
Host: [BucketName].s3.amazonaws.com
Date: [Date]
Authorization: AWS [Access Key ID]:[Signature]
Expect: 100-continue
Run Code Online (Sandbox Code Playgroud)
出于安全原因,我已截断了Bucket Name,Access Key ID和Signature.
我不确定我做错了什么,但我认为错误是由于接受和传输编码字段(不确定)而产生的.所以任何人都可以告诉我我做错了什么或为什么我得到501.
我被要求研究一种在 QT 之外管理 QTWebKit 模块的方法。这个想法是使用 QTWebKit 作为应用程序的界面(GUI)。所需的(管理器)应该作为 GUI 和用 C++ 编写的主应用程序之间的通信手段。
管理器的设计方式应使其能够生成 Java 查询并处理来自 GUI 本身的事件,并根据用户交互和/或来自主应用程序的消息更新来更新页面。
我们认为建立内部网络服务器的选择有点慢,坦率地说,我不确定如何或从哪里开始设计,因为几乎所有与 QTWebKit 相关的示例都只是简单的网络浏览器。
如果有人可以向我指出一篇在线文章或示例,该文章或示例实现或讨论了与我正在谈论的内容类似的内容,我将不胜感激。
请注意,当前的问题不是 QTWebKit 如何操作和更新 HTML 页面,问题是它如何与其他应用程序通信以及其他应用程序如何向 QTWebKit 发送信息
我曾经发生过这个问题,但我仍然不知道如何解决。我有一个Windows服务,当该服务运行时,它首先需要模拟已登录的用户(活动用户)以加载一些保存在用户的应用程序数据文件夹中的路径和设置。每当新用户登录到Windows时,我正在使用的代码就可以完美地工作,除非一次服务出现了模拟错误并模拟了系统会话而不是actie。正如我说的那样,这仅发生过一次,但我无法真正说出原因。
这是检查活动会话的内容以及模拟的方式:
首先,当服务检测到登录事件时,它将通过调用查询活动会话ID
WTSGetActiveConsoleSessionId();
Run Code Online (Sandbox Code Playgroud)
然后它通过调用WTSQuerySessionInformation来检查会话是否处于活动状态(已连接),如下所示:
WTS_CONNECTSTATE_CLASS wts_connect_state = WTSDisconnected;
WTS_CONNECTSTATE_CLASS* ptr_wts_connect_state = NULL;
DWORD bytes_returned = 0;
if (::WTSQuerySessionInformation(
WTS_CURRENT_SERVER_HANDLE,
session_id,
WTSConnectState,
reinterpret_cast<LPTSTR*>(&ptr_wts_connect_state),
&bytes_returned))
{
ASSERT(bytes_returned == sizeof(*ptr_wts_connect_state));
wts_connect_state = *ptr_wts_connect_state;
::WTSFreeMemory(ptr_wts_connect_state);
return (WTSActive == wts_connect_state);
}
Run Code Online (Sandbox Code Playgroud)
其中session_id是WTSGetActiveConsoleSessionId()返回的会话ID。
然后我使用查询用户令牌 WTSQueryUserToken
然后,如果成功,则服务调用GetTokenInformation如下:
DWORD neededSize = 0;
HANDLE *realToken = new HANDLE;
if(GetTokenInformation(hImpersonationToken, (::TOKEN_INFORMATION_CLASS) TokenLinkedToken, realToken, sizeof(HANDLE), &neededSize))
{
CloseHandle(hImpersonationToken);
hImpersonationToken = *realToken;
}
Run Code Online (Sandbox Code Playgroud)
其中hImpersonationToken是从中检索的令牌 GetTokenInformation
如果以上所有方法均成功,则调用
DuplicateTokenEx( hImpersonationToken,
0,
NULL,
SecurityImpersonation,
TokenPrimary,
phUserToken );
CloseHandle( hImpersonationToken );
Run Code Online (Sandbox Code Playgroud)
如果成功,则将使用检索到的令牌模拟
ImpersonateLoggedOnUser(phUserToken); …Run Code Online (Sandbox Code Playgroud) 我在linux上使用wine emulator(SliTaz 4.0),我想更改wine语言环境,以便对话框和消息以日语显示.
我发现这个工具http://code.google.com/p/winelocale/似乎可以完成这项工作,但我找不到任何地方的下载链接,也无法联系作者,所以有人知道该怎么做?
我真的不确定这个工具(WINELocale)是否真的有用,所以我愿意接受任何将WINE的语言环境改为日语的建议.
谢谢
我正在尝试为短视频创建转码功能。该功能托管在AWS Lambda上。问题是,至少在亚马逊看来,AWS lambda似乎缺少FFMPEG所需的东西。
我之前联系了亚马逊,这是他们对问题的回应:
我们发现FFMPEG操作至少需要libx264和acc库,这两个库都有它们自己的依赖性。要解决该问题,将需要更深入地研究完整的依赖链。我们可以看到它可以在Amazon Linux环境中工作,但是该环境与lambda环境相似但不相同。由于Lambda在容器上运行,因此在Amazon Linux中可能存在某些依赖关系,但在lambda环境中不存在。在这里,由于FFmpeg是第三方软件,因此很难深入依赖关系链并验证版本兼容性。不幸的是,这势必会进入架构和代码支持,这超出了AWS Support范围1。希望您了解我们的局限性。但是,如果FFmpeg支持人员对Lambda平台有任何疑问,请告知我们,我们将竭诚为您服务。一旦您收到FFmpeg支持的更新,提示Lambda端存在问题,我们将可以更好地进行进一步调查。
根据AWS的建议,我联系了开发人员邮件列表上的FFMPEG,但我的消息被拒绝,原因是它比ffmpeg用户邮件列表更适合开发人员。一周前,我已将电子邮件发送至“ ffmpeg-user@ffmpeg.org”,但尚未收到任何回复。
然后,我去建立了一个动态链接的ffmpeg版本,确保将所有库打包,检查每个库的ddl,然后制作一个小的lambda函数,循环遍历所有二进制文件,然后填充每个二进制文件,与我从亚马逊获得的输出相比Linux和lambda和AWS Linux实例上都存在相同的依赖项/版本,但是ffmpeg在lambda上仍然失败。
您可以在这里找到详细的日志文件:https : //www.datafilehost.com/d/6e5e21bb
这是我遇到的错误的一个示例,在整个日志文件中重复出现:
2018-08-14T12:27:10.874Z [h264 @ 0x65c2fc0]隐藏P帧中的2628 DC,2628 AC,2628 MV错误
2018-08-14T12:27:10.874Z [aac @ 0x65d2f00]未分配通道元素2.11
2018-08-14T12:27:10.874Z解码流#0:1时出错:处理输入时发现无效数据
2018-08-14T12:27:10.874Z [h264 @ 0x67e86c0]无效的NAL单位大小(108085662> 1649)。
2018-08-14T12:27:10.874Z [h264 @ 0x67e86c0]将输入拆分为NAL单元时出错。
2018-08-14T12:27:10.874Z [aac @ 0x65d2f00]未分配通道元素2.0
2018-08-14T12:27:10.874Z解码流#0:1时出错:处理输入时发现无效数据
2018-08-14T12:27:10.874Z [h264 @ 0x68189c0]无效的NAL单位大小(71106974> 1085)。
2018-08-14T12:27:10.874Z [h264 @ 0x68189c0]将输入拆分为NAL单元时出错。
2018-08-14T12:27:10.874Z [aac @ 0x65d2f00]八个短序列中不允许使用脉冲工具。
尝试对此文件执行HLS转码时,将生成此日志:https : //www.datafilehost.com/d/999a4492
请注意,问题不仅与该文件无关,也与HLS,它的一般性问题以及所有视频上发生的所有问题以及任何试图查找流的ffmpeg命令有关,甚至尝试使用可能的最简单形式从视频中提取单个帧例如:ffmpeg -ss 00:00:02 -I file.mp4 -vframes 1 -y output.jpg在日志文件中也因相同的错误而失败。
不知道如何进一步调试。尝试使用“ -loglevel debug”启用调试日志,但没有提供任何其他信息。任何帮助或建议
我是正则表达式的新手.最近我遇到了将通配符模式转换为正则表达式的任务.这将用于检查文件路径是否与正则表达式匹配.
例如,如果我的模式是 *.jpg;*.png;*.bmp
我能够通过分割分号,转义字符串并*替换转义符来生成正则表达式.*
String regex = "((?i)" + Regex.Escape(extension).Replace("\\*", ".*") + "$)";
Run Code Online (Sandbox Code Playgroud)
所以我生成的正则表达式将用于jpg ((?i).*\.jpg)$)
Thien我使用OR运算符组合所有扩展.
因此,我对此示例的最终表达式将是:
((?i).*\.jpg)$)|((?i).*\.png)$)|((?i).*\.bmp)$)
Run Code Online (Sandbox Code Playgroud)
我已经测试了它并且它工作但我不确定我是否应该添加或删除任何表达以涵盖其他情况或者是否有更好的格式整个事情
还要记住,我可以遇到一个通配符*myfile.jpg,它应该匹配名称以myfile.jpg结尾的所有文件
我可以遇到像这样的模式 *myfile.jpg;*.png;*.bmp
我正在Windows 8计算机上测试我的桌面应用程序,我注意到任务管理器详细信息视图中有一个名为"操作系统上下文"的新列.这显示我的应用程序在"Windows Vista"上下文中运行.
我没有在应用程序清单中指定任何内容来强制应用程序在Visual Studio中的此上下文中运行.该应用程序是一个Visual C++应用程序,并在Visual Studio 2010中构建.
不要误解我的意思,应用程序在Windows 8上运行顺畅,所以我不打算解决崩溃或错误.看到这样的事情并想修理它让我感到很恼火.
所以我的问题是如何让我的应用程序在Windows 8下的"Windows 8"上下文中运行?
我正在尝试为一些文件获取sha-1.我目前所做的是循环给定路径中的文件,分别打开和读取每个文件,并将内容加载到缓冲区中,然后将其发送到openssl的SHA函数以获取哈希值.代码看起来像这样:
void ReadHashFile(LPCTSTR name)
{
FILE * pFile;
long lSize;
char * buffer;
size_t result;
pFile = _tfopen ( name , L"rb" );
if (pFile==NULL) {fputs ("File error",stderr); return;}
// obtain file size:
fseek (pFile , 0 , SEEK_END);
lSize = ftell (pFile);
rewind (pFile);
if(lSize == -1){fputs ("Read Error",stderr);return;}
// allocate memory to contain the whole file:
buffer = (char*) malloc (sizeof(char)*lSize);
if (buffer == NULL) {fputs ("Memory error",stderr); return;}
// copy the file into the buffer:
result = …Run Code Online (Sandbox Code Playgroud) 创建注释器客户端时,我想使用其他凭证文件。我目前可以使用transalte API做到这一点,如下所示:
Credentials creds = ServiceAccountCredentials.fromStream(new FileInputStream("path/to/credentials.json"));
return TranslateOptions.newBuilder().setCredentials(creds).build().getService();
Run Code Online (Sandbox Code Playgroud)
是否有使用的等效方法ImageAnnotatorClient?
编辑:我正在使用谷歌云的Java SDK版本:1.16.0
我正在执行此应用程序,它取决于存储在xml文件中的设置.此文件应加密,其中的值由负责创建应用程序设置的人员提供,并用于根据用户安装的版本确定可用的功能选项.
我需要一种方法来存储在我的软件中硬编码的密码,以便能够在运行时解密该文件并读取其中的值以查看用户可以访问的应用程序的哪些功能.
请记住,不应编辑此文件,并将其作为软件的一部分提供.
我没有提供任何代码,因为它更多的是设计问题而不是编码问题.
我知道硬编码密码是愚蠢的,但我没有选择.
c++ ×3
windows ×3
c# ×2
aac ×1
amazon-s3 ×1
aws-lambda ×1
credentials ×1
cryptography ×1
curl ×1
encryption ×1
ffmpeg ×1
file ×1
h.264 ×1
java ×1
libcurl ×1
linux ×1
locale ×1
openssl ×1
passwords ×1
qt ×1
qtwebkit ×1
regex ×1
visual-c++ ×1
webkit ×1
wildcard ×1
windows-7 ×1
windows-8 ×1
wine ×1
winforms ×1