コード例 #1
0
ファイル: mmc.cs プロジェクト: mleo1/sharpshell
		void MMC.IDataObject.GetData( ref FORMATETC pformatetcIn, ref STGMEDIUM pmedium) 
		{
			if ( pformatetcIn.cfFormat == this.m_CCFShellIDListArry ) 
			{

				byte[] b = null;

				if ( m_cookie > 0 ) 
				{

					b = new byte[ this.m_data.Length + 18 ];

					BitConverter.GetBytes(1).CopyTo(b, 0);
					BitConverter.GetBytes(12).CopyTo(b, 4);
					BitConverter.GetBytes(12 + m_data.Length).CopyTo(b, 8);

					m_data.CopyTo( b, 12 );

					BitConverter.GetBytes((short) 4).CopyTo(b, 12 + m_data.Length);
					BitConverter.GetBytes((short) 255).CopyTo(b, 14 + m_data.Length);
					BitConverter.GetBytes((short) 0).CopyTo(b, 16 + m_data.Length);

				}
				else
				{
					b = new byte[ this.m_data.Length + 8 ];

					BitConverter.GetBytes(0).CopyTo(b, 0);
					BitConverter.GetBytes(8).CopyTo(b, 4);

					this.m_data.CopyTo( b, 8 );

				}

				pmedium.tymed = 1;
				pmedium.pUnkForRelease = IntPtr.Zero;

				pmedium.hGlobal = Marshal.AllocHGlobal( b.Length );
				Marshal.Copy(b, 0, pmedium.hGlobal, b.Length);

			}
		}
コード例 #2
0
ファイル: mmc.cs プロジェクト: mleo1/sharpshell
		long MMC.IDataObject.SetData( ref FORMATETC pformatetc, ref STGMEDIUM pmedium, bool fRelease)
		{
			return 0x80004001L;
		}
コード例 #3
0
 long MMC.IDataObject.SetData(ref FORMATETC pformatetc, ref STGMEDIUM pmedium, bool fRelease)
 {
     return(0x80004001L);
 }
コード例 #4
0
ファイル: mmc.cs プロジェクト: mleo1/sharpshell
		void MMC.IDataObject.GetDataHere( ref FORMATETC pformatetc, ref STGMEDIUM pmedium) 
		{
		}
コード例 #5
0
 void MMC.IDataObject.GetDataHere(ref FORMATETC pformatetc, ref STGMEDIUM pmedium)
 {
 }