小编Dav*_*nan的帖子

Visual Studio:如何创建一个可以编译2个exe文件的项目?

所以我在main.cpp和main2.cpp中都使用了int main.我希望得到2个exes.是否可能以及创建此类项目的指示是什么?

c++ executable visual-studio-2008 visual-studio

24
推荐指数
3
解决办法
2万
查看次数

活动窗口上的Windows系统事件是否已更改?

我正在开发的桌面应用程序需要知道在运行应用程序时哪些窗口处于活动状态.目前它每250毫秒执行一次GetForegroundWindow()呼叫user32.dll.方法不是很准确.

是否有任何Windows(WINAPI?)事件在每次活动(聚焦)窗口更改时触发?我想订阅我的回调函数.

谢谢.

.net c# windows hook winapi

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

"cdecl"代表什么?

是的,我知道"cdecl"是一个突出的调用约定的名称,所以请不要向我解释调用约定.我要问的是缩写(?)"cdecl"实际上代表什么.我认为这是一个糟糕的命名选择,因为乍一看它提醒了一个"C声明者"(C的一个相当独特的句法方面).实际上,有一个名为cdecl的程序,其唯一目的是解密C声明.但据我所知,C声明符语法与调用约定完全无关.

简化版:"stdcall"代表"标准调用约定"."cdecl"代表什么?

c c++ cdecl calling-convention nomenclature

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

Python中是否支持稀疏矩阵?

在python中是否支持稀疏矩阵?

可能是numpy还是scipy?

python numpy scipy sparse-matrix

22
推荐指数
2
解决办法
3万
查看次数

我在哪里可以找到基本的几何例程?

我在哪里可以找到几何算法,它可以回答"简单"问题,如果有两个线交叉,如果一个点在多边形内,依此类推.

我擅长数学,但这个主题对我来说有点过时了.但令我惊讶的是,我找不到合适的例程,解决了这些问题.

delphi

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

获取当前目录的这些方法有什么区别?

它们都给出相同的结果,即包含正在执行的exe的文件夹的位置.我确信.net BCL中没有好的或坏的方法.它们在特定情况下都是合适的.哪一个适合哪种情况?

var appBaseDir = AppDomain.CurrentDomain.BaseDirectory; 
var currentDir = Environment.CurrentDirectory; 
var dir = Directory.GetCurrentDirectory(); 
var path = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
Run Code Online (Sandbox Code Playgroud)

c#

22
推荐指数
3
解决办法
4661
查看次数

Windows如何决定是否显示UAC提示?

在我的VB6应用程序中,我打开其他EXE文件.我的应用程序在没有任何UAC提示的情况下运行,但我有一个检查软件更新的EXE.这会提示UAC提示.那么Windows如何决定是否显示UAC提示?我看到了这个链接.那么它取决于我在我的应用程序中编写的代码吗?有趣的是,我的应用程序(即主EXE文件)不会提示UAC,而检查和下载更新的小EXE会提示UAC.我已经对所有EXE文件进行了数字签名.我已经看过以下链接了:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa511445.aspx

http://technet.microsoft.com/en-us/library/cc505883.aspx和其他一些.

但我仍然不清楚它.

windows security vb6 uac windows-7

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

"现在打包强制字节对齐记录"是什么意思?

Delphi XE2的新功能包含以下内容.

现在打包强制字节对齐记录

如果您的遗留代码使用打包记录类型,并且您想要与外部DLL或C++链接,则需要从代码中删除"packed"一词.packed关键字现在强制字节对齐,而在过去它不一定这样做.行为更改与Del​​phi 2009中的C++对齐兼容性更改有关.

我不明白这一点.我正在努力解决这一问题:而在过去,它并不一定会这样做.我无法调和的是,压缩总是导致记录的字节对齐,据我所知.任何人都可以给出一个非字节对齐的打包记录的例子吗?显然,这必须是早期版本.

为什么文档说"如果你想与外部DLL或C++链接,你需要删除代码中的单词"?如果外部代码使用了#pragma pack(1)那么如果打包是非限制我们该怎么办?

$ALIGN指令怎么样?是{$A1} and {$A-}相当于packed或者是有一些额外的意义与packed

我似乎错过了一些东西,如果有人能够解释这一点,我会很感激.或者文档真的很差?

更新

我有理由相信文档是指记录本身的对齐而不是记录的布局.这是一个小程序,它表明packed记录的使用强制记录的对齐为1.

program PackedRecords;
{$APPTYPE CONSOLE}
type
  TPackedRecord = packed record
    I: Int64;
  end;

  TPackedContainer = record
    B: Byte;
    R: TPackedRecord;
  end;

  TRecord = record
    I: Int64;
  end;

  TContainer = record
    B: Byte;
    R: TRecord;
  end;

var
  pc: TPackedContainer;
  c: TContainer;

begin
  Writeln(NativeInt(@pc.R)-NativeInt(@pc.B));//outputs 1
  Writeln(NativeInt(@c.R)-NativeInt(@c.B));//outputs 8
  Readln;
end.
Run Code Online (Sandbox Code Playgroud)

这在Delphi …

delphi delphi-xe2

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

动态和虚拟方法有什么区别?

动态方法如何改进代码大小?
什么代码大小意味着??? 它意味着program.exe文件大小??

根据手册:

通常,虚方法是实现多态行为的最有效方法.当基类声明许多可覆盖的方法时,动态方法很有用,这些方法由应用程序中的许多后代类继承,但只是偶尔被覆盖.

当我只使用其中一个继承的类覆盖该方法时,如果我使用dynamic而不是virtual,我会得到什么,因为手册中还说:

虚拟方法优化速度,而动态方法优化代码大小.

delphi

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

是否存在与IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP或IMAGE_FILE_NET_RUN_FROM_SWAP相关的风险?

我想包括的IMAGE_FILE_REMOVABLE_RUN_FROM_SWAPIMAGE_FILE_NET_RUN_FROM_SWAPPE标志,以我的可执行文件.

这个想法是为了防止从网络运行可执行文件的客户端看到的偶然异常,例如网络卷在睡眠后无法重新连接.到目前为止,我们始终建议客户端从本地连接的卷运行可执行文件.

但是,我对虚拟内存,加载程序等知之甚少,以了解与使用这些PE标志相关的风险(如果有的话).

例如,如果我这样做,我的可执行文件将消耗更多的物理内存,特别是如果有多个可执行实例同时运行?

对不起,我不能提供更多潜在风险的例子,但这就是我的问题的本质.我有一种感觉,这样做可能有缺点,但根本不知道这些缺点是什么.

windows winapi

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