草庐IT

only_roman_chars

全部标签

java - 在 WIndows 上的 Java 中,如何检测文件是否具有 'Read Only' 属性

在Windows中,文件可能不可写,因为用户由于访问控制列表权限而无权修改文件,或者只是因为文件设置了只读属性。我的应用程序是用Java编写的,这些情况中的任何一个都可能导致Files.isWritable(file)失败,但是我如何确定导致失败的情况,具体来说,我只想知道是否设置了只读属性。我注意到有一个File.setReadOnly()方法(以及File.setWritable()),我假设在Windows上这只会设置属性,但似乎没有File.isReadOnly()方法。 最佳答案 我使用此方法检查是否只读,(它使用自定义方

windows - raw_interfaces_only 用法?

有人可以解释一下raw_interfaces_only实际上做了什么吗?例如,#importraw_interfaces_only一行解释我看不懂providedinthemsdnsite. 最佳答案 MSDNsays:Suppressesthegenerationoferror-handlingwrapperfunctionsandproperty(C++)declarationsthatusethosewrapperfunctions.和Theraw_interfaces_onlyattributealsocausesthede

windows - Win32 API - CurrentWindow 到 Message-Only-Window 并返回到原始窗口

我使用SetParent将窗口更改为仅消息窗口,但是当我尝试使用SetParent恢复窗口时,我要么没有恢复窗口,要么出现大量延迟?示例源代码。//Changetomessage-onlyHWNDnewParent=SetParent(currentHandle,HWND_MESSAGE);//ChangebackSetParent(newParent,currentHandle); 最佳答案 您已将参数颠倒过来。要恢复您需要的原始parent:SetParent(currentHandle,newParent);请记住,在这两种情

windows - 在哪里存储 'read-only' , 'non-removable' 应用程序安装日期用于演示目的

我必须将演示安装日期存储在客户端PC上的某个位置。应用程序演示期以安装日期计算。显然用户不可能编辑或删除这个值。如何做到这一点?由于Citrix,我们无法使用HKLM注册表由于Vista,无法使用/ProgramFiles由于Citrix,无法使用/Documentsandsettingserm...除了询问用户“选择您要存储安装日期的位置”之外还有什么吗...:-)一个解决方案是连接到服务器并在那里验证它,但这意味着需要互联网连接,这......很糟糕...... 最佳答案 您可以创建一个包含日期的简单文件,以及一些机器特定信息并

c++ - 如何从 IStream 读取到一个 char 数组并将其写入另一个 IStream?

我试图通过套接字连接发送图像,但我遇到了以下代码的问题://streamtochararraySTATSTGmyStreamStats;ULONGbytesSaved;myStream->Stat(&myStreamStats,0);char*streamData=newchar[myStreamStats.cbSize.QuadPart];if(myStream->Read(streamData,myStreamStats.cbSize.QuadPart,&bytesSaved)==S_OK)coutWrite(streamData,myStreamStats.cbSize.Quad

c++ - Windows 函数中的 char* 或 LPCWSTR

我遵循了有关创建Windows的教程-使用标准windows.hheader的窗口。WNDCLASSEXwc;...ec.lpszClassName=applicationName;起初编译时,applicationName是一个char*并且一切正常,但现在我需要重新创建项目(顺便说一下MSVC++),并且在我尝试编译它时,它需要是一个LPCWSTR。我偶然发现了很多,想知道为什么它有时接受char*而有时不接受!?我的项目设置中是否遗漏了什么?顺便说一句:同样的事情发生在D3DX11CreateShaderResourceViewFromFile(d3ddevice,filenam

将十六进制字符串转换为 unsigned char[]

我想将一个字符串,例如“00-00-CA-FE-BA-BE”转换为unsignedcharch[6]数组。我曾尝试使用sscanf,但无论出于何种原因,它都会因变量macAddress后的堆栈损坏而崩溃。我猜格式说明符有问题,但我似乎没弄对。#include#includecharstring1[]="00-00-CA-FE-BA-BE";charseps[]="-";char*token1=NULL;char*next_token1=NULL;intmain(void){unsignedcharmacAddress[6];unsignedcharch;intidx=0;printf(

windows - 为什么此 QString 到 const char* 的转换会在 Windows 上生成 Debian 标识符?

我试图在Qt中包装libssh2,并具有以下代码:constchar*username=inUsername.toLocal8Bit().data();constchar*password=inPass.toLocal8Bit().data();问题是用户名和密码没有连接到系统。为什么?因为根据调试器,username"5.1p1Debian-6ubuntu2"password"5.1p1Debian-6ubuntu2"这些不是我为用户名或密码提供的值。我试过toAscii、toLatin1和附加(或不附加).data()。尽管如此,我还是得到了这些值,而不是预期值。我在Windows

c++ - wchar_t 和 char16_t 在 Windows 上是一样的吗?

我有一个std::u16string的实例,我可以将它的c_str()传递给需要LPCWSTR的Win32API,而无需任何类型的转换?例如,我可以安全地这样做吗:autou16s=std::u16string(u"Hello");::SetWindowTextW(hWnd,reinterpret_cast(u16s.c_str()));已更新,MSDN说herewchar_t是UTF-16LE,而char16_t只是没有指定字节序的UTF-16。那么可以安全地假设char16_t在Windows上也始终是UTF-16LE吗?或者那是特定于MSVC编译器的,因此如果我使用GCC编译,它

C++ REG_SZ 到 char* 并在没有提升权限的情况下读取 HKLM

所以我一直在尝试从注册表中获取REG_SZ值并将其存储为char*。环顾互联网后,这就是我想出的。问题是我得到的值不是存储在注册表中的值,我得到了一堆随机垃圾。我将如何正确获取该值?HKEYhKey;charvalue[256];//Openthekeyif(RegOpenKeyEx(HKEY_LOCAL_MACHINE,"HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0\\",0,KEY_QUERY_VALUE,&hKey)!=ERROR_SUCCESS){return"";}//ReadthevalueDWORDdwType=RE