Win32 API 日本語リファレンス
ホームSecurity.Credentials › KeyCredentialManagerFreeInformation

KeyCredentialManagerFreeInformation

関数
鍵資格情報マネージャー情報のメモリを解放する。
DLLKeyCredMgr.dll呼出規約winapi

シグネチャ

// KeyCredMgr.dll
#include <windows.h>

void KeyCredentialManagerFreeInformation(
    KeyCredentialManagerInfo* keyCredentialManagerInfo
);

パラメーター

名前方向
keyCredentialManagerInfoKeyCredentialManagerInfo*in

戻り値の型: void

各言語での呼び出し定義

// KeyCredMgr.dll
#include <windows.h>

void KeyCredentialManagerFreeInformation(
    KeyCredentialManagerInfo* keyCredentialManagerInfo
);
[DllImport("KeyCredMgr.dll", ExactSpelling = true)]
static extern void KeyCredentialManagerFreeInformation(
    IntPtr keyCredentialManagerInfo   // KeyCredentialManagerInfo*
);
<DllImport("KeyCredMgr.dll", ExactSpelling:=True)>
Public Shared Sub KeyCredentialManagerFreeInformation(
    keyCredentialManagerInfo As IntPtr   ' KeyCredentialManagerInfo*
)
End Sub
' keyCredentialManagerInfo : KeyCredentialManagerInfo*
Declare PtrSafe Sub KeyCredentialManagerFreeInformation Lib "keycredmgr" ( _
    ByVal keyCredentialManagerInfo As LongPtr)
' VBA7前提(PtrSafe)。32bit Office では LongPtr→Long。Integer=16bit / Long=32bit / LongLong=64bit。
import ctypes
from ctypes import wintypes

KeyCredentialManagerFreeInformation = ctypes.windll.keycredmgr.KeyCredentialManagerFreeInformation
KeyCredentialManagerFreeInformation.restype = None
KeyCredentialManagerFreeInformation.argtypes = [
    ctypes.c_void_p,  # keyCredentialManagerInfo : KeyCredentialManagerInfo*
]
require 'fiddle'
require 'fiddle/import'

lib = Fiddle.dlopen('KeyCredMgr.dll')
KeyCredentialManagerFreeInformation = Fiddle::Function.new(
  lib['KeyCredentialManagerFreeInformation'],
  [
    Fiddle::TYPE_VOIDP,  # keyCredentialManagerInfo : KeyCredentialManagerInfo*
  ],
  Fiddle::TYPE_VOID)
#[link(name = "keycredmgr")]
extern "system" {
    fn KeyCredentialManagerFreeInformation(
        keyCredentialManagerInfo: *mut KeyCredentialManagerInfo  // KeyCredentialManagerInfo*
    );
}
// crates: windows-sys provides ready-made bindings for this API.
$sig = @"
[DllImport("KeyCredMgr.dll")]
public static extern void KeyCredentialManagerFreeInformation(IntPtr keyCredentialManagerInfo);
"@
$api = Add-Type -MemberDefinition $sig -Name 'KeyCredMgr_KeyCredentialManagerFreeInformation' -Namespace Win32 -PassThru
# $api::KeyCredentialManagerFreeInformation(keyCredentialManagerInfo)
#uselib "KeyCredMgr.dll"
#func global KeyCredentialManagerFreeInformation "KeyCredentialManagerFreeInformation" sptr
; KeyCredentialManagerFreeInformation varptr(keyCredentialManagerInfo)
; keyCredentialManagerInfo : KeyCredentialManagerInfo* -> "sptr"
出力引数:
#uselib "KeyCredMgr.dll"
#func global KeyCredentialManagerFreeInformation "KeyCredentialManagerFreeInformation" var
; KeyCredentialManagerFreeInformation keyCredentialManagerInfo
; keyCredentialManagerInfo : KeyCredentialManagerInfo* -> "var"
; ※出力/バッファ引数は var 方式(変数を直接渡す)。varptr 方式にも切替可。
出力引数:
; void KeyCredentialManagerFreeInformation(KeyCredentialManagerInfo* keyCredentialManagerInfo)
#uselib "KeyCredMgr.dll"
#func global KeyCredentialManagerFreeInformation "KeyCredentialManagerFreeInformation" var
; KeyCredentialManagerFreeInformation keyCredentialManagerInfo
; keyCredentialManagerInfo : KeyCredentialManagerInfo* -> "var"
; ※出力/バッファ引数は var 方式(変数を直接渡す)。varptr 方式にも切替可。
import (
	"golang.org/x/sys/windows"
	"unsafe"
)

var (
	keycredmgr = windows.NewLazySystemDLL("KeyCredMgr.dll")
	procKeyCredentialManagerFreeInformation = keycredmgr.NewProc("KeyCredentialManagerFreeInformation")
)

// keyCredentialManagerInfo (KeyCredentialManagerInfo*)
r1, _, err := procKeyCredentialManagerFreeInformation.Call(
	uintptr(keyCredentialManagerInfo),
)
_ = err  // syscall.Errno (valid when the call sets last-error)
_ = r1   // void
procedure KeyCredentialManagerFreeInformation(
  keyCredentialManagerInfo: Pointer   // KeyCredentialManagerInfo*
); stdcall;
  external 'KeyCredMgr.dll' name 'KeyCredentialManagerFreeInformation';
result := DllCall("KeyCredMgr\KeyCredentialManagerFreeInformation"
    , "Ptr", keyCredentialManagerInfo   ; KeyCredentialManagerInfo*
    , "Int")   ; return: void
●KeyCredentialManagerFreeInformation(keyCredentialManagerInfo) = DLL("KeyCredMgr.dll", "int KeyCredentialManagerFreeInformation(void*)")
# 呼び出し: KeyCredentialManagerFreeInformation(keyCredentialManagerInfo)
# keyCredentialManagerInfo : KeyCredentialManagerInfo* -> "void*"
# なでしこ1は32bit・ANSI(Shift_JIS)。文字列=char*(ANSI)、ポインタ/ハンドル=void*(4byte)。