USB接続したWindows CEデバイスをリモートデスクトップを
使用した際にWMDCに認識させるには、
デバイスを接続したPCにログインし、
その状態でリモートデスクトップで接続する。
デバイスを接続しているPCをログオフ状態にし
リモートデスクトップで接続して、Active Syncを実行しても
WMDCが認識せず、接続できなかった。
USB接続したWindows CEデバイスをリモートデスクトップを
使用した際にWMDCに認識させるには、
デバイスを接続したPCにログインし、
その状態でリモートデスクトップで接続する。
デバイスを接続しているPCをログオフ状態にし
リモートデスクトップで接続して、Active Syncを実行しても
WMDCが認識せず、接続できなかった。
長いファイル名(256文字以上)を含んだフォルダーをXCOPYでコピーしたところ、コピーされずに終了した。
タスクスケジューラで起動すると、前回の結果が0x04となっていた。
【失敗したXCOPY】
XCOPY /Y /E /D /C /R 元フォルダー 先フォルダー
ROBOCOPYで対応した。
【使用したROBOCOPY】
ROBOCOPY /E /XO /IS /XJ /XJD 元フォルダー 先フォルダー
<?xml version="1.0"?>
<configuration>
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="MyTcpBinding">
<security mode="Transport" /> ※2
</binding>
</netTcpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="TestBehavior">
<serviceMetadata httpGetEnabled="true" httpGetUrl="" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="TestBehavior" name="TcpServiceTest.TestService">
<endpoint address="" binding="netTcpBinding" bindingConfiguration="MyTcpBinding"
contract="TcpServiceTest.ITestService" />
<endpoint address="mex" binding="mexHttpBinding" bindingConfiguration=""
contract="IMetadataExchange" /> ※3
<host>
<baseAddresses>
<add baseAddress="net.tcp://server/dev/TcpServiceTest.TestService.svc" />
<add baseAddress="http://server/dev/TcpServiceTest.TestService.svc" />
</baseAddresses>
</host>
</service>
</services>
</system.serviceModel>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<behaviors />
<bindings>
<netTcpBinding>
<binding name="MyNetTcpBinding">
<security mode="Transport"> ※2
<transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
<message clientCredentialType="Windows" />
</security>
</binding>
</netTcpBinding>
</bindings>
<client>
<endpoint address="net.tcp://server/dev/TcpServiceTest.TestService.svc"
binding="netTcpBinding" bindingConfiguration="MyNetTcpBinding"
contract="sr.ITestService" name="NetTcpBinding_ITestService">
<!-- ※1
<identity>
<userPrincipalName value="username@domain" />
</identity>
-->
</endpoint>
</client>
</system.serviceModel>
</configuration>
if(Directory.Exists(path))
{
Directory.Delete(path, true);
}
Directory.CreateDirectory(path);
//ここでフォルダが存在しない
if(Directory.Exists(path))
{
Directory.Delete(path, true);
}
Int32 n = 0;
while(Directory.Exists(path))
{
n++;
}
Console.WriteLine(n);
Directory.CreateDirectory(path);
//こうすると確実に作成される。
//nは2とか1とかになる。
In some cases, if you have the specified directory open in File Explorer, the Delete method may not be able to delete it.
ある場合において、あなたが指定したディレクトリをエクスプローラーで開いていると、Deleteメソッドは、削除することができない場合があります。
WCF net.tcpで、TransactionScopeを利用してトランザクション処理を行った。
ローカル開発環境(WcfSvcHost.exeでのホスト)では正常に処理されるが、
別サーバーのIISでホストさせ、クライアントからアクセスすると、以下のエラーが発生した。
System.ServiceModel.ProtocolException:フローされたトランザクションのマーシャリングを解除できませんでした。次の例外が発生しました:パートナートランザクションマネージャにより、リモートトランザクションまたはネットワークトランザクションのサポートが無効にされました。(HRESULTからの例外: 0x8004D025)
これを回避するには、サーバー、クライアント両方のDistributed Transaction Coodinatorの設定を変更しないといけない。
・dcomcnfg > コンポーネントサービス > マイコンピューター > Distributed Transaction Coodinator > ローカルDTC > プロパティ > セキュリティタブを開く。
・ネットワークDTCアクセスをON
・トランザクションマネージャー通信(受信を許可、送信を許可)をON
これで適用する。
そして、Windowsファイアウォールの詳細設定で以下を有効にする。
<受信の規則>
・分散トランザクションコーディネーター(RPC)
・分散トランザクションコーディネーター(RPC-EPMAP)
・分散トランザクションコーディネーター(TCP受信)
<送信の規則>
分散トランザクションコーディネーター(TCP送信)
【.Net3.5】
c:/Program Files/Microsoft SDKs/Windows/v7.0A/bin
【.Net4.0】
c:/Program Files/Microsoft SDKs/Windows/v7.0/bin/NETFX 4.0 Tools
SrvConfigEditor.exe