.NET: Unterschied zwischen den Versionen

Aus Wiki-WebPerfect
Wechseln zu: Navigation, Suche
Zeile 10: Zeile 10:
 
== Call a Win32 API function with powershell ==
 
== Call a Win32 API function with powershell ==
 
=== Example: GetDriveTypeW ===
 
=== Example: GetDriveTypeW ===
 +
'''Using Add-Type to call the GetDriveTypeW function'''
 
<source lang="powershell">
 
<source lang="powershell">
 
$MethodDefinition = @'
 
$MethodDefinition = @'
Zeile 18: Zeile 19:
 
$Kernel32 = Add-Type -MemberDefinition $MethodDefinition -Name 'Kernel32' -Namespace 'Win32' -PassThru
 
$Kernel32 = Add-Type -MemberDefinition $MethodDefinition -Name 'Kernel32' -Namespace 'Win32' -PassThru
 
</source>
 
</source>
 +
 +
'''Call the function with the paramter "C:\"'''
 +
<source lang="powershell>$Kernel32::GetDriveTypeW('C:\')</source>
  
  

Version vom 14. April 2020, 13:56 Uhr

Get all actual loaded .NET Assemblies (per PowerShell Session)

[System.AppDomain]::CurrentDomain.GetAssemblies()


Messagebox with Button

[System.Windows.Forms.MessageBox]::Show("Text","Überschrift",[System.Windows.Forms.MessageBoxButtons]::OK)


Call a Win32 API function with powershell

Example: GetDriveTypeW

Using Add-Type to call the GetDriveTypeW function

$MethodDefinition = @'
[DllImport("kernel32.dll", CharSet = CharSet.Unicode)]
public static extern int GetDriveTypeW(string lpRootPathName);
'@
 
$Kernel32 = Add-Type -MemberDefinition $MethodDefinition -Name 'Kernel32' -Namespace 'Win32' -PassThru

Call the function with the paramter "C:\"

Ungültige Sprache.

Die gewünschte Sprache muss wie folgt definiert werden: <source lang="html4strict">...</source>

Unterstützte Sprachen für die Syntaxhervorhebung:

 [Ausklappen


$Kernel32::GetDriveTypeW('C:\')