草庐IT

wide-winapi

全部标签

c# - 在 Windows 8 Pro 平板电脑中使用 WinAPI 抛出 AccessViolationException

我正在尝试使用MagnificationAPI为32位Windows8Pro平板电脑编写辅助功能应用程序。应用程序可以完美地放大和缩小全屏,但是当放大时,点击事件被发送到未放大屏幕的错误位置,因此用户无法准确触摸到他所看到的内容。为了解决这个问题,我尝试了MagSetInputTransform(fSetInputTransform,rcSource,rcDest)。它适用于64位Windows8桌面,但当我在平板电脑上测试时,出现以下错误:System.AccessViolationException:Attemptedtoreadorwriteprotectedmemory.Thi

C# 相当于 C (WinAPI) 中的 DllMain

我有一个较旧的应用程序(大约2005年),它接受dll插件。该应用程序最初是为Win32C插件设计的,但我有一个可用的C#dll模板。我的问题:我需要做一些一次性初始化,这在Win32Cdll中将在DllMain中完成:BOOLAPIENTRYDllMain(HANDLEhModule,DWORDul_reason_for_call,LPVOIDlpReserved){[one-timestuffhere...]}是否有与此等效的C#?我的C#模板中没有“DllMain”。我尝试了文字C#解释,但没有成功:dll可以工作,但不会触发DllMain函数。publicstaticboolD

c# project-wide 使用别名指令

C#有一个叫做Usingaliasdirectives的特性.他们允许你做一个像这样的类型的别名:usingCustomerId=MyComp.MyProject.Core.EntityKey;然而,此功能仅适用于每个文件。我正在寻找一种方式-任何方式-在整个项目甚至整个解决方案范围内执行此操作。我想这样做的原因是因为我想删除像EntityKey这样的文字的冗长,EntityKey等。我喜欢避免在每个文件中定义这些别名。EntityKey是struct,所以我无法创建派生类。 最佳答案 不,那不存在。别名严格针对每个文件。

java - 作者为什么提出HBase Tall-Thin schema over Short-Wide 里面描述的?

我正在阅读有关Tall-Thin与Short-WideHBase模式设计的文章,作者提出了以下我不理解的推理:It'sbesttoconsidertheTall-Thindesignasweknowitwillhelpinfasterdataretrievalbyenablingustoreadthesinglecolumnfamilyforuserblogentriesatonceinsteadoftraversingthroughmanyrows.Also,sinceHBasesplitstakeplaceonrows,datarelatedtoaspecificusercanbe

java - 如何在java中使用winapi函数?

我正在用java做一个项目,它有在数据库中添加文件的功能,我想使用winapi函数来选择文件。我该怎么做? 最佳答案 到目前为止,最简单的方法是使用JavaJNA,它已经有来自stcalls的翻译。您可以在JavaWorld上找到它的基础教程(同样以Winapi为例).您也可以使用JNI,但JNI要求您使用专门构建的头文件进行接口(interface)连接,而且总的来说更难维护和使用。不过在某些情况下它会稍微快一些。 关于java-如何在java中使用winapi函数?,我们在Stack

从设备手柄(Winapi)获取当前的剪辑路径

我正在寻找一种解决方案,如何通过使用Winapi调用来从设备手柄(HDC)(HDC)提取当前的剪辑路径(HDC)(移至,行移至,Bezier曲线)。例如,Winapi允许使用使用和XOR和DIFF逻辑运算符创建复杂的剪辑路径,并且可以以不同的方式使用。例如,下面的代码将创建三个圆圈,并将其与一些逻辑合并(Mode1和Mode2):voidclippingTest(HDCdc,intx,inty,std::wstringconst&text,intmode1,intmode2){SaveDC(dc);HBRUSHredBrush=CreateSolidBrush(RGB(255,0,0));HB

可靠地知道Winapi是否可以消除卷

我正在使用DeviceIoControl(dev,IOCTL_DISK_GET_DRIVE_GEOMETRY,NULL,0,&driveInfo,sizeof(driveInfo),&dwResult,NULL)检查是否driveInfo.MediaType是RemovableMedia或者FixedMedia,但看来我的所有卷都被“看到”为固定:\\.\C:NTFSFixed,thisisok-internalharddrive\\.\D:NTFSFixed,thisisok-internalharddrive\\.\E:NTFSFixed,thisisok-internalharddriv

c++ - 处理打开方式的事件 (WinApi)

我找不到我应该如何在我的程序中处理文件打开。例如,如果用户使用OpenWith...myprogram.exe那么我该如何处理它并对其进行处理。发送哪个WM_Message?谢谢*不,我的意思是如果你有sometext.txt和openwithNotepad.exe,它会神奇地显示文本,所以我怎么知道是否有人使用了OpenWith。 最佳答案 没有发送消息,您可能会在命令行上获取它,使用argc/argv或GetCommandLine()shell首先检查NoOpenWithKCR\Applications\myprogram.ex

c++ - WINAPI_FAMILY_PARTITION 有什么作用?

我正在阅读头文件winapifamily.h的定义并注意到WINAPI_FAMILY_PARTITION的以下定义:#defineWINAPI_FAMILY_PARTITION(Partitions)(Partitions)宏的一般用法(作为示例)如下:#ifWINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)现在一头雾水,好像就相当于#ifWINAPI_PARTITION_APP#ifWINAPI_FAMILY_PARTITION(...)有什么意义?这是winapifamily.h头文件的相关部分:/**HeaderfilesusetheWIN

c++ - WinAPI:正确地将 HBITMAP 复制到剪贴板

我在尝试将HBITMAP复制到剪贴板时遇到了一些困难。我的HBITMAP是从COLORREF数组创建的,我能够正确显示它。这是它的创建方式:COLORREF*colors=newCOLORREF[imageSize[0]*imageSize[1]];for(inti=0;i为了将我的位图复制到剪贴板,我使用了这段小代码:OpenClipboard(hWnd);EmptyClipboard();SetClipboardData(CF_BITMAP,hBitmap);CloseClipboard();当我执行我的应用程序时,我可以复制位图并将其粘贴到某个地方,例如在MSPaint中。但是如