2012-08-09 79 views
6
使用NDDE ThinkOrSwim

我成功地從ThinkOrSwim交易平臺接收DDE數據到Excel中使用此單元格公式:連接到在.net

=TOS|Last!AAPL 

然而,當我嘗試使用在NDDE library連接到ThinkOrSwim DDE .Net C#應用程序,我收到以下錯誤消息,與ThinkOrSwim平臺完全沒有運行時相同:

客戶端無法連接到「TOS | LAST」。確保服務器應用程序正在運行並且它支持指定的服務名稱和主題名稱對。

與NDDE連接的完全相同的方法在2009年工作,並在2012年重新使用它時失敗。也許ThinkOrSwim在其應用程序中做了一些更改以阻止它?我想知道下一步該做什麼......要麼找到一種方法來使NDDE工作(更好),或者在我的.Net應用程序(雜亂)中運行Excel電子表格。

希望這裏有人知道我的方式我可以繼續使用NDDE並修復連接問題。

Click to download small code library I created to demonstrate this problem (Visual Studio 2010)。加載頁面後,您必須單擊文件 - >下載。

賞金僅用於顯示使用純淨的.net/windows api解決方案的解決方案的答案。在.Net中自動執行excel不會被賞金所接受。

下載ThinkOrSwim從:https://mediaserver.thinkorswim.com/installer/InstFiles/thinkorswim_jse6_installer.exe 如果您需要登錄詳細信息,請私下與我聯繫。

回答

1

終於找到了一個解決方案:我必須以管理員身份運行Visual Studio才能使其在調試中工作。爲了使.exe工作,我不得不添加一個app.manifest文件,內容如下:

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> 
    <security> 
     <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3"> 
     <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> 
     </requestedPrivileges> 
    </security> 
    </trustInfo> 
3

右鍵點擊thinkorswim.exe,轉到兼容性選項卡

檢查底部的「以管理員身份運行」對話框。

單擊應用。

+0

感謝Charvind,這非常接近我需要的答案。看到我的下面。 – bboyle1234 2012-08-19 01:30:24