問題タブ [winmd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio-2015 - ControlChannelTrigger に WINMD 参照を追加する方法
プロジェクトをアップグレードして Windows 10 をターゲットにすると、Visual Studio 2015 は前述のクラスの解決に失敗します。MSDN のドキュメントによるとWindows.Networking.Sockets.ControlChannelTriggerContract.winmd
、プロジェクト参照には表示されないプロジェクトへの参照として、WINMD、つまり を追加する必要があると思います。探してみたところ、フォルダに*.winmd
ファイルが見つかりましたWindows Kits\10\...
。残念ながら、これは、追加しようとしたときに Visual Studio が提供したものです。
どうやら、これを解決する方法がわかりません。(.NET Framework 4.6 が必要です。) 誰か助けてもらえますか?
c# - Windows.winmd を C# プロジェクトに埋め込み、埋め込みリソースとして読み込みますか?
デスクトップ アプリケーションで Windows アクション センター通知を使用したいのですが、それを Windows ストア アプリにせずに使用したいと考えています。アプリケーションでは、すべての DLL がリソースとして埋め込まれ、exe の外部に公開されません。また、コードを難読化して、Jet Brains dot peek のようなプログラムがソース コードを逆コンパイルできないようにします。問題は、dll のロードは正常に機能するが、プログラムの起動時に「サポートされていないタイプ」というメッセージが表示されて失敗することです。これは、難読化と暗号化によるものです。すべての保護を無効にして難読化ツールを使用して exe を実行しても、実行に失敗します。私の質問は、Windows をどのようにロードするかです。組み込みリソースとしてプロジェクトに含まれる DLL としての winmd ファイル (および拡張子を DLL に変更しても、HRESULT コードで別のエラーが返されるため機能しません)。DLLImport を使用することは可能ですか? Windows.winmd クラスへのアクセス レイヤーとして別の DLL を作成する必要がありますか? 元の埋め込みソース プロジェクトのリファレンス:http://www.codeproject.com/Articles/528178/Load-DLL-From-Embedded-Resource
dll - .dll および .pri ファイルが必要な場合、.winmd ライブラリを使用する意味は何ですか?
UWP (Universal Windows Apps (Windows 10)) 内で Facebook を使用するための SDK であるwinfbsdk (こちらを参照) を使用したかったのです。しかし、.winmd
このライブラリを使用するには、ビルドされるファイルが十分ではないようです。次のいずれかを実行できます。
- ドキュメントに記載されているように、プロジェクト全体を参照してください。
また
- ファイルを参照しますが、生成された+ファイル
.winmd
もコピーします。.DLL
.pri
どうしてこれなの?
c# - コマンド ラインから Windows ユニバーサル C# クラス ライブラリをビルドする
現在、Windows Phone 8.1、Windows アプリ 8.1、および Windows 10 ユニバーサル アプリをターゲットとする Microsoft ランタイム コンポーネント C# クラス ライブラリを構築しようとしています。この紹介を完了するために、私の環境では Windows 8.1 を実行し、Visual Studio 2015 を IDE として使用しています。
プロセスを自動化するために、私のチームでは、コマンドラインからそのライブラリをコンパイルして、結果の.winmd
ファイルを別の場所で使用する必要があります。ソリューションとプロジェクトは IDE で完全にコンパイルされますが、Windows コマンド ラインからプロジェクトをコンパイルすることはできません。調査の結果、動作する可能性のあるコマンドが見つかりましたが、いくつかの引数が欠落していることを示すエラーが表示されます。コマンドラインは次のものです。
プロジェクトをクリアし、このコマンドを実行すると、次のエラーが大量に発生します。
その他のエラーは、すべて同じ欠落した名前空間 'Windows' から発生しているもので、名前ApplicationModel
、Devices
、Security
およびの名前空間の欠落Networking
です。この名前空間の名前は、このコマンドの実行中に存在しないように見える Windows RT C# API の一部です。
私が言ったように、コンパイルを達成するために必要なすべての引数を指定していないか、適切に実行していないようです。コマンド ラインでユニバーサル アプリを対象とする VS C# プロジェクト クラス ライブラリをビルドする適切な方法は何ですか?
windows-runtime - Windows ランタイム コンポーネントでレジストリを読み書きすることは可能ですか?
Windows 8.1 アプリケーションを開発しています。
Windows ランタイム コンポーネント (.winmd) からレジストリを読み書きすることはできますか?
c# - タイプ「System.__ComObject」のオブジェクトをタイプ「Windows.ApplicationModel.Background.ILocationTriggerFactory」にキャストできません
ユーザーが特定のエリアに出入りするときに、ジオフェンスAPIとバックグラウンドタスクを使用して制御するシンプルなwin phone 8.1アプリを構築しています。
バックグラウンド タスクを登録するには、クラスRegisterBackgroundTask
にメソッドを実装しますApp
そして、これが例外を発生させる部分です
new LocationTrigger(LocationTriggerType.Geofence)
例外の詳細:
私がこれまでに理解したこと:
- 例外コードは 80004002 (E_NOINTERFACE)
私はこのインターフェースが何であるかを調査し、それが宣言され
C:\Program Files (x86)\Windows Phone Kits\8.1\References\CommonConfiguration\Neutral\Windows.winmd
、実際にそこに あることを発見しましたそして、ビジュアルスタジオプロジェクトから参照されています
- 他のすべてのトリガー (SystemTrigger、MaintenanceTrigger など) は正常にインスタンス化されています
私がすでに試したこと:
- VSを再インストール
- クリーン/リビルド ソリューション
- アノテーション
RegisterBackgroundTask
方法[STAThread]
これは、Windows Phone と C# での初めてのアプリなので、ありふれた間違いを犯す可能性があります。また、Visual Studio がソリューションからのこれらの参照を処理する方法と、参照された .winmd ファイルでコード化されたインターフェイスがプロジェクトのコードで使用可能になった方法も理解していません。たぶん、何かがうまくいかないところがあります。だから私は問題の根本を探して解決策を見つけるのに助けが必要です.
前もって感謝します
c# - await構文を使用してWindows.Devices.Enumeration.DeviceInformation.FindAllAsyncから結果を読み取る方法は?
私のコンピューターには、以下のコード スニペットによって返される動作中のスマートカード リーダーがあります。
ただし、次のエラーが発生します。
エラー CS4036 '
IAsyncOperation<DeviceInformationCollection>
' には ' ' の定義が含まれておらず、タイプ ' ' の最初の引数を受け入れるGetAwaiter
拡張メソッド ' 'が見つかりませんでした (' ' の using ディレクティブがありませんか?)GetAwaiter
IAsyncOperation<DeviceInformationCollection>
System
コード スニペットは、Microsoft の C# サンプル コードからコピーしたものです。
このエラーを解決するにはどうすればよいですか?
c# - 複数のアプリケーションが同じ認証情報マネージャー レコードにアクセスできますか?
AppOne で以下のコードを使用して、Windows Credential Manager の Web Credentials に資格情報を追加しています。
次に、AppTwo でアクセスしたいと思います。上記で保存したレコードに AppTwo がアクセスできないことがわかりました。私はそれをテストしましたが、資格情報を保存するアプリケーションだけがアクセスできるようです。これは理にかなっていると思います。しかし、資格情報を AppOne に保存して AppTwo に取得する方法はありますか? C# API を直接使用して、Credential Manager の Web Credentials にプログラムで保存する代わりに、Windows Credentials を使用して保存できますか? また、資格情報を Windows 資格情報に保存できたとしても、それを異なるアプリケーション間で共有できますか?
私の 2 番目の質問は、AppOne 1.0 が資格情報を資格情報マネージャーに保存する場合、AppOne は 2.0 にアップグレードされますか、または Windows が からwin8
にアップグレードされる場合win10
、保存された資格情報はまだ有効で正しいですか? 私はオンラインで検索しますが、ちょっと迷子になります。
ありがとう!!