2017-07-27 156 views
3

我需要为传统VB 6.0 activeX EXE设置/ TSAWARE标志。我可以构建应用后,在Visual Studio 98 Visual Basic 6.0项目中设置/ TSAWARE的位置

BINEDIT /TSAWARE app.exe 

做到这一点,但我想应该有一个办法在VB6项目本身在Visual Studio中进行选择。我看过项目属性,但没有看到任何地方设置链接器选项。该项目是一个ActiveX组件。

This question提到在Visual Studio 6.0中用链接器中的C++做它,但还没有看到在VB中这样做的方式,它似乎没有明确的链接设置。

+1

VB6肯定比Windows 2000中,这是当终端服务真正开始成为一个东西老。我不确定它是否比NT4终端服务版更早。无论如何,VB6真的*那*旧​​。 –

+0

忽略巨魔。如果微软提供了替代品,人们将不会使用VB6。令人遗憾的是,它是Windows中唯一通用的高级语言本地编译器。 – Bob77

+0

哦,我还是很喜欢VB6。只是它太旧而且没有支持,当你试图用新的东西来使用它时,你会遇到这样的问题。在VB6之后可能很容易忘记有多少事情发生,因此可能无法轻松处理。 –

回答

2

其实“VB6连接”(VS 6.0 LINK.EXE)确实不支持这个标志。当然,您可能必须确保您已经通过SP6安装了VS 6.0服务包。

要调用此您可以编辑您的项目的.vbp文件,添加部分:

[VBCompiler] 
LinkSwitches=/TSAWARE 

使用后“的Microsoft(R)COFF/PE自卸车版本8.00.50727.42”转储编译为EXE确认后,显示为8000 DLL characteristics Terminal Server Aware

据我所知,这已经工作了很时候,也许因为Service Pack 3的

+0

那么唯一的方法就是直接编辑VBP文件?在Visual Studio 6中没有用户界面? – JonN

+0

如果通过“Visual Studio 6”您正在讨论VB 6.0 IDE(VS 6.0 IDE本身不支持VB 6.0),那么否,则不提供UI访问。但是,可能会有第三方加载项或Microsoft的加载项,它们与某些类别的客户(如合作伙伴)共享。或者你可以自己做。 – Bob77

2

你将需要做它,你现在是,该标志不会被VB6的连接支持:

[email protected] C:\Program Files (x86)\Microsoft Visual Studio\VB98 
> link /OUT:x.exe /TSAWARE x.obj 
Microsoft (R) Incremental Linker Version 6.00.8168 
Copyright (C) Microsoft Corp 1992-1998. All rights reserved. 

LINK : warning LNK4044: unrecognized option "TSAWARE"; ignored 
+0

测试似乎证明这是一个不正确的陈述。在这里工作得很好。 – Bob77

+0

@ Bob77你是说你可以在VB6 Visual Studio中指定/ TSAWARE?在哪里以及如何?我无法在IDE中找到指定链接器选项的地方。然而,你对链接器支持/ TSAWARE是正确的。注意我的链接器晚于Alex K. C:\ Program Files(x86)\ Microsoft Visual Studio 6.0 \ VB98>链接 Microsoft(R)Incremental Linker版本6.00.8447 版权所有(C)Microsoft Corp 1992-1998。版权所有。 用法:LINK [options] [files] [@commandfile] 选项: /ALIGN:# 。 。 。 /SWAPRUN:{CD | NET} /TSAWARE [:NO] /VERBOSE [:LIB] 。 。 。 – JonN

+0

正如我在我的回答中所说的,您可以通过手工编辑您的.VBP文件并添加未记录的[[VBCompiler]]部分来指定您想要的。 – Bob77