我正在尝试通过我们公司的交换服务器发送来自c#代码的电子邮件.
System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient("exchangebox1.mycompany.com");
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage("Me@myCompany.com",
"Them@mycompany.com",
"title here",
"body here");
client.Send(msg);
Run Code Online (Sandbox Code Playgroud)
当我运行这个时,我得到SmptException,说"服务不可用,关闭传输通道.服务器响应是4.3.2服务不可用,关闭传输通道".
我正在解释这意味着我们的交换机上没有启用SMTP,我需要使用本机Exchange Server命令来发送邮件.这是对的,还是SMTP应该始终有效?
此外,是否可以将Exchange服务器配置为仅允许某些计算机/用户通过SMTP发送主服务器?
如何在不使用SMTP的情况下通过Exchange Server发送邮件?
谢谢.
我正在尝试维护一些Wix代码,并收到以下警告:
warning LGHT1076 : ICE57: Component 'FILE_MY_ASSOCIATION' has both per-user and per-machine data with an HKCU Registry KeyPath.
Run Code Online (Sandbox Code Playgroud)
从以下代码:
<Component Id="FILE_MY_ASSOCIATION" Guid="E1DF42A5-BD00-4a80-9BE5-B66A3EF0576E" Win64="$(var.Variables_Win64)">
<RegistryKey Root="HKCU" Key="Software\MyComany\MyProduct">
<RegistryValue Value="" Type="string" KeyPath="yes" />
</RegistryKey>
<ProgId Icon="FILE_MY_FILETYPE_ICON" Id="MY_FILE_EXTENSION" Description="My Product File" >
<Extension Id="myext" Advertise="no" >
<Verb Id="Open" Argument=""%1"" TargetFile="MYUI_EXE_FILE"/>
</Extension>
</ProgId>
</Component>
Run Code Online (Sandbox Code Playgroud)
我无法解决什么是错的,或者这是一个警告,我真的需要担心.
谢谢.
有两个对象A和B. A创建B并保留它.B有一个指向A的实例变量,保留它.所以两者都保持着彼此.有人说,这种强大的联系不能再被打破.
但情况确实如此吗?
如果B将释放A,则A可以轻松释放B,因此B将被释放.一旦它的其他所有者(我想必须有人)释放它,它就会被解除分配.
或者此问题仅适用于A不创建B的情况,但只是通过将其保留在实例变量中来保存对它的强引用?我仍然不明白为什么这种联系不能再被打破.
我遇到了InvalidProgramException.本文:
http://support.microsoft.com/kb/312544/en-us
建议我运行PEVerify.exe,但我似乎无法找到它.你知道我从哪里可以得到它吗?
谢谢.
可以使用以下任一方法创建属性:
<Target Name="A">
<PropertyGroup>
<DogSound>Bark</DogSound>
</PropertyGroup>
</Target>
<Target Name="B">
<CreateProperty Value="Bark">
<Output TaskParameter="Value" PropertyName="DogSound"/>
</CreateProperty>
</Target>
Run Code Online (Sandbox Code Playgroud)
但是,如果有的话,目标A和B的语义之间有什么区别?
谢谢.
注意:我正在使用msbuild 3.5.我相信PropertyGroup语法在早期版本的msbuild中的目标内部不起作用,但对于ItemGroups也是如此.CreateItem已被弃用,但CreateProperty没有,所以我想知道CreateProperty是否还有使用PropertyGroup的东西,如果是的话,那是什么.
我创建了一个Visual Studio扩展,通过继承Microsoft.VisualStudio.Language.Intellisense.ICompletionSource,为我的特定于域的语言提供智能感知.
除了我的语言的关键字中的有效字符是下划线'_'之外,这样做没问题.
当intellisense弹出打开时,您可以开始输入并且智能感知框的内容将被过滤,以显示那些以您键入的内容开头的项目.
但是,如果用户键入下划线,似乎以特殊方式处理,而不是继续过滤可用的智能感知项列表,它将提交当前项并结束智能感知会话.
有没有办法停止这种行为,以便下划线可以被视为与常规字母数字字符相同?
此博客页面提到Visual Studio删除了一些标准功能:
https://blogs.msdn.microsoft.com/vcblog/2017/12/08/c17-feature-removals-and-deprecations/
我有一个项目,它使用一些现在使用C++ 17功能的C++库.该项目还使用了第三方库websocketpp(https://github.com/zaphoyd/websocketpp),它仍使用一些现已删除的功能.例如auto_ptr和binary_function.我收到编译错误,他们不是'std'的成员.
上面的博客提到可以使用细粒度控制恢复已删除的功能.我想我现在可以用它来编译这个项目.从长远来看,我将看到将websocketpp升级到C++ 17或用其他东西替换它.
但是,恢复功能的魔力是什么?#define有什么我需要的吗?如果是这样,什么?
我写了一个批处理文件来自动执行某些任务.我可以从命令窗口运行它,它运行并显示结果.如果我从资源管理器中双击它,它会立即运行并终止,所以我看不到结果.
有没有办法让批处理文件窗口保持打开状态,直到我解雇它,如果我通过双击图标启动它?
当我从命令行调用批处理文件时,我不想传递/ nopause参数.我想要一个解决方案,我可以使用批处理文件,而不必做任何太特别的事情?
谢谢.
注意我不希望它从命令行运行时暂停!! 我可以从另一个批处理文件中调用此批处理文件来执行一系列操作.在那种情况下,我不能坐在那里继续打击进入.
理想情况下,最好是我可以在批处理文件中放入一些代码,以便它可以解决它从哪里开始,然后暂停或不适当.
在Windows 64位上,我有一个32位进程读取其他32位进程的内存,我希望它能够读取64位进程.
ReadProcessMemory用于读取内存,但它有32位的限制.有没有办法在64位进程上执行相当于ReadProcessMemory的操作?
我知道我可以写一个64位进程,并推出从我的32位进程做的工作,但我不知道是否有一些其他的选项,这样我不需要写一个64位进程.
谢谢.
使用printf将双字节字符串格式化为单字节字符串时:
printf("%ls\n", L"s:\\??????Hello"); // %ls for a wide string (%s varies meaning depending on the project's unicode settings).
Run Code Online (Sandbox Code Playgroud)
显然,有些字符不能表示为ascii字符,所以有时我看到双字节字符变成'?'的行为.标记字符.但是,这似乎取决于特定的角色.对于上面的printf,输出是:
s:\
Run Code Online (Sandbox Code Playgroud)
我希望我可以得到类似的东西:
s:\??????Hello
Run Code Online (Sandbox Code Playgroud)
我担心我已经失去了这个例子,但是当我遇到unicode字符时,我想一个字符串,用'?'替换第一个字符串 然后放弃了其余的.
所以,我的问题是,当您将宽字符串格式化为单字节字符串时应该发生什么.这里的文档:http://msdn.microsoft.com/en-us/library/hf4y5e3w.aspx说"字符显示到第一个空字符".但是,我没有看到.这是printf中的一个错误,还是我在某处记录的行为,如果有的话,在哪里.
谢谢你的帮助.
UPDATE
感谢人们给我替代使用printf的答案.我将改为另类,但出于好奇,我真的很感兴趣为什么printf没有可靠的记录行为.看起来好像它的实现者竭尽全力使它不起作用.
c# ×2
windows ×2
.net ×1
32bit-64bit ×1
batch-file ×1
c ×1
c++ ×1
c++17 ×1
cocoa-touch ×1
deprecated ×1
email ×1
iphone ×1
msbuild ×1
peverify ×1
unicode ×1
wix ×1