例 次の例では、マネージド String クラスの内容をアンマネージ メモリに変換し、完了したらアンマネージ メモリを破棄する方法を示します。 using namespace System; using namespace System::Runtime::InteropServices; #include <iostream> // for printf int main() { // Create a managed string. String^ managedString = "Hello unmanaged world (from the managed world)."; // Marshal the managed string to unmanaged memory. char* stringPointer = (char*) Marshal::StringToHGloba
public ref class Marshal abstract sealed public ref class Marshal sealed public static class Marshal public sealed class Marshal type Marshal = class Public Class Marshal Public NotInheritable Class Marshal 継承 例 次の例は、クラスによって定義されたさまざまなメソッドを使用する方法を Marshal 示しています。 using namespace System; using namespace System::Runtime::InteropServices; public value struct Point { public: property int X; property in
「C++」というのは「C++/CLI」のことですか? 処理系がVC 2005以降だと仮定して話を進めます。 例えば下記のようなC++/CLIの参照クラスを含むクラス ライブラリ プロジェクト「CppCliString」があったとして、 // CppCliString.h #pragma once #include <cstdio> #include <locale.h> #include <vcclr.h> // http://support.microsoft.com/kb/311259/ja using namespace System; using namespace System::Runtime::InteropServices; namespace CppCliString { public ref class Class1 { public: static void SetL
バイナリファイルへの書き込みや通信などの用途で、文字列からバイト型配列 byte[]に変換したいことがあります。この記事では文字列からバイト型配列(byte[])への変換コードを紹介します。 概要 C#では文字列はunicodeとして定義されているため、文字列をbyte[]配列にコピーするためには、エンコードの指定(SJIS, JIS, EUC, UTF-8など)も必要になります。C#では System.Text.Encodingクラスが用意されており、このクラスを用いて文字列をエンコードを指定して、byte[]配列型に変換できます。 文字列(string)型からbyte[]配列型に変換する場合はGetBytes()メソッドを用います。 コード例 private void button1_Click(object sender, EventArgs e) { string text = "
public value class System::SByte : IComparable, IComparable<System::SByte>, IConvertible, IEquatable<System::SByte>, IFormattable public value class System::SByte : IComparable, IComparable<System::SByte>, IConvertible, IEquatable<System::SByte>, ISpanFormattable public value class System::SByte : IComparable<System::SByte>, IConvertible, IEquatable<System::SByte>, IParsable<System::SByte>, ISpanP
アンセーフ コードは /unsafe でコンパイルした場合のみ有効です。 ソース コードに unsafe キーワードが含まれている場合、AllowUnsafeBlocks コンパイラ オプションも使用する必要があります。 詳細については、「アンセーフ コードとポインター」を参照してください。 Visual Studio 2012 で unsafe オプションを設定するには、メイン メニューで [プロジェクト] をクリックして、 [ビルド] ウィンドウを選択し、[アンセーフ コードの許可] チェック ボックスをオンにします。 次の例で、 /unsafe なしでコンパイルすると、CS0227 が生成されます。 // CS0227.cs public class MyClass { unsafe public static void Main() // CS0227 { } } 関連項目 C#
unsafe キーワードは、ポインターを含む操作に必要な安全でないコンテキストを表します。 詳細については、「 安全でないコードとポインター」を参照してください。 unsafe修飾子は、型またはメンバーの宣言で使用できます。 したがって、型またはメンバーのテキスト範囲全体が安全でないコンテキストと見なされます。 たとえば、 unsafe 修飾子で宣言されたメソッドを次に示します。 unsafe static void FastCopy(byte[] src, byte[] dst, int count) { // Unsafe context: can use pointers here. } 安全でないコンテキストのスコープは、パラメーター リストからメソッドの末尾まで拡張されるため、ポインターはパラメーター リストでも使用できます。 unsafe static void FastCop
The common language runtime provides Platform Invocation Services, or PInvoke, that enables managed code to call C-style functions in native dynamic-linked libraries (DLLs). The same data marshaling is used as for COM interoperability with the runtime and for the "It Just Works," or IJW, mechanism. For more information, see: Using Explicit PInvoke in C++ (DllImport Attribute) Using C++ Interop (Im
.netで書かれたテストアプリケーションをVisual Studioを使ってビルドしようとすると、何回チャレンジしても System.IO.FileNotFoundException: ‘ファイルまたはアセンブリ “*****.dll” 、またはその依存関係の 1 つが読み込めませんでした。指定されたモジュールが見つかりません。 …となってしまい、全然仕事が進まず…😫 同僚のPCでは問題なくビルドできるので、さてはAMDのCPUを使ってるからか❗❓ …な~んてうそぶいてみたのですが、まぁそんなこともないでしょうし😅 「ない」と名指しされている .dllファイルを、.slnファイルと同じディレクトリに全部コピーしてビルドしてみても同じ状態なので、なんかコレはおかしいぞ?と🤔 …でふと気付いたのが、解凍する際に使っている Explzh が、.zip を解凍する際に …と言ってきていること
問題 自分で .NET Framework のアプリケーションをビルドして実行すると動作するファイルを,友人のコンピュータに転送し実行したところ次のような例外が投げられ正常動作しなかった。 System.IO.FileNotFoundException: ファイルまたはアセンブリ '***', またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。 (Exception.ToString より抜粋) また,転送する際に含めたファイルを自身のコンピュータの別のディレクトリに展開し実行すると,次のような例外が投げられ正常動作しなかった。 System.IO.FileLoadException: ファイルまたはアセンブリ '***'、またはその依存関係の 1 つが読み込めませんでした。見つかったアセンブリのマニフェスト定義はアセンブリ参照に一致しません。 (HR
印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます IDC Japanは10月21日、企業のITインフラ導入関与者を対象に実施した国内ハイブリッドクラウドインフラストラクチャー利用動向調査の結果(有効回答505人)を発表した。 それによると、ITインフラ投資の評価基準では、「業務スピードの向上」「システム利用者の満足度向上」「システムのサービスレベルの向上」に加え、「売り上げ拡大への貢献」「新規ビジネスの創出」など、ビジネス価値の実現に貢献する項目が上位に入り、年々上昇傾向にあるという。同社は、ITインフラがデジタルトランスフォーメーション(DX)基盤としてプライベートクラウドに加えパブリッククラウドサービスの活用が進み、関連で「Software-Defined」化や仮想化への投資が増加
.NET Frameworkから.NET Coreへの移植を支援する「Porting Assistant for .NET」を、AWSがオープンソースとして公開 Amazon Web Services(AWS)は、.NET Frameworkで開発したアプリケーションのソースコードを.NET Coreへ移植する際に支援してくれるツール「Porting Assistant for .NET」をオープンソースとして公開したと発表しました。 New #AWSLaunches! AWS IQ now provides integrated access logs for expert activity AWS DataSync simplifies initial setup for online data transfers Porting Assistant for .NET is now o
質問 2020年10月22日木曜日 16:52 C;;/CLIで書かれたdllをC#のASP.NETプログラムから呼び出そうとしています。 GitHubにソースを置きました。ご覧になっていただければ幸いです。 MItsutoshiNAKANO の CanYouUseThis.git IIS Express上ではdllに定義されたMessage "Can you call me?"が表示されます。 しかし、Windows 10のIISへこのプログラムを公開して、ブラウザから呼び出すと、 ブラウザ上で、下記に記したエラーメッセージが表示され、実行できません。 エラーメッセージから察するに、 バイナリーの形式が間違っていると予想しています。 しかし、ソリューションや各プロジェクトのプロパティを見ても どこを直せば良いのか解らないでいます。 どこをどう修正すればこのプログラムは正しく動作するでしょ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く