2011-11-21 29 views
6

我一直很無聊,所以我試着製作一個程序,當按下ctrl + shift + L時,寫一個Look of Disapproval笑臉(ಠ_ಠ臉)。 現在一切正常,除了笑臉中的下劃線,它根本不會被寫入。無法用C#中的Sendkeys發送下劃線?

這是我第一次使用:

SendKeys.Send("ಠ_ಠ"); 

我已經試過各種事情,如添加{}周圍下劃線支架,當然我GOOGLE了這一點。

有沒有什麼辦法可以讓下劃線發送?

在此先感謝。

+5

+1用於無聊編程。正當理由。 – MPelletier

+0

它必須是一些字符編碼的東西。 ''不是ASCII。 – MPelletier

+0

ಠ的發送情況很好,這是因爲某種原因被打破的原因:\ – JeremyG

回答

1

混合不同的編碼會產生奇怪的結果。 是Unicode,_是ASCII。不同長度的字符會混淆Visual Studio。

嘗試:

SendKeys.Send("\u0CA0_\u0CA0"); 

或者:

SendKeys.Send("\u0CA0\u005F\u0CA0"); 
+3

這意味着即使您可以鍵入「ಠ_ಠ」,也不會將其解釋爲「ಠ_ಠ」,因爲Visual Studio會看到:Unicode,因此需要更多的Unicode並找到不是的。最終的結果會讓你感受到*就像你的輸入:ಠ_ಠ。 – MPelletier

+2

錯了。任何體面的編碼系統都會處理這種罰款。 – SLaks

+0

@SLaks我從來沒有說過Unicode是體面的。 :)但嚴重的是,這是由VS解釋Unicode的限制。你會同意嗎? – MPelletier

0

如果不使用具有下劃線爲重點的英語鍵盤佈局,你不能只輸入ASCII字符,但必須把它寫成修飾符和字符鍵的組合。