Email: helpdesk@telkomuniversity.ac.id

This Portal for internal use only!

  • My Download
  • Checkout
Application Package Repository Telkom University
All Categories

All Categories

  • IBM
  • Visual Paradigm
  • Adobe
  • Google
  • Matlab
  • Microsoft
    • Microsoft Apps
    • Analytics
    • AI + Machine Learning
    • Compute
    • Database
    • Developer Tools
    • Internet Of Things
    • Learning Services
    • Middleware System
    • Networking
    • Operating System
    • Productivity Tools
    • Security
    • VLS
      • Office
      • Windows
  • Opensource
  • Wordpress
    • Plugin WP
    • Themes WP
  • Others

Search

0 Wishlist

Cart

Categories
  • Microsoft
    • Microsoft Apps
    • Office
    • Operating System
    • VLS
    • Developer Tools
    • Productivity Tools
    • Database
    • AI + Machine Learning
    • Middleware System
    • Learning Services
    • Analytics
    • Networking
    • Compute
    • Security
    • Internet Of Things
  • Adobe
  • Matlab
  • Google
  • Visual Paradigm
  • WordPress
    • Plugin WP
    • Themes WP
  • Opensource
  • Others
More Categories Less Categories
  • Get Pack
    • Product Category
    • Simple Product
    • Grouped Product
    • Variable Product
    • External Product
  • My Account
    • Download
    • Cart
    • Checkout
    • Login
  • About Us
    • Contact
    • Forum
    • Frequently Questions
    • Privacy Policy
  • Forum
    • News
      • Category
      • News Tag

iconTicket Service Desk

  • My Download
  • Checkout
Application Package Repository Telkom University
All Categories

All Categories

  • IBM
  • Visual Paradigm
  • Adobe
  • Google
  • Matlab
  • Microsoft
    • Microsoft Apps
    • Analytics
    • AI + Machine Learning
    • Compute
    • Database
    • Developer Tools
    • Internet Of Things
    • Learning Services
    • Middleware System
    • Networking
    • Operating System
    • Productivity Tools
    • Security
    • VLS
      • Office
      • Windows
  • Opensource
  • Wordpress
    • Plugin WP
    • Themes WP
  • Others

Search

0 Wishlist

Cart

Menu
  • Home
    • Download Application Package Repository Telkom University
    • Application Package Repository Telkom University
    • Download Official License Telkom University
    • Download Installer Application Pack
    • Product Category
    • Simple Product
    • Grouped Product
    • Variable Product
    • External Product
  • All Pack
    • Microsoft
      • Operating System
      • Productivity Tools
      • Developer Tools
      • Database
      • AI + Machine Learning
      • Middleware System
      • Networking
      • Compute
      • Security
      • Analytics
      • Internet Of Things
      • Learning Services
    • Microsoft Apps
      • VLS
    • Adobe
    • Matlab
    • WordPress
      • Themes WP
      • Plugin WP
    • Google
    • Opensource
    • Others
  • My account
    • Download
    • Get Pack
    • Cart
    • Checkout
  • News
    • Category
    • News Tag
  • Forum
  • About Us
    • Privacy Policy
    • Frequently Questions
    • Contact
Home/News

Category: News

The Downside of Losing the Exchange Mailbox Audit Search Cmdlets
News

The Downside of Losing the Exchange Mailbox Audit Search Cmdlets

Tony Redmond / 2025-05-08

Finding Exchange Mailbox Audit Data Isn’t So Easy Anymore

From an engineering perspective, Microsoft’s decision to decommission the Search-MailboxAuditLog and New-MailboxAuditLogSearch cmdlets makes a ton of sense. Microsoft 365 apps consume shared services, and the unified audit service ingests the data used by these Exchange Online cmdlets. Why incur the engineering and support expense to keep the old on-premises cmdlets going?

Microsoft posted the news on January 14, 2025, and stopped writing audit log data to mailboxes on March 1, 2025. The cmdlets will disappear at the end of 2025. You might have missed this information because Microsoft posted to the security blog instead of the Exchange EHLO blog, where all the other Exchange-related news appears. Perhaps this is because audit data is related to Microsoft Purview and the topic therefore is in the security space. However, losing cmdlets that might be used in Exchange-related administrative processes is a big deal deserving better awareness.

In 2016, Exchange mailbox audit data was one of the first sources of audit events for the unified audit log. Ever since, mailbox audit data has flowed into the unified audit log and can be found by audit log searches, so what’s the problem?

Searching the Unified Audit Log for Exchange Mailbox Audit Data

Searches of the unified audit log can be performed synchronously using the Search-UnifiedAuditLog cmdlet or asynchronously through the Audit section of the Purview compliance portal or by submitting a job through the Graph AuditLogQuery API. Audit log searches can find mailbox data among the many other forms of workload data ingested on an ongoing basis, and searches can go back 180 days (audit standard) or 365 days (audit premium). It all sounds good.

Creating an audit log search for Exchange mailbox audit events in the Purview compliance portal.
Figure 1: Creating an audit log search for Exchange mailbox audit events in the Purview compliance portal

But people build processes around PowerShell cmdlets, and when a cmdlet disappears, those processes must be redeveloped. In this instance, any script that uses the deprecated cmdlets must be altered, probably to use the Search-UnifiedAuditLog cmdlet. And let’s face it, even its biggest fans (and I’m probably in that category) wouldn’t consider Search-UnifiedAuditLog to be an easy cmdlet to use, and Microsoft has tinkered with the way the cmdlet functions over the years. Thankfully, they’ve retreated from the idea of making high completeness (very slow) searches the norm.

The parameters for audit log searches can be complex to construct, duplicate audit records can be retrieved, and there’s always the need to unpack the JSON structure contained in the AuditData property to find out what actually happened for the auditable event.

Those accustomed to interacting with the AuditData property know that every workload decides what information to include in audit events and how that data is formatted. Extracting properties from AuditData usually isn’t hard, but it’s tiresome to see how many variations Microsoft engineers can come up with when inserting data into audit events.

Apart from the issue of interpreting audit events, there’s also the simple fact that it’s easier to extract audit data for the actions of a single user from their mailbox. Finding the relevant information about mailbox events from the unified audit log is more complicated.

Find Exchange Mailbox Audit Data for a Single Mailbox

The easiest way to find audit records for a specific mailbox with the Search-UnifiedAuditLog cmdlet is to pass the user principal name for the mailbox owner (or, to search multiple mailboxes, a set of user principal names) in the UserIds parameter. Here’s an example that finds the audit records for a mailbox and reduces the set to those belonging to Exchange actions:

$RecordType = "ExchangeAdmin","ExchangeItem","ExchangeItemAggregated","ExchangeItemGroup","ExchangeSearch"
[array]$Records = Search-UnifiedAuditLog -Userids ‘kim.akers@office365itpros.com' -StartDate (Get-Date).AddDays(-1) -EndDate (Get-Date) -Formatted -ResultSize 5000 -SessionCommand ReturnLargeSet
$Records = $Records | Where-Object {$_.RecordType -in $RecordType} | Sort-Object Identity -Unique

Searching based on user principal names finds audit records for actions performed by that user. If you want to find audit records for actions performed by a mailbox delegate, use a free text search for the object identifier of the mailbox owner’s account. The free text search finds references to the mailbox owner in the AuditData property and includes those records in the set returned. Here’s an example of using an account identifier in a free text search. It’s important that the identifier is cast as a string as otherwise the search will fail because it will attempt to use a GUID where the cmdlet expects a string:

[array]$Records = Search-UnifiedAuditLog -Freetext ((Get-ExoMailbox -Identity Tony.Redmond).ExternalDirectoryObjectId -as [string]) -StartDate (Get-Date).AddDays(-90) -EndDate (Get-Date) -Formatted -ResultSize 5000 -SessionCommand ReturnLargeSet
$Records = $Records | Where-Object {$_.RecordType -in $RecordType} | Sort-Object Identity -Unique

The Bottom Line

You might not have been aware of the change to the old cmdlets. They still work (for now), but mailbox audit data generated since March 1, 2025, cannot be retrieved using the cmdlets. In any case, it’s a good idea to check scripts to find any instances where the old cmdlets are used. The bad news is that those scripts must be redeveloped. Good luck!

 

Infineon Buck Simscape Example – View_system(‘BuckSystem’) unrecognized function or variable ‘view system” error
Matlab News

Infineon Buck Simscape Example – View_system(‘BuckSystem’) unrecognized function or variable ‘view system” error

PuTI / 2025-05-07

I’ve tried running the "Infineon Buck Simscape Example" both online and locally and get the following error
View_system(‘BuckSystem’) unrecognized function or variable ‘view system"
I’m running R2023bI’ve tried running the "Infineon Buck Simscape Example" both online and locally and get the following error
View_system(‘BuckSystem’) unrecognized function or variable ‘view system"
I’m running R2023b I’ve tried running the "Infineon Buck Simscape Example" both online and locally and get the following error
View_system(‘BuckSystem’) unrecognized function or variable ‘view system"
I’m running R2023b infineon buck, view_system MATLAB Answers — New Questions

​

How do I use a Bus in conjunction with a matlab function block in Simulink?
Matlab News

How do I use a Bus in conjunction with a matlab function block in Simulink?

PuTI / 2025-05-07

I have a simulink file where i have a "Matlab Function Block" that needs to get a bus of parameters in input. My problem is that even after changing the variable type of the input to "Bus" and also changing the object name to the one i have given to the bus of parameters in question i still get the following error:
Expression ‘Bus1’ for type of data "Parameters" did not evaluate to a valid type.
Caused by: invalid setting in ‘MATLAB Function’ for parameter ‘Datatype’
Unrecognised function or variable ‘Bus1’. Variable ‘Bus1’ does not exist

Any idea of how i can solve he problem without using a selector before the function?
Thanks in advanceI have a simulink file where i have a "Matlab Function Block" that needs to get a bus of parameters in input. My problem is that even after changing the variable type of the input to "Bus" and also changing the object name to the one i have given to the bus of parameters in question i still get the following error:
Expression ‘Bus1’ for type of data "Parameters" did not evaluate to a valid type.
Caused by: invalid setting in ‘MATLAB Function’ for parameter ‘Datatype’
Unrecognised function or variable ‘Bus1’. Variable ‘Bus1’ does not exist

Any idea of how i can solve he problem without using a selector before the function?
Thanks in advance I have a simulink file where i have a "Matlab Function Block" that needs to get a bus of parameters in input. My problem is that even after changing the variable type of the input to "Bus" and also changing the object name to the one i have given to the bus of parameters in question i still get the following error:
Expression ‘Bus1’ for type of data "Parameters" did not evaluate to a valid type.
Caused by: invalid setting in ‘MATLAB Function’ for parameter ‘Datatype’
Unrecognised function or variable ‘Bus1’. Variable ‘Bus1’ does not exist

Any idea of how i can solve he problem without using a selector before the function?
Thanks in advance bus, matlab function MATLAB Answers — New Questions

​

I am trying to control a DC to DC boost converter using FSC MPC to generate a 20 kW PV power but the MPC controller is very poorly than PI controller.
Matlab News

I am trying to control a DC to DC boost converter using FSC MPC to generate a 20 kW PV power but the MPC controller is very poorly than PI controller.

PuTI / 2025-05-07

I am trying to control a DC to DC boost converter using FSC MPC to generate a 20 kW PV power but the MPC controller generated a maximum of 1135 W PV power and a maximum of 7184 W DC load power instead of 20 kW power. The PV voltage has a maximum of 59 V against 847 V boosted voltage with 21 A maximum PV current against a maximum of 27 A inductor current. Below is the MPC script used in the Matlab function block:
function S = MPC_Boost(iL, V_PV, Vout, iL_ref, wf_min, wf_max, Dref)
% MPC controller for boost converter with iL_ref from MPPT logic

%% System Parameters
Ts = 10e-6;
RL = 0.02;
L = 0.0199;
C = 3.1222e-04;
R_load = 18;

%% Limits
iL_max = 20;
iL_min = 0.2;
Vout_max = 420;
Vout_min = 360;
P_PV_max = 20000;
Vout_ref = 400;

%% Persistent memory
persistent S_old wf;
if isempty(S_old)
S_old = Dref;
wf = wf_min;
end

%% Sanitize Inputs
iL = abs(iL);
Vout = abs(Vout);
V_PV = max(V_PV, 50);

%% Duty Cycle Candidates
states = [Dref – 0.05; Dref; Dref + 0.05];
states = min(max(states, 0.3), 0.9); % Clamp

%% Cost Evaluation
g = zeros(length(states),1);
g_min = inf;
n_best = 1;

X_k = [iL; Vout];

for n = 1:length(states)
D = states(n);

% Discrete model
A_d = [1 – (RL * Ts / L), -(1 – D) * (Ts / L);
(1 – D) * (Ts / C), 1 – (Ts / (R_load * C))];
B_d = [Ts / L; 0];

% Predict state
X_k1 = A_d * X_k + B_d * V_PV;
iboost_k1 = X_k1(1);
Vout_k1 = X_k1(2);
P_PV_pred = V_PV * iboost_k1;

% Constraint check
if iboost_k1 < iL_min || iboost_k1 > iL_max || …
Vout_k1 < Vout_min || Vout_k1 > Vout_max || …
P_PV_pred <= 0 || P_PV_pred > P_PV_max || …
isnan(iboost_k1) || isnan(Vout_k1)
g(n) = inf;
continue;
end

% Cost terms
g_iboost = (iL_ref – iboost_k1)^2;
g_vout = (Vout_ref – Vout_k1)^2;
g_sw = (D ~= S_old) * wf;
g_dref = (D – Dref)^2;
g_pv = (P_PV_pred < 100) * 1000;

% Total cost
g(n) = g_iboost + 0.1 * g_vout + g_sw + g_dref + g_pv;

if g(n) < g_min
g_min = g(n);
n_best = n;
end
end

%% Apply Selected Duty Cycle
S = states(n_best);
S = min(max(S, 0.3), 0.9); % Clamp again

% Adaptive penalty update
if S ~= S_old
wf = min(wf * 1.10, wf_max);
else
wf = max(wf * 0.90, wf_min);
end

S_old = S;
endI am trying to control a DC to DC boost converter using FSC MPC to generate a 20 kW PV power but the MPC controller generated a maximum of 1135 W PV power and a maximum of 7184 W DC load power instead of 20 kW power. The PV voltage has a maximum of 59 V against 847 V boosted voltage with 21 A maximum PV current against a maximum of 27 A inductor current. Below is the MPC script used in the Matlab function block:
function S = MPC_Boost(iL, V_PV, Vout, iL_ref, wf_min, wf_max, Dref)
% MPC controller for boost converter with iL_ref from MPPT logic

%% System Parameters
Ts = 10e-6;
RL = 0.02;
L = 0.0199;
C = 3.1222e-04;
R_load = 18;

%% Limits
iL_max = 20;
iL_min = 0.2;
Vout_max = 420;
Vout_min = 360;
P_PV_max = 20000;
Vout_ref = 400;

%% Persistent memory
persistent S_old wf;
if isempty(S_old)
S_old = Dref;
wf = wf_min;
end

%% Sanitize Inputs
iL = abs(iL);
Vout = abs(Vout);
V_PV = max(V_PV, 50);

%% Duty Cycle Candidates
states = [Dref – 0.05; Dref; Dref + 0.05];
states = min(max(states, 0.3), 0.9); % Clamp

%% Cost Evaluation
g = zeros(length(states),1);
g_min = inf;
n_best = 1;

X_k = [iL; Vout];

for n = 1:length(states)
D = states(n);

% Discrete model
A_d = [1 – (RL * Ts / L), -(1 – D) * (Ts / L);
(1 – D) * (Ts / C), 1 – (Ts / (R_load * C))];
B_d = [Ts / L; 0];

% Predict state
X_k1 = A_d * X_k + B_d * V_PV;
iboost_k1 = X_k1(1);
Vout_k1 = X_k1(2);
P_PV_pred = V_PV * iboost_k1;

% Constraint check
if iboost_k1 < iL_min || iboost_k1 > iL_max || …
Vout_k1 < Vout_min || Vout_k1 > Vout_max || …
P_PV_pred <= 0 || P_PV_pred > P_PV_max || …
isnan(iboost_k1) || isnan(Vout_k1)
g(n) = inf;
continue;
end

% Cost terms
g_iboost = (iL_ref – iboost_k1)^2;
g_vout = (Vout_ref – Vout_k1)^2;
g_sw = (D ~= S_old) * wf;
g_dref = (D – Dref)^2;
g_pv = (P_PV_pred < 100) * 1000;

% Total cost
g(n) = g_iboost + 0.1 * g_vout + g_sw + g_dref + g_pv;

if g(n) < g_min
g_min = g(n);
n_best = n;
end
end

%% Apply Selected Duty Cycle
S = states(n_best);
S = min(max(S, 0.3), 0.9); % Clamp again

% Adaptive penalty update
if S ~= S_old
wf = min(wf * 1.10, wf_max);
else
wf = max(wf * 0.90, wf_min);
end

S_old = S;
end I am trying to control a DC to DC boost converter using FSC MPC to generate a 20 kW PV power but the MPC controller generated a maximum of 1135 W PV power and a maximum of 7184 W DC load power instead of 20 kW power. The PV voltage has a maximum of 59 V against 847 V boosted voltage with 21 A maximum PV current against a maximum of 27 A inductor current. Below is the MPC script used in the Matlab function block:
function S = MPC_Boost(iL, V_PV, Vout, iL_ref, wf_min, wf_max, Dref)
% MPC controller for boost converter with iL_ref from MPPT logic

%% System Parameters
Ts = 10e-6;
RL = 0.02;
L = 0.0199;
C = 3.1222e-04;
R_load = 18;

%% Limits
iL_max = 20;
iL_min = 0.2;
Vout_max = 420;
Vout_min = 360;
P_PV_max = 20000;
Vout_ref = 400;

%% Persistent memory
persistent S_old wf;
if isempty(S_old)
S_old = Dref;
wf = wf_min;
end

%% Sanitize Inputs
iL = abs(iL);
Vout = abs(Vout);
V_PV = max(V_PV, 50);

%% Duty Cycle Candidates
states = [Dref – 0.05; Dref; Dref + 0.05];
states = min(max(states, 0.3), 0.9); % Clamp

%% Cost Evaluation
g = zeros(length(states),1);
g_min = inf;
n_best = 1;

X_k = [iL; Vout];

for n = 1:length(states)
D = states(n);

% Discrete model
A_d = [1 – (RL * Ts / L), -(1 – D) * (Ts / L);
(1 – D) * (Ts / C), 1 – (Ts / (R_load * C))];
B_d = [Ts / L; 0];

% Predict state
X_k1 = A_d * X_k + B_d * V_PV;
iboost_k1 = X_k1(1);
Vout_k1 = X_k1(2);
P_PV_pred = V_PV * iboost_k1;

% Constraint check
if iboost_k1 < iL_min || iboost_k1 > iL_max || …
Vout_k1 < Vout_min || Vout_k1 > Vout_max || …
P_PV_pred <= 0 || P_PV_pred > P_PV_max || …
isnan(iboost_k1) || isnan(Vout_k1)
g(n) = inf;
continue;
end

% Cost terms
g_iboost = (iL_ref – iboost_k1)^2;
g_vout = (Vout_ref – Vout_k1)^2;
g_sw = (D ~= S_old) * wf;
g_dref = (D – Dref)^2;
g_pv = (P_PV_pred < 100) * 1000;

% Total cost
g(n) = g_iboost + 0.1 * g_vout + g_sw + g_dref + g_pv;

if g(n) < g_min
g_min = g(n);
n_best = n;
end
end

%% Apply Selected Duty Cycle
S = states(n_best);
S = min(max(S, 0.3), 0.9); % Clamp again

% Adaptive penalty update
if S ~= S_old
wf = min(wf * 1.10, wf_max);
else
wf = max(wf * 0.90, wf_min);
end

S_old = S;
end mpc control of solar pv MATLAB Answers — New Questions

​

Thread implemented in MATLAB in a timer
Matlab News

Thread implemented in MATLAB in a timer

PuTI / 2025-05-07

Hello,
I have two processes (one for a camera that runs through a camera function and one for a robot that runs through a robot function), and I’d like to set up a thread to run them in parallel.
I’d like the robot process to run in the background if possible. I searched the internet and found parfeval but I don’t really understand how it works.
I don’t really understand how it works. Can you advise me on how to do this?Hello,
I have two processes (one for a camera that runs through a camera function and one for a robot that runs through a robot function), and I’d like to set up a thread to run them in parallel.
I’d like the robot process to run in the background if possible. I searched the internet and found parfeval but I don’t really understand how it works.
I don’t really understand how it works. Can you advise me on how to do this? Hello,
I have two processes (one for a camera that runs through a camera function and one for a robot that runs through a robot function), and I’d like to set up a thread to run them in parallel.
I’d like the robot process to run in the background if possible. I searched the internet and found parfeval but I don’t really understand how it works.
I don’t really understand how it works. Can you advise me on how to do this? thread, matlab MATLAB Answers — New Questions

​

How to Permanently Remove Mailbox Items with the Graph API
News

How to Permanently Remove Mailbox Items with the Graph API

Tony Redmond / 2025-05-07

Permanent Deletion for Message and Other Types of Items from User Mailboxes

On April 1, 2025, Microsoft announced the availability of APIs to permanently delete mailbox items. This news might well have passed you by because the post appeared in the developer blog rather than anything a Microsoft 365 tenant administrator might see.

The APIs are intended to fill in some gaps in Graph API coverage for mailbox items compared to Exchange Web Services (EWS). It’s part of the campaign to remove EWS from Exchange Online by October 2026. An example of where permanent removal of mailbox items is needed is when migrating mailboxes from one tenant to another. After a successful move, the migration utility might clean up by removing items from the source mailbox.

In any case, APIs are now available to permanently delete mail message, mail folder, event, calendar, contact, and contact folder objects.

What Permanent Removal Means

In this context, permanent removal means that no client interface exists to allow the user to recover the message. For example, users can’t use Outlook’s Recover Deleted Items facility to retrieve the deleted items and administrators can’t use the Get-RecoverableItems cmdlet to do likewise (or appear in a report of recoverable items).

The reason why this is so is that when Outlook deletes items in the Deleted Items folder, the items move to the Deletions folder within Recoverable Items. When the API deletes an item, the item moves to the Purges folder. If the item is not subject to a hold, the Managed Folder Assistant will remove it the next item the mailbox is processed. If it is subject to a hold, the item remains in the Purges folder until the hold lapses.

Permanent Removal with the Microsoft Graph API

Two pieces of information are needed to permanently remove a message item using the Graph API: the object identifier for the account that owns the mailbox and the message identifier. Let’s assume that you have a variable containing details of a message:

$Message | Format-List Subject, CreatedDateTime, Id

Subject         : Thank You for Subscribing
CreatedDateTime : 06/05/2022 06:47:28
Id              : AAMkADAzNzBmMzU0LTI3NTItNDQzNy04NzhkLWNmMGU1MzEwYThkNABGAAAAAAB_7ILpFNx8TrktaK8VYWerBwDcIrNcmtpBSZUJ1fXZjZ5iAB_wAYDdAAA3tTkMTDKYRI6zB9VW59QNAAQnaACXAAA=

To delete the item, construct a URI pointing to the message and post the request to the messages endpoint. This example shows where the variables for the user identifier and message identifier are in the URI:

$Uri = ("https://graph.microsoft.com/v1.0/users/{0}/messages/{1}/permanentDelete" -f $UserId, $Message.Id)

$Uri
https://graph.microsoft.com/v1.0/users/eff4cd58-1bb8-4899-94de-795f656b4a18/messages/AAMkADAzNzBmMzU0LTI3NTItNDQzNy04NzhkLWNmMGU1MzEwYThkNABGAAAAAAB_7ILpFNx8TrktaK8VYWerBwDcIrNcmtpBSZUJ1fXZjZ5iAB_wAYDdAAA3tTkMTDKYRI6zB9VW59QNAAQnaACXAAA=/permanentDelete

Invoke-MgGraphRequest -Uri $Uri -Method Post

The Graph API doesn’t ask for confirmation before proceeding to remove the item and it doesn’t provide a status to show that the deletion was successful. The only indication that something happened is found by using the Get-MailboxFolderStatistics cmdlet to see if the items in the Purges folder increase:

Get-MailboxFolderStatistics -FolderScope RecoverableItems -Identity Tony.Redmond | Format-Table Name, ItemsInFolder

Name                                    ItemsInFolder
----                                    -------------
Recoverable Items                                   0
Deletions                                        2135
DiscoveryHolds                                   2543
Purges                                             16
SubstrateHolds                                     12
Versions                                           79

Alternatively, use the MFCMAPI utility to examine the items in the Purges folder. Figure 1 shows that the “Thank you for subscribing” message is in the Purges folder.

MFCMAPI shows the permanently deleted item in the Purges folder.Permanent deletion with Graph APIs
Figure 1: MFCMAPI shows the permanently deleted item in the Purges folder

Permanent Removal with the Microsoft Graph PowerShell SDK

The Remove-MgUserMessagePermanent cmdlet does the same job as the Graph API request:

Remove-MgUserMessagePermanent -UserId $UserId -MessageId $Message.Id

Once again, there’s no status or confirmation required for the deletion to proceed. The other Microsoft Graph PowerShell SDK cmdlets to permanently remove objects are:

  • Remove-MgUserMailFolderPermanent: Remove mail folder
  • Remove-MgUserCalendarPermanent: Remove calendar.
  • Remove-MgUserEventPermanent: Remove calendar event.
  • Remove-MgUserContactPermanent: Remove contact.
  • Remove-MgUserContactFolderPermanent: Remove contact folder.

All the cmdlets work in the same way. Deletion is immediate and permanent.

Adding new automation capabilities by extending APIs is always welcome. I just need to find a suitable use case for the new cmdlets.


Need some assistance to write and manage PowerShell scripts for Microsoft 365? Get a copy of the Automating Microsoft 365 with PowerShell eBook, available standalone or as part of the Office 365 for IT Pros eBook bundle.

 

Mainframes Are the New AI Infrastructure. Protect it with Secure AI
News Other

Mainframes Are the New AI Infrastructure. Protect it with Secure AI

PuTI / 2025-05-06
Mainframes Are the New AI Infrastructure. Protect it with Secure AI

If your AI workloads run in containers, then securing those containers is the first and most important step in protecting your AI. And as enterprises begin to deploy containerized AI workloads on Red Hat OpenShift for mainframe environments, that priority becomes even more urgent.

If your AI workloads run in containers, then securing those containers is the first and most important step in protecting your AI. And as enterprises begin to deploy containerized AI workloads on Red Hat OpenShift for mainframe environments, that priority becomes even more urgent.Read More

Experimental Design in  Matlab
Matlab News

Experimental Design in Matlab

PuTI / 2025-05-06

Can anyone help me with run a complete CCD or BBD experimental design in matlab? Actually I use RStudio for run my DoE but i would like to learn how to perform these in Matlab.
I found this page https://it.mathworks.com/help/stats/design-of-experiments-1.html that give me some information but this is not enough…
I would like to know also the script for give the experimental responses, extimate coefficient, perform the ANOVA and response surface and so on..

Thank you so much!Can anyone help me with run a complete CCD or BBD experimental design in matlab? Actually I use RStudio for run my DoE but i would like to learn how to perform these in Matlab.
I found this page https://it.mathworks.com/help/stats/design-of-experiments-1.html that give me some information but this is not enough…
I would like to know also the script for give the experimental responses, extimate coefficient, perform the ANOVA and response surface and so on..

Thank you so much! Can anyone help me with run a complete CCD or BBD experimental design in matlab? Actually I use RStudio for run my DoE but i would like to learn how to perform these in Matlab.
I found this page https://it.mathworks.com/help/stats/design-of-experiments-1.html that give me some information but this is not enough…
I would like to know also the script for give the experimental responses, extimate coefficient, perform the ANOVA and response surface and so on..

Thank you so much! doe, ccd, bbd MATLAB Answers — New Questions

​

Solving ODE just for one time step
Matlab News

Solving ODE just for one time step

PuTI / 2025-05-06

I want to solve some ODE using matlab solver (ode45, ode15s, etc) just for one time step. The time step is decided internally by the solver. Is this possible to do?I want to solve some ODE using matlab solver (ode45, ode15s, etc) just for one time step. The time step is decided internally by the solver. Is this possible to do? I want to solve some ODE using matlab solver (ode45, ode15s, etc) just for one time step. The time step is decided internally by the solver. Is this possible to do? ode, solver MATLAB Answers — New Questions

​

How do I put more than one patternCustom plot into a figure when it seems like neither subplot or tiledlayout will work?
Matlab News

How do I put more than one patternCustom plot into a figure when it seems like neither subplot or tiledlayout will work?

PuTI / 2025-05-06

I am using multiple patternCustom plots that use CoordinateSystem="polar", Slice="theta" that I would like to show in the same figure in a 2×3 format. It seems that neither tiledlayout or subplots will work. I would think there has to be a straightforward way to do this, that someone can show me.I am using multiple patternCustom plots that use CoordinateSystem="polar", Slice="theta" that I would like to show in the same figure in a 2×3 format. It seems that neither tiledlayout or subplots will work. I would think there has to be a straightforward way to do this, that someone can show me. I am using multiple patternCustom plots that use CoordinateSystem="polar", Slice="theta" that I would like to show in the same figure in a 2×3 format. It seems that neither tiledlayout or subplots will work. I would think there has to be a straightforward way to do this, that someone can show me. patterncustom, tiledlayout, subplot, figure, multiple plots MATLAB Answers — New Questions

​

Intersection points of multiple straight line segments
Matlab News

Intersection points of multiple straight line segments

PuTI / 2025-05-06

This feels as though it should be easy, but other than creating loops which for large data sets run for ever I can’t see how to do this
I have mulitple line segments with end points in the form [x11 y11 x12 y12; x21 y21 x22 y22;…] [x13 y13 x14 y14; x23 y23 x24 y24;…]
I am trying to find intersection points between any pair of line segments in the two lists
I know how to find where any specific two intersect, using xy = [x1*y2-x2*y1,x3*y4-x4*y3]/[y2-y1,y4-y3;-(x2-x1),-(x4-x3)]; and looping through each list in turn
but can’t see an efficient way of testing all possible pairs
Any help gratefully receivedThis feels as though it should be easy, but other than creating loops which for large data sets run for ever I can’t see how to do this
I have mulitple line segments with end points in the form [x11 y11 x12 y12; x21 y21 x22 y22;…] [x13 y13 x14 y14; x23 y23 x24 y24;…]
I am trying to find intersection points between any pair of line segments in the two lists
I know how to find where any specific two intersect, using xy = [x1*y2-x2*y1,x3*y4-x4*y3]/[y2-y1,y4-y3;-(x2-x1),-(x4-x3)]; and looping through each list in turn
but can’t see an efficient way of testing all possible pairs
Any help gratefully received This feels as though it should be easy, but other than creating loops which for large data sets run for ever I can’t see how to do this
I have mulitple line segments with end points in the form [x11 y11 x12 y12; x21 y21 x22 y22;…] [x13 y13 x14 y14; x23 y23 x24 y24;…]
I am trying to find intersection points between any pair of line segments in the two lists
I know how to find where any specific two intersect, using xy = [x1*y2-x2*y1,x3*y4-x4*y3]/[y2-y1,y4-y3;-(x2-x1),-(x4-x3)]; and looping through each list in turn
but can’t see an efficient way of testing all possible pairs
Any help gratefully received intersects MATLAB Answers — New Questions

​

How Microsoft 365 Copilot Tenants Benefit from SharePoint Advanced Management
News

How Microsoft 365 Copilot Tenants Benefit from SharePoint Advanced Management

Tony Redmond / 2025-05-06

Ignite Announcement About SAM for Copilot Customers Misinterpreted by Many

At the Ignite 2024 conference, Microsoft announced that “Microsoft 365 Copilot will now include built-in content governance controls and insights provided by SharePoint Advanced Management.” At the time, and still broadly believed, the assumption was that Microsoft would provide customers with Microsoft 365 Copilot licenses with SharePoint Advanced Management (SAM) licenses. Maybe even a single SAM license would be sufficient to license SAM technology alongside Copilot. That’s not the case.

If you’ve been waiting for a SAM license to appear in your tenant, you’ll be disappointed and won’t see SAM listed in the set of tenant subscriptions. Don’t be swayed by the banner in the SharePoint Online admin center to announce that your SharePoint Advanced Management subscription is enabled (Figure 1). It’s not. Access to SAM features is granted through a check enabled in code for the presence of Copilot. The necessary update is now broadly available to customers.

SharePoint Advanced Management options in the SharePoint admin center.SAM
Figure 1: SharePoint Advanced Management options in the SharePoint admin center

SAM Features for Microsoft 365 Copilot Customers

The facts are laid out in the SAM documentation. Customers with eligible Copilot licenses can use some, but not all, SAM functionality without a SAM license. Here’s the list:

  • Site Lifecycle Policy
    • Inactive SharePoint sites policy
    • Site Ownership Policy
  • Data Access Governance (DAG) Insights
    • “Everyone Except External Users” (EEEU) insights
    • Sharing Links and Sensitivity Labels
    • PowerShell: Permission state report for SharePoint and OneDrive Sites, and Files
    • Sharing links report
  • Site Access Review
  • Restricted Content Discovery (RCD – enabled via PowerShell)
  • Restricted Access Control (RAC) for SharePoint and OneDrive for Business.
  • Recent Admin Actions and Change History
  • Block Download Policy
    • SharePoint and OneDrive sites
    • Teams recordings

There’s some good stuff here, particularly Restricted Content Discovery (RCD), the Site Lifecycle Policy to manage inactive sites, and the Block download policy. Every tenant with Microsoft 365 Copilot should consider enabling RCD to block Copilot access to sites containing sensitive Office and PDF files and sites containing old and obsolete material (the digital rot or debris that clutters up so many tenants).

The problem with Copilot reusing sensitive material in its responses is obvious. The issue with Copilot reusing old, obsolete, and potentially misleading content in its responses is equally problematic, especially if human checks don’t catch errors in responses. Copilot doesn’t know when a Word document written ten years ago is outdated and inaccurate. All Copilot sees is words that can be processed and reused.

When SAM is Needed

All of which brings me to a point where a SAM license is required. In my case, I wanted to test the extend SharePoint protections with a default sensitivity label feature. The idea here is to make sure that unlabeled files receive protection when downloaded by applying a sensitivity label with equivalent rights to those enjoyed by site users. Defining a default sensitivity label for a document library already requires an Office 365 E5 license or equivalent. Why this slight extension wanders into the need to have SAM is another example of bizarre Microsoft licensing.

The documentation notes that Copilot can’t currently open files with sensitivity labels applied in this manner. This means that Copilot cannot extract the protected content to use in its responses because it doesn’t have the right to do so. However, Copilot can search the metadata of labeled files and show that metadata to those who perform searches. Restricted Content Discovery is the right way to block Copilot access to files.

Anyway, without a SAM license, I can’t test. Do I want to pay Microsoft for a license for the privilege of testing their software? I don’t think so.

Copilot in Word for iOS

In closing, I attempted to use a new feature in Word for iOS (and Android) to dictate some notes for this article for Copilot to reason over and produce a draft. The feature is covered in MC1060866 (23 April 2025) and deployment has begun, which is why I guess I could use it. The dictation part worked, even if some of my words were misunderstood (Figure 2). But any attempt to have Copilot do some magic failed utterly. I guess that AI can’t help me…

Dictating text in Word for iOS for Copilot to process.
Figure 2: Dictating text in Word for iOS for Copilot to process

Support the work of the Office 365 for IT Pros team by subscribing to the Office 365 for IT Pros eBook. Your support pays for the time we need to track, analyze, and document the changing world of Microsoft 365 and Office 365.

 

I haven’t defined syms x but solve function gives me values depend on x
Matlab News

I haven’t defined syms x but solve function gives me values depend on x

PuTI / 2025-05-05

I am designing a PID controller for which I set the denominator of my closed-loop transfer function equal to the product of the dominant poles and the residue polynomial.
My goal is to get values that depend on Ki, but even though I don’t use the syms x command, my values depend on x and Ki.
clear all;
clc;
syms zeta positive
syms s;
syms Kp Ki Kd;

% Given values
ts = 4; % Settling time
Mp = 0.05; % Maximum overshoot

% Define the overshoot equation
eq1 = exp(-zeta*pi / sqrt(1 – zeta^2)) == Mp;

% Solve for zeta numerically (only real positive solution makes sense)
zeta = double(vpasolve(eq1, zeta, [0 1]));

% Now calculate omega_n using Ts = 4 / (zeta * omega_n)
w_n = 4 / (zeta * ts);

G= (s+1)/(s^3 +6*s^2 +10*s -15)
H= 10/(s+10)
F= (Kd*s^2 + Kp*s + Ki)/s

Tcl= (F*G)/(1 + F*G*H)

[num, den] = numden(simplifyFraction(Tcl));
num = expand(num)
den = expand(den)

num_s = coeffs(num, s, ‘All’)
den_s = coeffs(den, s, ‘All’)

Pd=s^2 +2*zeta*w_n*s+(w_n)^2

syms e0 e1 e2 positive;

Pr= (s+e0)*(s+e1)*(s+e2)

Pe=expand(Pd*Pr)

Pe_s= coeffs(Pe,s,"All")

eq2 = Pe_s == den_s

sol2 = solve(eq2, [Kp, Kd, e0, e1, e2], ‘Real’, true);

% den_s=subs(den_s,[Kd,Kp],[sol2.Kd,sol2.Kp])
% F = subs(F,[Kd,Kp],[sol2.Kd,sol2.Kp])I am designing a PID controller for which I set the denominator of my closed-loop transfer function equal to the product of the dominant poles and the residue polynomial.
My goal is to get values that depend on Ki, but even though I don’t use the syms x command, my values depend on x and Ki.
clear all;
clc;
syms zeta positive
syms s;
syms Kp Ki Kd;

% Given values
ts = 4; % Settling time
Mp = 0.05; % Maximum overshoot

% Define the overshoot equation
eq1 = exp(-zeta*pi / sqrt(1 – zeta^2)) == Mp;

% Solve for zeta numerically (only real positive solution makes sense)
zeta = double(vpasolve(eq1, zeta, [0 1]));

% Now calculate omega_n using Ts = 4 / (zeta * omega_n)
w_n = 4 / (zeta * ts);

G= (s+1)/(s^3 +6*s^2 +10*s -15)
H= 10/(s+10)
F= (Kd*s^2 + Kp*s + Ki)/s

Tcl= (F*G)/(1 + F*G*H)

[num, den] = numden(simplifyFraction(Tcl));
num = expand(num)
den = expand(den)

num_s = coeffs(num, s, ‘All’)
den_s = coeffs(den, s, ‘All’)

Pd=s^2 +2*zeta*w_n*s+(w_n)^2

syms e0 e1 e2 positive;

Pr= (s+e0)*(s+e1)*(s+e2)

Pe=expand(Pd*Pr)

Pe_s= coeffs(Pe,s,"All")

eq2 = Pe_s == den_s

sol2 = solve(eq2, [Kp, Kd, e0, e1, e2], ‘Real’, true);

% den_s=subs(den_s,[Kd,Kp],[sol2.Kd,sol2.Kp])
% F = subs(F,[Kd,Kp],[sol2.Kd,sol2.Kp]) I am designing a PID controller for which I set the denominator of my closed-loop transfer function equal to the product of the dominant poles and the residue polynomial.
My goal is to get values that depend on Ki, but even though I don’t use the syms x command, my values depend on x and Ki.
clear all;
clc;
syms zeta positive
syms s;
syms Kp Ki Kd;

% Given values
ts = 4; % Settling time
Mp = 0.05; % Maximum overshoot

% Define the overshoot equation
eq1 = exp(-zeta*pi / sqrt(1 – zeta^2)) == Mp;

% Solve for zeta numerically (only real positive solution makes sense)
zeta = double(vpasolve(eq1, zeta, [0 1]));

% Now calculate omega_n using Ts = 4 / (zeta * omega_n)
w_n = 4 / (zeta * ts);

G= (s+1)/(s^3 +6*s^2 +10*s -15)
H= 10/(s+10)
F= (Kd*s^2 + Kp*s + Ki)/s

Tcl= (F*G)/(1 + F*G*H)

[num, den] = numden(simplifyFraction(Tcl));
num = expand(num)
den = expand(den)

num_s = coeffs(num, s, ‘All’)
den_s = coeffs(den, s, ‘All’)

Pd=s^2 +2*zeta*w_n*s+(w_n)^2

syms e0 e1 e2 positive;

Pr= (s+e0)*(s+e1)*(s+e2)

Pe=expand(Pd*Pr)

Pe_s= coeffs(Pe,s,"All")

eq2 = Pe_s == den_s

sol2 = solve(eq2, [Kp, Kd, e0, e1, e2], ‘Real’, true);

% den_s=subs(den_s,[Kd,Kp],[sol2.Kd,sol2.Kp])
% F = subs(F,[Kd,Kp],[sol2.Kd,sol2.Kp]) solve MATLAB Answers — New Questions

​

Classification problem parsed as regression problem when Split Criterion is supplied to fitcensemble
Matlab News

Classification problem parsed as regression problem when Split Criterion is supplied to fitcensemble

PuTI / 2025-05-05

Hi

I ran a hyperparameter optimization to find the best parameters for a two-class classification problem using _fitcensemble_. But when I try to use these I get a strange warning:

*Warning: You must pass ‘SplitCriterion’ as a character vector ‘mse’ for regression.*

What is wrong with my code? The warning comes when I use a boosting ensemble as ‘method’. When I remove the ‘SplitCriterion’ everything works fine, but I cannot understand why Matlab somewhere on the line thinks this is a regression problem when I use fit"c"ensemble.
Here is a toy example with arbitrarily chosen settings that you can run to reproduce the Warning/Error.

load carsmall
X = table(Acceleration,Cylinders,Displacement,Horsepower,Mfg,Model_Year,Weight,MPG);

X.Cylinders(X.Cylinders < 8) = 0; % Create two classes in the Cylinders variable

t = templateTree( ‘MaxNumSplits’, 30,…
‘MinLeafSize’, 10,…
‘SplitCriterion’, ‘gdi’);

classificationEnsemble = fitcensemble(X,’Cylinders’,…
‘Method’, ‘LogitBoost’, …
‘NumLearningCycles’,12,…
‘Learners’,t,…
‘KFold’,7,…
‘LearnRate’,0.1);Hi

I ran a hyperparameter optimization to find the best parameters for a two-class classification problem using _fitcensemble_. But when I try to use these I get a strange warning:

*Warning: You must pass ‘SplitCriterion’ as a character vector ‘mse’ for regression.*

What is wrong with my code? The warning comes when I use a boosting ensemble as ‘method’. When I remove the ‘SplitCriterion’ everything works fine, but I cannot understand why Matlab somewhere on the line thinks this is a regression problem when I use fit"c"ensemble.
Here is a toy example with arbitrarily chosen settings that you can run to reproduce the Warning/Error.

load carsmall
X = table(Acceleration,Cylinders,Displacement,Horsepower,Mfg,Model_Year,Weight,MPG);

X.Cylinders(X.Cylinders < 8) = 0; % Create two classes in the Cylinders variable

t = templateTree( ‘MaxNumSplits’, 30,…
‘MinLeafSize’, 10,…
‘SplitCriterion’, ‘gdi’);

classificationEnsemble = fitcensemble(X,’Cylinders’,…
‘Method’, ‘LogitBoost’, …
‘NumLearningCycles’,12,…
‘Learners’,t,…
‘KFold’,7,…
‘LearnRate’,0.1); Hi

I ran a hyperparameter optimization to find the best parameters for a two-class classification problem using _fitcensemble_. But when I try to use these I get a strange warning:

*Warning: You must pass ‘SplitCriterion’ as a character vector ‘mse’ for regression.*

What is wrong with my code? The warning comes when I use a boosting ensemble as ‘method’. When I remove the ‘SplitCriterion’ everything works fine, but I cannot understand why Matlab somewhere on the line thinks this is a regression problem when I use fit"c"ensemble.
Here is a toy example with arbitrarily chosen settings that you can run to reproduce the Warning/Error.

load carsmall
X = table(Acceleration,Cylinders,Displacement,Horsepower,Mfg,Model_Year,Weight,MPG);

X.Cylinders(X.Cylinders < 8) = 0; % Create two classes in the Cylinders variable

t = templateTree( ‘MaxNumSplits’, 30,…
‘MinLeafSize’, 10,…
‘SplitCriterion’, ‘gdi’);

classificationEnsemble = fitcensemble(X,’Cylinders’,…
‘Method’, ‘LogitBoost’, …
‘NumLearningCycles’,12,…
‘Learners’,t,…
‘KFold’,7,…
‘LearnRate’,0.1); fitcensemble, split criterion, classification, regression, hyperparameter, optimization, boost, templatetree MATLAB Answers — New Questions

​

How do I make a 10×10 showing all numbers 1 to 100?
Matlab News

How do I make a 10×10 showing all numbers 1 to 100?

PuTI / 2025-05-05

how do i create a nested loop tht will provide me with a 10×10 matrix with all the numbers 1 to 100 like this
1 2 … 10
11 … … …
… … … …
… … … 100how do i create a nested loop tht will provide me with a 10×10 matrix with all the numbers 1 to 100 like this
1 2 … 10
11 … … …
… … … …
… … … 100 how do i create a nested loop tht will provide me with a 10×10 matrix with all the numbers 1 to 100 like this
1 2 … 10
11 … … …
… … … …
… … … 100 matrix loop nested MATLAB Answers — New Questions

​

Is it possible to get the version number of a compiled program inside the program? I am using the Application Compiler.
Matlab News

Is it possible to get the version number of a compiled program inside the program? I am using the Application Compiler.

PuTI / 2025-05-05

For a project I am working on, I would like the program to output the current version being used in a char array. I have the following code:
if(isdeployed)
version = (Help here);
version_message = [‘Now running program.exe version: ‘ version];
else
version = ‘script’;
version_message = [‘Now running program.m version: ‘ version];
end
disp(version_message);
Is it possible to dynamically get the version number, or do I have to manually set it to ensure they are the same? I know it can be done with App Designer, but this executable does not use App Designer.For a project I am working on, I would like the program to output the current version being used in a char array. I have the following code:
if(isdeployed)
version = (Help here);
version_message = [‘Now running program.exe version: ‘ version];
else
version = ‘script’;
version_message = [‘Now running program.m version: ‘ version];
end
disp(version_message);
Is it possible to dynamically get the version number, or do I have to manually set it to ensure they are the same? I know it can be done with App Designer, but this executable does not use App Designer. For a project I am working on, I would like the program to output the current version being used in a char array. I have the following code:
if(isdeployed)
version = (Help here);
version_message = [‘Now running program.exe version: ‘ version];
else
version = ‘script’;
version_message = [‘Now running program.m version: ‘ version];
end
disp(version_message);
Is it possible to dynamically get the version number, or do I have to manually set it to ensure they are the same? I know it can be done with App Designer, but this executable does not use App Designer. compiler, version number, matlab MATLAB Answers — New Questions

​

Same script, faster execution when running in a spawned instance (“!matlab …”)?
Matlab News

Same script, faster execution when running in a spawned instance (“!matlab …”)?

PuTI / 2025-05-05

Dear Community,

I am running Matlab 2024b under Windows 10 / 32GB RAM on a 6-core laptop Intel CPU (hyperthreading deactivated). For the sake of runtime optimisation I have done the following comparison:
case #1: a script running within the current Matlab session (single instance) and
case #2: the same script running in a spawned session (instance), using "!matlab -nosplash -desktop -r "load …" (etc.).
The runtime results are as follows:
script #1 finished in about an hour, total CPU load ~50% at boost clock (single Matlab instance)
script #2 finished in about HALF an hour (!), similar total CPU load ~50% at boost clock; main Matlab instance idle (~0%), spawned instance ~40%
I muss admit I do not understand the results: why does a spawned Matlab instance (i.e. two instances running in parallel: main/idle and active) complete the task in half of the time, compared to a single instance?
What might be the reason for this behavior?

Thanks a lot in advance!
MarekDear Community,

I am running Matlab 2024b under Windows 10 / 32GB RAM on a 6-core laptop Intel CPU (hyperthreading deactivated). For the sake of runtime optimisation I have done the following comparison:
case #1: a script running within the current Matlab session (single instance) and
case #2: the same script running in a spawned session (instance), using "!matlab -nosplash -desktop -r "load …" (etc.).
The runtime results are as follows:
script #1 finished in about an hour, total CPU load ~50% at boost clock (single Matlab instance)
script #2 finished in about HALF an hour (!), similar total CPU load ~50% at boost clock; main Matlab instance idle (~0%), spawned instance ~40%
I muss admit I do not understand the results: why does a spawned Matlab instance (i.e. two instances running in parallel: main/idle and active) complete the task in half of the time, compared to a single instance?
What might be the reason for this behavior?

Thanks a lot in advance!
Marek Dear Community,

I am running Matlab 2024b under Windows 10 / 32GB RAM on a 6-core laptop Intel CPU (hyperthreading deactivated). For the sake of runtime optimisation I have done the following comparison:
case #1: a script running within the current Matlab session (single instance) and
case #2: the same script running in a spawned session (instance), using "!matlab -nosplash -desktop -r "load …" (etc.).
The runtime results are as follows:
script #1 finished in about an hour, total CPU load ~50% at boost clock (single Matlab instance)
script #2 finished in about HALF an hour (!), similar total CPU load ~50% at boost clock; main Matlab instance idle (~0%), spawned instance ~40%
I muss admit I do not understand the results: why does a spawned Matlab instance (i.e. two instances running in parallel: main/idle and active) complete the task in half of the time, compared to a single instance?
What might be the reason for this behavior?

Thanks a lot in advance!
Marek multiple instance spawn MATLAB Answers — New Questions

​

Microsoft Extends DLP Policy for Copilot to Office Apps
News

Microsoft Extends DLP Policy for Copilot to Office Apps

Tony Redmond / 2025-05-05

Same DLP Policy for Copilot Used to Block BizChat

On May 1, Microsoft announced that the public preview of the DLP policy for Microsoft 365 Copilot is effective for the Office apps (MC1059677, 21 April 2025, Microsoft 365 roadmap item 423483). The new functionality is an extension of the DLP policy introduced in March 2025. At that time, the policy only covered Microsoft 365 Copilot Chat (BizChat). Its extension to cover the Office apps (desktop and web) is logical, even if the implementation is different. We’ll get to what those differences are shortly.

How the DLP Policy for Copilot Works

As a quick refresher, the DLP policy for Copilot works by checking if a file is assigned a specific sensitivity label. If true, the Copilot functionality built into the app is limited and the content of the file cannot be used in Copilot responses, such as creating a document summary.

Apps are responsible for checking if a DLP policy is active within the tenant and what sensitivity labels are associated with the policy, so the announcement marks the inclusion of the necessary code in the Office apps to check for the DLP policy. I tested with Microsoft 365 Enterprise Apps version 2504 (build 18730.20122).

Like any other DLP policy, the policy can have multiple rules. In this case, rules for the DLP policy for Copilot block access for a sensitivity label, so if you want to block access for multiple sensitivity labels, the DLP policy has a separate rule for each label. If you created the DLP policy for Copilot to use with BizChat, you don’t need to do anything to extend the policy to cover the Office apps.

Using the DLP Policy for Copilot in Word

As an example, I created a Word document and tested that all the Copilot functionality worked as expected. I saved the document and reopened it to force Copilot to generate the automatic summary.

I then applied one of the sensitivity labels covered by a rule in the DLP policy for Copilot and tried out some of the Copilot features. As you can see from Figure 1, the automatic summary was not removed (but the summary cannot be updated), and asking Copilot to explicitly summarize the document fails because “your organization’s policy doesn’t allow it.” However, it looks like Copilot can query the content of the document to answer questions in chat.

Copilot in Word with DLP block.DLP policy for Copilot.

In their announcement, Microsoft says that “Copilot actions like summarizing or auto-generating content directly in the canvas are blocked.” They also say that chatting with Copilot is also blocked, but as you can see in Figure 1, Copilot answered a predefined question (“What is the purpose of DLP for M365 Copilot”) quite happily. On the other hand, if you go to the Message Copilot section and input the same question, Copilot refuses to answer. The block on chat worked in the web app but not always in the desktop version of Word (but this is preview software, so some bugs are expected).

Finally, Copilot cannot reference a file protected by one of the sensitivity labels covered by the DLP policy (an action that forces Copilot to extract the content of the referenced document).

Maybe Just Turn Copilot Off

I’ve used Copilot for nearly two years, and I was initially confused by the effect the DLP policy for Copilot has on the Office apps. To me, it would be simpler and more understandable to disable Copilot completely for documents within the scope of the DLP policy. I would remove the Copilot button from the menu bar and make sure that no UI elements that expose any Copilot feature, like the automatic summary appear. Right now, the UI is a confusing mishmash of things that work and stuff that doesn’t that needs to be cleaned up.


Learn how to exploit the data available to Microsoft 365 tenant administrators through the Office 365 for IT Pros eBook. We love figuring out how things work.

 

Wave simulation
Matlab News

Wave simulation

PuTI / 2025-05-04

Hello
I’m trying to simulate a single source wave in matlab
does anyone know how to do that? (code tips)

ThanksHello
I’m trying to simulate a single source wave in matlab
does anyone know how to do that? (code tips)

Thanks Hello
I’m trying to simulate a single source wave in matlab
does anyone know how to do that? (code tips)

Thanks wave, matlab, array, plotting, matlab gui, graph, simulation, code generation, 2d MATLAB Answers — New Questions

​

How to check Matlab code Plagiarism
Matlab News

How to check Matlab code Plagiarism

PuTI / 2025-05-04

How can we check MATLAB code plagiarism? Is there any software available?How can we check MATLAB code plagiarism? Is there any software available? How can we check MATLAB code plagiarism? Is there any software available? plagiarism, cheating, copying MATLAB Answers — New Questions

​

Previous 1 2 3 4 5 … 108 Next

Search

Categories

  • Matlab
  • Microsoft
  • News
  • Other
Application Package Repository Telkom University

Tags

matlab microsoft opensources
Application Package Download License

Application Package Download License

Adobe
Google for Education
IBM
Matlab
Microsoft
Wordpress
Visual Paradigm
Opensource

Sign Up For Newsletters

Be the First to Know. Sign up for newsletter today

Application Package Repository Telkom University

Portal Application Package Repository Telkom University, for internal use only, empower civitas academica in study and research.

Information

  • Telkom University
  • About Us
  • Contact
  • Forum Discussion
  • FAQ
  • Helpdesk Ticket

Contact Us

  • Ask: Any question please read FAQ
  • Mail: helpdesk@telkomuniversity.ac.id
  • Call: +62 823-1994-9941
  • WA: +62 823-1994-9943
  • Site: Gedung Panambulai. Jl. Telekomunikasi

Copyright © Telkom University. All Rights Reserved. ch

  • FAQ
  • Privacy Policy
  • Term

This Application Package for internal Telkom University only (students and employee). Chiers... Dismiss